Skip to content

Spec 002 T019: the comparison reads today's report - #212

Merged
adamjohnwright merged 1 commit into
mainfrom
spec002/t019-reader
Nov 13, 2026
Merged

adamjohnwright merged 1 commit into
mainfrom
spec002/t019-reader

Conversation

@adamjohnwright

Copy link
Copy Markdown
Contributor

Spec 002 T019 (specs/002-analysis-report/tasks.md): pdf-export compare-report taught today's report, from its real files on T019's run. The run itself is recorded in a separate PR (research R9).

What it now reads in today's form

  • Parts numbered (4. Most significant pathways), "Pathways details", and a contents list that names the parts at a size between the body's and theirs (each part is taken at its largest heading).
  • The properties as sentences, set at a heading's size.
  • Tables whose cells are each shaded on their own: the reader took them for a figure and left their text out. A cluster of painted paths, no image, each at most 40 pt tall, side by side in rows without overlapping, is now a table (banded in read.ts). This also changes spec 001's reader; its tests pass.
  • The pathways' table: 10 / 536, thousands with commas, ratios to three places, p-values with two-digit exponents, and a name's lines centred beside its statistics. Two statistics agree where the values each print could have been rounded from overlap (samePrinted); counts must be equal.
  • Each detail at 1.Name (R-HSA-1), over two lines when long. Also: "Cellular compartments:" and facts ending in a full stop, words hyphenated at a line's end, and "References" over an empty list. References hang and print their authors in another form, so they are compared from their year in brackets on. The edit history's header repeats on each page, and its names are compared as their words, Surname I against Surname, I.
  • The identifiers found (several entries a row under Input <Resource> Id) and not found (several a row).

Fixed on pdf-export's side

  • A row's statistics are read by their cells: a name such as Interleukin-4 touched the first statistic, and was read as found 46.
  • The notes under the table end it.
  • A figure's stray labels, set under 0.6 of the body's size, are left out.

Tests

  • test/compare/today-form.ts prints a report in today's form (placeholders only) from the stub's model.
  • The same content agrees with pdf-export's report. A planted difference in each part is found: a property, a statistic, compartments, an edit's names, a reference, an identifier found, and one not found.
  • Unit tests cover the shaded table, the printed statistics, edit names, entries a row, and the repeated header.
  • 24 mutants, one for each change. Each was seen failing a test. Two that survived at first got tests (the cover's link form, a name touching its statistic). One branch no test could reach was removed.

Interactors and expression values in today's form are not read here. The run's token had neither, so how today's prints them is not known. A part it cannot read shows as a difference.

🤖 Generated with Claude Code

Taught from today's real files on T019's run (kept outside the repository):
its numbered parts and contents list; its properties as sentences; its
tables' cells each shaded on its own, which the reader took for a figure
and so left their text out; the pathways' table's `10 / 536`, commas,
ratios to three places and two-digit exponents, with a name's lines
centred beside its statistics, a statistic agreeing where the values the
two prints could be rounded from overlap; each detail at `1.Name (R-HSA-1)`,
its facts ending in a full stop, words hyphenated at a line's end,
"References" over nothing, references compared from their year on, the
edit history's header repeated on each page and its names compared as
words; the identifiers found and not found several a row. On pdf-export's
side, a row's statistics read by their cells, the notes under the table
ending it, and a figure's stray small labels left out.

Tests print a report in today's form from the stub's model and compare it
with pdf-export's: the same content agrees, and a planted difference in each
part is found. Each change seen failing on its own mutant (24).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@adamjohnwright
adamjohnwright merged commit e77c2df into main Nov 13, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant