Commit Graph

21 Commits

Author SHA1 Message Date
22744bf0bd fix: use type=raw for Docker tags to preserve v prefix
Some checks failed
CI / Lint (push) Successful in 2m32s
CI / Test (push) Successful in 2m40s
CI / Release (push) Successful in 1m27s
CI / Docker Build & Push (push) Failing after 2m48s
CI / Notify (push) Successful in 1s
docker/metadata-action type=semver strips the v prefix, causing
tag mismatch between git tags (v0.1.3) and Docker tags (0.1.3).
Switch to type=raw to pass through the version as-is.
v0.2.4
2026-02-22 09:58:46 -05:00
29c8ad0d60 fix: switch Docker build to plain docker build/push with insecure registry
All checks were successful
CI / Test (push) Successful in 3m0s
CI / Release (push) Successful in 1m29s
CI / Lint (push) Successful in 2m58s
CI / Notify (push) Successful in 2s
CI / Docker Build & Push (push) Successful in 3m3s
- Drop buildx (setup-buildx-action, build-push-action)
- Use insecure HTTP registry with SIGHUP daemon reload
- Use org-level PAT secrets for registry auth
v0.2.3
2026-02-21 22:38:04 -05:00
fff57ef774 fix: use docker login CLI instead of login-action for Gitea compat
Some checks failed
CI / Lint (push) Successful in 2m54s
CI / Release (push) Successful in 1m32s
CI / Test (push) Successful in 2m51s
CI / Docker Build & Push (push) Has been cancelled
CI / Notify (push) Has been cancelled
docker/login-action@v3 fails with 'Username and password required' on
Gitea Actions — secrets not passed to action with: inputs. Switch to
direct docker login CLI which reliably interpolates secrets in run: steps.
v0.2.2
2026-02-21 19:34:32 -05:00
95fcca4147 fix: switch Docker registry to HTTPS endpoint with login-action
Some checks failed
CI / Test (push) Successful in 2m53s
CI / Lint (push) Successful in 2m55s
CI / Release (push) Successful in 1m38s
CI / Docker Build & Push (push) Failing after 5m54s
CI / Notify (push) Successful in 2s
- Replace gitea-http.gitea.svc.cluster.local:3000 with registry.lab.daviestechlabs.io
- Use docker/login-action@v3 for Gitea registry auth (proper buildx integration)
- Remove manual base64 auth to ~/.docker/config.json (not picked up by buildkit)
- Remove insecure registry daemon.json config and Docker restart
- Remove buildkitd insecure registry config
- Remove cache-from/cache-to type=gha (not supported on Gitea Actions)

