Variet Worker
881a424b23
docs: known-issues 아카이빙 + Collector 폐기 마킹 + 레퍼런스 문서 보강 #task-409
2026-03-18 06:28:40 +09:00
Variet Worker
48ae19b3e1
docs: known-issues pending_owners lifecycle + devlog #017
2026-03-17 21:56:43 +09:00
Variet Worker
0fae7e32aa
fix(ext,bot): 통신 아키텍처 감사 — writeRegistration 이중쓰기 + ApprovalView fallback + scanner 최적화
...
- step-probe.ts: writeRegistration WS 후 return 추가 (파일 이중쓰기 방지)
- bot.py: ApprovalView approve/reject/choice — send_response_to_pending_owner 반환값 확인 + file bridge fallback (5곳)
- bot.py: scanner 주기 3s/5s → 30s (Hub 모드 불필요 I/O 감소)
2026-03-17 21:30:05 +09:00
Variet Worker
47cc838d9d
fix(ext,bot): Accept All WS regression + auto_approve dual-write — VSIX v0.4.5
2026-03-17 21:01:24 +09:00
Variet Worker
4e8ac8d6b7
docs: known-issues dual-delivery + devlog #013-014
2026-03-17 20:39:21 +09:00
Variet Worker
6640d42449
refactor(extension): split extension.ts into 3 modules - http-bridge, html-patcher, command-handler ( #398 )
2026-03-17 18:50:12 +09:00
Variet Worker
1ce8b7c707
docs: devlog #012 + known-issues WS 응답 라우팅
2026-03-17 17:47:21 +09:00
Variet Worker
adbed69237
docs: devlog #012 final + known-issues ApprovalView WS
2026-03-17 17:08:15 +09:00
Variet Worker
50efd52f41
docs: devlog #012 update + known-issues ApprovalRequest 누락 필드
2026-03-17 14:30:35 +09:00
Variet Worker
1bb54eb820
docs: devlog #012 + known-issues 3건 + VSIX v0.4.3 빌드 아티팩트
2026-03-17 10:48:09 +09:00
Variet Worker
edd4943e2e
chore(extension): ws 모듈 번들 + E2E 사전 검증 #task-396
...
- extension/package.json: ws dependency 추가
- extension/.vscodeignore: !node_modules/ws/** 추가 (VSIX 번들)
- known-issues: NPM WS 프록시 + ws 모듈 미번들 이슈 추가
- devlog: #010 완료, #011 E2E 사전 검증 (미완료)
2026-03-17 08:21:43 +09:00
Variet Worker
fadfd88f51
docs: architecture/tech-stack/conventions 전면 재작성 + Wiki 동기화
2026-03-17 06:48:46 +09:00
Variet Worker
5f795b9a91
refactor(extension): 모듈 분리 + Hub 통합 테스트 #task-395
...
- extension.ts 3,446→1,289줄 (-63%)
- step-probe.ts (1,435줄): setupMonitor, processResponseFile, tryApprovalStrategies
- observer-script.ts (687줄): DOM observer script
- ws-client.ts (390줄): WSBridgeClient
- step-utils.ts (114줄): step 파싱 유틸
- auth.py (115줄): JWT + registration code
- hub.py (581줄): WSHub + per-client queue
- Hub WS 연동 테스트 통과 (auth, chat, register)
- VSIX v0.4.0 빌드
2026-03-17 06:41:42 +09:00
Variet Worker
a372bd8b2d
docs: session end — known-issues 3건 (cross-project flooding, pending 누적, diff_review brain/) + devlog #008
2026-03-16 23:08:31 +09:00
Variet Worker
7ca0bc0f1f
docs: session end — known-issues 2건 (병렬 step 누락, snapshot 로깅) + devlog #007
2026-03-16 20:42:04 +09:00
Variet Worker
412c212c6e
fix(extension): v0.3.16 — diff_review duplicate approval filter + IDLE notification + !auto echo removal
2026-03-16 19:14:43 +09:00
Variet Worker
0035394b9c
docs: session end — known-issues update + devlog #005 (v0.3.15 diff_review fix)
2026-03-16 18:46:07 +09:00
Variet Worker
5a1d4f0b0c
fix(extension): acknowledgeCodeActionStep RPC discovery + v0.3.14 3-tier strategy
2026-03-16 18:11:20 +09:00
Variet Worker
82461bc3fc
fix(extension): diff_review RPC parameter experiment — 4 format variants (A/B/C/D) + known-issues update
2026-03-16 16:59:58 +09:00
Variet Worker
9ef2c3f07c
fix(extension): diff_review steps=[] race condition — in-memory metadata cache (v0.3.13)
...
Root cause: Collector deletes pending file before Extension reads edit_step_indices.
Fix: diffReviewMetadata Map caches step indices in Extension memory.
Known issue added. Devlog entry 003.
2026-03-16 16:09:42 +09:00
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
Variet Worker
d521dd5fa3
fix(extension): step_type mapping bug + diff_review handler refactor
...
- Separate read tools (file_permission) from write tools (code_edit)
- write_to_file/replace_file_content now use AcknowledgeCascadeCodeEdit RPC
- diff_review: 2-strategy approach (RPC first, openReviewChanges fallback)
- Track modified_files and edit_step_indices in diff_review pending
- known-issues: 3 new entries (pending accumulation, step_type bug, isDirty failure)
2026-03-16 13:52:02 +09:00
Variet Worker
2d9fe964f6
fix(bridge): v0.3.12 approval state management — sawRunningAfterPending gate + approval-flow.md system doc
...
- processResponseFile: set sawRunningAfterPending=true instead of removing resets
(prevents infinite pending loop AND known-issues L479 auto_resolve regression)
- Hoist sawRunningAfterPending to module level for cross-function access
- Add recentPendingSteps memory dedup Map (60s TTL) for file-deletion resilience
- Create docs/approval-flow.md: complete system flow guide with state diagram
- Update known-issues.md: 2 new entries (state reset fix, memory dedup)
2026-03-16 11:11:50 +09:00
Variet Worker
37c0aae41c
fix(bot): multi-project signal freeze — cache-only _get_channel + per-tick scanner cap
...
Root cause: When 3+ projects generated pending simultaneously, Bot's
pending_approval_scanner made 20-40 Discord API calls in one tick
(sequential await), triggering Discord 429 rate limits which blocked
the entire scanner for 10-30s, freezing ALL signal delivery.
Two fixes:
1. _get_channel(): Replace guild.fetch_channels() (API call) with
discord.utils.get(guild.channels) (in-memory cache). Eliminates
redundant API calls + Lock contention when multiple projects arrive.
2. pending_approval_scanner: Per-tick caps (5 new + 5 status) prevent
one tick from monopolizing Discord API quota. Excess items are
naturally processed in subsequent 3-second ticks.
2026-03-16 07:06:51 +09:00
9b93ee9776
docs(agent): add anti-local-thinking rules — NEVER #10 strengthen (disprove before report), NEVER #11 (no mechanical apply), ALWAYS #9 (project history cross-ref), Bug Report Protocol
2026-03-15 23:26:54 +09:00
c9f44afcf1
fix(bridge): system audit + 5-file bug fix — PATS Deny trigger removal, auto_resolved chat dedup, UUID filenames, IP rate limit leak, bot.py deque
2026-03-15 23:01:20 +09:00
429cae47b7
docs: session end — known-issues + devlog + VSIX v0.3.11 deployed
2026-03-15 18:53:00 +09:00
5e5f515db4
fix(bridge): auto-approve crash — DOM observer Deny filter + bot reject-word guard + AGENT rule
2026-03-15 18:49:58 +09:00
6739f8f30c
fix(bridge): v0.3.11 approval flow architecture fix — eliminate double-fire auto-approve, strip 30+ failed RPC strategies, add project_name DEDUP guard
...
- Remove Extension-side auto-approve (was double-firing with Bot auto-approve)
- Strip failed strategies 0A-1 from tryApprovalStrategies (~150 lines)
- Keep only Strategy 0-PROTO (proto RPC) + Strategy 2 (clickTrigger)
- Add bot.py AUTO-RESOLVED logging for diagnostics
- Update known-issues with 3 new entries
- Clean deployment: v0.3.8→v0.3.10→v0.3.11
2026-03-15 17:11:38 +09:00
f96203646e
fix(bridge): 4 race condition fixes for approval lifecycle
2026-03-15 10:44:31 +09:00
40e3cd550f
fix(bridge): 5 bug fixes for approval signal drop and Discord relay
...
- DEDUP: add conversation_id guard to prevent cross-session step_index collision
- step_probe: suppress pending when projectName=default (empty window)
- watchCommandsDir: add 3s polling fallback (fs.watch silent fail on Windows)
- auto toggle: write chat_snapshot confirmation back to Discord
- bot on_message: add message ID dedup for Gateway event replay
2026-03-15 08:18:26 +09:00
Variet Worker
9036f1cefc
docs: devlog #005 + known-issues — rate limit 구조적 수정 기록
2026-03-12 23:06:15 +09:00
Variet Worker
5a4ac1bf9b
docs: devlog #004 + known-issues — Collector multi-project polling bug
2026-03-12 20:54:23 +09:00
Variet Worker
6d8c6f182c
fix(extension): HTML 패치 안전성 강화 — pre-patch backup + 구조 검증 + 자동 복원
2026-03-12 17:55:42 +09:00
Variet Worker
a9feee6faa
fix(extension): workbench.html 0-byte 파괴 방지 — pre-read/pre-write 안전 가드 추가
2026-03-12 17:05:29 +09:00
Variet Worker
52c9526fdb
fix(bridge): 429 Rate Limit 무한 루프 방지 — 지수 백오프 + Collector 폴링 보호 + rate limit 완화
2026-03-12 00:50:29 +09:00
Variet Worker
3fcf4f7037
docs: 세션 종료 — AGENT.md 검증 규칙 + known-issues 3건 + devlog
...
AGENT.md:
- NEVER #8-9: 실제 E2E 테스트 없이 '구현 완료' 금지
- ALWAYS #7-8: 실행 검증 필수, '구현'과 '검증' 구분 보고
known-issues 3건:
- Collector 동기→aiohttp 전환 기록
- Extension fs.watch response 감지 누락 (미해결)
- rejectAgentStep 미등록 (미해결)
2026-03-12 00:00:30 +09:00
Variet Worker
c1303999cf
feat(bot,bridge): P1 !auto 토글 자동승인 + P2 BridgeTransport 추상화 #task-304 #task-305
...
P1: !auto 토글 (bot.py + extension.ts)
- auto_approve_projects set으로 프로젝트별 상태 관리
- !auto → on/off 토글, pending 자동 승인 + 🤖 자동 승인됨 embed
- Extension step_probe에서 autoApproveEnabled 시 직접 tryApprovalStrategies
P2: BridgeTransport 추상화 (bridge.py)
- BridgeTransport ABC + LocalTransport (기존 동작 100% 호환)
- RemoteTransport 스켈레톤 (multi-PC 대비)
- config.py BOT_MODE/REMOTE_BRIDGE_URL, main.py transport 주입
docs: usage-guide.md + tech-stack.md Python 경로 기록
2026-03-11 19:25:40 +09:00
Variet Worker
1696a2976b
fix(config,extension): BRAIN_PATH 빈문자열 버그 + 크로스프로젝트 DEDUP MERGE 수정
...
- config.py: os.getenv BRAIN_PATH 빈값 시 CWD 해석 → or 패턴으로 수정
- extension.ts: writePendingApproval DEDUP에 project_name 가드 3곳 추가
- extension.ts: HTTP /pending file_permission dedup에도 project_name 가드
- known-issues: 2건 추가 (BRAIN_PATH, DEDUP MERGE)
- devlog: 2026-03-11 생성
2026-03-11 09:36:55 +09:00
Variet Worker
71aa80d144
fix(extension): v0.3.9 — SDK JS 파일 VSIX 포함 수정 + start_bot.bat conda Python 우선
2026-03-11 00:01:26 +09:00
ff559bc6ee
chore: .agents 워크플로우/레퍼런스/가이드 전체 추가 (.gitignore 규칙 제거)
2026-03-10 23:29:28 +09:00
a0d46f1ff3
fix(extension): SDK LS 대소문자 매칭 버그 수정 — fixLSConnection() 추가 (멀티프로젝트 신호 누락 해결)
2026-03-10 22:51:02 +09:00
4d780ec5e7
docs: devlog 013 + known-issues (Reload Window stale session, RUNNING 우선 선택, IDLE 채널)
2026-03-10 22:21:32 +09:00
6179c4d242
fix(bridge): RUNNING 세션 우선 선택 + IDLE 채널 자동 생성 제거
...
- extension: bestSession 선택에 2단계 비교 (RUNNING > IDLE, then modTime)
- extension: [SESSION-FILTER] 진단 로그 + [projectName] 로그 접두사
- bot: pending_approval_scanner의 IDLE 프로젝트 자동 채널 생성 제거
- known-issues: 2개 항목 추가 (IDLE 고착, 채널 증식)
2026-03-10 21:56:46 +09:00
5a3217d31a
fix(extension): 크로스 프로젝트 response watcher 우회 수정 + file_permission write 도구 3-button 매핑
...
- response watcher: pending 삭제 후 response data의 project_name으로 fallback 필터
- processResponseFile: sessionId를 pending에서 우선 사용 (activeSessionId 대신)
- logToFile: [projectName] 접두사 추가 (공유 로그 구분)
- file_permission 리스트에 replace_file_content, write_to_file, multi_replace_file_content 추가
- UserResponse에 project_name 필드 추가 + bot.py 4곳 전파
- known-issues: 2건 추가, devlog 012
2026-03-10 21:02:06 +09:00
08c5cb461b
docs: devlog 011 + known-issues (workspace URI 세션 격리)
2026-03-10 19:33:39 +09:00
c9524fc8a8
fix(extension): v0.3.7 — file_permission 3-button 주입 + active_project.lock 제거
...
- writePendingApproval()에서 step_type=file_permission일 때 자동 3-button 주입
- active_project.lock 메커니즘 제거 (멀티 프로젝트 동시 사용 지원)
- step_probe auto-resolve에 project_name 필터 추가
- known-issues 2건 추가
2026-03-10 18:48:51 +09:00
93439d2f1c
docs: devlog index 002+003, known-issues update (verbosity + file_permission), Vikunja #276 #277 done
2026-03-10 13:46:43 +09:00
aab1cfba27
fix(bridge): approval ENOENT race condition + multi-choice button grouping #task-276 #task-277
2026-03-10 06:32:20 +09:00
373c0f7ddc
fix(bridge): approval flow robustness — pending cleanup, MERGE dedup, false positive filter, auto_resolve, 30min timeout
2026-03-10 00:41:39 +09:00