feat(bridge): step-type-specific approval commands + SDK research

- tryApprovalStrategies: terminalCommand.run > terminalCommand.accept > command.accept > acceptAgentStep
- Step probe: immediate on first stall (5s), 775-limit detection with dynamic fallback
- NOTIFY filter: skip <50 chars, TASK dedup by taskName+taskStatus
- BTN-DUMP diagnostic removed from renderer
- Focus: agentPanel.focus + agentSidePanel.focus (verified SDK commands)
- known-issues: add step-type command mismatch finding
This commit is contained in:
2026-03-09 09:19:36 +09:00
parent 027135e2b5
commit 3b1bb9246e
6 changed files with 364 additions and 133 deletions

View File

@@ -0,0 +1,5 @@
# 2026-03-09 Devlog
| # | 시간 | 작업 설명 | 커밋 | 상태 |
|---|------|----------|------|------|
| 001 | 08:00~09:17 | 승인 실행 메커니즘 연구 + step-type별 VS Code 명령 분기 구현 | `pending` | 🔧 |

View File

@@ -0,0 +1,34 @@
# 승인 실행 메커니즘 연구 + step-type별 명령 분기
- **시간**: 2026-03-09 08:00~09:17
- **Commit**: `pending`
- **Vikunja**: #263 진행중
## 결정 사항
### acceptAgentStep은 Run 버튼에 무효
- SDK에 7개 별도 승인 명령 존재 (우리는 1개만 사용 중이었음)
- Run 버튼 = **터미널 명령**`terminalCommand.run` / `terminalCommand.accept`가 올바른 명령
- `acceptAgentStep`**코드 변경** 승인 전용 → Run 버튼과 무관
### 빌트인 Turbo Mode 발견
- `TerminalExecutionPolicy.EAGER` = 항상 자동 실행 (AG Settings에서 on/off)
- 사용자 판단: 통제권 유지가 중요 → Discord 승인 방식 유지, Turbo는 최후 수단
### pywinauto 폐기
- 크로스플랫폼 불가 (Linux 사용 가능성)
- 창 겹침 시 동작 불가
- 사용자 결정으로 폐기
## 코드 변경
- `extension.ts`:
- `tryApprovalStrategies()` — HandleCascadeUserInteraction RPC 3가지 variant + VS Code 7개 명령 순차 시도
- Step probe: stall 1 poll (5초) 후 즉시 probe, 775-limit 감지 + 동적 fallback (20s/40s)
- NOTIFY 필터: 50자 미만 무시, TASK 중복 skip
- BTN-DUMP 진단 로그 제거
- `.agents/references/known-issues.md`: 1건 추가
## 미완료
1. **AG 재시작 후 E2E 테스트**`terminalCommand.run` 개별 동작 확인 (핵심)
2. **`extension.log` 분석** — 어떤 전략이 실제 승인을 트리거하는지 로그로 확인
3. **실패 시 대안**: `executeCascadeAction` 파라미터 탐색 또는 Turbo Mode 활성화