# HARNESS_LIVE_ACTIVATION_INTEGRATION_PACKET (task-2647)

- packet_version: v1
- packet_type: chair_signature_request_packet
- recorded_at: 2026-05-24
- recorded_by: dev3-team (다그다)
- live_change_count_at_authoring: 0
- forbidden_action_count_at_authoring: 0
- final_status: READY_FOR_CHAIR_SIGNATURE_PACKET
- chair_signature_required: true
- single_source_task_md: memory/tasks/task-2647.md (sha256 05ec8564356bd50f95bfc6ed1a674e7e6bdafb0be4b935e74b736aefdf7d342e)

## 1. Scope

본 패킷은 다음 3축의 staged implementation을 live 적용하기 위한 회장 서명 요청 패킷이다. 본 packet 자체에는 live 적용/commit/push/PR/merge가 0이며, 회장 서명 후 별도 dispatch에서 axis 단위 실행이 가능하다.

- **축 1 — task-2646 callback authority gate** (RUNTIME_GUARDED_ACCEPTED, finalize 09372a41)
- **축 2 — task-2644+1 callback collector control plane v2** (AUTHORITATIVE_CLEAN_REPLACEMENT, finalize f4bded9c)
- **축 3 — task-2643 PreToolUse runtime guard** (PR #146 head 33c51992, CLEAN, CI 11/11 SUCCESS)

## 2. 3축 × 8 차원 매트릭스

각 셀은 본 packet 다른 산출물의 해당 절(§)을 참조한다. 본 매트릭스는 인덱스 역할만 한다.

### 축 1 — task-2646 (helper 3종 · 가장 isolated · additive)
- **status**: RUNTIME_GUARDED_ACCEPTED · finalize 09372a41 · 회장 박제 memory/events/task-2646.closeout-260524.json
- **activation order**: P1 — Phase A 최선두 (의존 0 / 후행 2축 의존 받음). harness_live_activation_order_260524.md §3.A
- **rollback**: per-axis L1 git revert (단일 PR head 식별 후 revert) · cross-axis 영향 0 (additive). harness_live_activation_rollback_plan_260524.md §2.1
- **smoke**: helper.selftest 6/6 + 추가 contract grep (utils/callback_registration.HELPER_SCHEMA re-export). harness_live_activation_smoke_plan_260524.md §2.1
- **staged→live mapping**: 6 file → main path 6 file (모두 신규). harness_live_activation_staged_to_live_mapping_260524.md §2.1
- **risk**: low~medium (additive · main 동일 path 부재 검증됨 · backward-compat 자명). harness_live_activation_risk_classification_260524.md §2.1
- **chair signature**: axis_id=1 / scope=callback_authority_gate / live_settings_modification_allowed=false / approval_window_minutes=120 / rollback_executor_key=다그다(dev3) 권장. harness_live_activation_chair_signature_template_260524.json
- **dependency**: 없음 (DAG 루트)

### 축 2 — task-2644+1 (control plane v2 · 축 1 helper 의존 · hooks/utils/schemas 추가)
- **status**: AUTHORITATIVE_CLEAN_REPLACEMENT / RUNTIME_GUARDED / LIVE_NOT_APPLIED · finalize f4bded9c · 회장 박제 memory/events/task-2644+1.closeout-260524.json
- **activation order**: P2 — Phase B (축 1 merge 후). harness_live_activation_order_260524.md §3.B
- **rollback**: per-axis L1 (settings.json hook entry 3 unset · git revert 신규 파일 32) + cross-axis L2 (축 1 helper 의존 끊김 시 v2 dispatch_via_helper fail-closed). harness_live_activation_rollback_plan_260524.md §2.2
- **smoke**: integration.selftest + 8 fixture replay + hook entry stdin echo (settings.json hook가 실제 발화하는지 dry-run). harness_live_activation_smoke_plan_260524.md §2.2
- **staged→live mapping**: 32 file → main path 32 file (모두 신규) + settings.json 3 hook entry 추가. harness_live_activation_staged_to_live_mapping_260524.md §2.2
- **risk**: medium~high (live hook activation · SessionStart/Stop/UserPromptSubmit 매 호출마다 발화 · timeout 5~10초 · 부작용 모니터링 필요). harness_live_activation_risk_classification_260524.md §2.2
- **chair signature**: axis_id=2 / scope=callback_collector_control_plane_v2 / live_settings_modification_allowed=true (★ settings.json 수정 필요) / approval_window_minutes=240 / rollback_executor_key=비슈누(dev4) 권장. harness_live_activation_chair_signature_template_260524.json
- **dependency**: 축 1 (utils/callback_registration · utils/callback_authority_validator · utils/callback_source_cross_checker 3개 import — staged 증거 callback_collector_helper_integration.py:40-61)

### 축 3 — task-2643 (PreToolUse runtime guard · 모든 Bash tool 호출 경유)
- **status**: PR #146 OPEN · head 33c51992 · mergeStateStatus CLEAN · CI 11/11 SUCCESS · 회장 보고 박제 기준
- **activation order**: P3 — Phase C (별도 단독 · 축 1/2와 import 의존 0이므로 병렬 가능하나 risk 최고이므로 마지막 권장). harness_live_activation_order_260524.md §3.C
- **rollback**: per-axis L1 (ENV gate `CLAUDE_PRE_TOOL_USE_HOOK_ENABLED=unset` 30초 무중단) + L2 (settings.json hook entry 제거 5분) + L3 (PR #146 git revert 15분). harness_live_activation_rollback_plan_260524.md §2.3
- **smoke**: 5 forbidden pattern fixture replay (deny) + 정상 Bash allow + fail-closed exception test + timeout(5초) 측정. harness_live_activation_smoke_plan_260524.md §2.3
- **staged→live mapping**: PR #146 변경 49 file을 main으로 머지 + settings.json PreToolUse Bash matcher hook entry 추가 + ENV gate flag 활성화. harness_live_activation_staged_to_live_mapping_260524.md §2.3
- **risk**: HIGH (PreToolUse는 매 Bash tool 호출 사이에 끼는 bottleneck · 잘못 발사 시 전체 봇 차단 · fail-closed 정책으로 deny-on-error · timeout 5초 hard limit · 5 forbidden pattern 외 false positive 0 검증 필요). harness_live_activation_risk_classification_260524.md §2.3
- **chair signature**: axis_id=3 / scope=pre_tool_use_runtime_guard / live_settings_modification_allowed=true (★ settings.json + ENV gate) / approval_window_minutes=360 / rollback_executor_key=페룬(dev6) 권장. harness_live_activation_chair_signature_template_260524.json
- **dependency**: 축 1/2와 import 의존 0 (stdlib only) · main baseline은 PR #146 머지로 별도

## 3. Cross-axis Considerations

- 의존 DAG: 축 1 → 축 2 (helper import). 축 3는 독립.
- 권장 activation 순서: 축 1 → 축 2 → 축 3 (옵션 1, harness_live_activation_order_260524.md §4 비교 후 결정).
- 동시 활성화 금지 조합: (축 2 + 축 3) 동시 머지 시 PreToolUse가 SessionStart hook 발화 자체를 차단할 가능성이 있다 (단, PreToolUse는 Bash tool 한정이므로 hook subprocess 자체는 Bash matcher 일치 시에만 검사). 안전 마진 위해 축 3는 단독 활성화 권장.
- 회장 박제 marker 보존 의무: 축 1/2 closeout marker는 read-only · 본 packet에서 수정 0.

## 4. 회장 서명 후 별도 dispatch 필요 사항 (본 task 금지)

- live settings.json 수정 → 본 task = 0
- live cokacdir 수정 → 본 task = 0
- live dispatch.py 수정 → 본 task = 0
- hooks/utils/schemas live merge → 본 task = 0
- commit/push/PR/merge → 본 task = 0
- HARNESS_ENFORCED declaration → 본 task = 0
- chair_authorization JSON 생성 → 본 task = 0

위 7개는 모두 축별 별도 dispatch + 회장 서명 후에만 가능.

## 5. Final Status

```
final_status: READY_FOR_CHAIR_SIGNATURE_PACKET
next_step: chair_verbatim_signature_per_axis (3축 분리 서명 가능)
rollback_confidence: HIGH (3축 모두 L1 30초~5분 무중단 경로 확보)
packet_completeness: 9/9 산출물 + INDEX
```

끝
