1.1 KiB
1.1 KiB
Cross-Project DOM Observer Leakage 해결
- 시간: 2026-03-23 22:00~22:45
- Commit:
TBD - Vikunja: #TBD → done
확인된 사실
- Discord 신호 누락이 아닌, 다중 원격 환경에서의 포트 덮어쓰기 문제로 인한 **교차 프로젝트 신호 오염(Leakage)**이었음.
삽질 / 트러블슈팅
- 처음에는 디스코드 봇(
bot.py)이나 익스텐션의step_type매핑 로직 누락인 줄 알고 코드를 탐색했으나, 실제 DOM observer 스크립트에 하드코딩된 Port 변수가 문제의 원인임을 파악함. - 다중 원격 컴퓨터 환경 중 포트 포워딩(
12345충돌 우회)으로 인한 이슈를 해결하기 위해vscode.env.asExternalUri를 도입. 로컬에 매핑된 최종 확정 포트를 알아냄.
결정 사항
- DOM Status Bar(
tooltip)를 일종의 단방향 IPC(Inter-Process Communication) 대용으로 사용하기로 결정함. - Extension Host가 렌더러(DOM Observer)에게 안전하고 해당 창에만 격리(Window-isolated)된 방식으로 포트 번호를 전달할 수 있음. 전역 HTML 파일 패치의 한계를 우아하게 극복함.