|
|
85b481b6c4
|
feat: migrate to typed messages, drop base64
CI / Lint (pull_request) Failing after 1m1s
CI / Test (pull_request) Failing after 1m21s
CI / Release (pull_request) Has been skipped
CI / Docker Build & Push (pull_request) Has been skipped
CI / Notify (pull_request) Successful in 1s
- Decode TTSRequest via natsutil.Decode[messages.TTSRequest]
- Stream audio as raw bytes via messages.TTSAudioChunk (no base64)
- Non-stream response uses messages.TTSFullResponse
- Status updates use messages.TTSStatus
- Voice list/refresh use messages.TTSVoiceListResponse/TTSVoiceRefreshResponse
- Registry returns []messages.TTSVoiceInfo (not []map[string]any)
- Remove strVal/boolVal helpers
- Add .dockerignore, GOAMD64=v3 in Dockerfile
- Update tests for typed structs (13 tests pass)
|
2026-02-20 07:11:13 -05:00 |
|
|
|
b8d9a277c5
|
feat: add e2e tests + benchmarks
- e2e_test.go: synthesis pipeline, audio chunking, custom voice registry
- Benchmarks: synthesis 203µs/op, registry refresh 106µs/op, chunking 534µs/op
|
2026-02-20 06:45:22 -05:00 |
|
|
|
147b685645
|
feat: rewrite tts-module in Go
Replace Python streaming TTS service with Go for smaller container images.
- VoiceRegistry: discovers custom voices from model store
- NATS subscriptions: TTS requests, voice list, voice refresh
- JetStream AI_VOICE_TTS stream setup
- Chunked audio streaming over NATS
- Dockerfile: multi-stage golang:1.25-alpine → scratch
- CI: Gitea Actions with lint/test/release/docker/notify
|
2026-02-19 17:56:06 -05:00 |
|