Pair Latin and English verses for bilingual psalmody #114

Closed
opened 2026-07-01 00:54:29 +00:00 by manlycucumber · 1 comment
manlycucumber commented 2026-07-01 00:54:29 +00:00 (Migrated from github.com)

Problem

The assembler must present psalms verse-by-verse in both languages. A pairing layer keyed by psalm/verse is needed to align the two psalters.

Acceptance criteria

  • Each verse pairs the Clementine Latin with the Douay English
  • Mismatched verse counts are detected and reported
  • Pairing is exposed to the assembler
  • Tests cover an aligned and a mismatched psalm

Notes

Versification differences between psalters must be handled.

## Problem The assembler must present psalms verse-by-verse in both languages. A pairing layer keyed by psalm/verse is needed to align the two psalters. ## Acceptance criteria - [ ] Each verse pairs the Clementine Latin with the Douay English - [ ] Mismatched verse counts are detected and reported - [ ] Pairing is exposed to the assembler - [ ] Tests cover an aligned and a mismatched psalm ## Notes Versification differences between psalters must be handled.

Done. Pairing is by the edition-invariant psalm:verse key, with mismatch detected and reported rather than silently aligned.

  • 04f37a2detectVersificationMismatch() (tools/generator/src/ingest.mjs:187), reporting alignment, orphans and count divergence
  • bebb2a4 — the report is emitted per build to data/corpus/text/versification-report.json (build.mjs:304-319: aligned, onlyInClementine, onlyInDouay, countDiffs)

ACs: each verse pairs Latin with English ✓; mismatches detected and reported — exactly five psalms (15, 19, 42, 125, 135) partition identical text across different verse counts and are surfaced, never silently paired ✓; pairing exposed to the assembler (build.mjs:779) ✓; tests cover an aligned and a mismatched psalm — tools/generator/test/ingest.test.mjs:83, "detectVersificationMismatch reports alignment, orphans, and count divergence (#114)" ✓.

Done. Pairing is by the edition-invariant `psalm:verse` key, with mismatch **detected and reported** rather than silently aligned. - `04f37a2` — `detectVersificationMismatch()` (`tools/generator/src/ingest.mjs:187`), reporting alignment, orphans and count divergence - `bebb2a4` — the report is emitted per build to `data/corpus/text/versification-report.json` (`build.mjs:304-319`: `aligned`, `onlyInClementine`, `onlyInDouay`, `countDiffs`) ACs: each verse pairs Latin with English ✓; mismatches detected and reported — exactly five psalms (15, 19, 42, 125, 135) partition identical text across different verse counts and are surfaced, never silently paired ✓; pairing exposed to the assembler (`build.mjs:779`) ✓; tests cover an aligned and a mismatched psalm — `tools/generator/test/ingest.test.mjs:83`, "detectVersificationMismatch reports alignment, orphans, and count divergence (#114)" ✓.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Directorium/Core#114
No description provided.