Commit Graph

69 Commits

Author SHA1 Message Date
Variet Worker
4a5521dcc3 docs: devlog #006 + known-issues !stop stale primitive update #task-410 2026-03-18 09:20:07 +09:00
Variet Worker
07bbb626a6 docs: devlog #005 + known-issues !stop root cause update + Vikunja #411 done 2026-03-18 08:22:10 +09:00
Variet Worker
d8eac80b2f fix(ext): !stop CancelCascadeInvocation RPC — AG 빨간■ 동일 메커니즘 적용 #task-411 2026-03-18 07:16:57 +09:00
Variet Worker
759dab55b6 fix(ext): !stop 핸들러 SDK cancelCurrentTask() 교체 — rejectAgentStep 미등록 이슈 해결 #task-411 2026-03-18 06:49:17 +09:00
Variet Worker
bbfafdc5e4 docs: rejectAgentStep 조사 결과 — CancelCascadeInvocation RPC 대안 발견 #task-411 2026-03-18 06:46:26 +09:00
Variet Worker
ebf2228aa8 docs: known-issues 정리 + Vikunja #410~#414 태스크 등록 반영 2026-03-18 06:38:05 +09:00
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
CD
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
CD
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
CD
429cae47b7 docs: session end — known-issues + devlog + VSIX v0.3.11 deployed 2026-03-15 18:53:00 +09:00
CD
5e5f515db4 fix(bridge): auto-approve crash — DOM observer Deny filter + bot reject-word guard + AGENT rule 2026-03-15 18:49:58 +09:00
CD
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
CD
f96203646e fix(bridge): 4 race condition fixes for approval lifecycle 2026-03-15 10:44:31 +09:00
CD
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
CD
ff559bc6ee chore: .agents 워크플로우/레퍼런스/가이드 전체 추가 (.gitignore 규칙 제거) 2026-03-10 23:29:28 +09:00
CD
a0d46f1ff3 fix(extension): SDK LS 대소문자 매칭 버그 수정 — fixLSConnection() 추가 (멀티프로젝트 신호 누락 해결) 2026-03-10 22:51:02 +09:00
CD
4d780ec5e7 docs: devlog 013 + known-issues (Reload Window stale session, RUNNING 우선 선택, IDLE 채널) 2026-03-10 22:21:32 +09:00
CD
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