lllin000_PaperForge/docs/audit
LLLin000 7c702b1bcf fix: exclude table-owned media and inline figure body refs from figure matching
PR-1 of the architecture review fixes.

Two entry-level filters before figure matching:

1. _is_table_owned_media(): excludes media_asset blocks with table
   roles/raw_labels/hints from the figure asset pool. Previously these
   entered as figure candidates and ended up as unmatched legends/orphans.

2. _looks_like_inline_figure_body_reference(): detects body text like
   'Figure 11-10 shows...' (hyphenated ranges, list ranges) and flags
   it as an inline reference, not a figure legend. Applied in both
   ocr_figures.py and ocr_roles.py for consistent early rejection.

Verified on real vault:
  SKXTCE6M: unmatched_legends 6→0, overall yellow→green
  SRNJDAA2: unmatched_legends 9→0

Tests: 384 pass (+9 new), 0 fail
2026-07-05 22:36:17 +08:00
..
6-paper-audit.md fix: exclude table-owned media and inline figure body refs from figure matching 2026-07-05 22:36:17 +08:00
10-paper-visual-audit.md fix: exclude table-owned media and inline figure body refs from figure matching 2026-07-05 22:36:17 +08:00
SKXTCE6M.md fix: exclude table-owned media and inline figure body refs from figure matching 2026-07-05 22:36:17 +08:00