Closed bug report

Background demo job hangs in footprint3d when no Footprint Editor window exists (job slot then blocked)

John Lauer · ·closed by John Lauer

Background demo job can hang forever in the footprint3d beat

Seen live on AdomLapper 2026-08-24 while verifying the new demo captions (0.9.248): the background job ran beats 1-5, then sat in footprint3d for 10+ minutes (progress frozen, active: true), which also blocks any future demo run because the job slot is single-occupancy. The same build completed 6/6 on ConfRoomROG minutes earlier.

Suspected shape: the box had DUPLICATE demo window sets (an accidental staged call had opened one set before the background job opened its own), and at hang time no window titled "Footprint Editor" existed at all, while two "3D Viewer" windows did. handle_open_3d_viewer {editor:"footprint"} appears to wait unboundedly for a footprint-editor context in that state.

Fixes to make:

  1. Time-budget the beat handlers the same way #54 budgeted show_symbol - a beat that cannot finish returns a failed beat, never wedges the job thread.
  2. The demo job should carry a hard wall-clock ceiling (sum of estimates x3) after which it marks itself done with the failed beats listed.
  3. open_3d_viewer {editor:"footprint"} should fail fast with a real errorCode when no Footprint Editor window exists, instead of waiting.

Cleared on the box by a bridge respawn. Captions themselves verified working (6/6 on CRR; caption pixels on-screen on AdomLapper).

1 Reply

John Lauer ·

Closing: the conditions this described are gone from the tour. Since 0.9.299/0.9.305 every beat targets an exact window title (never a generic "Footprint Editor"/"3D Viewer" match), the tour starts with a clean slate that closes its own leftover viewers, footprint editors and demo documents, and the footprint beat is bounded (two attempts, pcbnew plugin wait, no unbounded restart). Since 0.9.339 each beat is also verified in front, painted and stable before it moves on, and the progress record shows per-beat timestamps, so a grind would be visible as such rather than a frozen bar. Today's runs on arav-rog (0.9.339) completed 6 of 6 in 96 to 159 s with the footprint3d beat at 12 s.

John Lauer closed this ·

Log in to reply.