NA: NA Ingest out of the Tracks Mac's MIDI session in auto-fix hours (rehearsals, services); back after

User 2026-10-26: Ingest's notes did odd things in Ableton; the link is needed for programming only. An
automatic switch (bypass auto autofix_hours, names_only so ProdDash Lighting on the same Mac stays) takes it
out and keeps it out, and puts it back when the hours end. bypass_tick now takes turns over every switch.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-26 12:00:37 -04:00
co-authored by Claude Opus 5.5
parent 06dce6dffc
commit 412b0413c0
4 changed files with 72 additions and 6 deletions
+3 -2
View File
@@ -276,7 +276,8 @@ field("tiles[].kind", "enum", None, "A special key: master (ALL), service (ALARM
field("tiles[].bypass", "dict", None, "A bypass key: peers (MIDI peer or session names to take out, e.g. Lighting), "
"hosts (the Macs whose sessions to look in; \"\" is this Mac) and conns (Companion connections to switch off); or "
"fixes (fix ids it holds off: their checks stay green and nothing runs them, e.g. ableset), with on_text / off_text "
"for the key's face.",
"for the key's face. auto \"autofix_hours\": on by itself exactly in auto-fix's hours (NA: Ingest out of Tracks' MIDI); names_only: take "
"out only peers of those names, not others at the same address.",
"Keys", advanced=True)
field("tiles[].members", "list", None, "A group: the keys it sums up.", "Keys")
field("tiles[].checks", "list", [], "What the key watches.", "Keys")
@@ -744,7 +745,7 @@ def validate(cfg, live=None):
continue
toggled = {k.get("toggle") for k in (cfg.get("restart_page") or {}).get("keys", [])}
if "pos" not in t and "members" not in t and t.get("id") not in in_group and t.get("kind") != "master" \
and t.get("id") not in toggled:
and t.get("id") not in toggled and not ((t.get("bypass") or {}).get("auto")): # an automatic switch needs no key
warnings.append("key %s has no place on the deck and is in no group: nobody will see it" % t.get("id"))
if kinds["master"] != 1:
errors.append("there must be exactly one ALL key (kind master); found %d" % kinds["master"])