Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
T
Tidal
  • Overview
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • PLN
  • Tidal
  • Repository

Switch branch/tag
  • Tidal
  • tools
  • gig-up.sh
Find file
BlameHistoryPermalink
  • PLN (Algolia)'s avatar
    gig-up: the gate that could not fail, and the two units nobody started · 7bda1ccd
    Follow-up to 72937cc7. Having found that the Bridge panel could not see the LED
    watcher, I went looking for what else was watching the surface. Nothing was —
    and one of the things that claimed to be could not fail.
    
    THE FALSE-GREEN GATE. The pre-gig check for "LCXL -> SC" was:
    
        aconnect -l | grep -A3 "Launch Control XL" | grep -q "128:"
    
    `grep -A3` matches each of the THREE lines containing "Launch Control XL" and
    prints three lines after each; the last window runs off the end of the LCXL
    block and into the next client header, which is literally
    `client 128: 'SuperCollider'`. So the string "128:" was in the haystack whether
    or not a single wire existed. This gate has been passing since it was written,
    for a reason unrelated to what it measures. It would have said green with the
    desk connected to nothing.
    
    Proved rather than argued: recorded the live graph, stripped only the
    Midi Through -> SC edge from it, and ran both gates against the doctored file.
    Old gate PASSED. New gate reported "LCXL -> Midi Through, but Through does NOT
    reach SC" and exited 1.
    
    tools/lcxl-path.py replaces it by walking the graph. It has to: the real path
    here is TWO hops (LCXL 20:0 -> Midi Through 14:0 -> SC in2), so a direct-only
    test would be wrong in the other direction. It takes an optional recorded-graph
    file argument precisely so the gate can be tested for FAILURE without
    unplugging hardware at a venue — the reason the old one was never caught is
    that nobody could cheaply watch it fail.
    
    TWO UNITS NOBODY STARTED. lcxl-leds-watch and midi-autoconnect were both
    `disabled`, so neither came up at login; they ran only when started by hand.
    Both now join the auto-start loop.
    
    A NEW GATE. "The surface is wired" and "the surface is lit" are different
    daemons and different failures, and only the first was ever checked. The new
    "LCXL LEDs" soft check reads: if the board is on the bus, the watcher must be
    active. Deliberately conditional on the board — at a kitchen table an unplugged
    desk is normal and must not warn, but at the venue this is the difference
    between playing blind and not.
    
    Verified both new gates in BOTH directions: green as the rig stands, and red
    with the watcher stopped / the Through edge cut. A gate observed only passing
    is indistinguishable from the one this commit deletes.
    PLN (Algolia) authored Aug 21, 2026
    7bda1ccd
gig-up.sh 28.5 KB
EditWeb IDE
×

Replace gig-up.sh

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.