feat: encrypted-file vault, sandbox-safe IO, share links, folder upload - #19
Merged
Merged
Conversation
- vault: per-user, in-pod encrypted index mapping each encrypted file to the passphrase that opens it, searchable behind a new Vault dialog. Stored as .vault.enc + sidecar (AES-GCM under the session passphrase); never leaves the pod in plaintext and there is no central DB. - download/clipboard: route through saveBlob()/copyText() helpers that fall back for the Mind shell's sandboxed iframe, where a[download] and the async Clipboard API are blocked. - share: encrypted files grant/revoke the ciphertext + sidecar together and surface an in-app viewer link (?src=) that prompts for the passphrase; FilePreview can now render any pod URL read-only and anonymously. - rename: lock the file extension (edit the base name only) so a rename can't change the format; move the .enc.json sidecar alongside encrypted renames. - upload: drop files onto a folder row/tile to upload into that folder. - crumbs: icon + heading redesign; image thumbnails in list view. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
huhn511
force-pushed
the
feat/encrypted-vault-and-sandbox-safe-io
branch
from
June 23, 2026 17:06
6d1a375 to
e869be7
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A cohesive batch of Drive improvements centered on encrypted files and the Mind-shell iframe, plus a couple of UX refinements.
.vault.enc+ sidecar (AES-GCM under the session passphrase), hidden from the listing. Honors the privacy invariants: never leaves the pod in plaintext, no central DB.saveBlob()/copyText()helpers. Inside the shell's sandboxed iframe,<a download>and the async Clipboard API are silently blocked; these fall back (open-in-new-tab /execCommand+ manual-select) so download and "copy link/passphrase" work embedded too.?src=) that prompts the recipient for the passphrase.FilePreviewcan now render any pod URL read-only and anonymously (owner-only actions hidden)..enc.jsonsidecar alongside and updateoriginalName.Review notes
typecheck: clean for all touched files. (The 3 pre-existinglayout.tsx/opengraph-image.tsxerrors are a stale@mind-studio/uiinnode_modules, present onmainand unrelated.)biome check: clean on all changed files.removeVaultEntryexists but isn't wired into delete yet, so the vault keeps a stale entry after an encrypted file is deleted.🤖 Generated with Claude Code