feat: alignment pairs a misread sentence with its other reading; a suspect names its witness

spec/05 §5.6 gains a substitution step: an unpaired sentence beside one at
least 0.8 alike (2L/(|a|+|b|) over the lossy projections' code points) is
paired with it, so a misread is one number, equation or word suspect rather
than a dropped and an added one. §5.7 and suspect.schema.json gain an
optional `witness`, checked by doc.suspect.witness. alignment.jsonl gains a
`substitutions` case; the first case is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
alexmandClaude committed 2026-10-16 22:41:15 -04:00
1 parent 9e24ca2306
commit 3836a6c885
9 files changed
+104 -7

No files matched your search

+5
View File
@@ -363,6 +363,11 @@
"description": "A same-document xref names no node.",
"chapter": "spec/22-conformance.md"
},
{
"id": "doc.suspect.witness",
"description": "A suspect names a witness the package does not have.",
"chapter": "spec/22-conformance.md"
},
{
"id": "doc.table.header",
"description": "A column or row header path names a node that is not a cell.",