← Commit history

release 0.2.8: manifest + version stamps

John Lauer ·16e7a4920f ·1mo ago ·parent f7a55d8
5 files changed +14−7
CHANGELOG.md+7
@@ -1,5 +1,9 @@ # Changelog +## 0.2.8 — 2026-09-02+- **User-initiated-close watchdog, ported from Colby Knox's PR 74 (adom/altium-bridge#4) to the Rust runtime.** A standing service polls every 2 s; for any per-instance workspace with a live heartbeat whose main window has vanished while an X2 process still lives, it drops the agent's stop file that instant, so the loop exits during shutdown instead of wedging under the engine teardown (the freeze that hard-locked a desktop). Cold starts never trigger it (a workspace must have been SEEN with a window). Each firing is logged in `altium_dialog_log`. Honest limit, as in the PR: a 2 s race, not a guarantee — the complete fix is the agent noticing shutdown itself.+- **`altium_install_library_bundle` auto-launches a closed Altium** (Colby, #5): one-click parity with the KiCad/Fusion lanes; cold start runs with the measured taskbar bar, the agent bootstraps on the first call, and the reply carries `launched` with the cold-start time.+ ## 0.2.7 — 2026-09-02 - **The reaper pre-empts Altium's licence dialogs too** (John, with two of them on his screen: "you should be handling this automatically for the user" / "you should pre-empt all of these dialog boxes btw"). Three gaps closed:   - the scan no longer gates lone-OK dialogs on a window-class allowlist — any titled, visible, non-main window on an Altium pid whose only UIA button is OK is an acknowledgement, whatever its class;@@ -8,6 +12,9 @@ - Honest limit, stated in the reaper log's `followup`: a claim against a STRANDED seat (leased to a killed Altium) still fails with "maximum usage reached" — the bridge keeps that dialog off the screen, but only a sign-out/sign-in or the lease expiring frees the seat.  +## 0.2.6 — 2026-09-02+- **The standing reaper was blind since 0.2.0 — fixed.** John: *"u have not solved this error yet. you MUST"*, with the VaultExplorer startup warning back on his screen. Root cause: ab's `desktop_find_controls` returns buttons under `matches`; the Rust port read `controls`, so every dialog scanned as `buttons: []` and the lone-OK acknowledgement rule could never fire. Parser fixed with a regression test built from the exact reply ab gave for that warning; title-bar controls are dropped so a lone OK still reads as lone. Verified minutes later: two startup warnings reaped before anyone saw them.+ ## 0.2.5 — 2026-09-02 - **`altium_foreground` verifies instead of assuming**: after the raise it reads the z-order and reports `visiblyOnTop` — a raise can "succeed" while another fullscreen window still covers Altium (John watched an entire show that never became visible because his fullscreen Claude window sat on top, and his own typing kept it there — which the foreground-once rule correctly refuses to fight). `demo {live}` surfaces the verdict as `foregroundNote` so the narrating AI can TELL the user the show is running behind their current window rather than silently losing to it. - **The taskbar progress bar is visible during live-demo stages**: pacing used the 210 s full-tour "demo" seed, so a ~12 s stage filled 0→7% — invisible. Live stages now pace against their own `demo_live_stage` phase (12 s seed), and every driving verb with a bar records its actual duration into the SAME key its estimate reads, so bars converge on this machine's measured truth instead of staying seeded forever.
adom-bridge-altium-manifest.json+4−4
@@ -1,9 +1,9 @@ {   "name": "altium",-  "version": "0.2.7",-  "url": "https://wiki.adom.inc/download/adom/altium-bridge/0.2.7/adom-bridge-altium-v0.2.7.zip",-  "sha256": "64542400b712a2434d4a32cedbd5c39bc38afcfba8c00e3684c526b151595a26",-  "size": 1425175,+  "version": "0.2.8",+  "url": "https://wiki.adom.inc/download/adom/altium-bridge/0.2.8/adom-bridge-altium-v0.2.8.zip",+  "sha256": "cc4a74174b936065a0ea4f44cd0a7c692d03d19e88ea7a93733fa2929c3eabdd",+  "size": 1434380,   "verbPrefixes": [     "altium_"   ],
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "altium-bridge",-  "version": "0.2.7",+  "version": "0.2.8",   "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.7+0.2.8
src/bridge.json+1−1
@@ -2,7 +2,7 @@   "manifest_version": 1,   "name": "altium",   "displayName": "Altium Designer",-  "version": "0.2.7",+  "version": "0.2.8",   "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",