← Commit history

v0.2.12 (insiders): Bundle install declares a 330 s budget, reports per-step timings and keeps its receipt (altium_install_receipt) so a wiki export that outlives ab's 60 s default still ends with the proof frame.

Colby Knox ·02e18c33c5 ·1mo ago ·parent ab086f8
4 files changed +13−4
CHANGELOG.md+4
@@ -1,5 +1,9 @@ # Changelog +## 0.2.12 (2026-09-08)+- **The one-click install no longer dies at Adom Bridge's 60 s budget** (Colby, live on 2026-09-08: a 7-part Cloud Library export landed in Altium, SCH Library panel and all, while the page said "Could not install: 'altium_install_library_bundle' did not respond within ab's 60s budget"). ab enforces a per-verb budget it reads from `bridge.json`, and `install_library_bundle` was never declared there after 0.2.8 gave it a cold launch and 0.2.9 the open, panel-select and capture finish. Declared now: 330 s for the bundle install (the launch alone is 240), 150 s for `install_library`, and the verb's `describe` entry is marked long-running with `altium_status` as its status verb. The reply carries `phasesMs` (launch, licence, unpack, register, open, list, panel, capture, agentStop) and `totalMs`, so the next slow run names its step instead of leaving a guess.+- **The receipt survives a timeout.** The bridge serves one verb at a time and finishes an install ab has already given up on; the receipt, proof frame included, is now kept in memory. `altium_status` carries a light `lastInstall` (with the `installId` the client sent), and the new `altium_install_receipt` returns the full reply. The wiki page waits through this path (git-wiki e1c66a1), so a timed-out install still ends in the success line and the proof shot.+ ## 0.2.11 — 2026-09-07 - **Fresh-workspace install fixed** (adom/altium-bridge#10, found by the Hydrogen pre-production test: the dock's Altium Dashboard tile failed on every virgin box since 0.2.10). The 0.2.10 lint fix moved `altium-bridge-dev` out of the shipping tarball but `install.sh` still copied it, so `cp` failed and the whole install script was skipped, taking `altium-dashboard` with it. `install.sh` now installs only user skills; `altium-bridge-publish` moved to `publish-skills/` in the same pass (publish skills are source-only, same doctrine); `package.json` files[] and `page.json` scrubbed of both stale paths. `uninstall.sh` still removes previously-installed copies. Runtime unchanged. 
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "altium-bridge",-  "version": "0.2.11",+  "version": "0.2.12",   "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.11+0.2.12
src/bridge.json+7−2
@@ -2,7 +2,7 @@   "manifest_version": 1,   "name": "altium",   "displayName": "Altium Designer",-  "version": "0.2.11",+  "version": "0.2.12",   "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",@@ -77,6 +77,7 @@     "altium_install_extension",     "altium_install_library",     "altium_install_library_bundle",+    "altium_install_receipt",     "altium_instances",     "altium_launch",     "altium_layers",@@ -157,7 +158,10 @@       "import_kicad": 300,       "compile_intlib": 300,       "extract_intlib": 300,-      "install_extension": 200+      "install_extension": 200,+      "install_library_bundle": 330,+      "install_library": 150,+      "install_receipt": 10     },     "prefixes": [       {@@ -172,6 +176,7 @@   },   "verbDurations": {     "altium_launch": 60,+    "altium_install_library_bundle": 30,     "altium_agent_start": 8,     "altium_run_outjob": 60,     "altium_run_drc": 30