{"commit":{"body":[{"label":"Why","text":"9월 시연의 Event 발생 조건을 완화하면서 같은 episode의 중복 Event/Artifact 생성을 방지한다."},{"label":"What","text":"PR12 direct-down/PTS cooldown/FIGHT 완화와 Runtime 기본값을 통합하고 explicit Off, UUID/Artifact 접수 경계 테스트와 적용/복귀 가이드를 보완했다."},{"label":"Impact","text":"FALL은 초기 DOWN도 허용해 의미가 확장된다. FIGHT fallback은Off. 모델/Tracking/public schema는불변. test 저장FALL6/FIGHT2 migration, 아이서티는미반영."},{"label":"Verify","text":"Python3.12 표적199 PASS. offline4파일image hash/4모델ready/24설정확인. Gateway재개후동시Web요청정황과stopped Gate실패로Analytics/Gateway exit0회수. 비대상16개/원장보존. 영상과Start-ready는미수용."},{"label":"Rollback","text":"사용자명시승인뒤baseline threshold만CAS복귀하고보존된이전image/전체Compose를대조한다. 자동rollback/원장삭제/카메라재Start없음. 현재서비스재개는별도필요."},{"label":"Related","text":"PR12 d20aca8; DEMO-SENSITIVITY-12; 아이서티배포와실제영상은후속"}],"title":"feat(scenarios): FALL/FIGHT 시연 기본값과 episode 보호 통합"},"created_at":"2026-09-21T04:16:25+00:00","expires_at":"2026-09-22T04:16:25+00:00","job_id":"20260921-contextra-demo-pr12-r01","paths":[{"change":"modified","content_sha256":"10be24d5a7bfb6dd2e8167d3282ecf01450b4f8d2802e87175e9bab034c65125","path":"app/fall_runtime.py"},{"change":"modified","content_sha256":"aa96ca9def4a5aba5c55f4c4ee8eaa332b80309ddca21597af9b96d441cc0e43","path":"app/fall_scenario.py"},{"change":"modified","content_sha256":"169f2b29dfd2f14d6599af24178cfd170bd20ff150857490525624fc8efe1ff8","path":"app/fight_runtime.py"},{"change":"modified","content_sha256":"3d969cde2c26e29132de6de50a4e1f10cb7fc558714ce8e3d4baf18cc9cb4406","path":"app/fight_scenario.py"},{"change":"modified","content_sha256":"c5c97990672579104a17e85f1bcaf6585d2a6516bf9c2752fbee0a66acebba28","path":"docs/profiles/ltb1021/topics/runtime-lifecycle/README.ko.md"},{"change":"added","content_sha256":"de1815fcc2184d680a59e871875dce00ffb0f1fee11e8ff361fa5fd2c2cd4787","path":"docs/profiles/ltb1021/topics/runtime-lifecycle/decision/20260921T131002+0900-decision-demo-sensitivity.md"},{"change":"added","content_sha256":"d89a344660d25a49af19dbb18da4b5ca49d032a20dda98138905007368eb6fc8","path":"docs/profiles/ltb1021/topics/runtime-lifecycle/runs/20260921T131002+0900-run-demo-sensitivity.md"},{"change":"added","content_sha256":"779154dc797d50bad6f9e40e81fc41604cd98b45e10cf460d086745c3b286cd3","path":"docs/scenarios/DEMO_SENSITIVITY_PR12.ko.md"},{"change":"modified","content_sha256":"a4a7a94e506ebde5a77da1987c2cf1ff92e4b5c4d474872d5c3aa8124d3a93a0","path":"docs/scenarios/SCENARIO_WEB_READY.ko.md"},{"change":"added","content_sha256":"f6607fa30e75fad72c65407cb6c9c68ccc19988a14c313c2ae2a00ec6144c6bf","path":"tests/test_demo_artifact_boundary.py"},{"change":"modified","content_sha256":"589cd58a50453f81979e86fd480bd32a1005ca9e54a19713ee99e6299e4b6cbf","path":"tests/test_fall_integration.py"},{"change":"modified","content_sha256":"86f5cb6722a7e11292712fa7c2876bbfbce578d30630ebd9d95963bd6519658a","path":"tests/test_fall_skip_hold.py"},{"change":"modified","content_sha256":"eb441982db46e1a30a98fc4c6f756baa5ba2587a6843a88284deaf26ae8a2695","path":"tests/test_fight.py"},{"change":"added","content_sha256":"0a6dcb4b3060c082508d651a00c14e8ca6a07d36b713ca4288c12abd84a31b6f","path":"tests/test_scenario_demo_sensitivity.py"},{"change":"modified","content_sha256":"a6709c2ed603a5eccace944b190d8aafb81a1714b1b430fa17fd4b4b6bb1bc00","path":"tests/test_site_incremental.py"}],"plan_hash":"33c7f043aad8715c96cf91e18bd5699d8f44a37ad0144fca37405a6f6f2d8d76","profile":"ltb1021","push":{"branch":"task/runtime-lifecycle-refactor","mode":"upstream","remote":"origin","remote_identity":"sha256:3a9ce41319a2ebea","upstream_head":"640acd4254191e3449f086868563379937d8a006","upstream_ref":"origin/task/runtime-lifecycle-refactor"},"repository":{"baseline_head":"640acd4254191e3449f086868563379937d8a006","branch":"task/runtime-lifecycle-refactor","worktree":"/workspace/contextra-analytics-runtime-lifecycle-refactor"},"schema_version":"ltb1021.codex_hub.git_closeout_manifest.v1","session_alias":"work-session","verify":["Python3.12 199 targeted tests PASS; explicit Off/CAS/no-op/Artifact dedupe/delivery retry","Source hash and rendered Compose exact match; four models readiness PASS before maintenance failure","Final Analytics/Gateway stopped exit0; Event ledger unchanged; 16 non-target containers preserved; no actual video test"]}
