## Objective Implement bounded, sample-accurate smoothing and built-in automation curves shared by real-time and offline rendering. ## Scope - [x] Implement deterministic audio-engine smoothing, including zero-duration steps. - [x] Add automation lanes/segments/handles with linear, exponential, smoothstep, and hold curves. - [x] Define exact endpoint and frame-inclusivity semantics. - [x] Implement both `ramp` forms, `automate`, `cancel-automation!`, inspection, and traces. - [x] Enforce one authoritative lane per target, deterministic replacement/rejection, and value precedence. - [x] Enforce bounded lanes/segments/horizon and explicit queue/limit errors. - [x] Test cancellation, overlap, monotonicity, endpoints, no overshoot, exponential constraints, and block-size invariance. - [x] Add controlled-gain/filter sweep fixtures and internal test-only lane sampling where audio analysis is ambiguous. ## Acceptance criteria - [x] Required curves produce exact deterministic endpoints at exact frames. - [x] Smoothing and automation are independent of callback block size and never produce NaN/Inf. - [x] Spectral sweep and automation audio validation pass; active lanes remain bounded. Spec: `phase-3.md` §§12–13, 25–33, 35–36, 40 (Milestone 4), 42.
Activity
norbot7865 commentedon Jul 15, 2026
Exact-frame controls #19 are merged. Starting built-in smoothing and bounded sample-by-sample automation lanes (
ramp,automate, cancellation, overlap replacement, traces, endpoint/curve/block invariance tests) onnorbot/issue-9-automation.