diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-13 01:42:00 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-13 01:42:00 +0200 |
| commit | 254cfd7d9111b0f23f9c44e82d3e31d5817dc5a4 (patch) | |
| tree | a14a1e43e95d5bb3b03cd9832776461ea9440605 /test/fixtures/lectio-ef-2005-2050.provenance | |
| parent | a2654a1e4d8987a251bcefbad2b0f0b867a6c6e6 (diff) | |
| parent | 0f6454c123f1514c1cf255faed8d9b8c752c6347 (diff) | |
| download | colitur-254cfd7d9111b0f23f9c44e82d3e31d5817dc5a4.tar.gz colitur-254cfd7d9111b0f23f9c44e82d3e31d5817dc5a4.zip | |
Merge branch 'ef-rebootstrap': re-bootstrap the sanctoral, refresh the differential
Re-bootstraps data/ef/sanctoral.sexp from lectio's corrected generator
(322 -> 327 entries), propagating fixes colitur had inherited wholesale:
15 entries wrongly marked commemoration-only that are really III-class
feasts, four entries missing entirely, six commemorations an electronic
transcription had hidden, and two class corrections.
38639 days change across 1583-9999, in three shapes with no remainder:
2245 where a III-class feast now correctly beats a class-4 feria, 35174
where one of five restored commemorations appears, and 1220 on 13
January. All five restored entries were verified against a photographic
scan -- real, correctly ranked, and confined to their own dates.
13 January is NOT fixed by this. It moves from one wrong answer to a
different one, because RG 112 and a Holy Family office are both unbuilt.
Recorded as its own allow-list entry with a citation and a count, rather
than left inside a season-boundary entry's cardinality pin, and
deliberately not pinned by a golden test.
Then refreshes the lectio differential fixture, which predated the seven
EF defects fixed in that project. Nine allow-list entries close -- each
was a real divergence adjudicated in colitur's favour, and each closes
because lectio was fixed, with its RG citation preserved. The list goes
from twelve entries to four; the remaining 540 differences are fully
attributed with none unexplained.
Diffstat (limited to 'test/fixtures/lectio-ef-2005-2050.provenance')
| -rw-r--r-- | test/fixtures/lectio-ef-2005-2050.provenance | 46 |
1 files changed, 43 insertions, 3 deletions
diff --git a/test/fixtures/lectio-ef-2005-2050.provenance b/test/fixtures/lectio-ef-2005-2050.provenance index 872517b..e05adb5 100644 --- a/test/fixtures/lectio-ef-2005-2050.provenance +++ b/test/fixtures/lectio-ef-2005-2050.provenance @@ -1,11 +1,24 @@ Fixture: lectio-ef-2005-2050.txt -Task: 2026-08-11-colitur-plan3-resolution-engine, Task 15 (differential harness) +Task: 2026-08-12-colitur-rg16a, fixture refresh (differential-oracle regeneration +after lectio's "seven EF calendar defects" fix wave; branch ef-rebootstrap). Produced by the sibling project ~/git/projects/lectio at commit: - 2386a45 cmd(lectio-ef-dump): new EF calendar dumper for colitur's differential oracle + 3b32c00 Merge branch 'fix/ef-precedence-defects': seven EF calendar defects (branch polish-ui-and-calendar at the time; see that repo's own log) -SHA-256: 2ca3eeeda4e7a0406c4d004c1b2003fc0df671aca9af18a1b506543a721c8bac +Previous provenance (superseded by this refresh): + 2386a45 cmd(lectio-ef-dump): new EF calendar dumper for colitur's differential oracle + SHA-256 was 2ca3eeeda4e7a0406c4d004c1b2003fc0df671aca9af18a1b506543a721c8bac. + Between 2386a45 and 3b32c00, lectio fixed seven EF calendar defects (Sunday + I-class ranks incl. Rose Sundays, Holy Thursday's colour, Ember-day rank, + the September-Ember-vs-St-Matthew/Thomas occurrence, the Joseph-on-a-Lent- + Sunday transfer, the 2011 Precious-Blood transfer, and the Nativity-octave + III-class-feast bootstrap gap) and root-caused its sanctoral generator. + 806 of the 16801 rows changed field-for-field (fields 1-7) between the two + fixtures -- see .superpowers/sdd/2026-08-12-colitur-rg16a/fixture-refresh-report.md + for the full before/after account. + +SHA-256: fc4832f1bc1bdfd322e808ae4929487628981792c23f959c1764c8eaedbfaf7f (same digest as [fixture_sha256] in test/test_differential.ml, ASSERTED by that suite's own "fixture SHA-256 matches its provenance note" test -- this line documents the pin for a reader who never runs the suite; that test is @@ -25,5 +38,32 @@ relies on: the trailing "+other-slug" tokens are LOSING candidates (lectio has no RG 111 admission logic), and lectio's own EF oracle test asserts season only, for 2025-2026 only (rank/colour are logged, not asserted). +Column count changed since the previous fixture: the dumper at 2386a45 +printed 7 space-separated fields (date weekday season week slug rank +colour) plus any trailing "+other-slug" tokens; at 3b32c00 it prints 9 +(the same 7, PLUS name_en and name_pl -- the observed celebration's own +display name in each language, "_"-for-space, "-" for empty) before the +"+other-slug" tail. DECISION (this refresh): keep the fixture as the +dumper's raw, unedited stdout, name columns included -- do not strip them +back to 7 fields. Reasons: (1) this file's own contract is "the exact +command's output, verbatim" -- stripping columns would mean the committed +bytes no longer equal what the command above produces, forcing an +undocumented post-processing step into what is supposed to be a one-line +regeneration; (2) test/test_differential.ml's row_of_line already matches +`date :: weekday :: season :: week :: slug :: rank :: colour :: _others`, +so any extra trailing fields land in the ignored `_others` tail with no +code change needed -- positions 1-7 (everything the comparator actually +reads) are unaffected by the two new columns appended after them; (3) the +names make the fixture usefully human-readable for manual triage (matching +a slug like `ef-lent-sunday-1` against its own "First_Sunday_of_Lent" is +faster than cross-referencing sanctoral data by hand). Cost: name_en/pl +now sit in the same unparsed trailing region as the real "+other-slug" +losing-candidate tokens, since neither is "+"-prefixed -- harmless today +because nothing reads `_others` at all, but worth knowing if a future task +ever wants to parse that tail: field 8 and 9 are names, not candidates, +and only tokens from field 10 onward (or 9 onward on a line with no name_pl +edge case -- there is none; both name fields are always present, "-" when +empty) are "+"-prefixed losing candidates. + Regenerate with the same command if lectio's EF calendar logic changes and the fixture needs updating; do not hand-edit this file. |
