import json import sys sys.stdout.reconfigure(encoding='utf-8') with open('scratch/audit_results.json', 'r', encoding='utf-8') as f: res = json.load(f) print('=== Item 4: Critical Notes Missing in Master (9 tables) ===') for n in res['item4_notes']: print(f"[{n['table_id']} | line {n['line']}] {n['chapter']} | {n['section']} (form={n['pum_form']})") for p in n['notes_preview']: print(f" {p}") print('\n=== Item 5: Suspect Reference Tables in Core Chapters (27 tables) ===') for r in res['item5_references']: print(f"[{r['table_id']} | line {r['line']}] {r['chapter']} | {r['section']} | basis: {r['basis']}") print('\n=== Item 3: Basis Issues Sample by Chapter ===') from collections import defaultdict ch_basis = defaultdict(list) for b in res['item3_basis']: ch_basis[b['chapter']].append(b) for ch, issues in ch_basis.items(): print(f"\n--- {ch} ({len(issues)} issues) ---") for b in issues[:8]: print(f" [{b['table_id']} | line {b['line']}] {b['section']}") print(f" MD: {b['md_qty']} {b['md_unit']} ({b['md_src']}) vs Master: {b['master_qty']} {b['master_unit']} (form: {b['pum_form']})")