把运行页签的资源信息搬到画布选中工具条,两处共用一份只读字段

- 新增「信息」动作:排在「@引用」之后、「编辑标签」之前,点开非模态信息浮层,再点一次即收起(aria-pressed 反映开合)
- 新增只读字段组件 ResourceInfoFieldsView(ResourceInfoPanelView.tsx),运行页签的「信息展示」与画布浮层共用,字段清单只在 resolveResourceInfoFieldRows 单点定义
- 字段口径:名称 / 路径 / 类型 + 只读分类与标签(分类取画布栏目口径,标签为空时给「暂无标签」),刻意不含来源任务、资产 ID 等 manifest 内部标识
- 浮层 chrome 与快速编辑浮层同族(同一锚点、同档圆角与阴影),样式落在 resourceCanvasChrome.css;关闭入口三处:动作按钮、面板关闭按钮、画布浮层统一的 Esc / 点边界外
- 关闭判据收口:resolveResourceCanvasQuickEditDismissOpen 更名为 resolveResourceCanvasFloatingPanelDismissOpen、参数改为 isFloatingPanelOpen,宿主把「快速编辑开」与「信息开」合成一个布尔
- .game-resource-info-panel 补进 RESOURCE_CANVAS_INTERACTION_SELECTOR,否则点在只读字段值上会被判成点画布空白而清掉选中
- 换选 / 清空选中 / 切项目时信息浮层自动收起:在选中派生处按 selectedResourceId 收口,不在每个重置点各补一行
- 测试:新增 resourceCanvasInfoModel 三条与「信息面板在画布浮层与运行页签里渲染同一份只读字段」(工具条顺序、开合、关闭按钮只收面板、点画布以外收起、Esc 连工具条一起收、运行页签字段逐行相同);resourceCanvasFloatingDismiss 的判据用例与交互选择器夹具改为浮层通用口径
- resourceCanvasChrome.css 的字段排版收在浮层选择器下,不跨上下文改运行页签的字号与列宽
- decision-log 新增一条:记录这次对 Issue #309 C3「取消资源详情面板」的有意局部回退(只回退「看信息」,不恢复可编辑详情面板与全屏编辑路由),并登记需要同步的 C3 引用位置
This commit is contained in:
2026-09-11 16:42:40 +08:00
parent d80011656b
commit 082d8d62de
9 changed files with 627 additions and 54 deletions
@@ -8364,3 +8364,15 @@ CI 上 `background_agent_runtime_recovers_stale_running_before_pending_task` 在
- 不做什么:不新增替代导航、不做栏目下拉/分段控件、不改 `resourceBookModel``main / child + category` 目标模型、不改每「排序模式 + 栏目」独立 viewport 的既有约定、不动 sidecar schema 与跨端契约。
- 验证方式:新增反向守卫用例(`资源栏目大纲` 标签、`.game-resource-outline` 类名、对应 `<nav>` 都不再渲染)与切栏目链路用例(总览卡片进空栏目 → 下一页切下一个 → 标题栏「资源总览」返回 → 「所有资源」入口往返);变异验证:把 `<nav aria-label="资源栏目大纲">` 加回去 → 守卫红灯,只加回类名 → 守卫同样红灯(均已实测)。既有断言未放宽:栏目顺序断言改钉在总览缩略卡片的 `aria-label` 序列上(第 0 张「所有资源」+ 固定七栏目),只服务导航的断言按「四不写」直接删除。
- 关联文档:`docs/prd/【AI游戏创作】项目开发工作台PRD-2026-07-20.md`:56 / :512)、`docs/technical/【技术方案】GameAgent资源自由画板与快速编辑-2026-08-20.md`:5 / :33 / :53 / :54 / :57 / :102 / :103)、`docs/project-memory/shared-memory/pitfalls.md`
## 2026-09-11 只读资源信息回归画布:把运行页签的「信息展示」搬到选中工具条,不恢复 C3 的可编辑详情面板
- 背景:用户提「信息需要迁移」。Issue #309**C3「取消资源详情面板与全屏编辑路由」保持有效**,但它取消的是**可编辑详情面板 + 全屏编辑路由**;被取消时一并失去的是「选中资源后就地看一眼它是什么」的能力——`ProjectDevelopmentView` 的「信息展示」区块至今只挂在**运行页签**(`game-run-panels` 的左格),用户在资源画布上选中一张卡时看不到任何只读信息。本次是**用户直接要求下的一次有意局部回退**:只把「看信息」这条能力搬回画布,编辑能力仍不回来。
- 决策一:**只读信息浮层**`ResourceInfoPanelView`)挂在选中资源工具条的 `extraActions`,位置固定在「@引用」之后、「编辑标签」之前;非模态 `role="dialog" aria-label="资源信息"`,chrome 与快速编辑浮层同族(同一锚点、同一档圆角与阴影,样式在 `resourceCanvasChrome.css`),关闭入口三处:工具条「信息」按钮再点一次(`aria-pressed` 反映开合)、面板右上角「关闭信息面板」、以及画布浮层统一的 Esc / 点边界外。**不新建全屏路由、不新建编辑表单、不新增 IPC / Tauri 命令**。
- 决策二:**一处字段、两处渲染**。只读字段组件 `ResourceInfoFieldsView``apps/ai-game-creator-shell/src/view/project-development/ResourceInfoPanelView.tsx`)同时供运行页签的「信息展示」与画布浮层使用,字段清单只在 `resolveResourceInfoFieldRows``features/resource-canvas/resourceCanvasInfoModel.ts`)定义:**名称 / 路径 / 类型 + 只读的分类与标签**。分类取画布栏目口径(与卡片类型徽标、资源书栏目一致,`version` 单独给「项目版本」),标签只读拼接 manifest `tags`、为空时给「暂无标签」而不是留白。**刻意不含「来源任务」「资产 ID」「producer」等 manifest 内部标识**——面板是给创作者看的事实卡,不是调试视图;要加字段必须先改这条口径。
- 语义变更(用户已确认接受):画布上多出一个只读浮层;运行页签的「信息展示」仍在(不制造信息盲区),只是换了共用组件渲染,**字段从 3 项变成 5 项**(多出只读的分类与标签)。
- 关闭时机沿用既有画布口径,不新造第二套:`resolveResourceCanvasQuickEditDismissOpen` 更名为 `resolveResourceCanvasFloatingPanelDismissOpen`、判据参数更名为 `isFloatingPanelOpen`(宿主把「快速编辑开」与「信息开」合成一个布尔),Esc / 点画布以外既收浮层也清选中工具条;`.game-resource-info-panel` 补进 `RESOURCE_CANVAS_INTERACTION_SELECTOR`,否则点在只读字段值上会被判成「点画布空白」而清掉选中。换选 / 清空选中 / 切项目时信息浮层自动收起(在选中派生处按 `selectedResourceId` 收口,不在每个重置点各补一行)。
- 不做什么:不恢复 C3 取消的可编辑详情面板与全屏编辑路由;不加「打开详情」按钮;不在浮层里做重命名 / 改分类 / 改标签(这些仍是工具条 `编辑标签` / `重命名` 与分类标签面板的职责);不引入第三套筛选或分类文案。
- 验证方式:新增 `resourceCanvasInfoModel` 三条(字段固定 5 项且不含内部标识、栏目口径与标签拼接、锚点与快速编辑浮层同一条几何);AGC 子集新增「信息面板在画布浮层与运行页签里渲染同一份只读字段」(工具条顺序、开合、X 只收面板、点画布以外收起、Esc 连工具条一起收、运行页签字段逐行相同),并把 `resourceCanvasFloatingDismiss` 的判据用例与交互选择器夹具改成浮层通用口径。变异验证:把信息浮层从关闭判据里摘掉 → 「点画布以外」红灯;把运行页签换回三字段内联 `<dl>` → 两处字段比对红灯(均已实测)。
- 需要同步的既有文档(**本次只报告,不改远程 Issue**):`docs/technical/【测试用例】AGC资源工作台V3端到端验收-2026-09-11.md` :51S9 行「按 #309 C3 判…真正入口是 `选中资源:<栏目> <名>`」)与 :248(差异表同行)需要补一句「只读信息浮层已于 2026-09-11 回归,C3 取消的仍只是可编辑详情面板与全屏编辑路由」;`docs/prd/【AI游戏创作】项目开发工作台PRD-2026-07-20.md` :61–62 的「打开详情」按钮口径仍与 #309 C3 冲突,本次未动。
- 关联:Issue #309C3)、`apps/ai-game-creator-shell/src/view/project-development/{index.tsx,ResourceInfoPanelView.tsx}``apps/ai-game-creator-shell/src/features/resource-canvas/{resourceCanvasInfoModel.ts,resourceCanvasFocusModel.ts,resourceCanvasChrome.css}`