Commit Graph

295 Commits

Author SHA1 Message Date
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
2eea5fa638 fix(ext): WS response → tryApprovalStrategies 직접 호출 (파일 경유 제거) 2026-03-17 17:43:45 +09:00
Variet Worker
adbed69237 docs: devlog #012 final + known-issues ApprovalView WS 2026-03-17 17:08:15 +09:00
Variet Worker
442221e6a3 fix(bot): ApprovalView Hub WS 응답 라우팅 — Discord 승인이 Extension에 전달 안 되는 근본 원인 2026-03-17 14:53:22 +09:00
Variet Worker
50efd52f41 docs: devlog #012 update + known-issues ApprovalRequest 누락 필드 2026-03-17 14:30:35 +09:00
Variet Worker
f6181e552d fix(bot): ApprovalRequest missing conversation_id + timestamp in Hub path 2026-03-17 13:20:00 +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
9523d1328e fix(ext): workspaceUri 누락 + WS-only 전송 + user msg dedup 2026-03-17 10:38:45 +09:00
Variet Worker
96e9b8adce fix(bot): Hub WS auto-approve Discord 알림 누락 + !auto 이중발송 dedup 2026-03-17 10:37:55 +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
6ea3211a58 docs: devlog #010 - 문서 재작성 + 서버 배포 + WS 호환 2026-03-17 07:42:55 +09:00
Variet Worker
b9b240de0b fix(extension): ws-client browser WebSocket API compat (.onopen/.onmessage) 2026-03-17 07:41:56 +09:00
Variet Worker
36b70505d7 docs: .env.example Hub 인증 변수 추가 2026-03-17 07:20:19 +09:00
Variet Worker
5bdaba01bd fix(infra): docker-compose.yml 서버 실제 구성 반영 + Caddyfile 제거 2026-03-17 07:18:57 +09:00
Variet Worker
28d399ba91 infra: Caddyfile ag.variet.net + docker-compose Hub env vars + Extension hubUrl 설정 2026-03-17 07:09:46 +09:00
Variet Worker
fadfd88f51 docs: architecture/tech-stack/conventions 전면 재작성 + Wiki 동기화 2026-03-17 06:48:46 +09:00
Variet Worker
61bd4b1ffb docs: devlog 009 hash update 2026-03-17 06:42:45 +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
e3f8fb93f7 fix: cross-project event flooding + pending accumulation + diff_review brain exclusion
Phase 1: Collector auto-cleanup of auto_resolved/expired pending files after Gateway forwarding
Phase 2: Watcher project filter (only MY sessions emit events) + Collector event forward filter
Phase 3: Extension diff_review excludes brain/ artifact files (task.md, implementation_plan.md)
2026-03-16 23:05:27 +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
7f079a56a0 fix: process ALL parallel WAITING steps instead of only first one
step_probe break statement caused only one WAITING step to get
a pending file when AG runs multiple parallel tool calls.
Now iterates all WAITING steps and creates pending for each.
2026-03-16 20:36:41 +09:00
Variet Worker
fdc0084813 fix: add chat snapshot delivery success/failure logging 2026-03-16 20:22:49 +09:00
Variet Worker
f309518e78 fix: add channel failure logging to diagnose Discord notification delivery issue 2026-03-16 19:47:06 +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
0fdf668abc fix(extension): diff_review use agentAcceptAllInFile instead of dead RPC strategies (v0.3.15) 2026-03-16 18:43:04 +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
12a1cf8692 docs: update devlog hash 2026-03-16 14:23:38 +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
15f6a743a4 docs: update devlog hash 2026-03-16 13:53:23 +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
078f721187 docs(devlog): update 2026-03-16 commit hash 2026-03-16 11:12:44 +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
64f80212c3 docs(devlog): add entries 007-008 for system audit and agent rules 2026-03-15 23:28:28 +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
75289b3ec5 docs: update devlog with perf optimization entry + compiled output 2026-03-15 10:54:24 +09:00
CD
ae0509fbb5 perf(bridge): 3 optimizations — pollResponseGroup 1500ms, renderer adaptive idle, Bot single-pass scanner 2026-03-15 10:51:22 +09:00
CD
f96203646e fix(bridge): 4 race condition fixes for approval lifecycle 2026-03-15 10:44:31 +09:00
CD
c910c7c386 docs: add v0.3.10 entry to devlog 2026-03-15 08:31:47 +09:00
CD
10caae1506 chore(extension): bump version to 0.3.10 2026-03-15 08:27:38 +09:00
CD
28975f9c4b docs: update devlog commit hash 2026-03-15 08:19:26 +09:00