Commit Graph

160 Commits

Author SHA1 Message Date
CD
7fdefb0c63 docs: update devlog index with commit hash 4ba65f9 2026-03-09 23:26:39 +09:00
CD
4ba65f9fc7 feat(bridge): Retry/Dismiss/Reject-all button detection + agent_guide workflow integration #task-274 2026-03-09 23:26:04 +09:00
CD
7a387630dc docs: update devlog index with commit hash 18b3734 2026-03-09 22:37:36 +09:00
CD
18b3734c02 fix(bridge): approval flow tuning — dedup + text cleanup + stall fallback removal + safe reject #task-256 2026-03-09 22:31:44 +09:00
CD
520d36ea43 docs: E2E approval flow success verification #task-264 #task-255 2026-03-09 21:44:54 +09:00
CD
bf0e046cbb docs: update devlog index with commit hash 08077e8 2026-03-09 20:59:47 +09:00
CD
08077e8afa fix(bridge): CSP script-src 'unsafe-inline' patch for renderer v3 execution #task-264 2026-03-09 20:35:38 +09:00
CD
da31740cc2 docs: V8 CachedData diagnosis + cache clearing for renderer v3 #task-264 2026-03-09 20:03:35 +09:00
CD
5971a524ea fix(bridge): workbench.html inline v3 script injection + both-HTML loop patch #task-264 2026-03-09 19:38:06 +09:00
CD
23bd8f4613 docs: add approval strategy decision chain to known-issues (handoff clarity) 2026-03-09 18:28:45 +09:00
CD
62306d3cf1 docs: update devlog index with commit hash a07d9d3 2026-03-09 18:25:04 +09:00
CD
a07d9d3803 feat(bridge): deep-inspect HTTP endpoint + recursive DOM inspector #task-264 2026-03-09 18:24:41 +09:00
CD
dddbd2b96f docs: update devlog index with commit hash 32bf5ae 2026-03-09 18:07:01 +09:00
CD
32bf5ae416 feat(bridge): renderer v3 deep DOM traversal (iframe/webview/shadow) #task-255
- deepFindButtons(): traverse iframe contentDocument, webview.executeJavaScript, shadow DOMs
- dumpDOMStructure(): startup diagnostic dump of all iframes/webviews/buttons
- 3-phase trigger-click: deep DOM → webview execJS → iframe direct
- known-issues: webview iframe isolation confirmed, v3 solution documented
2026-03-09 18:06:01 +09:00
CD
5e64860c3f docs: update devlog index + known-issues with renderer DOM click status 2026-03-09 15:12:12 +09:00
CD
4497e966b9 feat(bridge): renderer DOM click approval + command discovery diagnostic
- CMD-DISCOVERY: enumerate all antigravity.* commands at activation (72) and during WAITING state (119)
- APPROVAL-CMD-CHECK: re-check commands inside tryApprovalStrategies for dynamic registration
- Confirmed: ALL 7 SDK approval commands NOT REGISTERED in current AG build
- Confirmed: sendChatActionMessage, executeCascadeAction also NOT REGISTERED
- Replaced failed keyboard simulation (Strategy 2) with renderer DOM click approach:
  - Added clickTrigger variable + GET /trigger-click HTTP endpoint
  - Renderer polls /trigger-click every 1s, clicks Run/Accept button via DOM
- Updated known-issues.md with comprehensive findings
- Added devlog entry 20260309-002
2026-03-09 15:09:13 +09:00
CD
3b1bb9246e feat(bridge): step-type-specific approval commands + SDK research
- tryApprovalStrategies: terminalCommand.run > terminalCommand.accept > command.accept > acceptAgentStep
- Step probe: immediate on first stall (5s), 775-limit detection with dynamic fallback
- NOTIFY filter: skip <50 chars, TASK dedup by taskName+taskStatus
- BTN-DUMP diagnostic removed from renderer
- Focus: agentPanel.focus + agentSidePanel.focus (verified SDK commands)
- known-issues: add step-type command mismatch finding
2026-03-09 09:19:36 +09:00
CD
027135e2b5 fix(bridge): response file race condition + Run button regex + known issues
- Fix: processResponseFile no longer deletes response files for DOM observer
  approvals, allowing renderer pollResponse to find and serve them via HTTP
