# Multi-Window 격리 + DOM Observer 렌더러 디버깅 - **시간**: 2026-03-08 15:00~16:52 - **Vikunja**: 관련 태스크 없음 (신규 생성 필요) ## 결정 사항 ### 1. 세션 등록 방식: 폴링 등록 → 활동 기반 지연 등록 - **이유**: 두 확장이 같은 LS를 공유하므로 `GetAllCascadeTrajectories` 결과에서 세션 소유 창을 구분 불가 - **방식**: `writeRegistration()`을 `setupMonitor` 폴링에서 제거하고, `writeChatSnapshot`/`writePendingApproval` 호출 시에만 등록. 이 두 함수는 올바른 `projectName`을 보장 ### 2. 포트 디스커버리: 단일 파일 → JSON 멀티포트 - **이유**: 양쪽 확장이 같은 JS 파일(`ag-sdk-variet-gravity-bridge.js`)을 덮어씀 - **방식**: `ag-bridge-ports.json`에 `{projectName: port}` 형태로 모든 확장이 추가. 렌더러가 JSON을 읽고 모든 포트에 ping ### 3. DOM Observer 경로 vs VS Code 명령어 경로 분리 - **이유**: DOM observer 승인은 렌더러가 직접 버튼 클릭 → VS Code 명령어 불필요 - **방식**: `processResponseFile`에서 `auto_detected && source=dom_observer`이면 VS Code 명령어 건너뜀 ## 미완료 1. **렌더러 스크립트 미실행**: `workbench.html`에 script 태그 존재하나 `[GB Observer]` 로그 없음 - Antigravity 재설치 후 확장 재설치로 깨끗한 상태에서 테스트 필요 2. **Discord 승인 클릭스루**: E2E 미검증 — 렌더러 DOM click 경로가 작동해야 완성 3. **확장 버전**: v0.3.4 빌드 완료 (VSIX 존재), 재설치 후 적용 필요 ## 변경 파일 (미커밋) - `extension/src/extension.ts` — v0.3.1→0.3.4 (세션 필터, 포트 격리, 경쟁 조건, DOM 경로 분리) - `.agents/references/known-issues.md` — 3건 추가