Commit Graph
121 Commits
Author SHA1 Message Date
iamdoubz 33c0397de8 fix(sync): enable keyring windows-native backend — creds were a silent no-op
keyring 3.x feature-gates its OS backends OFF by default, so with no feature the
credential store fell back to a mock where set/get don't share state: every
password write appeared to succeed but read back empty, so no Basic auth was
sent and WebDAV/Nextcloud auth always 401'd. windows-native pulls the real
Windows Credential Manager. Also affected MCP/hosted-AI keys + OAuth tokens.
2026-07-06 13:08:39 -05:00
iamdoubz 8f6e8041d6 feat(sync): auto-build Nextcloud/ownCloud DAV path from the server URL
For nextcloud/owncloud, WebDavTarget now derives the canonical
…/remote.php/dav/files/<user>/ path from the entered server URL (origin only, so
a pasted full path normalizes too); other providers use the URL verbatim.
test_sync_target also reuses the stored password when editing an existing
webdav target (unless a new one is typed), so Test works after a URL fix without
re-entering the password. Fixes the confusing 'bare host connects, full URL
fails' behavior (the former was a 404 false-positive, the latter a blank-secret
401).
2026-07-06 11:10:44 -05:00
iamdoubz 149f2c995d feat(sync): expose upload flags in SyncTargetInfo for the edit form
row_to_info now returns upload_transcript/notes/summary/recording,
trigger_on_finalize, allow_plaintext_lan, encrypt_before_upload so the UI can
pre-fill an edit form accurately (still never the secret, FR-SYNC-6).
2026-07-06 10:40:57 -05:00
iamdoubz 224aaf9994 fix(runtime): use gitea /media/ URLs so Git LFS bundles resolve (not the pointer) 2026-07-06 09:45:01 -05:00
iamdoubz e6f19168f8 feat(runtime): download NPU/DirectML runtimes as 7z from the repo raw URLs
extract_7z_flat replaces extract_zip_flat; NPU + DirectML now default to
git.dou.bet raw/branch/main/runtime/{openvino,directml}.7z with pinned SHA-256s
(DirectML no longer requires WA_DIRECTML_RUNTIME_URL). Adds an extraction test
against the real bundle (proves LZMA2+BCJ decode + flatten).
2026-07-06 08:23:49 -05:00
iamdoubz 27ba4f9b03 build(deps): swap zip for sevenz-rust2 (npu-gated) to unpack 7z runtime bundles
The NPU/DirectML runtime bundles are now LZMA2+BCJ 7z archives; zip was only used
for the old .zip bundle. sevenz-rust2 pinned to 0.7.0 (newer needs rustc>MSRV).
2026-07-06 08:23:49 -05:00
iamdoubz 0d62416127 chore(release): bump version to 0.1.5 2026-07-06 07:46:29 -05:00
iamdoubz 42c2aedfd4 feat(commands): register app_info + open_url 2026-07-06 07:46:18 -05:00
iamdoubz 0317649b48 feat(commands): app_info (version+commit) and open_url for the About page 2026-07-06 07:46:18 -05:00
iamdoubz 035abb93ea build: bake short git commit hash into WA_GIT_HASH for the About page 2026-07-06 07:46:17 -05:00
iamdoubz ceb7e59164 feat(commands): expose directml.applicable in hardware_status (P2) 2026-07-06 07:21:50 -05:00
iamdoubz 281ccf0b18 feat(hardware): directml_would_help() gate for the Settings package card (P2)
True only when staging DirectML would light up a present GPU this build can't
otherwise accelerate: npu compiled, no Vulkan baked in, and an AMD/Intel GPU
present (or NVIDIA without CUDA).
2026-07-06 07:21:50 -05:00
iamdoubz ab5aa4e986 feat(commands): register download_directml_package command (P2) 2026-07-05 19:40:28 -05:00
iamdoubz b69c91a598 feat(commands): route AMD/Intel to DirectML ONNX engine + download_directml_package (P2)
load_transcriber dispatches OnnxOpenVino/OnnxDirectML through one OnnxTranscriber
block. download_and_extract_runtime is parameterized (sha + readiness) so the new
stage_directml_runtime reuses it; hardware_status reports a directml package field.
2026-07-05 19:40:27 -05:00
iamdoubz 0f2940e52b feat(hardware): make directml_ready() real (npu feature + staged runtime) (P2) 2026-07-05 19:40:27 -05:00
iamdoubz 9ae02cabfe docs(transcription): update OnnxTranscriber name in doc comments (P2) 2026-07-05 19:40:17 -05:00
iamdoubz eb87bf4edb refactor(transcription): re-export OnnxTranscriber; note ONNX tier covers NPU+DirectML (P2) 2026-07-05 19:40:17 -05:00
iamdoubz 0f93f5947e feat(transcription): generalize OnnxNpuTranscriber -> OnnxTranscriber with DirectML EP (P2)
load() now selects OpenVINO (NPU) or DirectML (AMD/Intel GPU) by BackendId over
the same ONNX artifacts; ensure_runtime_env takes the target runtime DLL. Adds
an opt-in directml_transcribes_speech spike for on-GPU validation.
2026-07-05 19:40:16 -05:00
iamdoubz 2e8bb730a3 feat(paths): DirectML runtime dir/dll/ready helpers (P2) 2026-07-05 19:40:16 -05:00
iamdoubz c4658efe28 build(deps): enable ort DirectML EP for the non-Vulkan GPU path (P2) 2026-07-05 19:40:15 -05:00
iamdoubz 7fe0d87e55 feat(transcription): drive engine choice from AccelPath resolver (P0)
load_transcriber now resolves the accel path instead of assuming a GPU
BackendId has a working offload. Only requests whisper GPU offload for
WhisperCuda/WhisperVulkan; NPU goes to the ONNX engine; everything else decodes
on CPU and reports the backend actually used.
2026-07-05 19:27:28 -05:00
iamdoubz e9567b823a feat(hardware): AccelPath resolver + honest GPU availability (P0)
whisper.cpp bakes in one GPU backend at compile time, so a BackendId alone
can't say how a vendor is served. Add AccelPath + resolve_accel(_with) as the
single source of truth over (compiled features x runtime readiness), and derive
BackendInfo.available from it in the DXGI + NPU paths. Closes the gap where a
present-but-unsupported GPU was marked available and best() routed to a no-op
GPU. Pure resolve_accel_with is unit-tested across all vendor/feature combos.
2026-07-05 19:27:23 -05:00
iamdoubz 95b2635607 Add npu 2026-07-05 18:19:22 -05:00
iamdoubz fa96a16be4 chore: normalize Cargo.toml line endings after BOM-strip pass 2026-07-05 00:42:39 -05:00
iamdoubz 76c33fd772 fix(build): strip UTF-8 BOM from package.json/tauri.conf.json (broke vite type:module + vitefu JSON.parse) 2026-07-05 00:42:19 -05:00
iamdoubz 68e4d2fece chore(release): bump version to 0.1.4 2026-07-05 00:36:33 -05:00
iamdoubz 02a215c2e3 test(transcription): GPU/CPU timing spike (opt-in) for whisper.cpp backends 2026-07-05 00:36:33 -05:00
iamdoubz 2e03eab8f8 chore(release): bump version to 0.1.3 2026-07-04 09:22:06 -05:00
iamdoubz 606bf67943 feat(llm): wire llm_advanced through provider construction + defaults (T5.2) 2026-07-04 09:21:27 -05:00
iamdoubz 34e511bcf6 feat(llm): inject system prompt + think/keep_alive/options into Ollama requests (T5.2) 2026-07-04 09:21:27 -05:00
iamdoubz 0165d4752c feat(llm): add sparse llm_advanced settings for Ollama tuning (T5.2) 2026-07-04 09:21:27 -05:00
iamdoubz 0d335a6880 chore(release): bump version to 0.1.2 2026-07-03 11:40:15 -05:00
iamdoubz 78335b3e69 feat(llm): treat private LAN endpoints (RFC-1918) as local, not internet egress (FR-LLM-6) 2026-07-03 09:49:34 -05:00
iamdoubz a38bf20e79 feat(npu): download+unzip the hosted OpenVINO runtime bundle w/ progress + sha256 (T3.4) 2026-07-03 09:16:41 -05:00
iamdoubz 7cc437d1b5 build(npu): add zip crate to extract the runtime bundle (T3.4) 2026-07-03 09:16:40 -05:00
iamdoubz 368be69ff7 chore(release): bump version to 0.1.1 2026-07-03 09:06:43 -05:00
iamdoubz 4001d38b9b fix(npu): ship npu in the default build so the shipped app can use/download it (T3.4); bump 0.1.1 2026-07-03 09:06:42 -05:00
iamdoubz 06c1764506 version 0.1.0 2026-07-03 08:55:16 -05:00
iamdoubz 713ab381d0 chore(release): bump version to 0.1.0 2026-07-03 08:48:59 -05:00
iamdoubz 1824475cef feat(sync): seal recording on finalize; encrypt-before-upload in pump; honor config flag (T9.12/T8.8) 2026-07-03 08:47:36 -05:00
iamdoubz 97bda924b3 feat(vault): decrypt sealed recordings on read (audio at-rest) (T8.8) 2026-07-03 08:47:36 -05:00
iamdoubz 1b78d4db0b feat(vault): ensure_sealed for encrypt-before-upload; zeroize keys on lock (T9.12/T8.8) 2026-07-03 08:47:35 -05:00
iamdoubz 9505935490 build(vault): add zeroize for in-memory key wiping (T8.8 hardening) 2026-07-03 08:47:35 -05:00
iamdoubz 9845c1c8a1 feat(vault): register vault module + commands (T8.8) 2026-07-03 08:06:05 -05:00
iamdoubz e194b76f6f feat(vault): vault lifecycle commands; seal summary; decrypt on export (T8.8) 2026-07-03 08:06:05 -05:00
iamdoubz 0f7af4576e feat(vault): seal transcript/notes/summary at rest via storage read/write helpers (T8.8) 2026-07-03 08:06:05 -05:00
iamdoubz f12e86513a feat(vault): envelope at-rest encryption core — Argon2id + XChaCha20-Poly1305, seal/open (T8.8, FR-SEC-3) 2026-07-03 08:06:04 -05:00
iamdoubz a4da38571e build(vault): add argon2 + chacha20poly1305 + getrandom for at-rest encryption (T8.8) 2026-07-03 08:06:04 -05:00
iamdoubz 575118ceba feat(sync): begin_oauth_link command; pump/test dispatch via build_sync_target (T9.9/9.10) 2026-07-03 07:54:29 -05:00
iamdoubz 27541dd171 feat(sync): OneDrive (Graph) provider + kind-based target dispatch + token resolution (T9.10) 2026-07-03 07:54:29 -05:00