diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-12 11:38:35 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-12 11:38:35 +0200 |
| commit | e19adb9c7ea369cafe76e7eff50e9248a4a954d0 (patch) | |
| tree | 57824e121606286ebdf8fff68439986dd3300eae /dune | |
| parent | 0506388da160a15ceddb0cea1a697d737103d5c4 (diff) | |
| parent | 36df2bd0af9a555a09334e14b0d89118be1dbbc0 (diff) | |
| download | colitur-e19adb9c7ea369cafe76e7eff50e9248a4a954d0.tar.gz colitur-e19adb9c7ea369cafe76e7eff50e9248a4a954d0.zip | |
Merge branch 'ef-plan3': Plan 3, the EF resolution engine
Adds the rite-parameterised Precedence resolver, Liturgical_day, Rite,
and Calendar (year as the primitive, because transfers need whole-year
knowledge), the full EF precedence ruleset (RG 91's 28-entry table,
occurrence RG 92-95, commemorations RG 108-111, transfers RG 96-98),
322 bootstrapped sanctoral entries, colitur day <year>, and validation
layers 3-5.
Layer 3 diffs 16801 days against lectio; layer 4 diffs 730 days against
missalemeum; layer 5 pins ~30 dates on the known-tricky years. Both
comparison layers carry cited allow-lists that name the governing RG
paragraph and which engine is right.
The oracle layer earned its place immediately: Holy Thursday was violet
in colitur and lectio alike, because colitur's data was bootstrapped
from lectio and both carried the same error. Only an independent source
could see it. RG 128(b) and RG 122 name it white.
Diffstat (limited to 'dune')
| -rw-r--r-- | dune | 24 |
1 files changed, 24 insertions, 0 deletions
@@ -0,0 +1,24 @@ +; Makes data/ef/*.sexp part of the DEFAULT build target (`dune build`, no +; args), not only whatever individual stanzas elsewhere happen to declare as +; their own deps. Without this, `rm -rf _build && dune build && dune exec +; colitur -- day 2026` failed: bare `dune build` resolves to the workspace +; root's own `default` alias, which -- absent this file -- is implicitly +; bound to `@install` alone and never reaches data/ef/dune's own `default` +; alias (that alias only participates in an EXPLICIT `@default`/`@dir` +; recursive request, e.g. `dune build @default`, not in the plain no-target +; invocation; verified empirically -- see the task report). `test/dune`'s +; cram stanza masked this: it declares its own (deps ../data/ef/*.sexp), +; which materialises them as a side effect of `dune build @runtest`, so the +; test suite could not have caught this on its own -- it took a genuinely +; clean rebuild to surface it. +; +; (alias_rec install) keeps whatever `default` would otherwise resolve to +; (the package's own install artifacts -- executables, libraries, reached +; recursively through every subdirectory's own `install` alias) so this +; ADDS a requirement rather than replacing dune's own default behaviour. +(alias + (name default) + (deps + (alias_rec install) + data/ef/sanctoral.sexp + data/ef/adjustments.sexp)) |
