Releases
v0.1.4
Compare
Sorry, something went wrong.
No results found
Changelog
Features
f8795c4 feat(byos): client-facing repo deactivate endpoint for pool rotation
55037e7 feat(core): bulk_download engine — N files streamed into one ZIP
2481996 feat(core): cooperative cancellation for foreground transfers
6f2fcc1 feat(core): decrypt_to_memory engine + shared acquire_chunk
9b5e7d4 feat(core): parallel streaming upload engine + upload/sync hardening
222529c feat(core): retry byos-direct chunk push before failing
4579d17 feat(core): shared-space download/decrypt via an already-resolved key
66861f2 feat(core): wire client repo rotation to the deactivate endpoint
78e57d1 feat(core): zeroize key material after last use
3de7f08 feat(desktop): cancellable transfers via cancel_transfer command
1b0f139 feat(desktop): inactivity auto-lock for the cached passphrase
bcf94b8 feat(desktop,frontend): bulk ZIP download through the core
da15dfd feat(desktop,frontend): route shared-space download through the core
6a932a0 feat(download): bigger QR + Download/Copy-link actions, trimmed copy
191d738 feat(download): mark the Android sideload build as Beta
4677d27 feat(frontend): animated theme toggle and smoother switch transition
4721273 feat(frontend): docs overhaul — tree sidebar, site-wide search, new pages
5ddb448 feat(frontend): permanently delete via the core on desktop
b8cea7d feat(frontend): route desktop uploads through the streaming core
af4ceeb feat(frontend): route thumbnails/preview/viewer through the core on desktop
3c4d343 feat(frontend): type-aware promise-safety lint as ratcheted inspect scan
10aee5a feat(frontend): wire desktop transfer cancellation to Cancel
465f451 feat(ops): fully automated Neon quota rotation with health-gated cutover
109c716 feat(ops): nightly encrypted offsite Neon backup
3fbcd56 feat(seo): nudge search engines to recrawl after content deploys
Bug fixes
5f9a5d5 fix(backend): drive transactional email footer from FRONTEND_URL
cd84f97 fix(core): bulk_download takes a passphrase PER file, not one for the batch
ef5fa5b fix(core): reliable DNS + resilient downloads (byos-direct→relay fallback)
f2e78fa fix(desktop): Android login via opener plugin + enable in-app drag-drop
326023d fix(desktop): stop Android silent launch crash
40ad554 fix(frontend): Android safe-area, keyboard avoidance, and WebView smoothness
a3f7ea3 fix(frontend): burn down type-aware promise-safety backlog
e714524 fix(frontend): drop View Transitions theme flip, make circuit bg CSS-driven
2cd3cf4 fix(frontend): exponential backoff for SSE reconnects
6ad2cbf fix(frontend): mark the settings platform refreshes as fire-and-forget
b7804ad fix(frontend): route desktop downloads through the core + Tools icon
ab4ba75 fix(frontend): stop OS-notification spam on SSE reconnects
c432efa fix(scripts): put the user toolchains back on PATH in prepush
15d388c fix(security): clear govulncheck — Go 1.25.14, x/text v0.39.0
c07226f fix(settings): format JSON structure and ensure enabledPlugins section is correctly defined
Performance
9db78c7 perf(core): warm CEK cache for repeat file-key resolution
Other changes
ab136e3 Add runbook for standing up and rotating zcrypt backend instance
8c72d47 Merge branch 'chore/rust-frontend-toolchain' into chore/tailwind-v4-rust
c60e5e4 Merge branch 'chore/rust-frontend-toolchain' into pr2-fixes
db8731a Merge pull request #3 from Wosmos/fix/async-promise-findings
0f1d3fa Merge pull request #4 from Wosmos/feat/neon-auto-rotation
f545948 Merge remote-tracking branch 'origin/chore/tailwind-v4-rust' into chore/tailwind-v4-rust
a474876 build(desktop): single source of truth for the baked API origin
42bc9d7 build(frontend): CI lint+format gates, pinned tool versions, docs
06b9081 build(frontend): complete Tailwind v4 CSS-first config, drop the JS bridge
9710e8b build(frontend): harden tsgo pin — tsc fallback + advisory CI step
ed44084 build(frontend): migrate Tailwind CSS 3 -> 4 (Rust Oxide engine)
e9d7ffc build(frontend): point prepush + CI gates at the Rust toolchain
60d39c7 build: typeaware prepush scan distinguishes crash from clean
6bf7329 chore(backend): reseal migration tool for MASTER_KEY rotation
22d6492 chore(frontend): adopt Rust-native lint/format/typecheck toolchain
5680a70 chore(frontend): drop unused exports and the now-unused fuse.js dep
a582ca4 chore(frontend): point shadcn at the CSS-first Tailwind config
07f0ae1 chore(frontend): remove the redundant /share page
d2d9e66 chore(ops): Neon quota watcher + ntfy alerts, rotation escape hatch, prod-clone script
b50c0f2 chore(security): scrub test creds from shimmer report, untrack .vercel
df1e9d1 ci(android): build universal all-ABI APK so it installs on any phone
9f2fdb5 ci(android): release APK, always signed (ephemeral keystore if no secret)
103f21b ci(android): sign the release APK explicitly with apksigner + verify
00bc6de docs(db): free-tier scaling plan — rotation carousel, 1M-user ladder, failure register
ffde92b refactor(frontend): centralize marketing content into typed data modules
f77b891 refactor(frontend): centralize the production origin in lib/site.ts
05ea35a refactor(frontend): native settings — two-pane desktop, grouped-list mobile
4a59be0 style(frontend): apply initial Biome format pass
3984c75 style(frontend): format the four files skipped by the initial Biome pass
92146aa test(frontend): expand coverage — new hook/lib tests, vitest config, coverage roadmap + backend coverage script
ddc8f58 test(frontend): harden coverage on downloads, SSE reconnect and search
76b94c2 test(frontend): let the 1MB chunk test use the configured timeout
59f1ba4 test(frontend): mock auth store in useVaultActions test
4744bb9 test(frontend): update useOperationStatus tests to the new reconnect contract
You can’t perform that action at this time.