Skip to content

Design v2 實現與驗收 ​

本地 Design v2 目錄包含 110 個場景/120 項有效功能;已注釋的 CRC 對話方塊 F066 不計入。原生實現覆蓋各場景族及 2026-10-14 評審發現的九項功能缺口。本清單區分已實現交互與真實服務、作業系統驗收,不表示已達到像素級設計一致性。

internal/app/testdata/design-v2-scenes.json 固定場景 ID。TestDesignV2Scenes 以 5 種語言 × 2 種主題、900 × 620 尺寸繪製 104 個由應用管理的場景測試資料。這 1,040 項檢查檢測缺失翻譯及被裁切的關閉操作,不能獨立證明所有交互正確。make snapshots 導出英語淺色/深色版本。D11、D12、D47、D53、D54 和 D55 屬於作業系統介面或交接,不計入無視窗繪製數量。

現有能力 ​

這些能力已連接到原生視圖和服務介接器。評審後續工作記錄九組已完成功能及回歸覆蓋。

  • 連接:AK、STS、授權碼、HTTPS Endpoint 模式、主動啟用請求者付費、憑據庫支援的保持登入、到期/只讀約束、歷史、書簽和主目錄。
  • 瀏覽:列表/網格、前綴搜尋和分頁、地址導航、上下文選單、多選、拖放計劃和有界圖片縮圖。
  • Bucket:按區域提供儲存選項、顯式公開 ACL 確認、空桶刪除、分頁分片搜尋及佇列化清理。
  • 物件:遞迴複製/移動/重新命名/刪除、同區域跨桶貼上、衝突確認、逐項結果、HTTP 標頭和中繼資料、軟連結、歸檔恢復及受恢復狀態限制的預覽。
  • 預覽:文字編輯/Diff/未儲存修改保護、圖片縮放、原生 WebView 音影片,以及明確的文件/FLV/不支援格式回退。文字儲存保留標頭、中繼資料、標籤、ACL 和儲存類型。預設建立副本;替換原物件需要顯式選擇和 ETag 預檢。
  • 分享:公開 ACL 校驗、限時簽名 URL、自訂/加速網域、二維碼生成、剪貼簿/瀏覽器交接,以及確認後發送 SMTP 郵件。
  • 身份:RAM 使用者和 AccessKey、使用者/組/角色策略授權、多物件策略、新使用者授權碼、STS 角色授權碼和到期時間。部分完成的授權保留在對話方塊內供重試。
  • 傳輸:獨立上傳/下載限制、有上限的自動重試、暫停/恢復/移除/清空、診斷詳細資訊、持久化檔案傳輸恢復和 CRC/ETag 校驗。
  • 偏好設定/分發:獨立的五分類自動儲存設定對話方塊、系統主題和語言、可搜尋/清空的會話診斷,以及在設定更新源/金鑰的建置中自動下載簽名包、顯示說明、進度/錯誤/重試、確認安裝和重新啟動。未設定建置提供手動發布下載。

評審後續工作 ​

2026-10-14 的检查设计页面实施情况評審發現九項功能缺口。下列程式碼改動完成了這些功能組。路徑相對於儲存庫;設計基線所述本地目錄和 previews/all 仍是視覺參考。

範圍決定:FLV 播放 ​

D25-flv 保留外部打開/下載回退,實現在 internal/app/preview_media.go。應用內解碼仍是獨立的範圍決策。

證據與剩餘驗收 ​

場景測試資料現在涵蓋獨立確認、可編輯儲存 Diff、RAM 結果/郵件失敗、設定介面、批量結果和更新就緒。專項測試覆蓋取消、保留草稿/憑據、過期回呼、重復中繼資料、限定範圍策略及暫存更新。部分無關錯誤場景仍使用通用網路錯誤;繪製覆蓋本身不能證明真實服務行為。真實帳號、編解碼器、作業系統和簽名分發驗收繼續在下文及發布指南中追蹤。

生產邊界 ​

實現期間沒有執行真實 OSS/RAM/SMTP 請求。帳號憑據、Windows/Linux 桌面環境及分發簽名設定仍需所有者提供,見發布指南。原生 macOS 啟動僅為冒煙測試。WebView 編解碼器行為、作業系統對話方塊、憑據庫提示、真實歸檔延遲及簽名更新安裝都需要這些環境。

