chore: add the SSPX 1962 ordo as a secondary validation oracle (#49) #429
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!429
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "chore/49-sspx-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?
Closes #49.
Adds the SSPX 1962 ordo (1962ordo.today) as the third oracle in the validation harness (#45), after Computus (#46) and missalemeum (#47/#48).
Why SSPX
The SSPX ordo is a second, independent implementation of the 1962 (Rubricae 1960) calendar and a particular calendar in its own right — the universal 1962 base plus its own observances (St Pius X and the Seven Sorrows elevated to first class, tagged
(FSSPX)upstream). Per the oracle-authority policy it is not the base authority (missalemeum is); its jobs are corroboration and overlay discovery.What's here
tools/oracles/harvest-sspx.mjs— maintainer harvester of the publicGET /get-liturgical-days/feed (facts only, clean-room), pinned to 2024–2026 (the missalemeum range) for a day-for-day cross-check. Byte-reproducible.tests/Validation/fixtures/sspx/— the pinned fixture ({date, name, klasse, particular, feast}),provenance.json,README.md, and the frozensspx-differences.ndjsonbaseline.tests/Validation/SspxOracle.php+SspxOracleTest.php— compares the engine's per-day class against SSPX and asserts the mismatch set equals the baseline (regression and drift both fail).bin/freeze-sspx-baseline.php— re-freeze after a reviewed calendar change.Three-way categorisation (85 mismatches)
Each class mismatch is cross-referenced against missalemeum's reading:
corroborates-base-ranksspx-particular(FSSPX)-tagged elevations (St Pius X, Seven Sorrows, Sep)sspx-diverges-from-basesspx-divergent-otherThe 71 corroborated rows are exactly the corpus-rank days missalemeum already flags — an independent second source reaching the identical verdict.
Notes / allowances
Gate:
lint117/117,analyse[OK],test629 passing.