fix: leftover engine repair, just --no-sync, and ggml verify from #713 (#732)

* fix: leftover engine repair, just --no-sync, and ggml verify from #713

#713 only rewrote a broken config.json toward whisper_cpp, so a reinstall
that kept the old engine still died when vosk was the extra that installed.
verify_configured_engine now prefers SELECTED_ENGINE, then any working extra,
and the vosk fallback rewrites an existing file.

just recipes use uv run --no-sync so they do not prune extras from
just deps-all. CONTRIBUTING lists libgirepository-2.0-dev for Ubuntu 24.04.
An unverified ggml file is not loaded if unlink fails, and an unpinned name
is refused rather than deleted.

* fix(appimage): retry tooling downloads on curl reset

* fix(build): bootstrap .venv for --no-sync just recipes and cover the contributor path in CI

---------

Co-authored-by: Sergey Silaev <hello@8am.dev>
This commit is contained in:
Jatin K Malik
2026-08-24 10:42:52 -07:00
committed by GitHub
co-authored by Sergey Silaev
parent 582d494633
commit f43f9dcd72
12 changed files with 359 additions and 112 deletions
+42
View File
@@ -164,6 +164,48 @@ jobs:
files: coverage.xml
fail_ci_if_error: false
just-contributor-path:
name: 🧰 Contributor Path (just)
runs-on: ubuntu-latest
timeout-minutes: 20
needs: [changes, python-lint]
if: needs.changes.outputs.python == 'true'
steps:
- uses: actions/checkout@v5
- name: Set up uv
uses: astral-sh/setup-uv@v6
with:
# Caches uv's download cache, not .venv/, so the checkout below stays
# the fresh clone this job exists to exercise.
enable-cache: true
- name: Install just
run: |
uv tool install rust-just
echo "$HOME/.local/bin" >> "$GITHUB_PATH"
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
libgirepository-2.0-dev \
libcairo2-dev \
pkg-config \
python3-dev \
portaudio19-dev \
gir1.2-gtk-3.0 \
gir1.2-appindicator3-0.1 \
xdotool
# The rest of the pipeline drives uv directly, so nothing here checks that
# the workflow CONTRIBUTING documents still works. `just deps` is skipped on
# purpose: running it first would populate .venv/ and hide exactly the
# breakage this job is for, where `uv run --no-sync` finds no interpreter to
# run the tooling with.
- name: just test, from a clean checkout
run: just test
appimage-smoke-test:
name: 📦 Build AppImage (smoke test, ${{ matrix.arch }})
runs-on: ${{ matrix.runner }}