synops/scripts
vegard e95b7d6663 TTS-pipeline: tekst → lyd via ElevenLabs (oppgave 10.4)
Ny jobbtype `tts_generate` som kaller ElevenLabs text-to-speech API,
lagrer MP3-lyd i CAS, og oppretter media-node med has_media-edge.

Voice-preferanse løses i tre lag: eksplisitt i payload → nodens
metadata.voice_preference → ELEVENLABS_DEFAULT_VOICE env.
Dette er "mottaker-preferanse i metadata" — en node kan sette
voice_preference i sin metadata for å styre hvilken stemme som brukes.

Ny migrasjon 009: resource_usage_log-tabell for sporing av
ressursforbruk (TTS, AI, Whisper, CAS). Ref: docs/features/ressursforbruk.md

Endringer:
- maskinrommet/src/tts.rs: TTS-handler med ElevenLabs-integrasjon
- maskinrommet/src/intentions.rs: POST /intentions/generate_tts
- maskinrommet/src/jobs.rs: Dispatcher for tts_generate
- migrations/009_resource_usage_and_tts.sql: resource_usage_log
- scripts/maskinrommet-env.sh: ELEVENLABS_* env-variabler

Krever: ELEVENLABS_API_KEY i /srv/synops/.env (placeholder lagt til)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 23:40:46 +00:00
..
generate-litellm-config.sh LiteLLM AI Gateway: Docker, DB-ruting, config-generering (oppgave 10.1) 2026-03-17 23:12:46 +00:00
maskinrommet-env.sh TTS-pipeline: tekst → lyd via ElevenLabs (oppgave 10.4) 2026-03-17 23:40:46 +00:00
maskinrommet.service Implementer Claude som chat-deltaker (Fase A: MVP) 2026-03-17 19:20:17 +00:00
run-next-task.sh Fiks remote-navn: forgejo → origin i task-runner 2026-03-17 23:16:56 +00:00
run-tasks.sh Fiks run-tasks.sh: unngå set -e krasj ved exitkode-håndtering 2026-03-17 22:21:11 +00:00
summary.sh Arkitekturbeslutninger: noder er sentrum, edges definerer alt 2026-03-17 10:29:54 +01:00
synops.md Fjern gjenværende v2-referanser, dokumenter editor og tekstlagring 2026-03-17 10:55:39 +01:00
test-sanntid.sh Fullfør oppgave 3.6: Sanntidstest verifisert 2026-03-17 14:40:18 +01:00