← Commit history

0.9.298: Fix: the 0.9.297 tour job died on a NameError (_EXIT undefined) before its first progress update, so Play the demo showed the dashboard's transport pill and nothing else (John, lost, 2026-09-03). _EXIT is defined and the job's reset sits inside its try so any early failure lands on progress as an error instead of a silent stall.

John Lauer ·f16660ef5a ·1mo ago ·parent 51de940
3 files changed +4−3
BRIDGE_VERSION+1−1
@@ -1 +1 @@-0.9.297\ No newline at end of file+0.9.298\ No newline at end of file
bridge.json+1−1
@@ -2,7 +2,7 @@   "manifest_version": 1,   "name": "kicad",   "displayName": "KiCad EDA",-  "version": "0.9.297",+  "version": "0.9.298",   "description": "Reverse bridge for KiCad \u2014 board/schematic introspection, lint via kicad-cli, plugin install, multi-instance probe, in-process DRC.",   "homepage": "https://wiki.adom.inc/adom/adom-bridge",   "author": "Adom Inc.",
handlers/demo.py+2−1
@@ -824,6 +824,7 @@ def _post_transport(body: str, paused: bool = False) -> None: # beats (a beat cannot be interrupted mid-verb). The toast transport stays as # the fallback for an ab older than 2.1.0 (the verb answers "unknown verb"). _PANEL_ID = "kicad-demo"+_EXIT = {"now": False}   # set by a STOP press; polled by the beat loop, the narration wait and the motion _PANEL = {"ok": None}          # None = untried, True = panel shown, False = fall back to the toast _PANEL_STOPS = ["Fetching the ESC board", "The MCU symbol", "Its footprint", "The chip in 3D",                 "The ESC schematic", "The board in 2D", "The board in 3D"]@@ -1089,8 +1090,8 @@ def _run_demo_background(kicad_info: dict) -> None:     # (it would fight that single raise), and no push-to-back of the demo's     # windows. Every other verb keeps the background contract.     done_weight = 0.0-    _EXIT["now"] = False     try:+        _EXIT["now"] = False         _panel_show(0, "playing")         _caption(_BEAT_CAPTIONS["prepare"], duration_ms=_BEAT_CAPTION_MS["prepare"])         _play_narration("prepare")