Commit 5a010b11 by PLN (Algolia)

docs(gig): riser audit correction — found the 12th track, and it's a THIRD idiom

Second pass on the audit. "Am i Doing it Right?" was reported as file-not-located;
it exists as live/techno/do_it_right.tidal. No slug guess matched the title — it
was identified by `setcps (89/60/4)` = 89 BPM against the backlog's [89*] marker.
Recording that as a method: when title-to-slug guessing fails on this repo, the
tempo line is the reliable identifier, not the filename.

It changes the finding in a way that strengthens the conclusion rather than
weakening it. The track DOES have a riser, so the count is 3/12 not 2/12 — but it
is a third, mutually incompatible idiom:

  d10 $ mask "<f!4 t f!3>" $ loopAt 4 $ "risers:8" # gain 1 # cut 10

An 8-cycle period firing on cycle 5, but loopAt 4 stretches the sample over 4
cycles while the mask only opens for 1 — so what plays is a slice of a slowed
riser, not a complete build. Could be deliberate (at 89 BPM a full 4-cycle build
is very long) or a leftover; flagged for PLN either way.

So the real headline is not the absence of risers, it's the inconsistency of the
ones that exist. Three tracks, three idioms, disagreeing on all three axes:
- phase: fires-last-8 (Take Five) vs fires-first-1 (Vague de CRIME) vs
  fires-cycle-5-of-8 (Do It Right);
- gain: 0.8 vs unset vs 1 — the riser will not read consistently to the room
  across three tempos;
- wrapping: Take Five AND Do It Right both lack gF/gM, so they are the only
  streams in the set the global filters and mutes cannot touch. Reach for gF1
  during either build and everything ducks except the riser.

