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
  • bridge
  • README.md
Find file
BlameHistoryPermalink
  • PLN (Algolia)'s avatar
    bridge: one RIG UP button, and converge stops fighting the gearbox · 26a1e7b8
    TWO OWNERS BECOME ONE. gig-up --converge called `powerprofilesctl set
    performance` while the gearbox wrote the same governor/EPP/platform_profile
    through thermal-mode, with no arbiter — whichever ran last won, and ppd
    re-asserts itself on AC transitions, so a converge done on battery was undone by
    plugging in for the set. converge now drives the gearbox. It deliberately does
    NOT touch trim: quiet-vs-cool is a room-by-room call (a mic'd quiet room wants
    Quiet even at a gig) and converge cannot know which room it is in.
    
    The resolver rejects a PRE-gearbox thermal-mode rather than calling a verb it
    does not have, and falls back to ppd when there is no gearbox at all — a rig
    check must never fail because a sibling repo is missing.
    
    THE PANEL, the GUI half of the button whose CLI half converge already was.
    converge owns services and refuses to open windows ("a script that opens windows
    under someone is a script they stop trusting"), leaving Pulsar and Ardour
    reported-but-not-launched. The Bridge is a thing PLN clicked, so it is allowed
    to open his apps. Converge runs off the request thread: a cold SuperDirt boot
    warms 51 banks and gig-up waits up to 100s for it, which held open as an HTTP
    request would read as a hung dashboard.
    
    The list under the button carries gig-up's two hard-won rules:
    
      * A GREEN UNIT IS NOT SOUND. 2026-08-01 had parvagues-sc.service active while
        scsynth was dead. `systemctl start` is a no-op on an active unit, so that
        state reads `broken` and says "needs restart, not start" — reporting it as
        down would send the reader to a button that cannot fix their problem.
      * ABSENT IS NOT DOWN. A thing you cannot start is a different problem from a
        thing you can, and collapsing them wastes the reader's time under pressure.
    
    Verified live: POST /api/rig converged the rig for real — SuperDirt booted,
    watchdog and autoroute up, faders restored, setlist and preload regenerated —
    and the panel tracked it through the poll. The audio ladder then reported 5/5
    with scsynth and sclang joining the PipeWire trio.
    
    One bug found on the way, kept as a test: `systemctl show --value` emits
    properties in ITS order, not the caller's, so pairing them positionally swapped
    LoadState and ActiveState and made every inactive unit report its state as
    "loaded". Parsed by key now, with Id making each block self-identifying.
    
    56 bridge tests green (13 new).
    Co-Authored-By: 's avatarClaude Opus 5 <noreply@anthropic.com>
    PLN (Algolia) authored Aug 21, 2026
    26a1e7b8
README.md 3.84 KB
EditWeb IDE
×

Replace README.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.