Trim TODO.md's Open Work section down to actual open items
Deploy / deploy (push) Successful in 1m53s

Cut the intro/priority blurb, dropped the epilogue prose after
"none currently open" (that detail lives in the dated log below),
stripped New Features down to just the features, and removed the
Known Simplifications list entirely since it isn't open work — that
detail already lives as comments in temporal-categories.yml.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LGsATZvfnpQ81HQuoF5JuL
This commit is contained in:
2026-09-05 17:41:41 -04:00
parent 9963a9b72e
commit 1cdb9f9822
+13 -44
View File
@@ -1,58 +1,27 @@
# Open work # Open work
A real backlog, not scattered code comments. Update this file when something Backlog for this repo. Update when something here gets done; add when a new gap turns up.
here gets done, and add to it when new gaps turn up — don't let it drift back
into "only findable by reading commit messages."
## Priority ## Priority
Work in this file follows one methodology, repeated every time a new hour or content type Mechanism first, then a minimal live-verified proof, then bulk content. A section marked
gets built: **mechanism first, then a minimal live-verified proof (1-2 clean dates/entries "mechanism built" but not "full sweep"/"all N done" is mid-pipeline: its next work is more
authored fully, end-to-end) to confirm the mechanism is right, then bulk content content in the same shape, not a design change. The dated log below is that pipeline's record.
authoring/import against the whole calendar once it's trusted.** A section marked "mechanism
built" but not yet "full sweep" or "all N done" is mid-pipeline, not stalled — its next work
is more content in the same already-proven shape, not a design change. This file's dated
build log (below "Open work, in priority order") is the record of that pipeline running
across every hour and content type in this app.
## Open work, in priority order ## Open work, in priority order
1. **Mechanism gaps**a real design/code piece not built yet, blocking any content pass on 1. **Mechanism gaps**none currently open.
it from starting:
- (none currently open — the last one, Paschaltide's "Suffragium Paschale" substitution,
was closed 2026-09-04, see the dated log below)
2. **Minimal-proof-done, bulk content pending**mechanism is built and trusted (a proof 2. **Minimal-proof-done, bulk content pending**none currently open.
date/entry already resolves correctly end-to-end); what's left is authoring/importing more
content in that same shape across the rest of the calendar:
- (none currently open — Lauds/Vespers duplex-majus+ Common-category psalmody reached full
10/10 both hours with `common-of-a-dedication`'s Lauds file, closed 2026-09-05; Matins
Nocturn 3's last 6 unauthored files closed the same day — see the dated log below)
3. **New features (not content mechanism)** — genuinely new product surface, not something a 3. **New features**
content pass is blocked on; each needs its own design pass, not just implementation: - Date picker: `day-nav.ts` only steps a day at a time; no way to jump to an arbitrary
- Date picker: `day-nav.ts` currently only steps a day at a time (prev/next); there's no date without walking there or editing the URL. Needs a calendar-grid picker UI.
way to jump to an arbitrary date without walking there one day at a time or editing the - Audio ("read it to me"): a button per hour/text that plays the office aloud, e.g. via
URL. Needs a calendar-grid picker UI — open, not started. the Web Speech API (stays offline-first). Open questions: bilingual (La/En) voice
- Audio ("read it to me") interface: a button per hour/text that plays the office aloud selection, Latin pronunciation quality. Needs its own design pass first.
instead of requiring reading — e.g. via the Web Speech API (`SpeechSynthesis`), which
would keep this offline-first (no server-side TTS call, no added deploy dependency) but
needs bilingual voice selection (La/En) worked out, and quality for Latin pronunciation
is an open question. Open, not started — needs its own design pass before content/UI work
begins.
4. **Known, deliberate simplifications** — intentional, not bugs, no plan to revisit unless Everything below is the dated build log this priority list is drawn from.
priorities change:
- `temporal-categories.yml`'s `bySeason` mapping is fully live-verified (2026-09-01 sweep);
what's still not independently re-verified is the *privileged-period tier* classification
for a handful of specific stretches: Ash Wednesday and Holy Week are `privileged-feria-
major` on strong prior knowledge, not directly re-checked; the Vigil of Christmas and
Pentecost's own Ember days default to that same major tier as a guess pending
verification; Pentecost's Ember days' actual precedence is flagged in-file as a genuinely
unverified gap, not a guess dressed up as one (Lent's own Ember days *are* verified).
Everything from here down is the dated build log this priority list is drawn from — kept for
the sourcing/verification detail behind each decision, not itself in priority order.
## Content gaps — mechanism built, data incomplete ## Content gaps — mechanism built, data incomplete