Songsterr s35881. The exhaustive handoff of 2026-09-07 named a ship file and
contained three internal contradictions about which one it was. This page settles the ship
target, records a restore defect that every previous verification missed, and reports the queue
state for this song.
Status change, 2026-09-07 afternoon.
r8908034 cleared moderation at 14:49 UTC and is live now. It emptied
seven authored musician credits on the public tab. The upload is no longer an
improvement waiting on a queue; it repairs live damage we caused.
Correction, 2026-09-07. The ship target is
RESTORED-s35881-TEXTSAFE-v2.gp. The earlier target
RESTORED-s35881-TEXTSAFE.gp restored the E7Msus2 chord definition and never
restored the beat that displays it, so bar 3 printed no chord symbol.
The short version
DEFECT FOUND GPIF stores a chord in two places: an
<Item> that defines the diagram and a <Chord> reference on
the beat that displays it. The restore tool put back the Item alone. Its check asked whether the
string E7Msus2 appeared in the file, which passed on an orphan.
FIXED AND VERIFIED
RESTORED-s35881-TEXTSAFE-v2.gp restores the beat reference copy-on-write and now
matches the pre-sweep source on every measured field.
CORRECTED The NAMEDROP diagnosis was wrong about deletion. ElementTree strips the CDATA wrapper and leaves the name text intact. TEXTSAFE remains the right lane for a different reason.
CLEARED 124 bars differ from the pre-sweep source across six tracks. Every one is a 5/4 rest bar that Songsterr filled correctly. Nobody should restore them.
HARD GATE, corrected by Brandon 2026-09-07: we never revise an original tab
s35881.RESTORED-s35881-TEXTSAFE-v2.gp and submit the revision on that copy.This holds for repairing damage this account caused. The earlier two-lane rule, which sent a
restore to a revision on the original tab, is retired. The original and r8908034
are not touched.
/songsterr-uploadTwo runs, because the copy starts from the live revision rather than from the pre-sweep export.
| run | reference given | verdict | what it means |
|---|---|---|---|
| A | --ai-export r8768414-LIVE-EXPORT.gp | REFUSED, NAMEDROP | fires on the 7 names in r8768414. The copy is made from r8908034, which holds zero names, so there is nothing there to lose. |
| B | --live-tracks 9 | REFUSED, GRID | count-only mode cannot detect grid inheritance. Run A saw it and printed GRID-INHERITED, the tab itself is 7.25% off and this import keeps its exact grid. |
Neither fault is caused by the file. Measured directly: master bars 105 against 105
identical, tempo automations 1 against 1 identical, MasterBars sha
457cf4db697a0341 on both sides. The grid our import carries is the grid the tab
already has.
The 7.25% ruler is also unverified. It measures the tab against a Moises stem of 545.3 s, and the handoff already records that alignment cannot identify which recording this tab transcribes, scoring the presumed source at 86 of 193 against 82 of 193 for a take the tab never transcribes.
The preflight NAMEDROP rule is too absolute, and four measurements say so
The skill states that the uploaded file cannot prevent name loss. Same tab, same
createdVia: GP import path:
| revision | source file | names present |
|---|---|---|
s35881 r8768414 | 136 CDATA blocks | 7 of 9 |
s35881 r8908034 | ElementTree, 0 CDATA | 0 of 9 |
s5820647 r8906157 | ElementTree, 0 CDATA | 0 of 5 |
s5820647 r8932311 | CDATA-carrying | 5 of 5 |
CDATA presence in the uploaded file is the variable. The Zomby Woof conclusion compared a
Tracks section after parsing, which is byte-identical whether or not the
source carried CDATA wrappers, so it could not see the thing that mattered.
RESTORED-s35881-TEXTSAFE-v2.gp carries 137, one more than the sweep and equal
to the author's file. Filed for Brandon's decision rather than changed, since it is a gate and
song work is queued.
Four witnesses exist for this song's drum part on this Mac. One is machine-readable data, one is a second machine-readable transcription, and two are printed pages below the resolution floor.
| witness | form | resolution | usable for a note-level comparison |
|---|---|---|---|
Songsterr s35881 r7715683, Ben Dibden1 | GPIF data, 9 tracks, 104 bars | native | YES it is the reference |
Unknown Artist-206 Watermelon in Easter Hay-E-112bpm-442hz-09-06-2026(1).gp | GPIF data, 3 tracks, 279 bars | native | LANE ONLY different bar grid |
| Drumnet chart by BartoRomeo, 5 pages | printed drum chart | 595×842, A4 at 72 dpi, 5.0 px per staff space | NO floor is 15 px |
| Kasper Sloots analysis page | printed excerpt | 785×1124, 10 px spacing | NO under the floor |
The 09-vai folder holds Steve Vai tempo-map images for other pieces and carries
nothing for this song. 07-songsterr holds a catalogue, not notation.
The second file is not a revision of s35881. It runs 279 bars against 104, in
230 bars of 4/4 plus 48 of 2/4 plus one 6/4, against the tab's 53 of 4/4 and 52 of 5/4. So the
comparison is lane density, and a bar-keyed diff would be meaningless.
| lane | midi | tab, human | machine | reading |
|---|---|---|---|---|
| Ride (middle) | 51 | 1,724 | 596 | tab 2.9× denser |
| Electric Snare (hit) | 40 | 193 | 0 | tab only |
| Snare (hit) | 38 | 0 | 11 | machine only, different snare lane |
| Kick (hit) | 36 | 107 | 475 | machine 4.4× denser |
| Crash high (hit) | 49 | 53 | 212 | machine 4.0× denser |
| Hi-Hat (closed) | 42 | 0 | 125 | machine only |
| Pedal Hi-Hat (hit) | 44 | 6 | 0 | tab only |
| Low Tom / High Tom / Crash medium | 45, 48, 57 | 4 / 2 / 1 | 0 / 0 / 0 | tab only |
| China / Ride (bell) / side stick | 52, 53, 37 | 0 / 0 / 0 | 4 / 2 / 1 | machine only |
| Hi-Hat (open) | 46 | 1 | 2 | comparable |
| TOTAL | 2,091 | 1,428 |
What the comparison can and cannot settle
The handoff records r8908034 as held on moderation, which was already stale when
it was written. Songsterr reviewed it "fair" on 2026-09-07 at 14:49 UTC and it is the published
revision now. Read uncredentialed from
api/meta/35881 and api/meta/35881/revisions.
| revision | empty names | track names on the public tab |
|---|---|---|
r7715683 Ben Dibden1, the author | 2 of 9 | Frank Zappa, Warren Cuccurullo, Arthur Barrow, Ed Mann, Warren Cuccurullo, Wurlitzer (Peter Wolf), Vinnie Colaiuta |
r8768414 our paren sweep | 2 of 9 | identical, all seven preserved |
r8908034 our restore, LIVE NOW | 9 of 9 | every name empty |
The repair mechanism is proven on this song
r8768414 is our own .gp upload, createdVia: "GP". It
carried 136 CDATA blocks and its live names are clean and complete.
r8908034 carried none and emptied all nine.
RESTORED-s35881-TEXTSAFE-v2.gp carries 137, one more than the sweep and equal to
the author's file.
The same repair on s5820647 went live as r8932311 and brought its
five names back. Those came back padded, stored as
"\n Lead Guitar\n ", because that build carried the names as plain
text with surrounding whitespace. A CDATA-carrying file avoids that shape, which is what
r8768414 already demonstrates here.
All 15 songs holding a ghost restore, plus s5820647, read uncredentialed on
2026-09-07. Only two carry live credit loss.
| song | live rev | author of live | names empty | verdict |
|---|---|---|---|---|
| s35881 Watermelon In Easter Hay | r8908034 | Brandon chavez | 9 / 9 | LOST 7 credits |
| s68248 Carolina Hard-Core Ecstasy | r8769058 | Brandon chavez | 3 / 9 | LOST 3 credits, logged 2026-09-06 and never repaired |
| s5820647 | r8932311 | Brandon chavez | 0 / 5 | repaired |
| s1105085, s35878, s35865, s412178, s35884, s68246, s748459, s20690 | ours, eight songs | varies | count not reduced | |
| s35886, s620961, s35870, s35887, s749523 | Evgeny or Kirill | varies | a moderator's revision is live, not ours | |
Nine revisions remain on moderation across seven songs, with s20690 holding
three. Full table:
~/Projects/_outputs/zappa-watermelon-ride-analysis/out/NAMEDROP-LIVE-SWEEP-2026-09-07.md
Eight restore candidates sit in
~/Projects/_outputs/songsterr-zappa-paren-fix/s35881-Watermelon/. The handoff's own
inventory listed six of them and named the wrong one.
| file | bytes | CDATA | chord symbol on bar 3 | verdict |
|---|---|---|---|---|
PRESWEEP-r7715683.gp | 51,234 | 137 | yes | the saved original, reference only |
r8768414-LIVE-EXPORT.gp | 51,028 | 136 | no | the damaged live tab |
RESTORED-s35881.gp | 74,935 | 0 | no | reserialized |
RESTORED-s35881-v2.gp | 74,935 | 0 | no | reserialized |
RESTORED-s35881-v3-with-chord.gp | 74,981 | 0 | no | reserialized |
RESTORED-s35881-MINIMAL.gp | 51,485 | 0 | no | reserialized |
RESTORED-s35881-FINAL.gp | 51,506 | 0 | no | reserialized |
RESTORED-s35881-TEXTSAFE.gp | 51,438 | 136 | no | orphaned chord Item |
RESTORED-s35881-TEXTSAFE-v2.gp | 51,451 | 137 | yes | ship this |
sha256 87020f8c4243a7441db8187b4d7356b300e62b4d013787343de5ea4a0cfe27fd
The paren sweep r8768414 dropped both halves of one chord. It removed the
<Item name="E7Msus2"> from the diagram collection on the Frank Zappa staff, and
it removed the <Chord> reference from the beat at bar 3 that printed the
symbol. build_restore_textsafe.py restored the first half.
Why every check passed on a broken file
'E7Msus2' in text, which an orphaned definition satisfies.Items, which never says whether a beat
references one.(bar, voice, position, midi). A chord
symbol carries no notes, so the diff is structurally unable to see it.This is the standing rule feedback_gate_must_read_the_field_the_human_reads,
second confirmed instance. A reader acts on the symbol printed above bar 3. No check read that.
| beat-level chord symbol | PRESWEEP | TEXTSAFE | TEXTSAFE-v2 |
|---|---|---|---|
track 0, bar 2, ref 0 (Amaj7) | yes | yes | yes |
track 0, bar 3, ref 1 (E7Msus2) | yes | MISSING | yes |
track 1, bar 93, ref 0 | yes | yes | yes |
track 1, bar 96, ref 1 | yes | yes | yes |
GPIF deduplicates beat definitions. Beat id 2 in the restore is referenced by
seven voices covering track 0, bars 3 through 9. Adding a <Chord> to that
definition prints E7Msus2 above all seven bars.
The repair clones the definition into Beat id 910, adds the chord reference to
the clone, and repoints the bar 3 voice alone. Verified afterward: the symbol appears on bar 3
and on no bar from 4 to 9. Tool:
tools/restore_bar3_chord_ref.py.
The handoff states that ElementTree "deletes all 28 authored <Name> entries
including Frank Zappa and Vinnie Colaiuta". Measured on the file itself, that is not what
happens.
| file | bar 8 track name, as stored |
|---|---|
PRESWEEP | <Name> <![CDATA[Vinnie Colaiuta]]> </Name> |
RESTORED-s35881-FINAL | <Name> Vinnie Colaiuta </Name> |
The wrapper is stripped and the text survives. FINAL carries all 28 track names
and "Frank Zappa" as ordinary character data. The "named tracks 0" column came from a checker
that counted <Name><![CDATA[ and found none.
TEXTSAFE is still the right lane
A reserialized file rewrites 1,038,175 bytes of XML and reformats whitespace throughout. An upload that alters one drum track should not carry a million bytes of incidental change. String surgery keeps the diff to what was intended.
The handoff audits the restore against the live export, so it never asked whether the sweep
touched tracks other than track 8. It did. 124 (track, bar) cells differ from the
pre-sweep source across tracks 0, 1, 3, 4, 6 and 7.
Every one of them is a bar carrying zero notes on both sides, where the source holds one Whole rest and the export holds a Whole plus a Quarter. Those bars are 5/4. Four beats plus one beat fills the bar. The source under-filled it by a beat and Songsterr normalized it correctly.
Transcript saved at
~/Projects/_outputs/zappa-watermelon-ride-analysis/out/VERIFY-TEXTSAFE-v2-2026-09-07.txt.
| check | PRESWEEP | TEXTSAFE-v2 | |
|---|---|---|---|
| beat-level chord symbols | 4 | 4, identical locations | MATCH |
| CDATA blocks | 137 | 137 | MATCH |
CDATA <Name> entries | 28 | 28 | MATCH |
| chord Items | Amaj7, E7Msus2, E, A | Amaj7, E7Msus2, E, A | MATCH |
| note instances, 9 tracks | 4,856 | 4,856, identical per track | MATCH |
| AntiAccent on drums | — | 1,317 of 2,091 | RESTORED |
| Staccato on drums | — | 0 | CLEAN |
| ghost missing / spurious | — | 0 / 0 | CLEAN |
| positions added / removed | — | 0 / 0 | CLEAN |
| lanes with a wrong ghost count | — | 0 | CLEAN |
| zip integrity, XML parse | — | 12 entries, parses clean | CLEAN |
Record at
~/Projects/_outputs/zappa-watermelon-ride-analysis/out/QUEUE-CLOSURE-s35881-2026-09-07.md.
Each close names its own proof. No item was closed on another item's evidence.
| item | proof |
|---|---|
q-2026-09-05-4a279c | Bar 3 E7Msus2 restored, chord map 4 of 4, symbol on bar 3 alone |
q-2026-09-06-0623d7 | Chord patch complete, Item plus referencing beat, CDATA 137 |
q-2026-09-06-e36f49 | Ride definition cloned, 1,316 repointed, AntiAccent 1,317, drift 0 |
q-2026-09-05-0244ef | Superseded, v2.gp carries 0 CDATA against 137 |
q-2026-09-07-6aac90 | Superseded, it names FINAL.gp |
q-2026-09-07-c069ac | Diagnosis corrected, shippable file delivered |
q-2026-09-06-8ce0a9 | Brandon's decision, snare rebounds add nothing |
q-2026-09-06-1492ba | Audio branch closed, 2.1 point margin cannot identify a recording |
q-2026-09-05-2f7aec | Verdict settled, upload re-queued as its own item |
| item | blocked on |
|---|---|
q-2026-09-06-c45c11 | Drumnet scan at 5.0 px per staff space against a 15 px floor |
q-2026-09-06-05c938 | Same scan, accent and pedal glyphs not separable |
q-2026-09-06-5f862c | Bar 54 tuplet, same scan |
q-2026-09-06-ca2848 | Alignment. 178 of 505 slots is 1.35x against a 26% baseline, under the 1.5x floor |
q-2026-09-06-7ce9bd | Same. The 1.0800 s period does not place the events |
q-2026-09-06-690441 | The −52.7 ms lead is fitted on the landmarks it improves |
q-2026-09-06-9bd893 | Gate N9 needs 8+ landmarks and a stated selection rule |
q-2026-09-06-58f691 | Copy lane, free of moderation, blocked by the same chart |
Left open deliberately. q-2026-09-05-019e5b,
q-2026-09-05-ca54b4 and q-2026-09-05-a3a71c span several songs. Nothing
here closes them.
Owed by Brandon, one decision
The upload path is the COPY lane, corrected by Brandon 2026-09-07. We do not submit
revisions to an original tab, and that now includes undoing our own damage. The action is: open
s35881, click "Create a copy to edit", rename the copy with "Brandon
edit" on the end, import RESTORED-s35881-TEXTSAFE-v2.gp there, and submit the
revision on that copy. The original tab and r8908034 are not touched.
The moderation blocker is gone either way: r8908034 cleared at 14:49 UTC and is
live. Submitting is outward-facing and waits on his word. Queue items
q-2026-09-07-a74a94, the live-namedrop item, and the path correction filed the
same day.
Owed by a scan, everything chart-based
Five Drumnet pages at print DPI unblock the lane counts, the accent census, bar 54 and the copy lane in one move. No file on this Mac supplies it.
Owed by another session, the alignment
Pedal hi-hat placement unblocks with the onset-based DP alignment
q-2026-09-06-57b3e8. A chart rescan does not settle it.