Files
gravity_control/docs/devlog/entries/20260308-018.md
CD 810fbcc114 feat(bridge): 승인 감지 최적화 — latestToolCallStep 즉시 감지 + DOM scan 확장
- latestToolCallStep RPC 기반 즉시 감지 (30초 stall → 5초 poll)
- DOM scan 범위: findPanel() → document.body 확장
- Accept all/Reject all 리뷰 바 패턴 추가
- Stall detection을 100초 fallback으로 약화
- extractToolCommand/extractToolDescription 헬퍼 추가
- known-issues 5건 신규 추가
- start/services workflow: Python 전체 경로 + services.md 로딩

#task-258 #task-262
2026-03-08 20:21:11 +09:00

37 lines
1.9 KiB
Markdown

# 승인 감지 최적화 + GB Observer 동작 확인
- **시간**: 2026-03-08 19:53~20:15
- **Commit**: (이 세션)
- **Vikunja**: #262 → done (인라인 스크립트 재시작 테스트 완료), #258 → 미완료
## 핵심 발견
### 1. GB Observer 재시작 성공
- Antigravity 풀 재시작 후 인라인 스크립트 정상 동작 확인
- `[GB Observer] Bridge connected on port 34332` + `v2 Observer active`
- **Allow Once / Allow This Conversation** 버튼 즉시 감지 + pending 생성 정상
### 2. Run 버튼 미감지 원인 (webview iframe 격리)
- Trust/permission 버튼 → 워크벤치 외부 DOM → Observer가 감지 ✅
- Run/Accept 버튼 → Antigravity 채팅 **webview iframe** 내부 DOM → `document.querySelector()` 접근 불가 ❌
- **해결**: `latestToolCallStep` RPC 기반 즉시 감지로 대체
### 3. Accept all/Reject all 리뷰 바
- 코드 변경 리뷰 바는 agent 패널(`findPanel()`) 밖 → `document.body` 전체 스캔으로 확장
### 4. Extension 재설치 안전성 확인
- `setupApprovalObserver()`가 HTML 패치 + 체크섬 업데이트 **전자동** 수행
- Extension VSIX만 설치하면 수동 패치 불필요
- 단, 패치 후 **Antigravity 풀 재시작** 필수 (Electron 메인 프로세스 체크섬 캐시)
## 코드 변경
- `extension.ts`: latestToolCallStep 즉시 감지, DOM scan 범위 확장, stall→100초 fallback
- `.agents/workflows/start.md`: services.md 로딩 + Python 전체 경로
- `.agents/workflows/services.md`: Python 전체 경로
- `.agents/references/known-issues.md`: 5건 신규 추가
## 미완료
- **latestToolCallStep protobuf 구조 확정** — 첫 실행 시 `[TOOL-STEP]` 덤프 로그로 status 필드 위치 확인 필요
- **Accept all 리뷰 바 실제 감지 테스트** — body 스캔 후 올바르게 잡히는지 검증
- **다음 세션**: AG 재시작 → tool call 발생 → 콘솔에서 구조 확인 → 필요 시 필드 매핑 수정