Files
majordomo/docs/adr
steveandClaude Fable 5 b3a172a053
CI / Tidy (pull_request) Successful in 9m27s
CI / Build & Test (pull_request) Successful in 10m37s
Gadfly review (reusable) / review (pull_request) Successful in 41m14s
Adversarial Review (Gadfly) / review (pull_request) Successful in 41m14s
feat: wave-3 audio surfaces — stems, sfx, speech enhance, voice clone, translate (ADR-0024)
- audio.StemSeparator/StemSeparationProvider: Demucs zip transport via
  POST /upstream/<id>/v1/stems (Mode two -> two_stems=vocals; model +
  format fields); bounded zip unpack, entry name -> stem, ext -> MIME.
- SFXModel reuses musicgen against the sync /upstream/<id>/v1/sfx route
  (JSON prompt/seconds/steps/cfg_scale/seed -> WAV); musicgen.Request
  gains CFGScale.
- audio.SpeechEnhancer/SpeechEnhancementProvider:
  POST /upstream/<id>/v1/enhance -> WAV (result reuses SpeechResult).
- SpeechRequest.ReferenceAudio/ReferenceMIME (+WithReferenceAudio):
  llamaswap switches to the chatterbox clone route
  POST /upstream/<id>/v1/audio/speech/upload (input + voice_file),
  wav MIME fallback.
- TranscriptionRequest.Translate (+WithTranslate): translate=true form
  field, language=auto forced when no explicit hint (whisper.cpp default
  en would skip translation).
- httptest contract tests (zip unpack, clone-route switch, translate +
  auto-language injection); ADR-0024 (index row deferred — MJ-A backfills
  the ADR index table and parallel edits would conflict).

Co-Authored-By: Claude Fable 5 <[email protected]>
2026-07-16 17:01:11 -04:00
..

Architecture Decision Records

One decision per file, append-only; supersede rather than rewrite.

ADR Title Status
0001 Package layout — canonical types in leaf llm, root re-exports Accepted
0002 Canonical message/content model Accepted
0003 Parse grammar — verbatim ids, inline alias expansion, chains Accepted
0004 LLM_* env-DSN provider definitions (go-llm parity + eager load) Accepted
0005 Provider interface and capabilities model Accepted
0006 Model health tracking and backoff Accepted
0007 Dependency policy — stdlib-first, hand-rolled REST clients Accepted
0008 Failover-chain execution semantics Accepted
0009 Multimodal strategy — normalize per target, enforce at provider Accepted
0010 Tools and structured output — canonical shape, native mappings Accepted
0011 Google provider on the official Gen AI SDK Accepted
0012 Agent run loop Accepted
0013 Skill model — additive instruction+tool bundles Accepted
0014 Conversion-driven extensions (resolvers, typed tools, hooks, ops controls) Accepted
0015 llama-swap provider — reuse openai for chat, tailored management + image Accepted
0016 imagegen — a canonical text-to-image interface Accepted
0017 audio — canonical speech synthesis + transcription interfaces Accepted
0018 imagegen.Editor — image-to-image as a separate optional interface Accepted
0019 videogen — canonical video-generation surface Accepted