docs(plan): P1 burned down; wire golden fixtures test into bun run test
- manifold package.json test script now includes tests/pipeline-golden.test.ts - MAP.md: manifold exploration modules + tests/fixtures entries - ONBOARDING.md §engine: exploration.ts + spine setOutputMorph + P3 swap point - plan P1 marked landed with gate evidence
This commit is contained in:
parent
0ee7f1472c
commit
d1f1f45f6b
4 changed files with 29 additions and 11 deletions
10
MAP.md
10
MAP.md
|
|
@ -69,8 +69,14 @@ anchor + locked decisions) and the `docs/specs/*-spec.md` set.
|
|||
prototype), `rng.ts` (seeded).
|
||||
- `manifold/src/settings/` — `settings-store.ts` (monochrome icons, input-map shape, corner radius).
|
||||
- `manifold/src/serial/` — `memlnaut-serial.ts` Web Serial scaffold + `EditorPanel.tsx` (MEMLNaut Editor mode).
|
||||
- `manifold/src/debug/probe.ts` — `window.__nisps` (`?debug=1`). `manifold/tests/e2e/smoke.spec.ts`. E2E on the
|
||||
VPS runs via non-snap node (see BUILD-PLAN). `manifold/osc-bridge/` — Deno WS↔UDP-OSC bridge.
|
||||
- `manifold/src/engine/exploration.ts` (+ `jolt.ts`, `ou-explore.ts`) — Jolt press + OU explore gestures
|
||||
(Learning drawer). Interim TS math from the retired playground via get/set-weights + the spine's
|
||||
`setOutputMorph` hook; marked `P3 SWAP POINT` for the WASM bindings.
|
||||
- `manifold/src/debug/probe.ts` — `window.__nisps` (`?debug=1`). `manifold/tests/e2e/` — `smoke`,
|
||||
`probe-api` (15-test engine-contract port), `spine` (spine invariant + probe-survives-mode-switch).
|
||||
E2E on the VPS runs via non-snap node (see BUILD-PLAN). `manifold/tests/fixtures/` — golden parity
|
||||
fixtures (gesture trace, curves, input/output pipelines) captured 2026-07-13 pre-P4, guarded by
|
||||
`tests/pipeline-golden.test.ts` (in `bun run test`). `manifold/osc-bridge/` — Deno WS↔UDP-OSC bridge.
|
||||
|
||||
### `vcv/` — VCV Rack 2 plugin (MEMLNaut module, WIP)
|
||||
Native C++ Rack module: ML CV-mapper with RL feedback + a browser bridge. Currently 2→12 (being evolved to
|
||||
|
|
|
|||
|
|
@ -82,15 +82,22 @@ Each phase ends green on its test gate and is independently landable. File phase
|
|||
- ✅ `ml-debug.log`/`graphify-out/` were already absent from the tree; `.claude/worktrees/` gitignored.
|
||||
- **Gate met:** `run-all-tests.sh` green (Playwright leg via the BUILD-PLAN non-snap-node VPS runner); parity PASS reading `manifold/public/` (max delta 2.4e-7); manifold typecheck+build green against the freshly-built artifact.
|
||||
|
||||
### P1 — Retire playground, single TS home (≈1 day)
|
||||
### P1 — Retire playground, single TS home (≈1 day) — ✅ landed 2026-07-13
|
||||
|
||||
- Branch `archive/playground-solidjs` at current main; delete `playground/` from main.
|
||||
- Manifold's `src/engine/` is now the only TS spine. Port the two playground-only exploration UIs that
|
||||
manifold lacks (Jolt press gesture, OU explore control) as *UI shells only* — their math arrives in P3;
|
||||
interim they may call the existing `nisps_ml_get/set_weights` route the playground used.
|
||||
- Move Playwright specs worth keeping (spine invariant, probe API) into `manifold/tests/`.
|
||||
- Retarget every script/doc reference (`CLAUDE.md`, `MAP.md`, deploy script) from playground to manifold.
|
||||
- **Gate:** chokepoint E equivalent — full test script green with playground gone; manifold e2e passes.
|
||||
- ✅ Branch `archive/playground-solidjs` + tag `playground-solidjs-final`; `playground/` deleted from main.
|
||||
Parity fixtures for P4 captured FIRST: `manifold/tests/fixtures/` (288-event gesture trace, curve
|
||||
goldens, input/output pipeline goldens under 14+8 configs) + drift-guard `pipeline-golden.test.ts`.
|
||||
Note: input pipeline's momentum path reads `performance.now()` — fixtures pin a clock contract (see
|
||||
fixtures README). C15 (stub + c15.wasm) now lives only on the archive branch (ALIGNMENT defect #1).
|
||||
- ✅ Jolt press + OU explore UI shells in the Learning drawer; interim TS math via get/set_weights in
|
||||
`manifold/src/engine/{exploration,jolt,ou-explore}.ts`, marked `P3 SWAP POINT`.
|
||||
- ✅ Keeper Playwright specs ported: `probe-api.spec.ts` (15 tests), `spine.spec.ts` (4). Playground UI/
|
||||
persistence specs dropped with the playground.
|
||||
- ✅ References retargeted: run-all-tests stage 5 → manifold, ci.yml manifold-tests job, osc-bridge.yml
|
||||
(was already broken), codegen TS target removed (returns P5), AGENTS/README/MAP/ALIGNMENT/
|
||||
AGENT-REFERENCE/specs-MAIN. The VPS deploy webhook already built only manifold — no change needed.
|
||||
- **Gate met:** full `run-all-tests.sh` green with playground gone (ctest 4/4, parity PASS, lint clean,
|
||||
manifold 9 unit + 20 e2e).
|
||||
|
||||
### P2 — Storage-policy split: templated hardware, dynamic browser (the structural centre, ≈1 wk)
|
||||
|
||||
|
|
|
|||
|
|
@ -179,6 +179,11 @@ a setting → `--r-*` tokens.
|
|||
- `dataset.ts` — JS-side example store + sample-weight modes (uniform/recency/spatial/combined).
|
||||
- `curves.ts` — math primitives. **Must stay lockstep with C++ `nisps/core/math.hpp`** (golden tests
|
||||
compare WASM vs TS). `sink.ts` — `EngineSink` framework boundary. `types.ts` — C-ABI surface types.
|
||||
- `exploration.ts` — `ExplorationController` adapter for the Jolt press + OU explore gestures
|
||||
(Learning drawer). Interim TS math in `jolt.ts` / `ou-explore.ts` (ported from the retired
|
||||
playground), driven via get/set-weights; OU applies through the spine's inert-by-default
|
||||
`setOutputMorph` hook. The `─── P3 SWAP POINT ───` comment marks where the one-core-engine plan
|
||||
swaps these for `nisps_ml_jolt_press/release` + `nisps_ml_explore_intensity` WASM bindings.
|
||||
|
||||
### Inputs — `src/inputs/`
|
||||
- `input-layer.ts` — composition hub. One rAF loop polls sources, pulls all axes into a vector,
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
"build": "tsc --noEmit && vite build",
|
||||
"preview": "vite preview --port 4273",
|
||||
"typecheck": "tsc --noEmit",
|
||||
"test": "bun test src",
|
||||
"test": "bun test src tests/pipeline-golden.test.ts",
|
||||
"test:e2e": "playwright test",
|
||||
"test:e2e:headed": "playwright test --headed"
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in a new issue