Fixes 401 Unauthorized: reqPackageAccess on Docker push
v0.2.1
2026-02-21 18:05:45 -05:00
238bf47844 feat: migrate from msgpack to protobuf (handler-base v1.0.0)
Some checks failed
CI / Test (push) Successful in 3m0s
CI / Lint (push) Successful in 3m1s
CI / Release (push) Successful in 1m17s
CI / Docker Build & Push (push) Failing after 7m26s
CI / Notify (push) Successful in 1s
- Replace msgpack encoding with protobuf wire format
- Update field names to proto convention (SessionId)
- Cast int fields to int32 (ChunkIndex, TotalChunks, SampleRate, Count)
- Use pointer slices for repeated messages ([]*TTSVoiceInfo)
- Rewrite tests for proto round-trips
v0.2.0
2026-02-21 15:30:51 -05:00
147c60fd64 chore: bump handler-base to v0.1.5, add netrc secret mount to Dockerfile
Some checks failed
CI / Lint (push) Successful in 2m55s
CI / Test (push) Successful in 2m57s
CI / Release (push) Successful in 1m37s
CI / Docker Build & Push (push) Failing after 5m29s
CI / Notify (push) Successful in 1s
v0.1.7 v0.1.6
2026-02-20 18:19:49 -05:00
1088edecd6 ci: retrigger build
Some checks failed
CI / Lint (push) Successful in 3m10s
CI / Test (push) Successful in 3m32s
CI / Release (push) Successful in 1m6s
CI / Docker Build & Push (push) Failing after 5m24s
CI / Notify (push) Successful in 2s
v0.1.5 v0.1.4
2026-02-20 10:05:23 -05:00
b1c1a7bd6e fix: add GOPRIVATE and git auth for private handler-base module
Some checks failed
CI / Lint (push) Successful in 2m33s
CI / Test (push) Successful in 2m33s
CI / Release (push) Successful in 1m1s
CI / Docker Build & Push (push) Failing after 6m16s
CI / Notify (push) Successful in 1s
- Set GOPRIVATE=git.daviestechlabs.io to bypass public Go module proxy
- Configure git URL insteadOf with DISPATCH_TOKEN for private repo access
v0.1.3
2026-02-20 09:22:37 -05:00
cdc551924e fix: rename GITEA_TOKEN to DISPATCH_TOKEN
Some checks failed
CI / Lint (push) Has been cancelled
CI / Test (push) Has been cancelled
CI / Docker Build & Push (push) Has been cancelled
CI / Release (push) Has been cancelled
CI / Notify (push) Has been cancelled
2026-02-20 09:10:22 -05:00
71a480dd80 ci: add handler-base auto-update workflow, remove old Python CI
Some checks failed
CI / Release (push) Has been cancelled
CI / Lint (push) Has been cancelled
CI / Test (push) Has been cancelled
CI / Docker Build & Push (push) Has been cancelled
CI / Notify (push) Has been cancelled
2026-02-20 09:06:01 -05:00
e5a3efc701 fix: use tagged handler-base v0.1.3, remove local replace directive
Some checks failed
CI / Test (push) Failing after 1m19s
CI / Release (push) Has been skipped
CI / Lint (push) Failing after 1m16s
CI / Docker Build & Push (push) Has been cancelled
CI / Notify (push) Has been cancelled
2026-02-20 09:00:47 -05:00
ef52519d4d fix: resolve golangci-lint errcheck warnings
Some checks failed
CI / Test (push) Has been cancelled
CI / Release (push) Has been cancelled
CI / Docker Build & Push (push) Has been cancelled
CI / Notify (push) Has been cancelled
CI / Lint (push) Has been cancelled
- Add error checks for unchecked return values (errcheck)
- Remove unused struct fields (unused)
- Fix gofmt formatting issues
2026-02-20 08:45:42 -05:00
3dff04ad95 Merge pull request 'feature/go-handler-refactor' (#1) from feature/go-handler-refactor into main
Some checks failed
CI / Docker Build & Push (push) Has been skipped
CI / Lint (push) Failing after 58s
CI / Test (push) Failing after 1m25s
CI / Release (push) Has been skipped
CI / Notify (push) Successful in 1s
Reviewed-on: #1
2026-02-20 12:34:19 +00:00
85b481b6c4 feat: migrate to typed messages, drop base64
Some checks failed
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
93129d945f fix: use config.json auth for Gitea registry login
Some checks failed
CI / Lint (push) Successful in 32s
CI / Test (push) Successful in 28s
CI / Release (push) Successful in 5s
CI / Docker Build & Push (push) Failing after 1m18s
CI / Notify (push) Successful in 3s
docker login --password-stdin fails on act runner (non-TTY).
Use base64 auth in ~/.docker/config.json instead, matching
the kuberay-images pattern.
v0.1.2
2026-02-14 09:21:48 -05:00
b7340ab72b fix: replace astral-sh/setup-uv action with shell install
Some checks failed
CI / Lint (push) Successful in 26s
CI / Test (push) Successful in 44s
CI / Release (push) Successful in 19s
CI / Docker Build & Push (push) Failing after 28s
CI / Notify (push) Successful in 1s
The JS-based GitHub Action doesn't work on Gitea's act runner.
Use curl installer + GITHUB_PATH instead.
v0.1.1
2026-02-13 19:40:51 -05:00
7b3bfc6812 feat: custom voice support, CI pipeline, and Renovate config
Some checks failed
CI / Test (push) Successful in 43s
CI / Lint (push) Successful in 44s
CI / Docker Build & Push (push) Failing after 24s
CI / Notify (push) Successful in 1s
CI / Release (push) Successful in 6s
- VoiceRegistry for trained voices from Kubeflow pipeline
- Custom voice routing in synthesize()
- NATS subjects for listing/refreshing voices
- pyproject.toml with ruff/pytest config
- Full test suite (26 tests)
- Gitea Actions CI (lint, test, docker, notify)
- Renovate config for automated dependency updates

Ref: ADR-0056, ADR-0057
v0.1.0
2026-02-13 15:33:27 -05:00
d4fafea09b feat: add streaming TTS service with Coqui XTTS
- tts_streaming.py: NATS-based TTS using XTTS HTTP API
- Streaming audio chunks for low-latency playback
- Voice cloning support via reference audio
- Multi-language synthesis
- OpenTelemetry instrumentation with HyperDX support
2026-02-02 06:23:34 -05:00
fddec4585b Initial commit 2026-02-02 11:10:19 +00:00