1.7 KiB
1.7 KiB
Agent UI Native 버튼 아이콘 글루잉 무시 현상 수정
- 시간: 2026-04-09 23:00~23:15
- Commit:
TBD - Vikunja: 신규 생성 (UI 텍스트 글루잉 버튼 버그) → done
문제 상황
- 0.5.22 패치(CodeLens 필터) 이후에도
Run,Accept버튼 클릭 시 디스코드 브릿지로 아무런 펜딩 요청(POST /pending)이 전송되지 않는 현상 발생. - 원인 규명: Native UI 마이그레이션 적용 후, Agent 패널 버튼들의 아이콘(
,▶등)이 리액트/Tailwind 컴포넌트 렌더링을 거쳐element.textContent상단에 문자열로 직접 병합(Gluing)됨. - 옵저버 스크립트 내부 정규식(
/^(?:Always\s*)?Run/i)이 문자열의 맨 첫(^) 시작을 강제하기 때문에, 아이콘으로 시작하는 버튼들의 명령어를 전부 오탐으로 간주함.
결정 사항
- 버튼의 텍스트를 읽는 즉시,
txt.replace(/^[^a-zA-Z0-9]+/, '')를 적용하여 첫 글자가 영어/숫자가 될 때까지, 선행하는 모든 특수문자, 아이콘, 폰트 공백 등을 강제 삭제하도록 스크립트 내부의 3가지 탐색 루프 (본문 스캔, Sibling 버튼 수집, Webview trigger-click 인젝션)에 일괄 업데이트. - 기존
.monaco-editor나.chat-body등 부모 컨테이너에 지나치게 의존하던findButtonContainer에chat,prose,markdown를 추가 화이트리스팅 하되 Tailwind UI 구조 특성상 시맨틱 래퍼를 찾지 못할 경우 3단계 위 부모를 반환하여 안전하게 컨텍스트를 확보하도록 고도화. -> 구조 변경 시에도 유연하게(Graceful) 기능 동작 지원 보장.
결과
v0.5.23(코드상 0.5.22 유지) VSIX 빌드 및 테스트 준비.