That third point is the one that could actually bite live, and it now affects two
tracks rather than one. It also makes the gRiser proposal stronger: harmonizing is
no longer "add the missing 9", it's "reconcile 3 disagreeing implementations and
then add the missing 9", which is exactly the kind of thing worth doing once in a
helper instead of nine times by hand at J-10.
parent 1ae6f369
...@@ -7,14 +7,15 @@ pass. Which risers actually sound good together is PLN's call. ...@@ -7,14 +7,15 @@ pass. Which risers actually sound good together is PLN's call.
## The headline ## The headline
**Only 2 of 12 tracks have a riser.** Five more have `d10` entirely free; four have `d10` **Only 3 of 12 tracks have a riser — and all three do it differently.** Five more have
occupied by non-riser material, so they'd need a different stream. `d10` entirely free; four have `d10` occupied by non-riser material, so they'd need a
different stream. The inconsistency, not the absence, turned out to be the real finding.
| # | Track | BPM | File | `d10` state | Riser? | | # | Track | BPM | File | `d10` state | Riser? |
|---|---|---|---|---|---| |---|---|---|---|---|---|
| 1 | Ceci n'est pas Une Bombe | 124 | `live/midi/nova/techno/bombe_dj.tidal` | free | ❌ | | 1 | Ceci n'est pas Une Bombe | 124 | `live/midi/nova/techno/bombe_dj.tidal` | free | ❌ |
| 2 | WAP | 133 | `live/midi/nova/dnb/wap.tidal` | free | ❌ | | 2 | WAP | 133 | `live/midi/nova/dnb/wap.tidal` | free | ❌ |
| 3 | Am i Doing it Right? | 89* | **file not located** | — | ❓ | | 3 | Am i Doing it Right? | 89* | `live/techno/do_it_right.tidal` | riser | ✅ |
| 4 | Take Five Drops | 124 | `live/midi/nova/lounge/take_5_drops.tidal` | riser | ✅ | | 4 | Take Five Drops | 124 | `live/midi/nova/lounge/take_5_drops.tidal` | riser | ✅ |
| 5 | Piment Brésilien | 124 | `live/collab/raph/piment_bresilien.tidal` | "Menace" | ❌ | | 5 | Piment Brésilien | 124 | `live/collab/raph/piment_bresilien.tidal` | "Menace" | ❌ |
| 6 | Perfect <3 | 128 | `live/midi/nova/remix/perfect.tidal` | "Euclidian mid arps" | ❌ | | 6 | Perfect <3 | 128 | `live/midi/nova/remix/perfect.tidal` | "Euclidian mid arps" | ❌ |
...@@ -28,12 +29,12 @@ occupied by non-riser material, so they'd need a different stream. ...@@ -28,12 +29,12 @@ occupied by non-riser material, so they'd need a different stream.
Bonus: `live/midi/nova/techno/electric_hammer.tidal` ("le shifteur marteau", floated as the Bonus: `live/midi/nova/techno/electric_hammer.tidal` ("le shifteur marteau", floated as the
closer) also has no riser. closer) also has no riser.
> **Open question for PLN:** track 3, *"Am i Doing it Right?"*, has no `.tidal` matching any Track 3 took a second pass to find — no slug I guessed matched. It's
> obvious slug. Per the repo convention ("one track = one standalone `.tidal`, it always `live/techno/do_it_right.tidal`, confirmed not by filename but by `setcps (89/60/4)` =
> exists") it should be findable — it's probably filed under a name I didn't guess. Needed **89 BPM**, matching the backlog's `[89*]` exactly. Worth noting as a method: when the
> before the set is complete. title-to-slug guess fails, the tempo line is the reliable identifier.
## The two existing idioms (they disagree) ## The three existing idioms (they all disagree)
**A — Take Five Drops, the "fair riser".** The considered one: **A — Take Five Drops, the "fair riser".** The considered one:
...@@ -62,14 +63,31 @@ Fires on cycle **1 of 8** and plays at the sample's natural length. Note it buil ...@@ -62,14 +63,31 @@ Fires on cycle **1 of 8** and plays at the sample's natural length. Note it buil
the downbeat rather than *into* one — an accent, not a build-up. Different musical function the downbeat rather than *into* one — an accent, not a build-up. Different musical function
despite the same folder. despite the same folder.
### Two inconsistencies worth fixing **C — Am i Doing it Right?, the clipped one:**
1. **Idiom A is unwrapped.** Take Five's `d10` has no `gF`/`gM` — it is the only stream in ```haskell
the set that the global filters and mutes cannot touch. If you reach for gF1 during that d10
build, everything ducks except the riser. Idiom B wraps correctly (`gF1 $ gM1`). $ mask "<f!4 t f!3>"
2. **Phase disagreement** (fires-last-8 vs fires-first-1) means "the riser" means two $ loopAt 4 $ "risers:8" # gain 1
different things depending on which track you're in — exactly the muscle-memory hazard # cut 10
#33 is about. ```
An 8-cycle period firing on cycle 5, but `loopAt 4` stretches the sample over 4 cycles while
the mask only opens for 1 — so you hear a *slice* of a slowed riser, not a complete build.
Possibly deliberate (it's a 89 BPM track, a full 4-cycle build would be very long), possibly
a leftover. Uses the same `risers:8` sample as idiom B and the same `cut 10` as idiom A.
### Three inconsistencies worth fixing
1. **Idioms A and C are unwrapped.** Take Five's and Do It Right's `d10` have no `gF`/`gM`
the only streams in the set that the global filters and mutes cannot touch. Reach for gF1
during that build and everything ducks except the riser. Only idiom B wraps correctly
(`gF1 $ gM1`).
2. **Phase disagreement.** Fires-last-8 (A) vs fires-first-1 (B) vs fires-cycle-5-of-8 (C):
"the riser" means three different things depending on which track you're in — exactly the
muscle-memory hazard #33 is about.
3. **Gain disagreement.** `gain 0.8` (A) vs unset (B) vs `gain 1` (C). At three different
levels across three tempos, the riser will not read consistently to the room.
## Proposal — one house helper ## Proposal — one house helper
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment