# 승인 실행 메커니즘 연구 + 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 활성화
