Skip to content

VECTOR 0.2.6-experimental: SRC SETUP page 2 on VECTOR's own row, wherever it sits (#1119) - #1141

Closed
repeat98 wants to merge 14 commits into
mainfrom
claude/vector-026-setup-page
Closed

repeat98 wants to merge 14 commits into
mainfrom
claude/vector-026-setup-page

Conversation

@repeat98

@repeat98 repeat98 commented Nov 1, 2026 •

Copy link
Copy Markdown
Owner

VECTOR 0.2.6-experimental: VECTOR's SRC SETUP page 2 (SEED, SPAN, OFST, ROT, RPT, DIR) can open on VECTOR's own machine row wherever it sits. This is the VECTOR half of the card-build fix for #1119 (also #842/#843). The POLY8 half is #1142.

Related to #1119

What was wrong

On a card build with POLY8, a double tap on SRC on a VECTOR track shows the stock Flex/Static setup (LOOP … TSTR AUTO, TSNS) instead of VECTOR's page 2. Beside POLY8, VECTOR is machine row 6 or 7, and two things stop its page there:

  • POLY8's shared hooks replace VECTOR's and never ask it. That part is fixed in POLY8 0.3.3.
  • st_setup_page also wants SRC SETUP's cursor (0x460d5c30) on row 5. That part is fixed here.

Over USB the second part was solved in 0.2.5 (#972), where the adapter rewrites that test out of the package's source.

What changes

  • native.c: st_setup_page drops the row-5 test. Every caller already asks on VECTOR's row: hooks.s on row 5 when VECTOR is alone, the base's mw_setup_page over USB, and POLY8 0.3.3's mr_setup_page. control.s is regenerated in the pinned toolchain; the diff is 3 instructions removed.
  • vector_runtime.py no longer rewrites that seam; it only pins the new control.s. The package's control unit source is byte-identical to 0.2.5's (checked), so the 0.2.5 USB package stays published (lagsBehind with a reason).
  • Pins updated: machine-ports.json, machine-recipes.json.
  • Updated for the new version: the quick-test guide, the version pin in module-source.test.mjs, the catalogue, release notes and TESTING.md.
  • Native comparison re-recorded: 54 images match, 108 refusals match, 0 mismatches, of 162 selections.

How I checked it

Emulator only (ot_emu from upstream octabam, MKII panel, DSP on, empty scratch card). Card images were composed by the site's builder from packages built in the isolated toolchain, then driven with scripts/capture-module-ui.py. Details are in TESTING.md.

  • main (VECTOR 0.2.5 + POLY8 0.3.2 + FM Synth) reproduces the report: SRC▸VECTOR, but SRC SETUP is the stock page with TSTR AUTO.
  • VECTOR 0.2.6 + POLY8 0.3.3 + FM Synth: SRC SETUP shows SEED 1, SPAN 12, OFST 0, ROT 0, RPT OFF, DIR FWD. Encoder A gives SEED 4, encoder E gives RPT 2, and the cursor on POLY8 shows the stock page.
  • VECTOR alone, 0.2.5 vs 0.2.6: all eight screens of the same plan are pixel-identical.
  • verify_native.py passes in the pinned toolchain (sanitizer tests; control.s reproduces).
  • Not tested: a unit, MKI, save/reload, power cycle, listening.

Done since opening

  • Analog BD proofs re-exported for the new module source tree: all 212 proofs are byte-identical, and only moduleSourceTreeSha256 moves.
  • Tape Echo and Euclid standalone recipes re-pinned to the four imported asset files, as Analog BD 0.1.6 did. test_published_module_packages_rebuild_byte_for_byte passes again: every published package rebuilds byte-for-byte. An earlier version of this text called that failure local-only. It wasn't; this branch caused it.
  • Merged current main.
  • Refreshed 6 Nov 2026: merged main again (about 500 commits). Packages rebuilt in the isolated toolchain and imported; Analog BD proofs re-exported (all 212 unchanged, only the source-tree hash moves); Tape Echo and Euclid recipes re-pinned; the machine recipes name the merged machine-ports.json (images unchanged). npm run pr:ready: Ready.

Owner decision (6 Nov 2026): 0.2.4's card evidence stands

src/catalog/vector.test.ts now binds media/capture.json to 0.2.4's native source by name (1255e991…). It requires exactly native.c and control.s (the row-5 test) to differ from the capture's build inputs, and the manifest's qualification to name the current source. The 0.2.4 evidence was not re-run.

Qualification record

The qualification record moves to 0.2.6 the way 0.2.5's did in #1017. Its hardware report is 0.2.5's USB run on your MKII, and 0.2.6 keeps publishing that exact USB package. I added a limitation saying the 0.2.6 card change ran in the emulator only. Approved with the rest on 6 Nov.

The changelog tells players the page shows once POLY8 0.3.3 is out too. Both PRs can merge in either order: each alone changes nothing a player sees in POLY8 sets.

What the guides lacked: docs/ADD_A_MODULE.md didn't say that every package import needs Analog BD's proofs re-exported and Tape Echo's and Euclid's standalone recipes re-pinned. Fixed in #1144, kept out of this release. Nothing new in the 6 Nov refresh.

🤖 Generated with Claude Code

repeat98 and others added 4 commits November 1, 2026 19:42
…ever it sits (#1119)

st_setup_page no longer tests for SRC SETUP's cursor on row 5: its callers
already ask on VECTOR's row (hooks.s alone, the base over USB, POLY8's shared
hooks from POLY8 0.3.3). The USB adapter dropped the same test since 0.2.5, so
it no longer rewrites it; the USB package's unit source is byte-identical and
0.2.5's package stays published (lagsBehind).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… 0 mismatches of 162)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
repeat98 and others added 3 commits November 1, 2026 19:58
…tree (212 proofs unchanged)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rted asset files

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
repeat98 and others added 7 commits November 6, 2026 12:29
…up-page

Generated package assets, Analog BD proofs and standalone recipe pins taken from main; they are rebuilt next. Machine recipes name the merged machine-ports.json and VECTOR's 0.2.6 sources (images unchanged).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…main

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… (owner accepted 0.2.4's card evidence, 6 Nov 2026)

0.2.6 changes only st_setup_page's row-5 test in control.s and native.c; the test now requires exactly those two
capture inputs to differ and the manifest's qualification to name the current source.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rted asset files

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ce tree (212 proofs unchanged)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…up-page

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…up-page

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
repeat98 added a commit that referenced this pull request Nov 8, 2026
repeat98 added a commit that referenced this pull request Nov 8, 2026
… generator becomes its own module (#1342)

* VECTOR 0.3.1: rolls 0.3.0 back to 0.2.6's code, named VECTOR again; the MIDI generator becomes its own module (owner, 8 November 2026)

Reverts #1339 and applies #1141's card fix (#1119). The USB package stays the unit-tested 0.2.5 one under a declared lag.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* VECTOR 0.3.1: card packages rebuilt in the pinned toolchain, native comparison 186/0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* VECTOR 0.3.1: machine and standalone recipe pins, Analog BD proofs re-exported (212 unchanged)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@repeat98

Copy link
Copy Markdown
Owner Author

Closing: VECTOR 0.3.0 (#1339) and 0.3.1 (#1342) carry this fix, so VECTOR's second page opens beside POLY8 on card builds (#1119). The POLY8 half stays in #1142.

@repeat98 repeat98 closed this Nov 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant