Packing Evidence under a Reader Budget

input · Stage-2 output + budget X100 › 5.3 Battery › table ★ section + anchor · 0.95 X100 › 2. Safety › table ★ section + anchor · 0.62 the top-K sections · here K = 2 reader budget a fixed number of tokens note: rule ③ may pull visuals from outside the selected sections pack(sections, budget) ① anchor + heading path = the Stage-2 winner ★ +2.1K tok ② sibling tbl·fig only same parent section as ★ layout decides · +1.4K tok ③ distant visuals high sim(unit, ★) · corpus-wide similarity decides · +0.9K tok budget left? yes → append ✓ no → stop ✂ slack greedy, per selected section · one pass budget shrinks → ③ then ② dropped, ① survives e.g. inside the §5.3 card ✗ not tbl·fig ① = ★ ② ✓ outside · by sim to ★ ③ ✓ · .81 ✗ · .22 output · what the reader receives packed context · serialized, ≤ budget ① X100 › 5. Maint. › 5.3 Battery 0.3K ① intervals · battery 6 mo ★ 1.8K ② battery location 1.4K ① X100 › 2. Safety 0.2K ① heat caution · halve it ★ 0.7K ③ §6 charging chart · similar 0.9K total ≈ 5.3K of 16K heading paths ride along · provenance visible to the reader q Reader (LVLM) one call · q + context "every 6 months, 3 in high heat" one prompt, one call · nothing else is sent
25 / 32