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
  • opal2026-task-archive.md
Find file
BlameHistoryPermalink
  • PLN (Algolia)'s avatar
    docs(gig): archive the audio-path rescue — three tasks, one recurring failure shape · 164f8b44
    Archives #38, #39, #40 with full learnings, per the document-as-you-go discipline.
    
    The thread: the onboard SOF codec stopped answering IPC mid-session and took the
    whole audio stack down with it — WirePlumber wedged in uninterruptible D-state
    inside ipc3_tx_msg_unlocked, unkillable by SIGKILL, scsynth dead, reboot the only
    exit. That escalated the UMC202HD from "nice upgrade" to "resilience fix", and the
    move onto it is now done: default sink switched, the SOF internal DMIC (card3
    pcm4c, the exact PCM that hung) disabled by a scoped WirePlumber rule that leaves
    all five SOF playback sinks alone.
    
    The archive's real value is the pattern that runs through all three entries. Every
    failure this session had the same shape: a binding resolved once at startup,
    invalidated by a device event, failing with NO error surfaced. Ardour's master port
    (twice — it restores its own saved ports and ignores the default sink, then loses
    the link entirely on a wireplumber restart). SuperCollider's cached MIDIOut after a
    replug moved the LCXL 20:0 -> 24:0. The HUD's aseqdump, still ALIVE on the dead
    port, which is why its respawn-on-death recovery never fired — liveness is not
    health. And the session layer itself: after an overnight suspend the UMC
    re-enumerated 118 times, came back healthy at the hardware level, and WirePlumber
    simply never rebuilt its node.
    
    Also recorded: a wireplumber restart resets sink volume to the device default (87%),
    which turned a routine verification tone into a painfully loud one. Attenuate before
    making sound, always.
    
    Corrected doctrine while here — commits belong on master by default. PLN is a lone
    dev who reviews his own work; branches are for cloud agents, parallel sessions and
    genuine prototypes. The memory claiming otherwise was wrong and cost real time.
    PLN (Algolia) authored Jul 27, 2026
    164f8b44
opal2026-task-archive.md 11.9 KB
EditWeb IDE
×

Replace opal2026-task-archive.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.