from pathlib import Path
import sys,re,json
B=Path(__file__).resolve().parent.parent
sys.path.insert(0,str(B/'parity_metadata_closure_A22'))
from prepare_candidates import forms
S=Path('work/tri-product-continuation-2026-10-09.nosync/hardware_source_localization_v140/硬件/lamp_safety/evt/lamp_safety_evt_a0.kicad_sch').read_text()
for _,_,f in forms(S,'symbol'):
 if '(lib_id ' in f:
  ref=re.search(r'\(property "Reference" "([^"]+)"',f).group(1)
  if ref in ['U1','J1','J2','J3','R18','C1']:print(f)
for _,_,f in forms(S,'no_connect'):print(f)
P=Path('work/tri-product-continuation-2026-10-09.nosync/hardware_source_localization_v140/硬件/lamp_safety/evt/lamp_safety_evt_a0.kicad_pcb').read_text()
for _,_,f in forms(P,'footprint'):
 ref=re.search(r'\(property\s+"Reference"\s+"([^"]+)"',f)
 at=next(forms(f,'at'))[2]
 print(ref.group(1) if ref else '?',at)
