Skip to content

v0.0.1-alpha.4

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Aug 22:46
· 4 commits to main since this release

Voicy now has one canonical name from repository folder to production schema,
reliable Telegram initialization and job accounting, Rich Markdown transcript
delivery, complete settings, and useful personal and global statistics.

Added

  • /start panel with Language, Settings, Stats, Help, About, and Close.
  • /language [ru|en] in DM opens the language panel or sets the language
    across the shared Core language hub.
  • Settings for smart formatting, paragraphs, filler words, profanity filter,
    diarization, quote style, and metadata.
  • Per-user Deepgram options: smart_format, paragraphs, filler_words,
    profanity_filter, diarize_model=latest. detect_language and
    mip_opt_out remain always-on.
  • Localized speaker turns from Deepgram paragraph-level speaker metadata.
  • Personal and global statistics tabs with users, transcript kinds, audio
    duration, words, Kyiv peak hour, and last detected language.
  • Owner-bound deep-link recovery for a long ephemeral transcript when neither
    ephemeral Rich Markdown nor direct-message delivery is available.
  • Media size and duration limits, hourly retention cleanup, and stuck-job
    health reporting.

Changed

  • Removed Deepgram WebSocket code and Telegram draft delivery. Prerecorded
    POST /v1/listen is the only STT transport.
  • Removed transcript-document delivery and its setting. Transcripts use Bot API
    sendRichMessage, preserving replies and topics, with safe splitting above
    32,768 characters.
  • Settings callbacks carry the desired value and are safe to retry.
  • Telegram startup retries deleteWebhook, getMe, and command registration
    until all succeed. /healthz remains unhealthy before initialization.
  • A terminal job transition and user-stat update now commit atomically and only
    once. Failed and empty jobs never affect user-facing statistics.
  • transcripts primary key is (file_id, variant) and cached speaker turns are
    stored with the text.
  • The folder, stack, database schema, Core bot key, role, and container are all
    named voicy.

Migrations

  • 002_user_settings.sql adds settings, cache variants, speaker turns,
    retrieval tokens, and last-use timestamps.
  • Core 011_voicy.sql migrates legacy presence and language rows, renames the
    schema and role, and narrows voicy_core to the three shared API functions it
    uses.

Operations

  • Updated to Go 1.26.6 and fixed reachable standard-library and x/text
    vulnerabilities.
  • CI and release workflows pin actions, pin govulncheck, run full release
    verification, require tagged code to be on main, fail on missing changelog,
    and publish an immutable image digest with SBOM and provenance.
  • Production Compose accepts only an explicit VOICY_IMAGE reference.

Container image

ghcr.io/freshlabdev/voicy@sha256:d6dc88deffc97640b886273b7357a379eb3902102af421063d88540c23ea5ec8