Repository navigation
feat(clients): connect shared encrypted items and attachments - #711
Merged
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: 8f22458f-6f55-42db-ab14-796b2469e111) |
This branch was previously deployed
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.
Desktop・Mobile・ブラウザ拡張で暗号化した項目と添付を使えるよう、承認済みWeb画面とRust/WASM処理を共通化して正式sessionへ接続します。通信故障では同じ利用者の下書きを保持し、施錠・背景・利用者・鍵世代の切替で古い応答と秘密を復活させません。Desktopはネイティブの失焦通知も受け取り、DOMがvisibleのままでも鍵と下書きを閉じます。
CLIには、独立して確認した公開鍵と文脈を明示入力する共有受信者の項目読取・添付取得を追加します。復号鍵の能力とHTTPクライアント・公開ルート・期待文脈を別々に保持し、復元したアカウント鍵包みから送信先を作りません。全JSONと実添付バイト、失効、既存ファイルの上書き拒否、固定要求の1回輸送を維持します。受信者の変更・鍵更新・移行・復旧は未対応として明示しています。
追加修復の検証: CLI18件成功・省略0、最終の受信者4件成功・14件をフィルターで省略、all-targets Clippyと整形成功。Rustが起動する実React認証ホストで7つの寿命・保存回帰が成功しました。モバイルの新しい共通moduleを検査ホストが解決できなかったCI故障も修復しました。追加4ファイルの独立GPT-5.5レビューは公開ルート保持のMust1を修復して最終Must/Suggestion/Nit0。遅着・背景・デスクトップ失焦を含む画面とsessionの60検査が成功・省略0、取り込んだネイティブ失焦3ファイルも元の固定差分レビューMust0と同じGit blobです。
正式Node/配布imageでの実CLI・添付保存、全workspace/doctest・全CIは最終候補の結果を確認します。前の候補の結果や、制御したReactホストの成功を最終source・実Native/MV3・原22条件の成功へ読み替えません。実WebViewのfile dialog、3クライアント正式PG往復、MV3 popup/CSP・320px、署名配布と販売条件は別途残る受入です。暗号実装・配布WASM・manifestはこの修復では変更しません。
Note
High Risk
Touches encrypted session lifecycle across clients and adds shared-recipient CLI decryption with strict trust inputs—both are security- and crypto-sensitive paths.
Overview
Desktop, mobile, and the extension now share the Web encrypted item/attachment runtime (
shared/cloud): WASM assets are vendored via a common Vite plugin, CSP allows'wasm-unsafe-eval'and workers, and each client binds a formal cloud session (desktop ephemeral login, mobile refresh-backedCloudSession, extension formal session). Desktop adds an account-scoped cloud view with focus/blur lock and explicit.pboxlock on switch; mobile routes vault items throughCloudBoxPanelwith compatibility gating; extension keeps encrypted boxes out of autofill and drops the plaintext password cache path. Web frontend modules become thin re-exports of the shared layer.opencrypted mode gains--recipient --secret-stdin: read-onlyitem list/get,read, andattachment getusing caller-suppliedsharedReceivetrust (identities, epochs, item/attachment context)—no owner writes or server-pinned trust. Attachment output uses explicitcreate_newpaths. CI buildsop-cliand runsformal_cli_recipientagainst formal Node and the distribution image.Specs and runbooks document cross-client UI boundaries, recipient CLI input, and CodeQL notes on separating decryption keys from HTTP transport.
Reviewed by Cursor Bugbot for commit fee901e. Bugbot is set up for automated code reviews on this repo. Configure here.