github michaelbriggsaudio/mbriggs-reaper v1.0.6

latest releases: v1.4.1, v1.4.0, v1.3.5...
one month ago

Reliability

  • Static validator stack expanded with five new checks running before auto-run: arity check for fixed-arity reaper.* calls (catches missing paramidx arguments), unchecked TrackFX_AddByName results (silent-skip prevention), chain-build upsert pairing (every plugin needs both GetByName and AddByName), helper-body integrity (catches subtly rewritten set_param_display bodies -- missing parens on the range guard, missing pidx, etc.), and a Lua-syntax preflight on lua blocks. Each fires a hidden retry on hit; the visible response is the corrected one.
  • Auto-run gate now consults all validator outcomes. Previously, four newer validators could correctly mark a script as "auto-run blocked" but the auto-run check was stale and ran the script anyway. Centralised the check so future validators wire in automatically.
  • Auto-retry on transient provider stalls (empty response with finish_reason=stop and no body) and on Lua parse failures in the generated code block.
  • set_param_display canonical helper is now nil-safe in its parse step; some VST3 plugins return nil during the binary-search probe and the bare form crashed.
  • Helper-validator catches out-of-order helper definitions (helper called above its local function declaration -- Lua compiles the call as a global lookup and crashes at runtime).

Cost & cache

  • Curated plugin names in the prompt (Pro-Q 4, Pro-C 3, ReaEQ, etc.) now pre-pin their full parameter reference + plugin bundle on the first turn, eliminating the round-trip the model used to spend asking for it.
  • Chain-build follow-up turns ("build a vocal chain" after an earlier turn placed plugins) now pre-pin the current FX chain plus a short upsert skeleton, so the model reuses existing plugins instead of duplicating them.
  • Already-pinned <context_needed> re-requests are caught by a fast-path that fires the corrective hint without re-fetching the data.
  • Anthropic cache TTL frozen per-rung at 5m; the 1h-after-5m escalation that previously generated invalid_request errors on multi-turn sessions is removed.
  • Opt-in history compaction (off by default) for users running many-turn sessions.

Prompt fidelity

  • Plugin bundle restructured around an explicit decision spine; resolved a conflict between the EQ "configure all band params on a fresh band" rule and the minimal-write rule.
  • New rules cover: pcall discipline for param writes, paste-the-definition for helper functions, chain-build upsert pattern, required-plugin failure check, cross-turn add-vs-reuse, and target-track resolution from the session snapshot.
  • Hardened against version-variable enums (Pro-Q 4 Slope) and non-linear curve loopholes that previously produced silent value drift.
  • API reference: fixed a MIDI tempo bug, a broken Lua pattern, and a few wrong API claims; deduped and reordered for clearer top-down flow; MIDI_SetAllEvts pointer added.

JSFX

  • Safety output-ceiling injector with a visible alert when a generated JSFX would exceed -0 dBFS.
  • JSFX validator now gates auto-save and auto-run before the file lands; new EEL2 syntax rules in the jsfx bundle.
  • `jsfx_pitch` family bundle (shimmer reverbs, pitch shifters, harmonizers).
  • Multi-plugin `fx_inspect` requests now detect truncation and warn the model instead of silently dropping plugins past the first.

UI & UX

  • "Est. Total" running-cost row added to the chat Details box for per-session billing visibility.
  • AUTO-RAN pill reflects the actual run outcome (success vs error) instead of just "Code.run was called".
  • "Extend by Ns" timeout button now updates the displayed Timeout value.
  • TARGET HINT block in the session snapshot lets generated scripts target the track that was selected at request time, falling back to live selection only if the captured target is invalid (fixes drift when the user clicks elsewhere between sending the prompt and the deferred script running).
  • Auto-update: native SHA verify is faster, JSFX-intent detection prevents docs co-pin on JSFX-only requests, manual update checks fire faster.

Don't miss a new mbriggs-reaper release

NewReleases is sending notifications on new releases.