本地驗證 ​

2026-10-14 在 macOS 上的本地驗證覆蓋已完成的後續工作,不能替代真實驗收:

  • go test ./...、go test -race ./...、go vet ./... 和 go tool mygo vet 均通過。
  • 全部 1,040 項場景檢查通過;make snapshots 導出了視覺回歸圖片。
  • 原生 macOS 啟動/捕獲和應用打包通過。先前基線評審記錄了 Windows/Linux 交叉編譯;這些平台的桌面運行仍待驗收。
  • 文件類型檢查和生產建置通過。Go 格式及空白檢查無問題。

應用限制 ​

應用中明確保留以下邊界:

  • 連接使用 HTTPS。遠端文字載入上限 8 MiB,可編輯 UTF-8 上限 5 MiB;圖片解碼上限 2000 萬像素。文件和 FLV 預覽提供外部打開/下載。未支援編解碼器的行為取決於已安裝的原生媒體引擎。
  • 中繼資料自複製上限 1 GiB。遞迴計劃最多 100,000 個唯一鍵。伺服器端跨桶複製要求區域一致。物件修改任務僅限目前會話;檔案上傳/下載記錄可在重連後保留。
  • OSS ETag 預檢後的刪除/替換不具備原子性,應避免並行寫入。啟用版本控制的 Bucket 中禁止覆蓋語義不同。顯式替換可能建立新物件版本。
  • SMTP 要求隱式 TLS 或 STARTTLS。金鑰使用記憶體或作業系統憑據庫。RAM AccessKey Secret 僅在本對話方塊建立時顯示;不能從 RAM 獲取已有 Secret。
  • 多物件授權允許列舉公共父目錄以便接收者瀏覽;物件讀寫仍限制在選定資源內。授權前應審查可編輯策略。
  • 已移除傳輸記錄使用刪除標記,防止遲到的工作完成將其恢復。移除任務保留可續傳的部分資料;分片刪除是獨立且需確認的操作。
  • 未簽名開發建置不能安裝更新。準備簽名發布時必須向 mygo.json 提供可信發布者公鑰及更新源;此實現不會自行生成信任金鑰。

場景清單 ​

下表“UI”表示場景在 TestDesignV2Scenes 中有原生狀態測試資料,不代表設計交互或視覺佈局已完整實現。請結合評審後續工作閱讀相關行。服務測試使用注入的 HTTP 響應,不等於雲端驗收。下列無目錄檔案名相對於 internal/app/。保留目錄的原始中文標題,便於按 ID 與源目錄直接比對。

