chore: cross-check Computus against PHP easter_days() (#46) #421
No reviewers
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!421
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/46-computus-easter-oracle"
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?
Part of Epic #45 (validation harness). Oracle #1 of the "re-prove 100%" suite.
What
A new
tests/Validation/suite whose first test compares the clean-roomComputus::gregorianEaster()to PHP's independenteaster_days()for every year1583–2200 — the computus's Gregorian floor through the golden-fixture horizon —
plus five human-verified anchor dates (the 22 Mar / 25 Apr extremes, 1962, 2000, 2024).
Why
Two unrelated Easter algorithms agreeing on 618 consecutive years is strong, cheap
evidence the computus is correct; the whole temporal cycle hangs off this date. The
oracle is pinned to
CAL_EASTER_ALWAYS_GREGORIANso both sides use the Gregorianreckoning across the full range (the default mode switches to Julian before 1753).
Acceptance criteria (#46)
easter_days()for every year in rangeLocal gates green:
lint109/109,analyse[OK],test621 passing.Closes #46.