Repository navigation
release: cuems-engine 0.1.0rc6-5 - #36
Merged
Merged
Conversation
…ded show (869fhjdq5)
A stop_project ActionCue (cuems-utils >= 0.1.0rc17 carries the XSD value)
stops the show exactly as an operator STOP does. Every node reveals it;
the handler is pure and NodeEngine._action_result_sink sends the
controller a STATUS op {cue, run_seq} (nowait, like a follow message).
The controller validates it like _relay_follow (adopted sender, cue in the
project and of the right type, running, current run_seq), releases the
lock and runs stop_script: running=no, every cue 0, nodes re-arm. The
first valid message wins; the other nodes' messages are dropped at INFO.
The node never stops itself: a 3 s watchdog compares STOP/load receipts
and only logs when none arrived.
On the node the cue is a hard chain break: nothing after it is unrolled
at arrival and no go_at_end follow fires from it. Disabled, it is
transparent (rehearsal mode).
Two hardenings the unattended case needs: cue ADD/UPDATE operations are
ignored while the show is not running (a node's late start report after
a STOP could leave the stop cue at 1 or 100), and STOP restarts the arm
watchdog ("Re-arm after STOP stalled") so a failed re-arm is logged.
Removes the dead script_finished aggregator and _finished_nodes that
dec95e9 left on the controller (869fhjdp8). Requires cuemsutils >= rc17.
Tests: test_action_cue (stop_project, other project actions still
rejected), test_controller_stop_project (relay guards, ADD gate, arm
watchdog after STOP), test_node_stop_project (notify, watchdog, sink,
chain break), test_controller_gating cleaned. Targeted run on .111: 218
passed; the full suite runs when the rig window allows.
Design: cuems-RELATIONS Plans/2026-10-15-engine-stop-project-actioncue.md
…(869fhjdq5) CLAUDE.md: running=yes after the last cue is by design; the stop_project contract end to end, its journal lines, the chain break, the cue ADD gate and the arm watchdog after STOP. docs/unattended-playback.md: the two operator recipes (stop_project for play-once kiosks, play loop-back for attract loops), placement, rehearsal, the re-arm window, persistent auto-load and version requirements. docs/index.md links it.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Packaging release of #35 (stop_project ActionCue, ClickUp 869fhjdq5). It merges the feature into
debian/bookworm, adds the 0.1.0rc6-5 changelog entry and raisesdebian/controltocuems-utils (>= 0.1.0rc17).Merge after #35 and after cuems-utils 0.1.0rc17 (stagesoft/cuems-utils#19 + its release PR). The deb built from this branch on casas is staged in
rc1_packages/once all are merged.