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
  • live
  • collab
  • cookie
  • ccc.tidal
Find file
BlameHistoryPermalink
  • PLN (Algolia)'s avatar
    refactor(corpus): 917 lines move the kick onto its own mute button — every… · 27c1581e
    refactor(corpus): 917 lines move the kick onto its own mute button — every track, not just the set (#105, #70)
    
    PLN, mid-migration, when I had scoped this to the 13 setlist tracks:
    
      "good, and not only in the set am i right? did we not do the whole refact on the
       other .tidal files on my repo?"
    
    He is right, and the reason is muscle memory: his fingers do not know which folder a
    track lives in. A half-migrated corpus is worse than either extreme, because it makes
    the surface unpredictable exactly when he reaches for an old track mid-set.
    
    ## What moved
    
    913 lines across 213 files, plus 7 orbits given a mute they never had:
    
         505+4  gM1 -> gM2      percs vacating the kick's button (the BULK of the work —
                                not the kick itself, which is only 133 lines)
        127+1   gM2 -> gM1      the kick, arriving
          66+4  gMute2 -> gM1   same, in the legacy long spelling
            64  gM1 -> gM3
            58  gMute3 -> gM3   spelling normalisation only
         41+2   gM2 -> gM3
          12+2  gMute2 -> gM2 / gMute1 -> gM2 / gMute1 -> gM1 / gM3 -> gM2  the tail
             7  FILL            orbits with NO mute at all, in the SET only
    
    Only the setlist was filled. PLN: "ensure we have that consistently in all set, and
    flag in other non-set tracks for me to see." Outside the set a missing gate may be a
    composition choice, so docs/2026-07-30-orbits-without-a-mute.md REPORTS the rest and
    writes nothing — split into the cut that makes 2397 findings actionable:
    
        A · partial  110 files   321 blocks   uses family mutes but missed some
                                              <- the oversight he meant
        B · never    354 files  2076 blocks   no orbit has one; predates the convention
                                              <- a style era, not a mistake
    
    ## Also, in this diff: #70
    
    `live/midi/nova/dnb/liquid/you_my_sunshine.tidal` had d5 (the voice) and d11
    (`no_sunshine:4/4` chopped) both on `# cut 5`. A cut group is monophonic, so every
    d11 event killed the vocal mid-word. That is ALSO the `-- FIXME VOICE OFF` PLN had
    left on d5 line 59: one root cause wearing two labels, found by pvlint PV004 on
    2026-07-28 and confirmed by reading the file today. d11 moves to `# cut 11`, matching
    the group-N-equals-orbit-N convention d3/d6/d8/d9 already follow. The comment says
    how to revert in one line if the vocal was meant to be monophonic across both layers.
    
    ## How this was verified, given it touches 213 files PLN has to play in 7 days
    
    1. **Convergence** — `--apply` twice; second pass proposes 0 rewrites and 0 fills.
    2. **Structural proof, not spot-checks** — diffed every changed line against HEAD and
       asserted the two sides are identical once mute tokens and whitespace are stripped.
       908 of 917 changed lines are provably mute-plumbing-only; the other 9 are listed
       and each accounted for (4 fills onto head lines with no `$`, 3 trailing-whitespace,
       1 FIXME annotation, 1 the cut 5->11 fix). Nothing else in the corpus moved.
    3. **Compile-invariance argument** — gM1/gM2/gM3 are the same type and arity in
       BootTidal, so substituting one for another cannot change whether a file compiles.
       Only the 7 fills alter expression structure, and all 7 are in the set.
    4. **silent-eval --seeded on the set: 13/13 ok**, before and after.
    5. Suite: 222 passed.
    
    THE HONEST LIMIT, stated because a green check here is misleading: every button CC
    seeds to 0 at boot and gMute<N> is `midiOn "^7N" (mask "f*16")`, so all three mutes
    are equally inert until pressed. silent-eval therefore proves nothing got silenced at
    boot and NOTHING about behaviour under a press — which is the only thing this change
    alters. The real gate is PLN's ear, or pv-at (#74).
    
    NOTE FOR PLN: 213 files changed on disk. Anything open in Pulsar now has a stale
    buffer, and Pulsar saves the BUFFER — reload before evaluating or your next Ctrl-S
    silently reverts the migration in that file.
    PLN (Algolia) authored Jul 30, 2026
    27c1581e
ccc.tidal 2.01 KB
EditWeb IDE
×

Replace ccc.tidal

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.