32 lines
1.2 KiB
Markdown
32 lines
1.2 KiB
Markdown
# 승인 신호 누락 진단 & 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 중복 방지 |
|