复核批量标签的原生写盘与跨窗口路径并记入里程碑
Project CI / AI game creator shell Rust crates (push) Successful in 1m30s
Project CI / AI game creator shell Rust smoke (push) Successful in 1m59s
Project CI / AI game creator shell Rust lane 2/2 (push) Has been cancelled
Project CI / Backend tests (push) Has been cancelled
Project CI / Frontend tests (push) Has been cancelled
Project CI / Repository checks (push) Has been cancelled
Project CI / AI game creator shell web tests (push) Has been cancelled
Project CI / AI game creator shell Rust lane 1/2 (push) Has been cancelled
Project CI / Native shell tests (push) Has been cancelled

- 原生写盘:add_local_project_resource_tags 单次 add_manifest_asset_tags_at(整批校验/一次 manifest 写入/一次 revision/审计记录),前端 CAS 带项目身份与 revision,失败保留草稿
- 跨窗口:handleResourceBatchTagsSaved 用 epoch+路径+项目 ID 丢弃迟到回包,然后调用共用的 reloadManifestAfterAssetCommand 回读广播
- 相关定向用例 24 passed;里程碑记录该复核与仍未验收的真机边界
This commit is contained in:
kdletters
2026-09-29 00:47:54 +08:00
parent c30248c4ad
commit e39abe8b61
@@ -27,7 +27,7 @@
- [x] 空操作、重复标签和重复 ID 不重复写入;最大 200 项有界。
- [x] 保存锁定、失败草稿保留、切项目迟到响应正确处理。
- [x] 单素材标签、菜单角标和画布布局回归通过。
- [ ] 真实客户端点击、原生 IPC 写盘与跨窗口操作验收。
- [ ] 真实客户端点击、原生 IPC 写盘与跨窗口操作验收。(2026-09-29 代码复核:**原生 IPC 写盘**这条合同成立——`add_local_project_resource_tags` 只做一次 `add_manifest_asset_tags_at`(整批校验、一次 manifest 写入、一次 revision 推进、附 `asset.tags.append` 审计记录),刻意不循环调用单素材命令;前端 `ResourceClassificationPanel` 先读 `get_local_game_project_revision` 再带 `expectedProjectId`/`expectedProjectRevision` 做 CAS,失败(含冲突)保留草稿可重试。**跨窗口**这半走的是与单素材写入同一条回读/广播路径:`handleResourceBatchTagsSaved` 按 `epoch + projectPath + projectId` 丢弃迟到的旧项目回包,然后调用共用的 `reloadManifestAfterAssetCommand(committedProjectRevision, …)`,没有另起一套只在当前窗口生效的更新。仍未验收:真机上点击、落盘与另一窗口即时可见。)
## 证据