背景
#153 已修复正式版默认右键菜单,但 renderer 边界仍未完整收口:release 中没有统一阻止浏览器刷新/打印快捷键与顶层导航;Tauri capability 和 CSP 宽于实际前端调用。
同时现有 ErrorBoundary 只包裹 Shell。祖先 ThemeProvider/I18nProvider 或 sibling QuitConfirm 初次 render 抛错时,错误边界无法捕获,仍存在白窗路径。
当前证据
src/app/contextMenuPolicy.ts:69-80:只处理 contextmenu,没有 release accelerator policy。
src-tauri/src/lib.rs:99-148:Builder 没有统一 navigation/new-window policy。
src-tauri/capabilities/default.json:7-13:仍授予 core:default、updater:default 与 process:default。
src-tauri/tauri.conf.json:29-31:renderer connect-src 放行多个 HTTPS origin,而 src/** 没有 fetch/XHR/WebSocket。
src/app/App.tsx:96-109:ErrorBoundary 只包 Shell,不覆盖 Providers 与 QuitConfirm。
src/main.tsx:24-28:React 根外没有第二层最小崩溃兜底。
验收标准
占位说明
对应 Draft PR 只保留实施入口,不修改 WebView/capability/CSP 或崩溃处理,不应合并。
背景
#153 已修复正式版默认右键菜单,但 renderer 边界仍未完整收口:release 中没有统一阻止浏览器刷新/打印快捷键与顶层导航;Tauri capability 和 CSP 宽于实际前端调用。
同时现有
ErrorBoundary只包裹Shell。祖先ThemeProvider/I18nProvider或 siblingQuitConfirm初次 render 抛错时,错误边界无法捕获,仍存在白窗路径。当前证据
src/app/contextMenuPolicy.ts:69-80:只处理contextmenu,没有 release accelerator policy。src-tauri/src/lib.rs:99-148:Builder 没有统一 navigation/new-window policy。src-tauri/capabilities/default.json:7-13:仍授予core:default、updater:default与process:default。src-tauri/tauri.conf.json:29-31:rendererconnect-src放行多个 HTTPS origin,而src/**没有 fetch/XHR/WebSocket。src/app/App.tsx:96-109:ErrorBoundary 只包Shell,不覆盖 Providers 与QuitConfirm。src/main.tsx:24-28:React 根外没有第二层最小崩溃兜底。验收标准
base-uri、object-src、form-action、frame-ancestors。占位说明
对应 Draft PR 只保留实施入口,不修改 WebView/capability/CSP 或崩溃处理,不应合并。