import bootstrap
import json
from inputs import OUT
from integrated import Integrated

cfg=dict(hand_vertical=.12)
out={}
for clip in ('01_camera24_fight','14_KISA_fall_C00_051_0002','SELF_C09','SELF_C13','SELF_C14','SELF_C15','SELF_C17'):
    e=Integrated(cfg);found=[]
    for line in (OUT/'work'/clip/'features.jsonl').open():
        r=json.loads(line);v=e.step(r)
        if not r['displayed'] or not v['hit']:continue
        fs=[]
        for p in v['pairs']:
            if not p['hit']:continue
            for f in p['passing']:
                if f['actor'] in p['actors']:
                    keys=('limb','rules','speed','near','vertical','hand_contact','target_hand_offset','root_vy','torso_horizontal','target_torso_horizontal')
                    fs.append({k:f[k] for k in keys})
        found.append(dict(frame=r['source_frame'],reference=r['reference'],case_ids=r['case_ids'],features=fs))
    out[clip]=found
(OUT/'reports/inspect_development.json').write_text(json.dumps(out,indent=2))
print({k:len(v) for k,v in out.items()})
