Add external evidence on the ceiling of topology-only repair - #7
Merged
yushuosun merged 1 commit intoAug 13, 2026
Conversation
Report an oracle upper-bound measurement from a collaborating project on a different parser and corpus: correcting only the first diverging structure token saturates at +3.97 pp on an exact-cell metric, while 34 of 118 divergent tables recover fully. Include the per-table manifest and its SHA256 so the numbers can be audited independently. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds a new “external evidence” document and accompanying per-table measurement manifest that quantify how much an exact-cell metric can improve when only table topology is oracle-corrected (text frozen), to inform how the Explicit route should report structural vs content-inclusive metrics.
Changes:
- Add an external evidence write-up describing the topology-only repair ceiling study and its reporting implications.
- Add a derived-measurements manifest JSON enumerating the divergent tables and key per-table fields.
- Add a
.sha256checksum file for integrity verification of the manifest.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| docs/external-evidence/TOPOLOGY_REPAIR_CEILING_2026.08.14.1.md | External evidence narrative, results tables, and reporting implications. |
| docs/external-evidence/TOPOLOGY_REPAIR_CEILING_2026.08.14.1.manifest.json | Derived per-table measurements and field semantics for the divergent subset. |
| docs/external-evidence/TOPOLOGY_REPAIR_CEILING_2026.08.14.1.manifest.json.sha256 | Checksum for validating the manifest JSON contents. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+5
to
+7
| External evidence contributed by a collaborating project. It is **not** an | ||
| experiment record of this repository, was produced on a different parser and a | ||
| different corpus, and does not evaluate any route in this repository. It is |
Comment on lines
+22
to
+34
| "field_semantics": { | ||
| "key": "OmniDocBench table-crop identifier", | ||
| "lang": "language label of the table", | ||
| "gt_cells": "fixed denominator for this table", | ||
| "gt_struct_len": "number of ground-truth structure tokens", | ||
| "cor_k0": "correct cells in the free-run output", | ||
| "cor_final": "correct cells after up to k=16 oracle single-token repairs", | ||
| "k_first_struct_exact": "smallest k at which the structure became token-identical to ground truth; null if never", | ||
| "lost_cells_final": "gt_cells - cor_final", | ||
| "first_div_pos": "index of the first diverging structure token in the free run", | ||
| "selfconf_min_margin": "minimum top1-top2 probability margin over structure positions, scored on the model's own output (see companion document)", | ||
| "category": "struct_ok_full_recover | struct_ok_content_lossy | catastrophic" | ||
| }, |
Comment on lines
+144
to
+147
| `TOPOLOGY_REPAIR_CEILING_2026.08.14.1.manifest.json` lists all 118 divergent | ||
| tables with per-table language, ground-truth cell count, score before and after | ||
| repair, the value of `k` at which structure first became exact, and the | ||
| self-confidence minimum margin described in the companion document. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
1 Research question
The Explicit route is topology-only: it defaults to KEEP, keeps text frozen, and
proposes minimal split/merge changes. How much can a metric move when only
topology is corrected and cell content is left exactly as the parser produced it?
2 Hypothesis and changed variable
Hypothesis: correcting the first diverging structure token, then letting the
model continue, recovers most of the loss attributed to structural divergence.
Changed variable: the number of oracle single-token structural corrections
allowed,
kfrom 0 to 16. Everything else is held fixed, including the parser,decoding parameters, denominator, and GPU model.
Result: the hypothesis is false. The curve saturates at +3.97 pp, and the
k=1 gain has a document-cluster bootstrap 95% CI of [-1.64, +3.85] pp, which
contains zero.
The useful part is the three-way split: 34 of 118 divergent tables reach a cell
score of exactly 1.0000 once structure is repaired, and 59 of 118 become
structurally exact after a single correction, matching the
single minimal editcategory in this repository's corpus design. The residual is concentratedelsewhere: 66% of it sits in 20 tables that stay at 0.5766 even after 16 oracle
corrections, 14 of which end up structurally identical to ground truth.
3 Affected CalVer release
Adds
2026.08.14.1documents under a newdocs/external-evidence/directory.No existing release, schema, config, or module is modified.
4 Data roles, sources, licenses, isolation
MinerU2.5-Pro-1.2B.
measurements only: benchmark sample identifiers plus our own scores. No
images, no ground-truth text, no annotations.
its splits, or its holdout. It is not used for training or selection here, so
it cannot leak into any role.
OmniDocBench identifiers, which CONTRIBUTING asks not to rename, so they are
kept verbatim. All project-authored text in this PR is English.
5 Metrics and acceptance criteria
compare(GT, GT)["total_cells"]= 43231 cells over 653 tables. A scoringexception zeroes the whole table, per the official semantics.
repair, so their per-table score must be identical across every
k.Observed: identical for all 535, 0 violations.
single-point repair is insufficient. Observed 13.4%.
check, and a single-table dominance warning (one table is 21% of the residual,
so leave-one-out is mandatory on this data).
6 Validation commands
The measurement itself ran on the collaborating project's cluster and is not
reproducible from this repository. What can be checked here:
Docs-only change; no module, schema, or config is touched.
Why this is offered
The practical suggestion is in section 4 of the document: report structural
metrics and content-inclusive metrics as separate numbers rather than one
combined score. A topology-only route that freezes text should score clearly
on TEDS-Struct and GriTS-Topology, while the oracle ceiling measured here on an
exact-cell metric is +3.97 pp. Separating them shows what the method actually
achieves.
Section 5 of the document lists the limits: one parser, one corpus, one metric,
oracle conditions, and single-table dominance. This is external evidence, not a
claim about this repository, which is why it is filed under
docs/external-evidence/.Section 6 records a caliber error we made ourselves: a "+9.63 pp" upper bound we
cited for a long time turned out to be an arithmetic construction rather than a
measurement. The rule we adopted afterwards is offered as a suggestion.