v0.0.1-alpha.9
Pre-release
Pre-release
·
35 commits
to main
since this release
Operations release. Voicy can run against the fleet's self-hosted Bot API
server, exposes process counters, proves its SQL against a real PostgreSQL, and
can no longer send the same transcript twice.
Added
TELEGRAM_API_BASEselects the Bot API server, defaulting to Telegram's own.
Pointed at the shared self-hosted server,getFileis no longer capped at
20 MB. That server runs withTELEGRAM_LOCALand answers with an absolute
path in its data directory, so Voicy reads the bytes from the mounted volume
and deletes the file afterwards: a local server never reclaims them itself./metricsserves process counters in Prometheus text exposition format,
covering what never becomes a job row: polling failures, cache hits and
misses, Deepgram retries, Telegram rate limits and errors by method, job
failures by stage, and audio seconds sent.- Database tests that run against a real PostgreSQL, covering job idempotency,
the atomic completion-and-statistics transaction, cache variants, the stale
job reaper, owner-bound deep links, and retention. They require a disposable
database whose name containstestand refuse to run anywhere else. CI runs
them against a PostgreSQL 17 service, and a release is now gated on them.
Fixed
- A transcript is delivered at most once per update. Delivery and the terminal
transition are two writes, and a database failure between them made the
update retry and send the same text again. Delivery is now recorded on the
job as soon as it succeeds, and a retry closes the job instead of resending.
Migrations
migrations/004_job_delivery.sqladdsjobs.delivered_at.
Operations
TELEGRAM_API_BASEis optional and defaults to the cloud server, so an
existing deployment is unaffected until it is set.- Moving a token to a self-hosted server requires calling
logOuton the cloud
server first. Telegram then refuses to log back in to the cloud for ten
minutes, so the switch back is not instant. - The WS04 stack now also joins
telegram_bot_api_netand mounts the Bot API
server's data directory.
Container image
ghcr.io/freshlabdev/voicy@sha256:29011126ee44df7f1ed1563414bd29f49b87876168b45a22e07e241bfb490bde