# 승인 신호 누락 진단 & 5건 버그 수정 - **시간**: 2026-03-15 07:00~08:16 - **Commit**: `40e3cd5` ## 결정 사항 ### DEDUP conversation_id 가드 - `step_index` 만으로 중복 판정 → 크로스 세션 충돌 빈번 - `project_name`만으로 불충분 (같은 Extension이 여러 세션 관찰 가능) - **`conversation_id`까지 비교**가 정확한 DEDUP 조건 ### fs.watch 대신 polling - Windows에서 `fs.watch` silent fail 확인 (실측 테스트) - response watcher도 같은 이슈 있음 (known-issue [2026-03-11]) - **모든 watcher에 polling fallback 병행** 원칙 확립 ### stallProbed 시간 기반 리셋 — 불채택 - 유저 의견: fix #1로 DEDUP 해결되면 자연스럽게 delta>0 → stallProbed 리셋 - 30초 리셋은 LS stale 시 불필요한 RPC 호출만 증가 - LS stale은 AG 내부 문제 → AG 재시작이 올바른 해결 ## 5건 수정 요약 | # | 파일 | 수정 | |---|------|------| | 1 | extension.ts | DEDUP `conversation_id` 가드 | | 2 | extension.ts | `projectName=default` pending 억제 | | 3 | extension.ts | commands dir 폴링 fallback | | 4 | extension.ts | auto 확인 chat_snapshot | | 5 | bot.py | `on_message` 메시지 ID 중복 방지 |