LLLin000
4c788b8288
revert: undo two adversarial-review changes to _recover_figure_heading_prefix, record issue in project/
...
Reverts 5e1040b (bbox bound) and f5f8294 (multi-column scan).
Original single-next-line check restored.
Issue documented: project/current/pending-issues/media-asset-caption-prefix-multi-column.md
2026-07-03 02:12:50 +08:00
LLLin000
1791edd7cd
docs: record round 2 truth audit + 3 bug fixes for 37LK5T97
2026-07-02 15:02:42 +08:00
LLLin000
5af3a1f8ca
feat: asset-internal figure number recovery for rotated vector figures
...
adds a metadata-only recovery pass that scans matched figure assets for
internal PDF line labels ("Figure N.", "Fig. N:") when the figure lacks
a figure_number.
new components:
- extract_pdf_lines_normalized() in ocr_pdf_spans.py — reads PDF rawdict
lines page-by-page, normalizes coordinates to OCR space
- _recover_missing_figure_numbers_from_assets() — inventory pass between
synthetic fallback and dedup
- _needs_asset_internal_figure_number_recovery() — gate supporting both
synthetic_figure and figure_unknown entries
- _looks_like_internal_figure_label() — regex-based label detection
- _asset_edge_band_score() — geometric rejection for center-positioned
lines or lines covering >15% asset area
- page_pdf_lines_by_page parameter added to build_figure_inventory()
verification: U746UJ7G figure_unknown_000 -> figure_002 with recovered
label "Plot of Criteria Time". 428 regression tests pass (6 new).
2026-07-02 03:00:33 +08:00
LLLin000
d41712d7bc
fix: normalize rotated figure captions before normal matching
...
- preserve PyMuPDF dir/wmode in span_metadata and bump span backfill version
- promote rotated vision_footnote figure descriptions into normal legend prematch
- normalize rotated caption/asset regions before score_figure_match
- carry rotation_correction_deg into matched figures and cropped renders
- use LANCZOS resampling on rotated figure crops to avoid aliasing
- keep synthetic fallback as last resort, reusing the same rotation metadata
2026-07-02 02:28:56 +08:00
LLLin000
03d2bcafdb
docs: update project records for 3 audit fix commits
...
- Timeline: 3 new commits + Commit 3 pre-existing
- §9.18: mark execution complete
- Active queue: current priorities + cumulative completed list
2026-07-02 00:52:19 +08:00
LLLin000
01ba102605
fix: support Roman numeral and S-prefix table captions across roles/signatures/tables
...
- _TABLE_PREFIX_PATTERN in ocr_roles.py, ocr_signatures.py, ocr_tables.py
now matches Table I/II/III and Table S1/S2
- _extract_table_number and _extract_marker_signature parse Roman numbers
- figure_title generic fallback checks table prefix before figure caption
- ocr_families.py adds early table-prefix guard before reference family
2026-07-02 00:47:18 +08:00
LLLin000
2593690b91
docs: record truth audit session (10 papers + GPT review)
...
Add timeline entry + §9.18 archive for 10-paper audit.
Update active queue to reflect 4-commit GPT-reviewed fix plan.
2026-07-02 00:28:27 +08:00
LLLin000
03e2c795c4
docs: clean active queue priorities (remove done item, dedup)
2026-07-01 21:54:40 +08:00
LLLin000
6ee91fd79f
docs: update project management for residual fixes session
...
Add 7 fix entries to §2.3, timeline entry to §8, update executive
summary and active queue for completed 6-issue fix series.
2026-07-01 21:53:21 +08:00
Research Assistant
7b0bb41a9c
project: update for Gate 5 session — PM rules, archive, active queue
...
- PROJECT-MANAGEMENT.md: new project folder management rules (7.1),
updated status, fix table, decision log, session timeline, active queue
- project/current/ocr-v2-active-queue.md: refreshed for Gate 5 completion
- project/archive/: moved 3 stale current/ files with archive headers
(ocr-v2-closeout-priority.md, phase2-root-cause-analysis.md,
ocr-error-root-cause-fix-queue.md)
2026-06-28 22:31:39 +08:00
Research Assistant
fb28eca1fe
fix: converge figure ownership arbitration and add VFS8CBW2 dense-composite diagnostics
2026-06-23 02:42:22 +08:00
Research Assistant
40123d1866
docs: remove OCR truth surface contradictions
2026-06-19 23:30:08 +08:00
Research Assistant
7ffe3ddd84
docs: realign OCR truth surface roles
2026-06-19 23:26:40 +08:00
Research Assistant
c96d4a5fba
docs: update cross-links from frozen closeout to active queue
2026-06-19 23:25:40 +08:00
Research Assistant
6826506b26
docs: add OCR active queue and freeze closeout queue
2026-06-19 23:23:22 +08:00
Research Assistant
33a8028ffc
docs: reconcile project truth files after blind audit
...
- Update PROJECT-MANAGEMENT.md header to 2026-06-19
- Update ocr-v2-closeout-priority.md baseline 945->975, fix typo
- Mark ocr-error-root-cause-fix-queue.md as SUPERSEDED
- Add .gitignore for .opencode/tmp/ and audit annotated_pages
- Add blind audit structured evidence (21 papers, JSON/CSV only)
2026-06-19 15:52:12 +08:00
Research Assistant
ecaed2ca7c
docs: add project archive snapshots
2026-06-19 00:41:30 +08:00
Research Assistant
773bead726
docs: update project truth files after blind audit
...
- PROJECT-MANAGEMENT: record audit diff/canonical-roles/structural-gate session (10.13) and blind audit session (10.14)
- closeout-priority: Gate 5 DONE, next step is merge
- remaining-issues: post-blind-audit residuals documented
2026-06-19 00:37:02 +08:00
Research Assistant
70a7978de8
feat: complete OCR-v2 readiness gates + blind audit validation
...
- Gate 1: completeness signals for page text coverage
- Gate 2: DW figure ownership generalization with strict regression
- Gate 3: reference boundary enforcement from structure
- Gate 4: layout coverage taxonomy in audit/coverage_ledger.json
- diff_audit.py: canonical role alias mapping + auto-normalize truth_role
- ocr_structural_gate.py: table caption text-evidence fallback
- ocr-canonical-roles.md: canonical role list for audit workflow
- ocr-truth-audit.md: pre-flight checklist enforces canonical roles
- Blind audit: 5 unseen papers across domains, all PASS with coverage
2026-06-19 00:35:21 +08:00
Research Assistant
057c2b3653
docs: record OCR blind-audit entry gate
2026-06-18 22:20:39 +08:00
Research Assistant
d574b191d7
test: formalize OCR layout coverage readiness classes
2026-06-18 22:20:12 +08:00
Research Assistant
eac49edcf2
test: lock OCR readiness baseline and restore coverage ledger
2026-06-18 22:10:52 +08:00
Research Assistant
fa781aa029
docs: record DW repair and OCR rebuild results
2026-06-18 18:20:14 +08:00
Research Assistant
2c7e530f96
docs: align OCR active issues after 9.7 close-out
2026-06-18 18:01:06 +08:00
Research Assistant
dfced17c2a
docs: record unified OCR close-out pass results (Task 5)
2026-06-18 02:43:52 +08:00
Research Assistant
acb7fce308
docs: record OCR close-out boundary pass results
2026-06-17 23:59:38 +08:00
Research Assistant
73242099fd
docs: update Phase 2 results with -150 delta (need_reaudit 302->152)
2026-06-17 22:49:57 +08:00
Research Assistant
7e9987bf73
docs: update Phase 1 results with -50 figure_caption_candidate from panel label pattern fix
2026-06-17 19:26:17 +08:00
Research Assistant
3e96d65310
docs: record Phase 1 layout-first OCR results and audit evidence
2026-06-17 19:06:03 +08:00