Add 1 Cor, 2 Cor, 1 Peter, 1 John; fix a repeated canonical-key bug
Deploy / deploy (push) Successful in 1m52s

Confirmed Leviticus/Numbers/Deuteronomy genuinely absent from Tempora
(precise awk-based survey, not a loose grep). Added 1cor (Maundy
Thursday's own Institution-narrative Nocturn 3), 2cor (Epiphany II
Sunday), 1pet and 1joan (Paschaltide Sunday sets already partly used
for jac/jas).

Caught a repeat of the same canonical-key mistake from the previous
commit: the jas entry should have been keyed jac (BOOK_ALIASES maps
jas->jac). Fixed, and this time audited every single key in the file
programmatically against BOOK_ALIASES rather than just the keys
touched this pass -- confirmed clean.

45 of 72 books now seeded. npm test (2025 passed) and tsc --noEmit
pass; live-verified through getBiblePlanReadings.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AGjUyhUZJaSjiniEmnLdak
This commit is contained in:
2026-09-04 18:31:13 -04:00
parent c32fabb54d
commit ff87aff240
2 changed files with 122 additions and 9 deletions
+35 -6
View File
@@ -26,15 +26,16 @@ across every hour and content type in this app.
date/entry already resolves correctly end-to-end); what's left is authoring/importing more 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: content in that same shape across the rest of the calendar:
- Matins Nocturn 2/3 responsory pools (both new, 2026-09-04 — see "Matins responsory pools: - Matins Nocturn 2/3 responsory pools (both new, 2026-09-04 — see "Matins responsory pools:
per-book expansion + new per-Common-category pool" below, and its four follow-up entries): per-book expansion + new per-Common-category pool" below, and its five follow-up entries):
the per-book pool now covers 41 of 72 books, keyed by canonical form where it differs from the per-book pool now covers 45 of 72 books, keyed by canonical form where it differs from
the bible-plan YAML's own book code (`isa`, `gen`, `jer`, `exod`, `prov`, `sir`, `sap`, `tob`, the bible-plan YAML's own book code (`isa`, `gen`, `jer`, `exod`, `prov`, `sir`, `sap`, `tob`,
`ezek`, `dan`, `1mach`, `2mach`, `1reg`, `2reg`, `3reg`, `4reg`, `zach`, `amos`, `agg`, `jdth`, `ezek`, `dan`, `1mach`, `2mach`, `1reg`, `2reg`, `3reg`, `4reg`, `zach`, `amos`, `agg`, `jdth`,
`esth`, `job`, `eccl`, `hab`, `joel`, `soph`, `abd`, `jon`, `mal`, `osee`, `mich`, `nah`, `esth`, `job`, `eccl`, `hab`, `joel`, `soph`, `abd`, `jon`, `mal`, `osee`, `mich`, `nah`,
`lam`, `act`, `apoc`, `jas`, `heb`, `luc`, `matt`, `joan`, `marc` — 32 books remaining, 9 of `lam`, `act`, `apoc`, `jac`, `heb`, `luc`, `matt`, `joan`, `marc`, `1cor`, `2cor`, `1pet`,
them already confirmed genuinely absent from the reference source); the new per-Common- `1joan` — 27 books remaining, 12 of them already confirmed genuinely absent from the
category pool covers 19/19 real Commune categories (every category actually used by a saint reference source); the new per-Common-category pool covers 19/19 real Commune categories
except angel/evangelist/vigil, which have no Commune responsory file to source from) — this (every category actually used by a saint except angel/evangelist/vigil, which have no
Commune responsory file to source from) — this
is the one that closes most of the 272-of-355 nocturn-readings files that had no `responsory` is the one that closes most of the 272-of-355 nocturn-readings files that had no `responsory`
at all. Bible-plan TSV content also isn't yet at all. Bible-plan TSV content also isn't yet
in a test table (see "Bible-plan TSV — bulk conversion done" below). in a test table (see "Bible-plan TSV — bulk conversion done" below).
@@ -5913,3 +5914,31 @@ than own-translating six-plus books in one pass. 32 books remain (9 of them the
genuinely-absent `bar`/Josue/Judices/Ruth/Chronicles/Esdras-Nehemias/Canticles): Leviticus/ genuinely-absent `bar`/Josue/Judices/Ruth/Chronicles/Esdras-Nehemias/Canticles): Leviticus/
Numbers/Deuteronomy, Romans, 1-2 Corinthians, Galatians, Ephesians, Philippians, Colossians, 1-2 Numbers/Deuteronomy, Romans, 1-2 Corinthians, Galatians, Ephesians, Philippians, Colossians, 1-2
Thessalonians, 1-2 Timothy, Titus, Philemon, 1-2 Peter, 1-3 John, Jude not yet attempted. Thessalonians, 1-2 Timothy, Titus, Philemon, 1-2 Peter, 1-3 John, Jude not yet attempted.
### Matins responsory pools: last real batch (1 Cor, 2 Cor, 1 Peter, 1 John), a repeated key bug (2026-09-04)
Confirmed Leviticus/Numbers/Deuteronomy genuinely absent from Tempora (re-checked precisely with
the `awk`-based Lectio-citation survey, not a loose grep — no hit under any Latin form of the
book's name). Added `1cor` (Maundy Thursday's own Nocturn 3, Latin/Tempora/Quad6-4.txt
Responsory7-9 — the Institution narrative, distinct from that same file's Responsory1-3 already
used for `lam`), `2cor` (Epiphany II Sunday, its own ordinary rank, Epi2-0.txt), `1pet` (1 Peter's
own reading week `@`-references the ordinary Paschaltide Sunday psalm-set already used for `jac`
below — R4-6 of that same Pasc4-0.txt), and `1joan` (Sunday within the Ascension Octave, Pasc6-0.txt,
the Paraclete responsory, only 1 entry).
**A repeated mistake, caught by self-audit this time**: the previous entry's `jas` key was wrong —
same bug as the 12-key fix two entries up. `BOOK_ALIASES` maps bible-plan's `jas` to canonical
`jac`; the pool needed `jac:`, not `jas:`. Fixed, and re-verified through `getBiblePlanReadings`
(not a direct call) on `easter-6`/Monday, 2026-05-11 (`Jas 2` now resolves a real responsory).
**Ran a full audit this time**: checked every single current pool key against `BOOK_ALIASES`
programmatically (not just the ones touched this pass) — confirmed clean, zero raw-alias-source
keys remain anywhere in the file.
45 of 72 bible-plan books now seeded. `npm test` (2025 passed) and `tsc --noEmit` both pass.
Remaining 27, none easily gettable this pass: 12 confirmed genuinely absent from the reference
source (`bar`, Canticles, Joshua, Judges, Ruth, 1-2 Chronicles, Ezra, Nehemiah, Leviticus, Numbers,
Deuteronomy); 15 with real Latin but no reference-engine English anywhere (Romans, Galatians,
Ephesians, Philippians, Colossians, Titus, Philemon, 2 Thessalonians, 2 Timothy, 2 Peter, 2-3 John,
Jude). Own-translating any of these would be the next step, if wanted — not attempted here per the
established "only seed real bilingual source" pattern.
+87 -3
View File
@@ -4,7 +4,7 @@
# chapter/verse historically, so a book-level match is the right # chapter/verse historically, so a book-level match is the right
# granularity, not a gap to fill in later with exact citations. # granularity, not a gap to fill in later with exact citations.
# #
# Seeded, not a full pool — 41 of the 72 books actually used in the user's # Seeded, not a full pool — 45 of the 72 books actually used in the user's
# own bible-plan (data/hours/bible-plan/*.yml), the rest deferred bulk # own bible-plan (data/hours/bible-plan/*.yml), the rest deferred bulk
# content (see TODO.md). Cycled in order # content (see TODO.md). Cycled in order
# per-day when a Nocturn-1 reading's book has more than one candidate # per-day when a Nocturn-1 reading's book has more than one candidate
@@ -683,11 +683,11 @@ apoc:
la: "Et vox de throno exívit, dicens: Laudem dícite Deo nostro, omnes Sancti ejus, et qui timétis Deum, pusílli et magni." la: "Et vox de throno exívit, dicens: Laudem dícite Deo nostro, omnes Sancti ejus, et qui timétis Deum, pusílli et magni."
en: "And a voice came out from the throne, saying: Give praise to our God, all saints of Him that fear him, little and great." en: "And a voice came out from the throne, saying: Give praise to our God, all saints of Him that fear him, little and great."
# `jas` sourced from Latin/Tempora/Pasc4-0.txt, English/Tempora/Pasc4-0.txt # `jac` sourced from Latin/Tempora/Pasc4-0.txt, English/Tempora/Pasc4-0.txt
# (Easter IV Sunday, James' own reading week) — the ordinary Paschaltide # (Easter IV Sunday, James' own reading week) — the ordinary Paschaltide
# Sunday psalm-based responsory set (Ps 136/76/21), not James-specific # Sunday psalm-based responsory set (Ps 136/76/21), not James-specific
# thematically, same "loose match" convention used throughout this file. # thematically, same "loose match" convention used throughout this file.
jas: jac:
- r: - r:
la: "Si oblítus fúero tui, allelúja, obliviscátur mei déxtera mea: * Adhǽreat lingua mea fáucibus meis, si non memínero tui, allelúja, allelúja." la: "Si oblítus fúero tui, allelúja, obliviscátur mei déxtera mea: * Adhǽreat lingua mea fáucibus meis, si non memínero tui, allelúja, allelúja."
en: "If I forget thee, Alleluia, let my right hand forget me. * If I do not remember thee, let my tongue cleave to the roof of my mouth, alleluia, alleluia." en: "If I forget thee, Alleluia, let my right hand forget me. * If I do not remember thee, let my tongue cleave to the roof of my mouth, alleluia, alleluia."
@@ -783,3 +783,87 @@ marc:
v: v:
la: "Et valde mane una sabbatórum, véniunt ad monuméntum, orto jam sole." la: "Et valde mane una sabbatórum, véniunt ad monuméntum, orto jam sole."
en: "And very early in the morning, the first day of the week, they came unto the sepulchre, at the rising of the sun." en: "And very early in the morning, the first day of the week, they came unto the sepulchre, at the rising of the sun."
# `1cor` sourced from Latin/Tempora/Quad6-4.txt, English/Tempora/Quad6-4.txt,
# Responsory7-9 (Maundy Thursday's own Nocturn 3 — 1 Cor 11's Institution
# narrative, distinct from that same file's Responsory1-3 already used
# for `lam` above, its own Nocturn 1 Lamentations content). Genuinely
# proper content for the feast, not an override.
1cor:
- r:
la: "Eram quasi agnus ínnocens: ductus sum ad immolándum, et nesciébam: consílium fecérunt inimíci mei advérsum me, dicéntes: * Veníte, mittámus lignum in panem ejus, et eradámus eum de terra vivéntium."
en: "I was like a gentle lamb that is brought to the slaughter, and I knew not that mine enemies had devised devices against me, saying: * Come, let us put (poison of a deadly) tree into his bread, and let us cut him off from the land of the living."
v:
la: "Omnes inimíci mei advérsum me cogitábant mala mihi: verbum iníquum mandavérunt advérsum me, dicéntes."
en: "All they that hate me devised my hurt against me: they plotted together to do me evil, saying:"
- r:
la: "Una hora non potuístis vigiláre mecum, qui exhortabámini mori pro me? * Vel Judam non vidétis, quómodo non dormit, sed festínat trádere me Judǽis."
en: "Could ye not watch with Me one hour, ye that called one on the other to die for Me? * Or see ye not Judas, how that he sleepeth not, but maketh haste to betray Me to the Jews?"
v:
la: "Quid dormítis? súrgite, et oráte, ne intrétis in tentatiónem."
en: "Why sleep ye? Rise, and pray, lest ye enter into temptation."
- r:
la: "Senióres pópuli consílium fecérunt, * Ut Jesum dolo tenérent, et occíderent: cum gládiis et fústibus exiérunt tamquam ad latrónem."
en: "The elders of the people consulted * That they might take Jesus by subtilty, and kill Him they came out, as against a thief, with swords and staves."
v:
la: "Collegérunt pontífices et pharisǽi concílium."
en: "The chief Priests and the Pharisees gathered a council."
# `2cor` sourced from Latin/Tempora/Epi2-0.txt, English/Tempora/Epi2-0.txt
# (Epiphany II Sunday, its own ordinary rank, 2 Corinthians' own reading
# week).
2cor:
- r:
la: "Dómine, ne in ira tua árguas me, neque in furóre tuo corrípias me: * Miserére mei, Dómine, quóniam infírmus sum."
en: "O Lord, rebuke me not in thine anger, neither chasten me in thine hot displeasure. * Have mercy upon me, O Lord, for I am weak."
v:
la: "Timor et tremor venérunt super me, et contexérunt me ténebræ."
en: "Fearfulness and trembling are come upon me, and darkness hath overwhelmed me."
- r:
la: "Deus, qui sedes super thronum, et júdicas æquitátem, esto refúgium páuperum in tribulatióne: * Quia tu solus labórem et dolórem consíderas."
en: "O God, Which satest in the throne judging right, be Thou a refuge for the poor, a refuge in times of trouble. * For Thou alone beholdest mischief and spite."
v:
la: "Tibi enim derelíctus est pauper, pupíllo tu eris adjútor."
en: "The poor leaveth himself unto thee; Thou wilt be the helper of the fatherless."
- r:
la: "A dextris est mihi Dóminus, ne commóvear: * Propter hoc dilatátum est cor meum, et exsultávit lingua mea."
en: "The Lord is at my right hand, I shall never be moved. * Therefore my heart is glad, and my tongue rejoiceth."
v:
la: "Dóminus pars hereditátis meæ, et cálicis mei."
en: "The Lord is the portion of mine inheritance, and of my cup."
# `1pet` sourced from Latin/Tempora/Pasc4-0.txt, English/Tempora/Pasc4-0.txt,
# Responsory4-6 (1 Peter's own reading week, Pasc5-2.txt, `@`-references
# these three — the same ordinary Paschaltide Sunday psalm-set already
# used for `jas` above, R1-3 there, R4-6 here).
1pet:
- r:
la: "In ecclésiis benedícite Deo, allelúja: * Dómino de fóntibus Israël, allelúja, allelúja."
en: "Bless ye God in the congregations, alleluia. * Even the Lord, ye that are of the fountains of Israel, alleluia, alleluia."
v:
la: "Psalmum dícite nómini ejus, date glóriam laudi ejus."
en: "Sing forth the honour of His Name, make His praise glorious."
- r:
la: "In toto corde meo, allelúja, exquisívi te, allelúja: * Ne repéllas me a mandátis tuis, allelúja, allelúja."
en: "With my whole heart, alleluia, have I sought thee, alleluia. * O let me not wander from thy commandments, alleluia, alleluia."
v:
la: "Benedíctus es tu, Dómine, doce me justificatiónes tuas."
en: "Blessed art Thou, O Lord; teach me thy statutes."
- r:
la: "Hymnum cantáte nobis, allelúja: * Quómodo cantábimus cánticum Dómini in terra aliéna? allelúja, allelúja."
en: "Sing us a song, alleluia. * How shall we sing the Lord's song in a strange land, alleluia, alleluia."
v:
la: "Illic interrogavérunt nos, qui captívos duxérunt nos, verba cantiónum."
en: "There they that carried us away captive required of us a song."
# `1joan` sourced from Latin/Tempora/Pasc6-0.txt, English/Tempora/Pasc6-0.txt,
# Responsory8 (Sunday within the Octave of the Ascension, 1 John's own
# reading week — Paraclete/Holy Spirit theme, fitting for the approach to
# Pentecost). Only 1 entry.
1joan:
- r:
la: "Si enim non abíero, Paráclitus non véniet ad vos: si autem abíero, mittam eum ad vos. * Cum autem vénerit ille, docébit vos omnem veritátem, allelúja."
en: "For if I go not away, the Comforter will not come unto you; but if I depart, I will send Him unto you; * And when He is come, He will guide you into all truth. Alleluia."
v:
la: "Non enim loquétur a semetípso: sed quæcúmque áudiet, loquétur: et quæ ventúra sunt, annuntiábit vobis."
en: "For He shall not speak of Himself; but whatsoever He shall hear, that shall He speak and He will show you things to come."