- Extract load_state_json centralized helper inside lib.sh to unify state querying - Refactor status, resume, stop, and monitor scripts to fetch state via MAM_STATE_JSON env var to avoid stdin pipeline collisions - Restructure delegate-job to provision .mam/jobs/<job_id>/brief.md and direct agents to it, minimizing token size and preventing TUI paste freezes - Harden send_keys_safe submission loop with was_popup state capture and edge case guards, preventing timing spin false-positives - Passed cross-verification approved PASS from Planner Claude session
4.2 KiB
4.2 KiB
📑 MAM 스킬 최적화 세션 인수인계 요약서 (handoff.md)
이 인수인계서는 Multi-Agent Mux (MAM) 프로젝트에서 진행된 개발 스킬 최적화 Phase 1 및 Phase 2 일부 구현 완료 상태와, 에이전트 세션 토큰 한계(Rate limit) 및 검수 범위 제약으로 인해 보류된 나머지 잔여 최적화 과제들을 다음 차수에 연계하기 위해 작성되었습니다.
1. 🏁 현재 완료된 최적화 성과 (Phase 1 & 2 및 핫픽스 완료)
- OP-1 (반응형 세션 종료 - Latency):
lib.sh에_wait_session_gone헬퍼를 도입하여 고정 8초 대기하던 문제를 조기 종료 감지 방식으로 해결 (평균 종료 시간 8초 ➡️ 0.3초 미만).stop_session.sh에set -e강제 폭사 방지|| true가드 탑재. - OP-2 (MQTT 구독 동기화 핸드셰이크 - Latency):
job_subscriber.py에on_subscribe콜백 신호를 추가하고,delegate-job에서SUBSCRIBEDsentinel 폴링 및kill -0 $sub_pid프로세스 생존 검사를 병행 기입하여 WAN 환경의 이벤트 유실을 박멸하고 즉시 기동하도록 변경. - OP-3 (Event Loop CPU 점유 최적화 - Latency):
reconcile.sh백그라운드 파이썬 대기 루프를threading.Event().waitPacing으로 교체하여 **유휴 상태 CPU 점유율을 0%**로 단축. - OP-4 (Tmux Dispatcher 단일화 - DRY): 격리 서버 대응을 단일 canonical helper인
mam_tmux로 일원화하고,_REAL_TMUX_PATH매핑을 강제하여 무한 재귀(Stack Overflow) 리스크를 완전히 제거. - OP-5 (State 로더 파이썬 중복 제거 - DRY) [완료]: SQLite/YAML 에이전트 병합 상태 조회를 담당하는
load_state_json공통 헬퍼를 단일 구현하고, stop, resume, status, monitor 스크립트들이 환경변수MAM_STATE_JSON매핑을 경유하도록 통일하여 Broken Pipe 및 셸 인젝션 보안 리스크 완벽 제거. - OP-6 & OP-7 (토큰 상수화 및 zsh 소싱 가드 - Portability): 대화창 감지 정규식 토큰 단일화 및 zsh sourcing 방지를 위한 안전 경고 트랩 탑재. v2.1+의 대규모 대화 복원 팝업 우회 기능 추가 탑재.
- [신규 완료] 작업 단위(Job) 중심 디렉터리 구조 재구조화:
- 작업 생성 시
.mam/jobs/<job_id>/디렉터리와 지시서 마크다운brief.md를 생성하여 에이전트에게 전달. - 프롬프트 크기를 극도로 단축하여 TUI 페이스트 락업(Prompt-Lock)을 차단하고, 결과 보고서를 해당 잡 폴더 아래의
{agent_session_name}-reports/에 모아 수집하는 잡 중심 추적성(Audit Trail) 완성. send_keys_safe제출 검증을was_popup플래그 및 Case E 가드와 결합하여 TUI 제어의 정밀도 극대화.
- 작업 생성 시
플래너 에이전트(planner-claude) 세션의 정밀 유닛 테스트 검수를 거쳐 최종 Approved / PASS 합의 서명을 획득하여 릴리스 커밋 완수 (b11ec6b).
⏭️ 추후 수행할 잔여 최적화 과제 (Next Action Items)
다음 세션에서 에이전트(Claude 등)에게 검수받고 실제로 이행해야 할 목록입니다:
1. OP-8: Degraded 모드 복구 루프 예외 처리 강화 (Observability)
- 대상 파일:
reconcile.sh:269 - 현황 및 원인: 브로커 단절 시 복구를 유도하는 루프의 에러 출력이
>/dev/null 2>&1 || true로 차단되어 있어 데이터베이스 락 등의 심각한 영구 장애 시에도 모니터가 성공인 척 묵인됩니다. - 개선 방향: 에러 출력을 캡처 및 로깅하고, 5회 연속 장애 시 복구 감시 프로세스를 종료 후 자가 재기동(Supervisor restart)하도록 보완하고 검수받아야 합니다.
2. Phase 3 이식성 보완 과제
- OP-9 (POSIX NFS 탐지): GNU 전용
df --output을 POSIX 호환df -P로 교체하여 macOS/BSD에서 flock WAL 안전 스위치가 침묵 속에서 비활성화되던 이슈 수정 (FUTURE_WORKS FW-P1/FW-D3 대응). - OP-10 (Marker-walk 루트 탐색): 깊이가 하드코딩된
../../../../경로 추적을 폐지하고, 최상위 워크스페이스 마커 파일 감지 방식으로 루트 절대 경로 탐색기 적용 (FUTURE_WORKS FW-P6 대응).