Lokale spraakengine en modelbeheer voor transcriptie (#2512) #2553

Merged
brenno merged 1 commit from feat/transcriptie-04-engine into main 2026-10-23 10:18:42 +00:00
Owner

Samenvatting

  • Lokale whisper.cpp-engine (whisper-cli, v1.9.5 uit gepinde bron) op macOS, Windows en Linux — batch, geen live-claim
  • Modelbeheer: kleine catalogus (small, large-v3-turbo, base) met gepinde revisie, omvang en SHA-256; downloaden/uittrekken/selecteren/verwijderen expliciet door de gebruiker, nooit stil
  • Download via NetGuard: https-only, elke redirect-hop opnieuw geresolved en gepind, .part-staging, annuleerbaar, streamed hash-verificatie, atomair hernoemen
  • Subproces gehard: argv-array, geen schil, toelatingslijst-omgeving (includeParentEnvironment: false), begrensde uitvoer, tijdslimiet + kill, getypte foutmapping
  • Opslag buiten decks, weigert symlinks en pad-ontsnapping; verwijderen is expliciet
  • Instellingen-UI onder de Transcriptie-kaart: rij per model met tier/omvang/licentie/toestand, engine-statusregel, voortgangsbalk — alles via l10n
  • Bundeling: native/whisper_cli/manifest.json + build/bundle-scripts, Makefile- en workflow-integratie (macOS incl. inside-out codesign voor Contents/Helpers, Windows-installer, Linux-bundel)
  • SBOM-component uit hetzelfde manifest; MIT-licentietekst geregistreerd als gebundelde component; egress gedocumenteerd in PRIVACY.md; metingen in TRANSCRIPTION.md §4.5

Bewijs

  • make check volledig groen (14.294 tests; dekking 86,9%; golden-suite)
  • check-secrets en sast schoon (whisper-cli gedocumenteerd als tweede subproces-uitzondering — geen netwerkcode)
  • 126 transcriptietests incl. widget-test voor de modelsectie
  • Beeldkeuring licht + donker gerenderd: koppen, rijen en knoppen leesbaar
  • Echte metingen op Nederlands sample (macOS arm64): tiny/base te zwak voor aanbod; small/turbo binnen de eis — vastgelegd in §4.5. Windows/Linux-hardwareproef staat open voor #2523 — de docs claimen dat ook niet.

Scope-grenzen

  • Web: stubs weigeren eerlijk (UnsupportedSource); echte webengine is #2513
  • Android/iOS buiten scope (geen release-artefact)
  • Live-streaming blijft een aparte route (§4.2 / #2522)
## Samenvatting - Lokale whisper.cpp-engine (`whisper-cli`, v1.9.5 uit gepinde bron) op macOS, Windows en Linux — batch, geen live-claim - Modelbeheer: kleine catalogus (`small`, `large-v3-turbo`, `base`) met gepinde revisie, omvang en SHA-256; downloaden/uittrekken/selecteren/verwijderen expliciet door de gebruiker, nooit stil - Download via NetGuard: https-only, elke redirect-hop opnieuw geresolved en gepind, `.part`-staging, annuleerbaar, streamed hash-verificatie, atomair hernoemen - Subproces gehard: argv-array, geen schil, toelatingslijst-omgeving (`includeParentEnvironment: false`), begrensde uitvoer, tijdslimiet + kill, getypte foutmapping - Opslag buiten decks, weigert symlinks en pad-ontsnapping; verwijderen is expliciet - Instellingen-UI onder de Transcriptie-kaart: rij per model met tier/omvang/licentie/toestand, engine-statusregel, voortgangsbalk — alles via l10n - Bundeling: `native/whisper_cli/manifest.json` + build/bundle-scripts, Makefile- en workflow-integratie (macOS incl. inside-out codesign voor Contents/Helpers, Windows-installer, Linux-bundel) - SBOM-component uit hetzelfde manifest; MIT-licentietekst geregistreerd als gebundelde component; egress gedocumenteerd in PRIVACY.md; metingen in TRANSCRIPTION.md §4.5 ## Bewijs - `make check` volledig groen (14.294 tests; dekking 86,9%; golden-suite) - `check-secrets` en `sast` schoon (whisper-cli gedocumenteerd als tweede subproces-uitzondering — geen netwerkcode) - 126 transcriptietests incl. widget-test voor de modelsectie - Beeldkeuring licht + donker gerenderd: koppen, rijen en knoppen leesbaar - Echte metingen op Nederlands sample (macOS arm64): tiny/base te zwak voor aanbod; small/turbo binnen de eis — vastgelegd in §4.5. Windows/Linux-hardwareproef staat open voor #2523 — de docs claimen dat ook niet. ## Scope-grenzen - Web: stubs weigeren eerlijk (`UnsupportedSource`); echte webengine is #2513 - Android/iOS buiten scope (geen release-artefact) - Live-streaming blijft een aparte route (§4.2 / #2522)
whisper.cpp v1.9.5 als gepinde, statisch gebouwde whisper-cli-helper op
macOS, Windows en Linux; modellen haalt de gebruiker zelf binnen via een
gecontroleerde catalogus met SHA-256-verificatie, per-hop NetGuard-
redirects en .part-staging. Engine meldt eerlijke capaciteiten (batch,
geen live); instellingen tonen status, voortgang en verwijdering. SBOM,
licentieregistratie, bundel- en notarisatiestappen meegenomen.
brenno merged commit 8b183740a3 into main 2026-10-23 10:18:42 +00:00
Sign in to join this conversation.
No description provided.