memlnaut-nisps/manifold
monkey-w1n5t0n 1672fe3474 feat(pipeline)!: P4 core — input/output chains + curve catalog in nisps/
- nisps/pipeline/input_chain.hpp: faithful f32 port of the manifold input
  pipeline (invert→deadzone→circular clamp→momentum-modulated zoom→centred
  power→EMA→momentum update). Caller-supplied dt, internal accumulated
  clock (no wall clock — deterministic; matches the P1 fixtures' clock
  contract). Fixed-capacity velocity ring; serialisable state.
- nisps/pipeline/output_chain.hpp: curve→EMA→slew→freeze(+per-output mask)
  chain, capacity-templated (browser cap 4096; firmware would use NOut).
- nisps/core/math.hpp: + centered_power(x, exponent) (both chains use it).
- bindings: nisps_pipeline_create/destroy, nisps_input_set_config(15-float
  wire layout)/process/reset, nisps_output_set_config/set_freeze_mask/
  process/reset, pipeline state save/load, nisps_curve_apply(+batch)
  (ids 0-6 = Curve enum, 7 = centred power).
- parity v5 Stage 7: rational (transcendental-free) traces through both
  chains (2 configs each) + full curve catalog — 1273 floats PASS, the
  pipeline floats bit-identical native↔WASM.
- ctest test_pipeline.cpp: deadzone remap, circular clamp, zoom+freeze,
  sticky anchor, frame-rate-independent EMA, momentum zoom-out/recovery,
  state round-trip, slew, freeze gate/mask, reseed-on-length-change,
  centred-power endpoints.

Part of one-core-engine-refactor P4; the manifold TS switch follows.
2026-07-18 11:52:53 +02:00
..
osc-bridge feat(osc-bridge): add /nisps/input (multi-float) + /nisps/feedback (JSON) verbs; client sendInput/sendFeedback; VcvBackend uses them; document VCV runtime 2026-06-28 04:28:45 +02:00
public feat(pipeline)!: P4 core — input/output chains + curve catalog in nisps/ 2026-07-18 11:52:53 +02:00
src feat(manifold): geometric dislike + jolt/OU via shared core (one-core-engine P3) 2026-07-14 04:54:27 +02:00
tests feat(manifold): geometric dislike + jolt/OU via shared core (one-core-engine P3) 2026-07-14 04:54:27 +02:00
.gitignore feat(manifold): dock restructure, settings, backends, shared-core feedback, particle stage 2026-06-28 04:14:30 +02:00
index.html feat(manifold): add convertible React front-end + simplify console chrome 2026-06-28 03:28:45 +02:00
ONBOARDING.md feat(manifold): geometric dislike + jolt/OU via shared core (one-core-engine P3) 2026-07-14 04:54:27 +02:00
package.json docs(plan): P1 burned down; wire golden fixtures test into bun run test 2026-07-13 23:30:28 +02:00
playwright.config.ts feat(manifold): add convertible React front-end + simplify console chrome 2026-06-28 03:28:45 +02:00
tsconfig.json feat(manifold,firmware): restore uSEQ CV/gate as an Outputs backend 2026-06-28 22:30:54 +02:00
vite.config.ts feat(manifold): add convertible React front-end + simplify console chrome 2026-06-28 03:28:45 +02:00