- Fix: Run button regex ^Run$ → ^Run to match 'Run Alt+⏎' button text
- Fix: BTN-DUMP diagnostic added to generateApprovalObserverScript (source)
- Doc: 2 new known issues (race condition, renderer script 3-location confusion)
- Doc: devlog entry #19
2026-03-08 22:58:17 +09:00
CD
32726d4d3a docs(devlog): 접근 과정 + 실패 사례 상세 기록 (entry #018 보강) 2026-03-08 20:25:48 +09:00
CD
810fbcc114 feat(bridge): 승인 감지 최적화 — latestToolCallStep 즉시 감지 + DOM scan 확장
- latestToolCallStep RPC 기반 즉시 감지 (30초 stall → 5초 poll)
- DOM scan 범위: findPanel() → document.body 확장
- Accept all/Reject all 리뷰 바 패턴 추가
- Stall detection을 100초 fallback으로 약화
- extractToolCommand/extractToolDescription 헬퍼 추가
- known-issues 5건 신규 추가
- start/services workflow: Python 전체 경로 + services.md 로딩

#task-258 #task-262
2026-03-08 20:21:11 +09:00
CD
8ed1ece87a fix(bridge): renderer script debugging — async fetch, install path fix, product.json checksums
- Replace sync XHR tryPing() with async fetch tryPingAsync() for port discovery
- Add ag-sdk JS file to product.json checksums in updateProductChecksums()
- Revert to inline script approach for jetski HTML (vscode-file:// blocks custom .js)
- Remove old external script tag cleanup, add inline markers
- Update known-issues with 3 new findings
- Add devlog entry #16
2026-03-08 19:51:27 +09:00
CD
43f023c87e fix(bridge): v0.3.5 — inline script + deterministic port + auto-checksum
- vscode-file:// refuses custom .js files → inline script into HTML
- Random port → deterministic port from project name hash (gravity_control=34332)
- Hardcoded port in renderer script for immediate discovery
- Auto-update product.json SHA256 checksums after HTML modification
- Bump version 0.2.0 → 0.3.5
2026-03-08 18:37:09 +09:00
CD
afb1a1d6e6 docs(bridge): product.json 체크섬 불일치 근본 원인 기록 #task-258 2026-03-08 17:43:48 +09:00
CD
b92c3c072f fix(bridge): multi-window isolation v0.3.4 2026-03-08 16:56:23 +09:00
CD
c97414cd37 fix(bridge): stall-based approval detection + known issues from deep debugging
- IDLE→stall detection: RUNNING+delta=0 for 6 polls (30s)
- lastModifiedTime-based thinking filter (partial)
- ResolveOutstandingSteps confirmed CANCELS steps (removed)
- HandleCascadeUserInteraction always socket hang up (removed)
- VS Code accept commands: silent success, no effect
- Hybrid approval: focus+all commands sequential, no break
- logToFile: console.log backup added
- Known issues: 4 critical findings documented
- better-antigravity reference added for future research
2026-03-08 14:38:41 +09:00
CD
2574ce6f08 feat: immediate pending detection for all step types 2026-03-08 10:19:27 +09:00
CD
7a38e7ecc9 feat: auto-WAITING detection via stall + step query 2026-03-08 09:56:01 +09:00
CD
0bf3217ae1 fix: panel focus before approval 2026-03-08 09:43:55 +09:00
CD
e7bc4046a4 fix(bridge): hybrid approval — SDK rawRPC + VS Code commands
Root cause: VS Code commands (acceptAgentStep, terminalCommand.run etc)
return undefined silently but don't actually accept WAITING steps.
LS requires HTTPS + CSRF token for RPC calls.

New approach: Phase 1 tries SDK rawRPC (has CSRF auth) with
HandleCascadeUserInteraction + ResolveOutstandingSteps.
Phase 2 tries all VS Code commands as fallback.
All results logged to bridge/extension.log for debugging.

Also removed stall detection (fundamentally broken — stepCount
keeps incrementing from other tool calls during WAITING).
2026-03-08 09:29:40 +09:00
CD
c98b6432f8 docs: devlog 08 entries 8-11 (polling overhaul, stall detection, approval handler) 2026-03-08 08:20:32 +09:00
CD
f1f9a0b40b fix(bridge): safer stall detection + VS Code command-based approval
Stall detection fixes:
- Threshold 2→6 polls (30s minimum stall before triggering)
- Added lastModifiedTime tracking (both stepCount AND modTime must freeze)
- Cooldown 30s→60s between pending writes
- Track lastPendingStepCount to prevent retrigger for same stall

Approval handler fixes:
- Replace HandleCascadeUserInteraction RPC with VS Code commands
- Sequential fallback: acceptAgentStep → command.accept → terminalCommand.run
- Same pattern for reject: rejectAgentStep → command.reject → terminalCommand.reject
- Removed SDK dependency check (VS Code commands work without SDK)
2026-03-08 08:14:35 +09:00
CD
9b9c9c71fe fix(bridge): stall-based WAITING detection, remove GetCascadeTrajectorySteps
GetCascadeTrajectorySteps has 775-step hard limit and cannot see
WAITING steps beyond that. No RPC exists for direct WAITING detection.

New approach: if stepCount frozen for 2+ polls (~10s) while status is
RUNNING, treat as WAITING and write pending approval to Discord.
30s cooldown prevents duplicate pending messages.

Also removes the last GetCascadeTrajectorySteps call from Extension -
now only a single GetAllCascadeTrajectories RPC per 5s poll cycle.
2026-03-08 08:05:41 +09:00
CD
f6ae9c87a5 fix(bridge): remove SDK EventMonitor to stop ERR_CONNECTION_REFUSED spam
EventMonitor was dual-polling GetCascadeTrajectorySteps every 2s via rawRPC,
which has a 775-step hard limit and generates connection errors on port change.

Changes:
- Remove entire SDK EventMonitor (onStepCountChanged, onNewConversation, etc.)
- Keep only GetAllCascadeTrajectories POLL at 5s interval
- Remove all sdk.monitor.stop() calls
- Unleash ERR_CONNECTION_REFUSED (127.0.0.1:1080) is Antigravity's own issue
2026-03-08 07:51:50 +09:00
CD
854f33b816 fix(bridge): use GetAllCascadeTrajectories for real-time relay
Root cause: GetCascadeTrajectorySteps has 775-step hard limit,
startStepIndex parameter is completely ignored (verified via direct RPC).

Solution: GetAllCascadeTrajectories returns:
- stepCount: real-time (verified 1413->1457 live)
- latestNotifyUserStep: full notificationContent
- latestTaskBoundaryStep: full taskName/Status/Summary
- stepIndex on each for dedup

E2E verified: Python script -> RPC -> snapshot -> Bot -> Discord
2026-03-08 07:37:39 +09:00
CD
c3964f8e7a fix(bridge): rawRPC direct polling + SDK analysis docs + trial-and-error log
- Root cause: getDiagnostics.lastStepIndex is stale, SDK EventMonitor cannot detect real-time step changes
- Fix: Direct rawRPC('GetCascadeTrajectorySteps') polling every 5s
- Relay: PLANNER_RESPONSE, NOTIFY_USER, TASK_BOUNDARY, WAITING steps
- Added: docs/discord-bridge-analysis.md (full SDK architecture analysis)
- Added: docs/devlog/entries/20260308-003.md (trial-and-error history)
- Added: antigravity-sdk-main/ source reference
- Vikunja: #252 done, #253 created, #251 commented
2026-03-08 07:08:25 +09:00
CD
731dad35bf docs: update devlog with commit hash 0c3d6cd 2026-03-08 05:56:47 +09:00
CD
0c3d6cdb6d fix(bridge): step structure discovery + approval watcher + AI text relay
- plannerResponse.response = user-facing text field (confirmed)
- step.runCommand.commandLine = command (not toolCall.argumentsJson)
- Add response watcher: bridge/response/ → ResolveOutstandingSteps RPC
- Fix AI text: use modifiedResponse/response, last-wins, dedup
- Fix flooding: slice(-delta) to skip old steps on reload
- Bot: 404 cache invalidation for deleted Discord channels
2026-03-08 02:29:17 +09:00
CD
876143d397 fix(bridge): align Extension protocol with Bot — 3 mismatches fixed
- Snapshot: response/chat_snapshot.txt → chat_snapshots/*.json
- Command field: cmd.message → cmd.text (matches Bot.write_command)
- RPC: GetConversation (404) → GetCascadeTrajectorySteps
- Bundle sql-wasm.js + sql-wasm.wasm into VSIX (45KB→379KB)
- Handle consumed flag, clean 38 stale commands
- Add extractAIText helper with fallback chain
2026-03-08 01:14:20 +09:00
CD
4bb72921ae feat: embed antigravity-sdk source — zero npm dependencies (45KB VSIX) 2026-03-08 00:45:07 +09:00
CD
bc2fca0da4 feat: complete SDK rewrite — antigravity-sdk v1.6.0 integration (1155→280 lines) 2026-03-08 00:38:45 +09:00
CD
d9e20301c5 probe: Trial E2 complete — Electron access limited, hybrid strategy analysis 2026-03-08 00:01:41 +09:00
CD
8c0736fe2b probe: Trial E2 — Electron webContents + undocumented VS Code commands 2026-03-07 23:38:25 +09:00
CD
87094e00b0 feat: subscribeToStream on new cascade — real-time StreamCascadeReactiveUpdates subscription 2026-03-07 23:23:16 +09:00
CD
12131b9103 probe: Trial D3 — streaming RPC with protocol_version=1 + cascadeId combined 2026-03-07 23:05:54 +09:00
CD
4d1bb7a443 probe: Trial D2 — fixed protobuf encoding (protocol_version=1, cascadeId, ConnectRPC framing) 2026-03-07 22:58:56 +09:00
CD
2794a26c77 probe: Trial D — streaming RPCs + JSON retry with live auth context 2026-03-07 22:52:30 +09:00
CD
d213c2f0f5 probe: Trial B2 — getChromeDevtoolsMcpUrl, getWsTargets, remote-debugging-port scan 2026-03-07 21:22:23 +09:00
CD
026e7d5e33 docs: add SDK analysis results, revise trial plan with sendChatActionMessage discovery 2026-03-07 21:15:19 +09:00
CD
7ba1e1b977 probe: Trial A (extension exports) + Trial B (chat commands) — systematic approach 2026-03-07 20:52:33 +09:00
CD
804aa19b35 docs: confirm #14 failed, add systematic trial plan (A→E) 2026-03-07 20:48:14 +09:00