場景目錄原始標題實現證據/外部驗收
P01连接 · AccessKeyconnection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P02连接 · 授权码connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P03所有 Bucketbrowser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04对象浏览与详情browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P05上传队列 · 完整状态transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
P06下载队列transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D01连接历史connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
D02退出连接确认connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
D03收藏管理browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
D04创建 Bucketbucket_tools.go, internal/ossclient/buckets.goUI;請求/範圍/分頁測試;真實 Bucket 待驗收
D05公开访问风险bucket_tools.go, internal/ossclient/buckets.goUI;請求/範圍/分頁測試;真實 Bucket 待驗收
D06Bucket 访问权限bucket_tools.go, internal/ossclient/buckets.goUI;請求/範圍/分頁測試;真實 Bucket 待驗收
D07删除空 Bucketbucket_tools.go, internal/ossclient/buckets.goUI;請求/範圍/分頁測試;真實 Bucket 待驗收
D08上传碎片管理bucket_tools.go, internal/ossclient/buckets.goUI;請求/範圍/分頁測試;真實 Bucket 待驗收
D09删除上传碎片bucket_tools.go, internal/ossclient/buckets.goUI;請求/範圍/分頁測試;真實 Bucket 待驗收
D10新建目录object_actions.go, object_clipboard.goUI;遞迴計劃和部分修改測試;真實修改待驗收
D11选择上传文件与目录internal/desktop, transfer_actions.go, internal/transfers/download_plan.go原生委託;作業系統選擇器/定位及取消待驗收
D12下载保存位置internal/desktop, transfer_actions.go, internal/transfers/download_plan.go原生委託;作業系統選擇器/定位及取消待驗收
D13文件与目录重命名object_actions.go, object_clipboard.goUI;遞迴計劃和部分修改測試;真實修改待驗收
D14跨桶批量粘贴确认object_actions.go, object_clipboard.goUI;遞迴計劃和部分修改測試;真實修改待驗收
D15复制移动进度transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D16同名覆盖确认object_actions.go, object_clipboard.goUI;遞迴計劃和部分修改測試;真實修改待驗收
D17批量删除确认object_actions.go, object_clipboard.goUI;遞迴計劃和部分修改測試;真實修改待驗收
D18对象访问权限object_actions.go, internal/ossclient/objects.goUI;屬性/ACL 保留測試;真實更新待驗收
D19HTTP 头与元数据object_actions.go, internal/ossclient/objects.goUI;屬性/ACL 保留測試;真實更新待驗收
D20创建软链接internal/ossclient/advanced.go, object_actions.goUI;軟連結、範圍及恢復狀態/請求測試;真實恢復待驗收
D21恢复归档对象internal/ossclient/advanced.go, object_actions.goUI;軟連結、範圍及恢復狀態/請求測試;真實恢復待驗收
D22批量恢复归档internal/ossclient/advanced.go, object_actions.goUI;軟連結、範圍及恢復狀態/請求測試;真實恢復待驗收
D23文本与代码编辑object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試
D24图片预览object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試
D25视频预览preview_media.goUI 回退;原生播放器/編解碼器及外部打開待驗收
D26文档预览降级preview_media.goUI 回退;原生播放器/編解碼器及外部打開待驗收
D27不支持的文件格式object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試
D28保存前差异对比object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試
D29归档预览检查internal/ossclient/advanced.go, object_actions.goUI;軟連結、範圍及恢復狀態/請求測試;真實恢復待驗收
D31私有对象签名地址internal/ossclient/share.go, object_actions.goUI;二維碼精確解碼、URL 編碼、ACL 及簽名範圍測試;網域綁定待驗收
D32邮件发送下载地址mail_tools.go, internal/mailUI;地址/標頭/取消測試;真實 TLS 投遞待驗收
D33简化 Policy 授权ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D34创建子用户并授权ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D35子用户授权结果ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D36设置 · 传输settings_controls.go, system_settings.go, internal/diagnosticsUI;設定校驗和日誌輪轉測試
D37目录临时授权码ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D38RAM 用户管理ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D39编辑 RAM 用户资料ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D40删除 RAM 用户确认ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D41AccessKey 管理ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D42禁用 AccessKey 确认ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D43删除 AccessKey 确认ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D44移除未完成任务transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D45清空传输队列transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D46传输详情与错误诊断transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D47下载本地位置internal/desktop, transfer_actions.go, internal/transfers/download_plan.go原生委託;作業系統選擇器/定位及取消待驗收
D48SMTP 测试确认mail_tools.go, internal/mailUI;地址/標頭/取消測試;真實 TLS 投遞待驗收
D49诊断控制台settings_controls.go, system_settings.go, internal/diagnosticsUI;設定校驗和日誌輪轉測試
D50关于与检查更新update.go, internal/releases, internal/updatesUI;發布解析測試;簽名更新源/安裝/重新啟動待驗收
D51版本发布说明update.go, internal/releases, internal/updatesUI;發布解析測試;簽名更新源/安裝/重新啟動待驗收
D52安装与重启确认update.go, internal/releases, internal/updatesUI;發布解析測試;簽名更新源/安裝/重新啟動待驗收
D53应用与系统菜单menu.go, commands()原生委託;編輯/視窗/應用角色;平台選單待驗收
D54单实例窗口激活main.go, application.openWindow原生委託;實例鎖和激活;平台待驗收
D55外部帮助交接window.openDocs, desktop.OpenURL原生委託;URL 策略測試;瀏覽器交接待驗收
P01-stsSTS 临时凭证connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P01-customize自定义 Endpointconnection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P01-cnameCNAME 自定义域连接connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P01-privateLinkPrivateLink 私网连接connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P01-invalid连接失败与保留输入connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P01-loading正在建立连接connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P02-expired授权码过期connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
P03-gridBucket 图标视图browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P03-empty没有 Bucketbrowser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P03-readonly临时只读会话browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-grid对象网格视图browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-search前缀搜索与无匹配browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-empty空目录browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-loading目录正在加载browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-offline网络中断与重试browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-forbidden无权读取当前目录browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-multi多选与批量操作browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-context对象右键菜单browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-large大列表与增量列举browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P04-clipboard复制移动待粘贴browser_view.go, browser_controls.go, saved_locations.goUI;分頁/導航測試;真實 OSS 待驗收
P06-failed下载失败与恢复transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D01-clear清空连接历史确认connection_view.go, connection_actions.go, saved_locations.goUI;授權、範圍和連接測試;真實登入/憑據庫待驗收
D07-nonemptyBucket 非空删除失败bucket_tools.go, internal/ossclient/buckets.goUI;請求/範圍/分頁測試;真實 Bucket 待驗收
D15-partial复制移动部分失败transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D17-partial批量删除部分失败object_actions.go, object_clipboard.goUI;遞迴計劃和部分修改測試;真實修改待驗收
D19-batch批量编辑元数据object_actions.go, internal/ossclient/objects.goUI;屬性/ACL 保留測試;真實更新待驗收
D23-readonly只读代码预览object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試
D23-oversize文本超过预览上限object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試
D25-audio音频预览preview_media.goUI 回退;原生播放器/編解碼器及外部打開待驗收
D25-flvFLV 视频预览preview_media.goUI 回退;原生播放器/編解碼器及外部打開待驗收
D27-error预览加载失败object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試
D31-public公开对象地址internal/ossclient/share.go, object_actions.goUI;二維碼精確解碼、URL 編碼、ACL 及簽名範圍測試;網域綁定待驗收
D31-domain自定义域与二维码internal/ossclient/share.go, object_actions.goUI;二維碼精確解碼、URL 編碼、ACL 及簽名範圍測試;網域綁定待驗收
D33-group授权给用户组ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D33-role授权给角色ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D33-policyPolicy JSON 预览编辑ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D35-mailfailure授权成功但邮件失败ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D36-system设置 · 系统settings_controls.go, system_settings.go, internal/diagnosticsUI;設定校驗和日誌輪轉測試
D36-mail设置 · 邮件settings_controls.go, system_settings.go, internal/diagnosticsUI;設定校驗和日誌輪轉測試
D36-logs设置 · 日志settings_controls.go, system_settings.go, internal/diagnosticsUI;設定校驗和日誌輪轉測試
D36-other设置 · 其他settings_controls.go, system_settings.go, internal/diagnosticsUI;設定校驗和日誌輪轉測試
D37-generated临时授权码已生成ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D38-forbiddenRAM 列表权限不足ram_tools.go, internal/identityUI;簽名 RPC、分頁、範圍和授權碼測試;真實 RAM/STS 待驗收
D46-crcCRC 校验不匹配transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D46-changed源对象变更重新下载transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D46-disk本地写入失败诊断transfer_controls.go, internal/transfersUI;佇列、恢復、校驗和及路徑測試;真實傳輸待驗收
D50-downloading更新下载进度update.go, internal/releases, internal/updatesUI;發布解析測試;簽名更新源/安裝/重新啟動待驗收
D50-failed更新下载失败update.go, internal/releases, internal/updatesUI;發布解析測試;簽名更新源/安裝/重新啟動待驗收
D50-finished更新已就绪update.go, internal/releases, internal/updatesUI;發布解析測試;簽名更新源/安裝/重新啟動待驗收
E03放弃未保存修改确认object_actions.go, preview_media.goUI;大小/完整性、未修改/Diff 及放棄測試

協議參考 ​

OSS 儲存類型、請求者付費、RestoreObject 和 PutSymlink。暫存更新器遵循固定 MyGo v0.4.8 模塊的清單/簽名格式;改編程式碼在 internal/updates/LICENSE 中保留 MIT 許可聲明。

OSS Browser 的獨立重構版本。