Resolver floor: resolveYear(1583) throws (reaches back to pre-floor 1582) #415
Labels
No labels
area: build
area: ci
area: compare
area: data
area: engine
area: model
area: provenance
area: rite
area: validation
backport
blocked
breaking
confirmed
dependencies
duplicate
epic
github_actions
invalid
needs-info
needs-triage
php
priority: high
priority: low
priority: medium
regression
type: bug
type: chore
type: correction
type: docs
type: enhancement
type: feature
type: fix
type: perf
type: refactor
type: security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Directorium/Core#415
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
DayResolver::resolveYear(1583)throws — the resolver reaches back for the trailing Christmas cycle that bleeds into January (ChristmasCycle::forYear($year - 1)), and for 1583 that isforYear(1582), below the engine's Gregorian floor (Computus::GREGORIAN_REFORM_YEAR = 1583). So although 1583 is the advertised first Gregorian year, the whole-year resolver's effective floor is 1584.Surfaced while building the golden-fixture safety gate (#365), which consequently freezes 1584–2200. Documented in
KNOWN-LIMITATIONS.md.Options
Acceptance criteria
day()/resolveYear()for 1583 either resolves correctly or fails with a clear, intentional boundary error (not an internalChristmasCycleexception).KNOWN-LIMITATIONS.mdupdated; if 1583 becomes resolvable, the golden fixture (#365) is extended to 1583 and re-frozen.Notes
Low priority, no downstream dependency (no consumer queries 1583). Cheap to keep tracked.