Translation Witness (Stage 5 Reference Material Collection)
Collect and normalize PD English translations as reference material for one target text.
This skill is the Stage 5 owner for witness collection.
Critical Policy
Witnesses are NEVER alignment targets. Witnesses are NEVER versified.
Existing PD translations serve as:
- Adversarial comparison material during Stage 6a translation generation
- Contextual sense disambiguation for Stage 8 interlinear work
- Optional display alternatives in the reader (shown as-is, without structural modification)
Witnesses are NOT:
- Targets for DP alignment
- Targets for range alignment
- Targets for direct mapping
- Structurally modified to fit Greek segmentation
- Versified or given verse-aligned editions in the DB
Row view is unavailable for witnesses. Only versified (generated) translations can render in row view, because row view requires 1:1 structural correspondence with Greek. Witnesses have arbitrary structure.
The generated translation (Stage 6a) is always the primary English content. Witnesses are supplementary reference material.
Reference-preserving import (Path A)
Witnesses that carry native reference markers matching the Greek reference system may be imported as reader-display editions. This is not structural modification — it is parsing what the witness already provides.
Supported import formats (set in catalog format field):
ref-text-tsv—BookName Chapter:Verse\tText(e.g., John witnesses)ref-bracket-prose—[ref] textwith optional headers/comments (e.g., Perrin, Farquharson)structured-json—{"segments": [{"ref":"...", "text":"..."}]}(e.g., Hymn witnesses)chapters-json— legacy{"chapters": {"1": [{"verse":1, "text":"..."}]}}format
Import is blocked (with a warning) if <50% of witness references match Greek references (direct or parent-prefix match).
What is NOT permitted
- Forcing alignment on witnesses that lack native reference markers
- Splitting or merging witness segments to match Greek granularity
- Creating new reference systems that don't exist in the source text
Quick Status
Witness dirs: !find ${LYCEUM_TEXTS_DIR:-output/texts} -path '*/witnesses' -type d 2>/dev/null | wc -l
English candidate catalogs: !find ${LYCEUM_TEXTS_DIR:-output/texts} -path '*/sources/english_candidates.json' 2>/dev/null | wc -l
Commands
/translation-witness gather [work]— Normalize the available English witness sources into comparable artifacts/translation-witness classify [work]— Classify witness usefulness by role (adversarial comparison, glossing, display)/translation-witness select [work]— Choose primary witnesses for each downstream use case/translation-witness status [work]— Summarize witness coverage and role assignments
Target: $ARGUMENTS
Owned Responsibilities
Owns
- PD English witness collection and normalization
- Literalness and quality notes per witness
- Role classification (adversarial, glossing, display)
- Witness catalog with provenance
Does not own
- Translation generation (Stage 6a — translation-synthesis)
- Structural alignment of any kind (Stage 6b — versify)
- Interlinear/gloss generation (Stage 8)
- Source acquisition beyond English witnesses (Stages 1-4)
Witness Role Classes
Each witness should be classified for its usefulness in one or more roles.
These are values for the roles array field in catalog.json (e.g. "roles": ["adversarial-comparison", "reader-display"]):
adversarial-comparison
- Literal enough to catch errors in the generated translation
- Follows Greek meaning closely (even if style is awkward)
- Useful for detecting mistranslations, hallucinations, omissions
- Primary role — at least one witness must qualify
glossing-reference
- Useful for contextual sense disambiguation in Stage 8
- May have good vocabulary choices that inform gloss selection
- Doesn't need to be structurally aligned
reader-display
- Suitable as an optional literary/idiomatic alternative in the reader
- Displayed as-is without structural modification
- May segment differently than Greek (that's acceptable for display)
versification-candidate
- Witness has native reference markers that match the Greek reference system (same scheme, same granularity)
- Witness segment count is within 10% of Greek segment count (after sub-segmentation, if applicable)
- Witness is literal enough for learner use — not a loose paraphrase or literary adaptation
- Witness is public domain
- Witness text is complete (no missing chapters or sections)
A versification-candidate witness may be directly versified by Stage 6 without generating a new translation. This is the fast path: if automated versification succeeds (100% coverage, 1:1 mapping with Greek segments), the witness becomes the versified edition and Stage 6a generation is skipped entirely.
Criteria that disqualify a witness from this role:
- Reference system doesn't match Greek (e.g., different chapter/verse numbering)
- Segment count diverges by >10% from Greek
- Translation is too literary/paraphrastic (e.g., Pope's Iliad)
- Translation merges or splits segments relative to Greek structure
- Incomplete coverage
A witness can hold versification-candidate alongside other roles (e.g., adversarial-comparison).
limited-use
- Available but not strongly useful for any of the above
- Document why (too paraphrastic, incomplete, etc.)
Important note
This classification replaces the old "alignment fitness" classification (direct-match, DP-alignable, range-only, unsuitable). Those categories are obsolete — we no longer align witnesses.
Workflows
/translation-witness gather
Collect and normalize available PD English translations.
For each witness, record
- Source identity and URL
- Translator and edition metadata
- Publication year and license/PD status
- Literalness notes (how closely it follows Greek)
- Structural notes (how it segments — informational only)
- Quality notes (readability, completeness)
Output location
$LYCEUM_TEXTS_DIR/<slug>/
├── witnesses/
│ ├── perrin-1919.txt
│ ├── long-1862.txt
│ └── ...
├── sources/
│ └── english_candidates.json
Witness file format
Preserve the witness text as-is. Do not force it into Greek segmentation. Include metadata header if useful, but the text should be readable.
/translation-witness classify
Classify each witness by role usefulness.
Evaluation criteria
For adversarial-comparison:
- How literal is the translation?
- Does it preserve Greek word order when possible?
- Does it translate idioms literally or paraphrase?
- Can it catch generated translation errors?
For glossing-reference:
- Does it have good English equivalents for Greek terms?
- Is vocabulary consistent?
- Could it inform word-level gloss choices?
For reader-display:
- Is it readable and natural English?
- Is it complete (no major omissions)?
- Would users find it valuable as an alternative view?
Output
Add classification to witness catalog (schema v2):
{
"schema_version": 2,
"work": "work-slug",
"witnesses": [
{
"id": "perrin-1919",
"title": "Perrin (1919)",
"translator": "Bernadotte Perrin",
"year": 1919,
"license": "Public Domain",
"file": "perrin-1919.txt",
"format": "ref-bracket-prose",
"roles": ["adversarial-comparison", "reader-display"],
"literalness": "moderately literal",
"notes": "..."
}
]
}
Catalog schema v2 rules:
file: single string, relative towitnesses/dir (nofiles.json/local_filevariants)format: one ofref-text-tsv,ref-bracket-prose,structured-json,chapters-jsonroles: flat[]string(not nested objects)title: required — used as edition label in the reader
/translation-witness select
Assign witnesses to roles for downstream use.
Required selections
- Adversarial comparison (Stage 6a): At least one witness must be selected. This is mandatory — Stage 6a cannot proceed without a comparison witness.
- Glossing reference (Stage 8): Optional but recommended. Multiple witnesses improve confidence.
- Reader display: Optional. Include if witness adds value for users.
If no suitable adversarial witness exists
- Document the gap explicitly
- Stage 6a can still proceed, but generated translation confidence is lower
- Consider gathering additional witnesses or proceeding with caution
/translation-witness status
Summarize current state.
Report includes
- Witnesses collected
- Role classifications
- Whether adversarial-comparison witness exists
- Whether Stage 6a and Stage 8 have sufficient reference material
- Gaps or concerns
Reader Display Policy
Witnesses selected for reader-display are shown in the Lyceum reader as-is, without structural modification.
What this means
- The witness text keeps its original segmentation
- It may not align 1:1 with Greek segments
- The reader may display it in a side panel or expandable section
- It is clearly labeled as the translator's work (e.g., "Perrin 1919")
What we do NOT do
- Force witnesses into verse-by-verse alignment with Greek
- Run DP/range alignment to create pseudo-aligned witnesses
- Split or merge witness segments to match Greek
- Create "verse-aligned" versions of literary translations
The generated translation (Stage 6a) provides the verse-aligned English. Witnesses provide context and alternatives.
Priority Texts
Texts where multiple witnesses improve confidence:
| Text | Recommended witnesses |
|---|---|
| Homer (Iliad/Odyssey) | Murray, Butler, additional if available |
| Meditations | Long, Haines |
| Anabasis | Brownson, Dakyns |
| Apology | Jowett, Fowler |
| John | OpenGNT, ASV, KJV as secondary |
Verification Contract
This skill follows the Stage 5 contract.
Verify
- Witness catalog exists with provenance
- Each witness has
rolesarray with at least one classification - At least one adversarial-comparison witness exists (or gap documented)
- Witnesses are preserved as-is (not structurally modified)
Minimum evidence
- Witness files under
witnesses/ - Witness catalog with
rolesassignments - Classification report
Pass criteria
- Provenance recorded for each witness
- Role assignments explicit and justified
- Adversarial-comparison witness available for Stage 6a
- No attempts to align or modify witness structure
Failure examples
- Witnesses collected but roles not assigned
- No adversarial-comparison witness and gap not documented
- Witness text modified to fit Greek structure
- Alignment fitness classified (obsolete pattern)
Required next steps
After witness collection:
/translation-synthesis run <work>to generate the verse-aligned translation- Witnesses used for adversarial comparison during generation
Verification
After completing this stage, run the automated verification script:
bash scripts/verify_stage_5.sh "${SLUG}"
Exit codes: 0=PASS (advance), 1=FAIL (block), 2=WARN (advance with notes). The orchestrator runs this automatically; when executing manually, check the output for [FAIL] or [WARN] lines.
Key Files
| File | Purpose |
|---|---|
$LYCEUM_TEXTS_DIR/<slug>/witnesses/ |
Witness text files |
$LYCEUM_TEXTS_DIR/<slug>/sources/english_candidates.json |
Witness catalog |
.pi/skills/translation-synthesis/SKILL.md |
Stage 6a (uses witnesses for comparison) |
.pi/skills/versify/SKILL.md |
Stage 6b (validates generated translation) |
docs/text-pipeline-master-plan-2026-03-13.md |
Pipeline architecture |
docs/reader-reliability-and-translation-accuracy-charter-2026-03-13.md |
Multi-witness motivation |