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
  • docs
  • 2026-07-25-opal-bpm-arc.md
Find file
BlameHistoryPermalink
  • PLN (Algolia)'s avatar
    docs(gig): mid-set recovery runbook + measured OPAL BPM arc · 9bdf3953
    Two gig-prep deliverables that needed no ears, written at J-10.
    
    RUNBOOK.md (#15) — the "when it breaks" playbook, organised symptom-first because
    that is how it actually gets read: you don't know the cause, you know the sound
    stopped. Ordered cheapest-first, with an explicit rule zero that rebooting
    SuperCollider is the LAST resort (30-120s of dead air and every pattern lost) and
    almost nothing needs it.
    
    The section worth having written down is 2b, the zombie control port. Observed live
    today: a leftover ghc process holds Tidal's port 6010, so a fresh Tidal boots, fails
    to bind, prints "Can't handshake with SuperCollider without control port" — and
    Pulsar looks completely normal. You eval and nothing happens, with NO error surfaced
    in the editor. That is the nastiest class of failure: silent, and indistinguishable
    from "my code is wrong". Detection is one line (ss -lunp | grep 6010, expect exactly
    one ghc and it should be the current one), so it's now in the pre-set checklist
    rather than only in the recovery section.
    
    Also captured: the mute-bomb rescue path (prelude.tidal as in-session hot-patch on a
    stale boot, with the tell that pulling fader 49 to 0 makes it WORSE not better);
    fader 77 being down as a silent global-gain failure that looks like nothing is
    broken; Pulsar being frozen NOT stopping audio, since patterns live in ghci and not
    the renderer, so Window: Reload keeps the music playing; and the LCXL USB-OUT
    endpoint stall where LEDs die but input survives (replug).
    
    Every procedure is labelled by how well it's actually established — §1a/2a/2b/2c/7
    have commands verified by running them today, §4/§6 come from documented prior
    incidents with known-good fixes but weren't re-tested tonight, and §5's gig-up.sh
    path was read from source rather than exercised end to end. A runbook you have never
    executed is a hypothesis, and it should say so.
    
    docs/2026-07-25-opal-bpm-arc.md (#12 input) — read setcps out of all 12 setlist
    tracks instead of trusting the backlog's [bpm] markers, and three disagree:
    - Gimme Acid: 80 measured vs 160 written — almost certainly the standard dnb
      half-time convention, but it decides where the track sits in the arc.
    - Sunshine: 144 measured vs 166 written. 22 BPM is far too big to be a rounding
      note, and it inverts the end of the set: the backlog plans Mafia(160) ->
      Sunshine(166) as a rising finish, but measured it is a 16 BPM DROP. Either the
      file drifted or the number was aspirational — needs a decision, since the shape
      of the finale depends on it.
    - Desire: 127 vs 129. Trivial, but it's the FINALE, so make them agree.
    
    Charted the measured arc and flagged three >40 BPM cliffs (->89, ->80, ->160). The
    89 and 80 ones look deliberate — a slow track between fast ones is a real dramatic
    move — and they are only a problem if the transition is unprepared, which is
    precisely what the riser audit (#33) and default-xfade (#13) exist to fix. Also
    noted the 124/124/128 plateau as the most transition-safe stretch in the set.
    
    Ordering itself is left as PLN's call; this is only the tempo dimension.
    PLN (Algolia) authored Jul 25, 2026
    9bdf3953
2026-07-25-opal-bpm-arc.md 4.34 KB
EditWeb IDE
×

Replace 2026-07-25-opal-bpm-arc.md

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.