import json,types,pathlib,datetime
from preflight import R,g,HEAD
source=pathlib.Path('/tmp/codex/ltb1021/2026-09-12_contextra-rtp-anchor_r01/build.py').read_text().replace('rtp-anchor-7913605-','flow-boundary-3c9c9a5-')
p=types.ModuleType('bounded_builder');exec(compile(source,'bounded_builder','exec'),p.__dict__)
p.EDITED=['app/multi_pipeline.py','app/source_adapters/rtsp.py','app/start_diagnostics.py','native/frame_metadata/rtp_signal.cpp','native/frame_metadata/rtp_time.hpp','tests/sdk_rtp_loader_probe.py','tests/sdk_rtp_time_probe.py','tests/test_rtsp_source_adapter.py','tests/test_start_diagnostics.py','tests/sdk_rtsp_compose_probe.py']
if __name__=='__main__':
    assert json.loads((R/'fix-result.json').read_text())=={'build':0,'compose':0,'sdk':0}
    unit=json.loads((R/'unit-result.json').read_text());assert unit['errors']==unit['failures']==0
    budget=json.loads((R/'budget.json').read_text())
    elapsed=(datetime.datetime.now(datetime.timezone.utc)-datetime.datetime.fromisoformat(budget['started_at'])).total_seconds()
    cap=5 if elapsed<1200 else 4 if elapsed<2100 else 3
    assert budget['failed_groups']<cap
    (R/'verify.json').write_text(json.dumps(dict(errors=0,failures=0,sdk=0)))
    p.main()
