{"commit":{"body":[{"label":"Why","text":"현장 초기 설정의 혼동과 인증서 오류 원인 누락을 줄이고 실제 재부팅 전에 보호 상태를 확인해야 했다."},{"label":"What","text":"저장 후 버전 readback, 인증서 reason allowlist와 후속 안내, 핵심 한글 문구 및 표적 검증을 추가했다."},{"label":"Impact","text":"도구5파일과 별도 현장 CA/계정을 반영했다. 현재 프로필과 Runtime/인증/네트워크를 보존하고 서비스 재시작과 실제 재부팅은 하지 않았다."},{"label":"Verify","text":"recovery26건+manifest4건 PASS; source67파일 및 설치 hash 확인; 부팅/mount guard와 generated unit 포함 systemd 검사 PASS; 5서비스/4모델/WSS 정상."},{"label":"Rollback","text":"현장 exact 도구 백업과 지문을 대조해 필요 파일만 복구한다. CA/계정·DB·원장은 자동 삭제하거나 일괄 rollback하지 않는다."}],"title":"fix(ct): 저장값과 인증서 실패 안내 보완 및 재부팅 준비 기록"},"created_at":"2026-09-30T08:48:32+00:00","expires_at":"2026-10-01T08:48:32+00:00","job_id":"ltb1021-ct-preboot-20260930","paths":[{"change":"modified","content_sha256":"4acb5d3ff5f2c486f7ae3d8c34a9baea79d2ae36b7e2d27960d0923372f4a3ea","path":"docs/deployment/CT_REUSE_HANDOFF.ko.md"},{"change":"modified","content_sha256":"6e8215fe58608ccf350b4b8bc9b6d7f746697ed8cc2e6073ffe26b3c8c70bf50","path":"docs/deployment/ICERTI_OFFLINE_MAINTENANCE.ko.md"},{"change":"modified","content_sha256":"e47e364d3c64c9035b2192e8a560b1f078856460f6fbbd823911256796d4152b","path":"docs/profiles/ltb1021/topics/runtime-lifecycle/README.ko.md"},{"change":"added","content_sha256":"5ceded11b69e8eb180841d5179b31bb0aa5ac54f1e09ded184f55e75de9027f2","path":"docs/profiles/ltb1021/topics/runtime-lifecycle/validation/20260930T174310+0900-validation-ct-preboot.md"},{"change":"modified","content_sha256":"4fb9a5b2b78a7379d510894c82ccef02da0caa6da8c7b4c6a8ad3be1a8311461","path":"tools/icerti_offline/maintenance/connection_versions.py"},{"change":"modified","content_sha256":"d752d785cb1e15364fb12afc2038ca0e0f1bac256869ef63512582f32e73c662","path":"tools/icerti_offline/maintenance/field_diagnostics.py"},{"change":"modified","content_sha256":"a5f3ccc88c205908a035d3ef93c4a2194b9b8b9784899d6288c6ddee1f9fa613","path":"tools/icerti_offline/maintenance/field_ui.py"},{"change":"modified","content_sha256":"05dbf5a1eacbfd8b471e89b5609a72d2afee02fb26cfa0e854050f38308e074b","path":"tools/icerti_offline/maintenance/network_prepare.py"},{"change":"modified","content_sha256":"16ef49e4e4164b49755d000eb0f7ca4ac4a56cfc758545d61dca5b9cbcd38c5e","path":"tools/icerti_offline/maintenance/test_field_recovery.py"},{"change":"modified","content_sha256":"1d3f8569e19be71fe0d89fe0d24b8c17bbb10aaa4d462adb6fc9f353599c55db","path":"tools/icerti_offline/source-manifest.json"},{"change":"modified","content_sha256":"b17f42e2a296450cd8dd9e8ae64e5f8328d5202bc834287b7cd047a5a0e0562f","path":"tools/secure_bridge_enroll.py"}],"plan_hash":"292c2ccf28705991b59ff835cd60c50c1bd96d4ca2179f1f3e9c6f780e4c96b7","profile":"ltb1021","push":{"branch":"task/runtime-lifecycle-refactor","mode":"upstream","remote":"origin","remote_identity":"sha256:3a9ce41319a2ebea","upstream_head":"bc93be6fc42e9c2bb5196b980b015ba2e81a7869","upstream_ref":"origin/task/runtime-lifecycle-refactor"},"repository":{"baseline_head":"bc93be6fc42e9c2bb5196b980b015ba2e81a7869","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":["26 recovery + 4 manifest tests PASS; source67 and installed5 verified; boot guard/mount/systemd PASS; actual reboot deferred"]}
