← Commit history

v0.2.27 (insiders): 0.2.27: parked-engine check before every agent bootstrap (the real silent-halt mechanism: the raising command answers, the NEXT verb blocked)

John Lauer ·67073e0403 ·1mo ago ·parent 3eb716b
4 files changed +6−3
CHANGELOG.md+3
@@ -1,5 +1,8 @@ # Changelog +## 0.2.27 (2026-09-20)+- The silent-halt fix in 0.2.26 modelled the wrong moment and did not fire. What really happens (heartbeat: `requests: 1`, then nothing): a command raises an exception the agent's own Try/Except handles, the command ANSWERS normally, and THEN Altium's debugger parks the script on a breakpoint, on Altium Develop with no error box. The caller of that command sees nothing; the NEXT verb finds a dead agent, starts a second script into a parked engine and blocks until ab's HTTP timeout, and so does every verb after it. `agent::call` now checks before bootstrapping: agent dead + Altium running + the agent script in front = parked, so it sends `EditScript:Stop` first, restarts the agent, runs the verb, and marks the reply `enginePreviouslyParked:true` (also logged in `altium_dialog_log` as `engine_parked_cleared`). The in-flight title trigger from 0.2.26 is removed: the title alone cannot tell a halt from a long command.+ ## 0.2.26 (2026-09-20) Found by the new verb battery (`dev-skills/altium-bridge-test`), first full pass on Altium Designer Develop: - **Silent script halts are caught.** Altium Develop can stop the agent in its script debugger WITHOUT raising an error box (it did on `board_shape`): the box watcher from 0.2.21 saw nothing, the agent stayed dead, and ~30 verbs in a row queued behind it and timed out. Altium does give one tell: it pulls the agent's script document to the front. `agent::call` now treats "the main window flipped to `AdomAgent_*` while my command is in flight" as a halt after a 1.5 s grace for the box watcher: it photographs the editor, sends `EditScript:Stop` and returns `agent_script_error` with `silentHalt:true`.
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "altium-bridge",-  "version": "0.2.26",+  "version": "0.2.27",   "type": "app",   "description": "Skills for your container so your AI knows how to drive the Altium Designer bridge (altium_* verbs). The bridge runtime itself is the release zip; Adom Bridge loads that.",   "tags": [
src/BRIDGE_VERSION+1−1
@@ -1 +1 @@-0.2.26+0.2.27
src/bridge.json+1−1
@@ -2,7 +2,7 @@   "manifest_version": 1,   "name": "altium",   "displayName": "Altium Designer",-  "version": "0.2.26",+  "version": "0.2.27",   "description": "Drive Altium Designer from Adom: a resident DelphiScript agent (eval + the 1,100-command process launcher), the X2 -R command line, UIA over the VCL shell, dialogs by PID, screenshots of every Altium window, and Altium 365.",   "homepage": "https://wiki.adom.inc/adom/altium-bridge",   "docs": "https://wiki.adom.inc/adom/altium-bridge",