• feat(translation): machine translation pipeline + admin bulk enqueue UI
    Some checks failed
    CI / Backend (push) Failing after 11s
    Release / Check ui (push) Failing after 51s
    Release / Docker / ui (push) Has been skipped
    CI / UI (push) Failing after 55s
    Release / Test backend (push) Failing after 1m9s
    Release / Docker / backend (push) Has been skipped
    Release / Docker / runner (push) Has been skipped
    Release / Docker / caddy (push) Failing after 28s
    Release / Gitea Release (push) Has been skipped
    CI / UI (pull_request) Failing after 42s
    CI / Backend (pull_request) Successful in 3m45s

    kamil released this 2026-03-29 11:32:42 +05:00

    • LibreTranslate client (chunks on blank lines, ≤4500 chars, 3-goroutine semaphore)
    • Runner translation task loop (OTel, heartbeat, MinIO storage)
    • PocketBase translation_jobs collection support (create/claim/finish/list)
    • Per-chapter language switcher on chapter reader (EN/RU/ID/PT/FR, polls until done)
    • Admin /admin/translation page: bulk enqueue form + live-polling jobs table
    • New backend routes: POST /api/translation/{slug}/{n}, GET /api/translation/status,
      GET /api/translation/{slug}/{n}, GET /api/admin/translation/jobs,
      POST /api/admin/translation/bulk
    • ListTranslationTasks added to taskqueue.Reader interface + store impl
    • All builds and tests pass; svelte-check: 0 errors
    Downloads