airvzxf / airvzxf/telora

decision: adopt voxora-local + voxora-vad in telora; retire telora-models?

オープン
#149 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
pending-human phase:mid-term
主要言語
Rust
スター
0
フォーク
0
平均マージ
48分
マージ済み PR(30日)
51

説明

Operator-decision issue — does not block the 0.5.0 release. Tracked separately so the operator can think about scope without rushing.

## Context

`voxora 0.5.0` (airvzxf/voxora#117) shipped two new publishable crates that telora does not yet consume:

- **`voxora-local`** — local-directory `ModelSource` (closes voxora#49). Implements the hardened `LocalSource` (path-traversal guard, symlink-following refusal, `O_NOFOLLOW` open, honours `ResolveOptions::max_bytes` + `max_id_length`, opaque `Debug`). The new `Registry::with_builtin_descriptors_and_chained_source(LocalSource)` helper (voxora-registry 0.5.3) is the canonical "local-first, HF-on-miss" recipe.
- **`voxora-vad`** — voice-activity detection (sliding-window RMS, debounce). Closes voxora's long-standing "auto-stop on silence" gap.

Separately, `telora-models` is already marked for retirement in `TODO.md` (it is a thin wrapper that delegates every operation to `voxora-hf`; the `voxora` CLI is the recommended interface going forward).

## Decisions needed

| Decision | What it changes | Recommendation |
|---|---|---|
| **Adopt `voxora-local`** in telora-daemon so an operator can pre-vendor weights under `[paths] voxora_local_dir = "..."` and have the daemon prefer those over an HF download. Closes a long-running operator request for air-gapped / hermetic deployments. | New config key + new resolve path. | Open as a follow-up EPIC once #142 lands. Use `with_builtin_descriptors_and_chained_source(LocalSource)` per voxora-registry 0.5.3. |
| **Adopt `voxora-vad`** in telora-daemon so recording auto-stops on silence (or so the daemon trims silence before transcribe). | UX change + integration with the audio capture loop. | Open as a follow-up EPIC. Requires a UX decision: auto-stop on silence vs. trim-silence-before-transcribe vs. both. |
| **Retire `telora-models`** entirely now that `voxora list` / `voxora download` are the canonical entry points. | Drops one of the four release binaries; updates README, packaging recipes, and the PKGBUILD optional-deps list. | Currently held back because every existing operator script references `telora-models`. Recommend shipping v0.5.0 with `telora-models` intact and opening a 0.6.0 retirement EPIC once voxora-cli parity is verified on every distro in `COMPATIBILITY.md`. |

## Why this is `pending-human`

All three decisions are UX / packaging scope decisions, not technical blockers. The orchestrator can implement any of them, but the operator owns the UX surface and is best placed to decide what ships in which release. Each item has a clear technical path; what is missing is the go/no-go.

## Labels

- `pending-human` — operator decision required.
- `phase:mid-term` — these are mid-term scope decisions, not part of the 0.5.0 release.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Read the decision table, TODO.md, and COMPATIBILITY.md first, then review #142 and the referenced voxora 0.5.0 changes. This issue is not ready for implementation until the operator chooses the UX and release scope; done means recording the go/no-go decisions and opening the appropriate follow-up EPICs.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
rust
領域
audio-video-rtc, backend, cli, documentation, release
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
活発
明瞭さ
説明が足りない
初心者へのやさしさ
20/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。