From 8947bebb100ccf9e051a5f49bbf01d2c20079dc3 Mon Sep 17 00:00:00 2001 From: Godopu Date: Sun, 21 Jun 2026 09:20:01 +0000 Subject: [PATCH] docs: update DONE.md and FUTURE_WORKS.md to reflect completed tasks --- DONE.md | 11 ++++++--- FUTURE_WORKS.md | 63 +++---------------------------------------------- 2 files changed, 11 insertions(+), 63 deletions(-) diff --git a/DONE.md b/DONE.md index 1494e44..c98e7a0 100644 --- a/DONE.md +++ b/DONE.md @@ -7,9 +7,9 @@ ## 요약 -- **처리 항목**: FW-01 ~ FW-16, FW-L1, FW-L2, FW-L3 (총 19개) -- ** Working tree**: clean -- **검증 결과**: 모든 장기 과제 및 개선 과제 완료 (agy-existing, claude-existing 교차 검증 PASS) +- **처리 항목**: FW-01 ~ FW-16, FW-L1 ~ FW-L3, FW-N1 ~ FW-N4, Infra Pattern (총 24개) +- **Working tree**: clean +- **검증 결과**: 모든 장기 과제, 신규 발견 항목 및 분석 인프라 개선 완료 (agy-existing, claude-existing 교차 검증 PASS) --- @@ -36,6 +36,11 @@ | FW-L1 | SQLite WAL 도입 및 YAML 최종 스냅샷 분리 | `440032b`, `478be56` | Hermes 직접 | SQLite DB 런타임 갱신, 세션 종료 시 YAML 덤프, 동시성 락 해결 (최종 6차 리뷰 PASS) | | FW-L3 | SQLite 테이블 정규화 (sessions 테이블 분리 및 O(1) 쿼리 최적화) | `932f6be` | Hermes 직접 | sessions 테이블과 state 테이블 정규화, resolve_tmux_server/find_workspace_uuid/is_already_stopped O(1) 최적화 및 마이그레이션 호환 fallback 추가 (PASS) | | FW-L2 | stop 옵션 시맨틱 단순화 (soft/hard 모드 및 graceful/capture 옵션 Deprecate) | `932f6be` | Hermes 직접 | stop_session.sh 단순화, 기본 graceful+capture stopped 상태 전이, --purge-conversation 파괴적 종료 명확화 (PASS) | +| FW-N1 | reconcile.sh 모니터 유휴 타임아웃 조정 (600s -> 3600s) | `5258b50` | Hermes 직접 | reconcile.sh의 SUB_IDLE_TIMEOUT 및 SKILL.md 수정 완료 (PASS) | +| FW-N2 | 와이어 포맷 호환성 (동시 롤아웃 정의 및 HMAC 전용 검증 강제) | `5258b50` | Hermes 직접 | 보안 Regreesion 유발하는 평문 fallback 제거 및 동시 롤아웃 정의 (PASS) | +| FW-N3 | 로그 문구 "auth_token mismatch" -> "HMAC verify failed" 갱신 | `5258b50` | Hermes 직접 | job_subscriber.py drop 로그 문구 수정 완료 (PASS) | +| FW-N4 | Messaging_System_REPORT.md §2.4 HMAC 기술 갱신 및 롤아웃 정의 | `5258b50` | Hermes 직접 | 보고서 §2.4 최신화 완료 (PASS) | +| Infra | 분석 인프라 개선 (Pane snapshotting / truncate 방지 가이드라인 반영) | `5258b50` | Hermes 직접 | delegate-job SKILL.md에 pane 캡처 3대 규칙 반영 (PASS) | --- diff --git a/FUTURE_WORKS.md b/FUTURE_WORKS.md index 5ed2d1c..b898a26 100644 --- a/FUTURE_WORKS.md +++ b/FUTURE_WORKS.md @@ -2,66 +2,9 @@ > **목적**: `advanced_multi_agent` 프로젝트의 향후 작업 후보를 추적한다. > 완료된 항목은 `DONE.md`를 참조. -> **최종 갱신**: 2026-06-21 (3개 에이전트 최종 검증 완료 후) +> **최종 갱신**: 2026-06-21 --- -## 1. 장기 과제 (근본적 구조 변경) - - - ---- - -## 2. 신규 발견 항목 (최종 검증에서 식별) - -### FW-N1. reconcile.sh 모니터 유휴 타임아웃 vs 잡 타임아웃 불일치 -- **발견자**: agy-existing (최종 검증) -- **문제**: `reconcile.sh`의 `SUB_IDLE_TIMEOUT` 기본값 600s가 잡 wall-clock timeout 기본값 3600s와 불일치. 모니터가 잡보다 먼저 타임아웃되어 조기 종료 간섭 가능. -- **영향 범위**: `skills/tmux-agent-orchestrate-monitor/scripts/reconcile.sh:66` 부근 -- **해결 방안**: 모니터 유휴 타임아웃을 잡 타임아웃과 독립적으로 문서화하거나, 기본값을 3600s 이상으로 조정. -- **작업량**: 소 (Small) -- **우선순위**: 낮음 — 별개 도메인(모니터 유휴 vs 잡 wall-clock)이나 문서화 필요 - -### FW-N2. 와이어 포맷 호환성 (HMAC 전환 후 혼합 배포) -- **발견자**: claude-existing (Batch 2 리뷰) -- **문제**: `data.auth_token` → `data.hmac_sig` 와이어 포맷 변경. 구 버전(publish_event.py)과 신 버전(job_subscriber.py)이 혼재하는 롤아웃 시 모든 이벤트가 drop될 수 있음. -- **해결 방안**: 롤아웃 시 전체 노드 동시 업데이트 또는 하위 호환 모드(auth_token + hmac_sig 동시 전송) 추가. -- **작업량**: 소 (Small) -- **우선순위**: 낮음 — 단일 노드 Canary 환경에서는 해당 없음 - -### FW-N3. 로그 문구 "auth_token mismatch" → "HMAC verify failed" 갱신 -- **발견자**: claude-existing (Batch 2 리뷰) -- **문제**: `job_subscriber.py`의 drop 로그가 여전히 "auth_token mismatch"를 사용. HMAC 검증으로 변경되었으나 로그 미갱신. -- **해결 방안**: 로그 문구를 "HMAC verify failed"로 변경. -- **작업량**: 소 (Small) -- **우선순위**: 낮음 — 기능 영향 없음, 디버깅 가독성만 - -### FW-N4. Messaging_System_REPORT.md §2.4 평문 auth_token 기술 갱신 -- **발견자**: claude-existing (Batch 2 리뷰) -- **문제**: 보고서 §2.4가 여전히 "plaintext bearer auth_token" 기술. HMAC 서명으로 변경되었으나 문서 미갱신. -- **해결 방안**: §2.4를 HMAC-SHA256 서명 방식으로 갱신. -- **작업량**: 소 (Small) -- **우선순위**: 보통 — 권위 문서의 정확성 - ---- - -## 3. 분석 인프라 개선 (다음 분석 라운드 시) - -**근본 원인**: pane TUI의 자체적인 위쪽 truncate + subagent의 pane 추출 시점 차이로 긴 응답이 스크롤아웃됨. - -**검증된 패턴** (delegate-job SKILL.md "Subagent Orchestration Pattern" 섹션에 반영됨): -1. brief 직후 `capture-pane -S -200` 즉시 캡처 → 누적 백업 -2. 응답 진행 중 30초마다 `>> /tmp/pane-snap.txt` 누적 -3. "분석 종료" 직후에도 한 번 더 전체 캡처 -4. 짧은 작업(<5min)은 폴링이 MQTT subscriber보다 안정적 -5. 긴 brief는 파일 경로로 전달 (inline send-keys는 TUI가 swallow) - ---- - -## 4. 변경 이력 - -| 날짜 | 변경 | -|---|---| -| 2026-06-21 | 초기 작성 — 3개 에이전트 분석 결과 (FW-01~FW-16) | -| 2026-06-21 | FW-01~FW-16 전부 완료 -> DONE.md로 이동. 본 파일은 신규 발견 항목(FW-N1~N4) + 장기 과제(FW-L2~L3)만 남김. | -| 2026-06-21 | FW-L1(SQLite WAL 도입) 구현 및 검증 완료. 항목 DONE.md로 이동. | \ No newline at end of file +현재 대기 중인 향후 작업(Future Works) 항목이 없습니다. +모든 신규 발견 항목(FW-N1 ~ FW-N4), 장기 과제(FW-L1 ~ FW-L3) 및 분석 인프라 개선 사항이 구현 및 검증을 거쳐 `DONE.md`로 이동 완료되었습니다. \ No newline at end of file