Files
gravity_control/docs/devlog/entries/20260316-002.md
Variet Worker f302984721 fix(extension): diff_review 2-strategy deploy + 8s pending delay
- Deploy AcknowledgeCascadeCodeEdit RPC strategy (was in source but never compiled)
- Add 8s setTimeout delay for diff_review pending (AI response arrives on Discord first)
- Capture closure variables for delayed pending creation safety
- known-issues: diff_review pending ordering fix
2026-03-16 14:22:41 +09:00

1.9 KiB

DOM Observer 분석 + diff_review 수정 + 배포

  • 시간: 2026-03-16 13:25~14:20
  • Commit: ``
  • Vikunja: #384 diff_review 원격 승인 테스트 → 진행중

분석 결과

extension.ts 3,166줄 전체를 5개 기능 영역으로 분류:

  1. AG 정보 추출 (SDK, 세션 모니터, step probe) ~700줄
  2. 승인 실행 (RPC) ~200줄
  3. 파일 기반 IPC (리팩토링 대상) ~500줄
  4. DOM Observer 인프라 (제거 검토) ~1,100줄
  5. 기타 유틸 ~200줄

DOM Observer는 제거 가능하다 — RPC가 모든 승인을 커버하며, diff_review도 VS Code 명령으로 처리 가능. 단, diff_review 원격 실행이 먼저 동작해야 DOM 제거에 동의 가능 (사용자 요구).

결정 사항

  • write 도구를 code_edit step_type으로 분리 (기존: file_permission에 혼재)
  • diff_review 핸들러를 2-strategy 방식으로 리팩토링:
    1. AcknowledgeCascadeCodeEdit RPC (UI 조작 불필요)
    2. openReviewChanges + 파일 포커스 + agentAcceptAllInFile (fallback)
  • pending에 modified_files(전체경로)와 edit_step_indices(step 번호) 포함
  • diff_review pending 생성을 8초 지연 (AI 응답이 먼저 Discord 도착)

테스트 결과 (1차)

  • Discord에 Accept all / Reject all 버튼 표시 확인
  • AcknowledgeCascadeCodeEdit RPC 미실행 — 소스 수정 후 컴파일+배포 누락 발견
  • AI 응답이 승인 버튼보다 늦게 Discord에 도착

수정 및 배포

  • Extension 재컴파일+배포 (2-strategy diff_review 핸들러 포함)
  • diff_review pending 8초 지연 (setTimeout) 추가
  • known-issues 2건 추가 (isDirty 실패, pending 순서)

미완료

  • AG 풀 재시작 후 2차 E2E 테스트 필요
    • AcknowledgeCascadeCodeEdit RPC 성공 확인
    • AI 응답 → 승인 버튼 순서 확인
  • DOM Observer 제거 리팩토링 → diff_review 동작 확인 후 진행