feat: audio surfaces (TTS + transcription), imagegen.Editor, llamaswap health probe
- New leaf package `audio` (ADR-0017): SpeechModel/SpeechProvider and TranscriptionModel/TranscriptionProvider with imagegen conventions (zero value = backend default, functional options + Apply, bytes in/out, never URLs). Root re-exports added. - imagegen.Editor (ADR-0018): optional image-to-image interface — EditRequest carries the generation knobs plus Init image and denoising Strength; separate interface so existing Models keep compiling. - provider/llamaswap implements all of it: POST /v1/audio/speech (JSON, raw-audio response, MIME from Content-Type with format fallback), POST /v1/audio/transcriptions (multipart, response_format=json), ListVoices (GET /v1/audio/voices?model=, tolerant of string-list and object-list shapes), POST /sdapi/v1/img2img (txt2img wire + init_images/denoising_strength, shared image decode), and Health(ctx) (GET /health) — a cheap liveness probe for often-offline hosts. - Hermetic httptest coverage for every new wire shape and validation path; README sections + support-matrix footnote updated in the same commit (also corrects the stale /v1/images/generations claim — the image path has been SDAPI since the seed fix). First consumer: mort's llamaswap media tool cluster (status / image / TTS / STT agent tools against the netherstorm host). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AXQxVhXBw8PwFAtsVrXSmj
This commit is contained in:
+16
@@ -248,3 +248,19 @@ alias-in-chain failover, permanent-policy override) and wires anything the
|
||||
tests flush out.
|
||||
|
||||
**Next:** Phase 2 — exhaustive health/chain test matrix.
|
||||
|
||||
## 2026-07-11 — audio surfaces + image editing (ADR-0017, ADR-0018)
|
||||
|
||||
- New leaf package `audio`: `SpeechModel`/`SpeechProvider` (TTS) and
|
||||
`TranscriptionModel`/`TranscriptionProvider` (STT), imagegen conventions
|
||||
(zero value = backend default, options + Apply, bytes in/out). Root
|
||||
re-exports added.
|
||||
- `imagegen.Editor` — optional img2img interface (`EditRequest` with
|
||||
`Init Image` + `Strength`); shared `Result`.
|
||||
- provider/llamaswap implements all of it: `/v1/audio/speech`,
|
||||
`/v1/audio/transcriptions` (multipart), `ListVoices`
|
||||
(`/v1/audio/voices?model=`, shape-tolerant), `/sdapi/v1/img2img`
|
||||
(txt2img wire + init_images/denoising_strength, shared decode), and a
|
||||
cheap `Health(ctx)` probe (GET /health) for often-offline hosts.
|
||||
- Hermetic httptest coverage for every new wire shape + validation errors.
|
||||
- Consumer: mort's llamaswap media tool cluster (status/image/TTS/STT tools).
|
||||
|
||||
Reference in New Issue
Block a user