Commit Graph

345 Commits

Author SHA1 Message Date
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
CD
3fab31b465 docs: comprehensive approach history (14 attempts, failures, unexplored alternatives) 2026-03-07 20:43:41 +09:00
CD
0d90b257c3 feat: extractFromLogs for AI response text, remove failed RPCs, summary fallback 2026-03-07 20:31:58 +09:00
CD
b0c2f865c8 feat: try LoadTrajectory + multiple RPCs for actual AI response text, summary as fallback 2026-03-07 20:15:27 +09:00
CD
7415ab7890 feat: immediately relay summary when new conversation detected with AI response 2026-03-07 20:06:19 +09:00
CD
41f90b3b15 fix: track ALL trajectories, detect new conversations, summary fallback per-traj 2026-03-07 19:55:34 +09:00
CD
0c9664542e fix: use getDiagnostics for cascade IDs + summary fallback + stop poll spam 2026-03-07 19:43:31 +09:00
CD
dfc76a9b4b fix: fallback chain for step retrieval (5 method+field combos) 2026-03-07 19:32:32 +09:00
CD
b6adeff402 fix: use real API response (trajectoryId, current:true, step count diffing) 2026-03-07 19:25:48 +09:00
CD
e4b98af308 docs: LS ConnectRPC reference (100+ RPC methods) + devlog + commands update 2026-03-07 19:16:33 +09:00
CD
be6fae71de fix: correct RPC method names from LS binary (Heartbeat, GetUserTrajectoryDescriptions, GetCascadeTrajectorySteps) 2026-03-07 19:00:11 +09:00
CD
f2ed431aa5 fix: LS ConnectRPC use HTTPS when detected, not port heuristic 2026-03-07 18:31:13 +09:00
CD
91b3a7ef20 feat: LS ConnectRPC bridge for AI response relay to Discord 2026-03-07 18:15:01 +09:00
CD
150967deee probe: getManagerTrace + getWorkbenchTrace + LS port discovery 2026-03-07 18:04:18 +09:00
CD
952883d3d2 probe: getDiagnostics structure discovery for AI response relay 2026-03-07 17:54:45 +09:00
CD
67619e8950 docs: mid-session devlog + entry 002 (sendPromptToAgentPanel discovery) 2026-03-07 17:39:00 +09:00