From 2bf1eb41d1d89acb1d79f0d6b75849d9a0be47fa Mon Sep 17 00:00:00 2001 From: Variet Worker Date: Mon, 20 Apr 2026 04:05:47 +0900 Subject: [PATCH] =?UTF-8?q?feat(probe):=20v35=20code=5Fedit=20=EC=9E=90?= =?UTF-8?q?=EB=8F=99=20Accept=20=E2=80=94=20agentAcceptAllInFile=20?= =?UTF-8?q?=EC=A7=81=EC=A0=91=20=ED=98=B8=EC=B6=9C=20(v0.5.100)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Accept all 버튼이 Observer DOM에 없음 확인 (에디터 레이어). step_probe에서 WAITING code_edit 감지 시 500ms 후 agentAcceptAllInFile 직접 실행. Observer relay 필터에 ACCEPT 추가. --- docs/devlog/2026-04-19.md | 2 +- extension/package-lock.json | 4 ++-- extension/package.json | 2 +- extension/src/step-probe.ts | 27 +++++++++++++++++++++++++++ 4 files changed, 31 insertions(+), 4 deletions(-) diff --git a/docs/devlog/2026-04-19.md b/docs/devlog/2026-04-19.md index d4c5228..f4f9e39 100644 --- a/docs/devlog/2026-04-19.md +++ b/docs/devlog/2026-04-19.md @@ -12,4 +12,4 @@ ### 검증 결과 - 14/14 E2E 테스트 통과 - SYNTAX OK -- Accept all (diff review) 자동 승인 테스트 — v0.5.98 21:48 KST +- Accept all (diff review) 자동 승인 테스트 — v0.5.99 04:01 KST diff --git a/extension/package-lock.json b/extension/package-lock.json index 03f65ce..697b069 100644 --- a/extension/package-lock.json +++ b/extension/package-lock.json @@ -1,12 +1,12 @@ { "name": "gravity-bridge", - "version": "0.5.99", + "version": "0.5.100", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "gravity-bridge", - "version": "0.5.99", + "version": "0.5.100", "dependencies": { "cheerio": "^1.2.0", "ws": "^8.19.0" diff --git a/extension/package.json b/extension/package.json index b12d1ad..6da8e2a 100644 --- a/extension/package.json +++ b/extension/package.json @@ -2,7 +2,7 @@ "name": "gravity-bridge", "displayName": "Gravity Bridge", "description": "Discord-based unified approval system for Antigravity AI interactions.", - "version": "0.5.99", + "version": "0.5.100", "publisher": "variet", "engines": { "vscode": "^1.100.0" diff --git a/extension/src/step-probe.ts b/extension/src/step-probe.ts index 31b3b26..dab8bd7 100644 --- a/extension/src/step-probe.ts +++ b/extension/src/step-probe.ts @@ -808,6 +808,19 @@ function setupMonitor() { source: 'step_probe_offset', safe_to_auto_run: isSafeToAutoRun, }); + // v35: Auto-accept code edits (offset path) + if (['write_to_file', 'replace_file_content', 'multi_replace_file_content'].includes(toolName)) { + ctx.logToFile(`[STEP-PROBE] v35: code_edit (offset) → auto-accepting in 500ms`); + setTimeout(async () => { + try { + const vscode = require('vscode'); + await vscode.commands.executeCommand('antigravity.prioritized.agentAcceptAllInFile'); + ctx.logToFile(`[STEP-PROBE] ✅ agentAcceptAllInFile (offset) SUCCESS`); + } catch (e: any) { + ctx.logToFile(`[STEP-PROBE] ❌ agentAcceptAllInFile (offset): ${e.message?.substring(0, 100)}`); + } + }, 500); + } } } // NOTE: no break — process ALL parallel WAITING steps @@ -861,6 +874,20 @@ function setupMonitor() { source: 'step_probe', safe_to_auto_run: isSafeToAutoRun, }); + // v35: Auto-accept code edits via agentAcceptAllInFile + // Observer can't see "Accept all" button (different DOM layer) + if (['write_to_file', 'replace_file_content', 'multi_replace_file_content'].includes(toolName)) { + ctx.logToFile(`[STEP-PROBE] v35: code_edit detected → auto-accepting in 500ms`); + setTimeout(async () => { + try { + const vscode = require('vscode'); + await vscode.commands.executeCommand('antigravity.prioritized.agentAcceptAllInFile'); + ctx.logToFile(`[STEP-PROBE] ✅ agentAcceptAllInFile SUCCESS`); + } catch (e: any) { + ctx.logToFile(`[STEP-PROBE] ❌ agentAcceptAllInFile: ${e.message?.substring(0, 100)}`); + } + }, 500); + } } } // NOTE: no break — process ALL parallel WAITING steps