import sys,sqlite3,json
# Read only the synthetic proof database created by reproduce.py.
db=sqlite3.connect('file:'+sys.argv[1]+'?mode=ro',uri=True)
selected=[]
for kind,at,payload in db.execute('select event_type,occurred_at,payload_json from orchestration_events order by sequence'):
 event=json.loads(payload)
 if kind=='provider-session.attached':selected.append({'time':at,'event':kind})
 elif kind=='thread.metadata-updated' and event.get('branch'):selected.append({'time':at,'event':kind,'branch':event['branch']})
 elif kind=='turn-item.updated' and event.get('type')=='command_execution' and event.get('status')=='completed':selected.append({'time':at,'event':kind,'command':event.get('input'),'output':event.get('output')})
print(json.dumps(selected,indent=2))
