memlnaut-nisps/tests/cpp
monkey-w1n5t0n 9e59eb04ce feat(manifold): MIDI + game controller inputs; widen ML net to N-D
Wire the modular input layer into the Console and reshape the browser
engine so input axes are genuine independent dimensions.

Inputs (manifold/src/inputs/):
- gamepad-source: emit press+release edges with standard-mapping labels
  (enables hold-and-move); single/double-stick already present.
- midi-input-source: single-device selection + batch "MIDI Learn"
  (every CC swept while armed becomes an axis); notes stay discrete.
- input-layer: compose() forwards each axis 1:1 (no mean-blend);
  add onReducedInput so the manifold tracks gamepad/MIDI position.
- types: InputAction.phase, InputMode.

Console (manifold/src/console/):
- ConsoleApp: bind gamepad buttons to verdicts (RB up / LB down /
  X randomise / Y nudge / B undo / A-hold reposition); mirror composed
  position onto the manifold.
- Drawers: rebuilt Inputs drawer (source picker, gamepad legend, MIDI
  device picker + batch-learn flow, learned-control meters).

Engine (nisps/wasm, manifold/src/engine):
- DefaultMLP widened MLP<2,..> -> MLP<32,..> (32 = MAX_AXES); each
  active axis gets a dedicated slot, unused slots held at 0 (inert).
  Rebuilt nisps.wasm (playground + manifold).
- spine/engine-api: setInputs writes the full N-D vector (was dropping
  arr[2+]); primary pair keeps the 2-D pipeline; process() re-ticks the
  whole vector via spine.reprocess().

Tests:
- parity_check/parity_wasm: ParityMLP -> 32 inputs, widen example bufs.
- CMakeLists: build parity binary with -ffp-contract=off so native
  matches FMA-free WASM (training amplified the gap past 1e-5).

Inputs dock is still an exclusive picker; mixing toggles, reshape modal,
and the >2-D slider view (inputs-spec.md) are groundwork-laid but not
yet wired. See docs/redesign/midi-gamepad-inputs-worklog.md.
2026-06-28 21:05:48 +02:00
..
.gitignore Stream 11: verification infrastructure (golden vectors + parity + lint + CI + Playwright migration) 2026-04-29 19:50:55 +03:00
engine_impulse.cpp Stream 11: verification infrastructure (golden vectors + parity + lint + CI + Playwright migration) 2026-04-29 19:50:55 +03:00
engine_impulse_baseline.bin Stream 11: verification infrastructure (golden vectors + parity + lint + CI + Playwright migration) 2026-04-29 19:50:55 +03:00
ml_golden_vectors.cpp Stream 11: verification infrastructure (golden vectors + parity + lint + CI + Playwright migration) 2026-04-29 19:50:55 +03:00
parity_check.cpp feat(manifold): MIDI + game controller inputs; widen ML net to N-D 2026-06-28 21:05:48 +02:00
parity_diff.mjs feat(nisps/ml): crystallise Explore-and-place into shared FeedbackController 2026-06-28 04:14:12 +02:00
parity_wasm.mjs feat(manifold): MIDI + game controller inputs; widen ML net to N-D 2026-06-28 21:05:48 +02:00
test_dsp_biquad.cpp feat(nisps/dsp): lean DSP primitives ported from maximilian (meml-1v6) 2026-04-29 16:08:49 +03:00
test_dsp_delay.cpp feat(nisps/dsp): lean DSP primitives ported from maximilian (meml-1v6) 2026-04-29 16:08:49 +03:00
test_dsp_pitch_shift.cpp feat(nisps/dsp): lean DSP primitives ported from maximilian (meml-1v6) 2026-04-29 16:08:49 +03:00
test_dsp_reverb.cpp feat(nisps/dsp): lean DSP primitives ported from maximilian (meml-1v6) 2026-04-29 16:08:49 +03:00
test_engine_analysis.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_breakor.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_channel_strip.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_elysiamorf.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_memlcelium.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_no_op.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_paf_synth.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_verb_fx.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_engine_xiasri.cpp feat(nisps/engines): port firmware audio engines to AudioEngine concept (meml-1v6) 2026-04-29 16:09:12 +03:00
test_fixed_buffer.cpp feat: nisps build + host test harness 2026-04-29 15:22:01 +03:00
test_helpers.hpp feat: nisps build + host test harness 2026-04-29 15:22:01 +03:00
test_main.cpp feat: nisps build + host test harness 2026-04-29 15:22:01 +03:00
test_math.cpp feat: nisps build + host test harness 2026-04-29 15:22:01 +03:00
test_mlp_feedback.cpp feat(nisps/ml): crystallise Explore-and-place into shared FeedbackController 2026-06-28 04:14:12 +02:00
test_mlp_inference.cpp feat(nisps/ml): MLP library with fixed-architecture template + spread-aware RL (meml-wmh) 2026-04-29 15:55:43 +03:00
test_mlp_init.cpp feat(nisps/ml): MLP library with fixed-architecture template + spread-aware RL (meml-wmh) 2026-04-29 15:55:43 +03:00
test_mlp_loss.cpp feat(nisps/ml): MLP library with fixed-architecture template + spread-aware RL (meml-wmh) 2026-04-29 15:55:43 +03:00
test_mlp_rl.cpp feat(nisps/ml): MLP library with fixed-architecture template + spread-aware RL (meml-wmh) 2026-04-29 15:55:43 +03:00
test_mlp_serialize.cpp feat(nisps/ml): MLP library with fixed-architecture template + spread-aware RL (meml-wmh) 2026-04-29 15:55:43 +03:00
test_mlp_training.cpp feat(nisps/ml): MLP library with fixed-architecture template + spread-aware RL (meml-wmh) 2026-04-29 15:55:43 +03:00
test_mode_breakor_events.cpp test(nisps/modes): host C++ tests for stream 4 mode layer (meml-beb) 2026-04-29 16:27:03 +03:00
test_mode_concepts.cpp test(nisps/modes): host C++ tests for stream 4 mode layer (meml-beb) 2026-04-29 16:27:03 +03:00
test_mode_paf_synth.cpp test(nisps/modes): host C++ tests for stream 4 mode layer (meml-beb) 2026-04-29 16:27:03 +03:00
test_mode_voice_space.cpp test(nisps/modes): host C++ tests for stream 4 mode layer (meml-beb) 2026-04-29 16:27:03 +03:00
test_ring_buffer.cpp feat: nisps build + host test harness 2026-04-29 15:22:01 +03:00
test_rng.cpp feat: nisps build + host test harness 2026-04-29 15:22:01 +03:00