suzmii
86d55a1aba
补资源筛选浮层的 PRD 条款与共享决策记录
...
- docs/prd/...PRD-2026-07-20.md:§5.2.4 新增资源筛选条款——按需弹出的独立浮层取代常驻筛选条(常驻条已移除、不回归)、固定三个字段(查找素材 / 所在区域 / 自定义标签)与各自口径、不提供「状态」字段及其理由、区域既是筛选维度也是画布当前栏目且必须是同一份状态、两种区域语义共用一份过滤实现、浮层与搜索浮层同锚点不得同时展开、关闭与高亮口径、筛选后空态要求
- docs/project-memory/shared-memory/decision-log.md:新增 2026-09-11 决策条目,按体例写背景 / 决策 / 影响范围 / 验证方式 / 关联文档
- decision-log 如实记录:已落地的部分是共享外壳、纯函数与 AGC 侧组件样式(各自独立提交),而 index.tsx 的 3 处接线因该文件被另一条线占用尚未提交,并写明接线完成后应补记——不把未落地行为写成已实现
- decision-log 记录「状态」字段不做的三条证据链(manifest 资产无 status、资源投影无 status、唯二候选任务状态与附件导入状态在投影里已被上游过滤故恒单值),以及区域用派生而非新增第二份 state、「全部区域」复用既有所有资源分组网格的取舍
- decision-log 记录 PlatformResourceFilterBar 不碰不扩的理由(横向常驻条且被主站参考图弹窗在役使用)与既有断言零放宽、三条变异验证实测结果
2026-09-11 20:04:33 +08:00
suzmii
ee8e12783e
校准读时重写的文档口径:写回一次 + 丢弃可见,并补一条口径变更决策
...
- decision-log 2026-09-10 那条把「不写迁移脚本、不删除、不重置」改成当前事实:读时会把 legacy 分区(art / code)坐标归并到新分区并写回一次 sidecar(revision +1);不写迁移脚本、不重置坐标位置;但无法归并的坐标会被跳过(跳过条数在画布提示条上可见)。
- 新增 2026-09-11 decision-log 条目:背景(审计查实「读时原地重写」112 条 + 27%(66 + 16)丢弃与旧文档字面冲突)、决策(用户选 A:保留重写、不静默、改文档)、影响范围、验证方式(含两处变异验证)、关联文档。
- 技术方案【GameAgent资源自由画板与快速编辑】:同一句改成读路径写回一次 + 无法归并的坐标被跳过且可在提示条 / data-resource-canvas-layout-* 上读到。
- PRD【项目开发工作台】第 325 行同一句同样校准(避免权威文档里留着「不写迁移脚本、不删除、不重置」这句会误导排障)。
- 测试用例【AGC资源工作台V3端到端验收】S21 台账那格补上「存量项目第一次打开时读路径也会写回一次、并给一次性提示条」,避免把 revision 从 1 开始误判成异常。
- 行为、sidecar schema(v1)与跨端契约均未改动。
2026-09-11 19:19:51 +08:00
suzmii
d9822eca05
同步资源分类口径的文档:读显示 / 写回两个口径、别名表大小写不敏感
...
- PRD 的分类取值段落改为「读显示 / 写回两个口径」:写清跨端同构的两个函数名、Agent 投影不许再透传落盘 `category`、面板保存回传落盘原值、别名表大小写不敏感(`"UI"`、`font`)
- 技术方案(AI游戏创作智能体App实施计划)的 manifest `category` 段落同步:`"UI" → ui-interaction`、`font → document`,其余映射不到的 kind 才落 `unclassified`;补上两侧口径函数名
- `pitfalls.md`:把「补别名只影响新登记,不重算 `category`」这条坑更新为已修形态,并写明「同 kind 重登记禁止动 `category`」这条必须保留的不变量;「读时重派生」条目补上两个口径不能混用与跨端必须同构两条
- `pitfalls.md` 新增条目「大写 `UI` / `font` 不在 alias 表 → 8 条真机 UI 资产永远落「待归类」,且自愈救不回」,记录成因链与三层守卫
- `decision-log.md` 新增决策条目:口径拆两半、自愈不下沉到反序列化、别名表大小写不敏感、重登记重派生但不抹掉显式分类,含变异验证与影响范围
- 端到端验收用例文档的 S5 栏目归属补一句:判定「编辑标签后分类有没有被改」必须比 manifest 文件,不能拿自愈后的显示值当落盘值
2026-09-11 18:49:32 +08:00
suzmii
6bdc8bbd93
AGC 资源分类面板改为「编辑素材标签」:只编辑标签、分类不再有手动入口
...
- ResourceClassificationPanel.tsx:面板改为只编辑 manifest `assets[].tags`,移除分类 6 类
chip 那一排;标题与 aria-label 改「编辑素材标签」,副标题由资源路径改为素材名
(`localPath` 的 basename,仓库没有独立显示名字段)
- ResourceClassificationPanel.tsx:标签状态由「整段逗号分隔字符串」改为字符串数组,
每个已有标签渲染成自带删除按钮的胶囊 pill;保存时把未落成 pill 的输入尾巴一并切分,
归一化仍走 `normalizeGameCreationAppAssetTags`,回车 / 中英文逗号 / 顿号提交方式不变
- ResourceClassificationPanel.tsx:写入命令 `category` 是必填,读一次当前权威值并
在保存时原样回传,保证「只改标签」不漂移分类;底部按钮「保存」改「保存标签」,
删除资源入口按既有保留(截图未画,但它是唯一的资源删除入口)
- resourceClassificationTagPanel.css:新增标签 pill 样式,删除按钮嵌在 pill 内部
(视觉图标 11px、热区 32×32、负外边距抵消不撑高 pill);若第二处出现带删除按钮的
标签 pill,抽到 `packages/shared` 做 `PlatformRemovableTagPill`,不要复制这份实现
- index.tsx:资源卡工具条入口 label / title / 文案由「分类与标签」改「编辑标签」,
与面板标题一致(否则入口写着分类、打开的是纯标签面板)
- tests/resourceClassificationPanel.test.tsx:断言对齐截图文案、逐个 pill 自带删除、
点某个 × 只删对应标签、aria-label 可区分、保存 payload 的 tags 数组与 category 原样回传、
取消不写盘、入口 label 与面板标题一致、删除热区不小于 32px
- 文档:PRD §5.3「分类取值优先级」改写为当前状态(分类没有用户手动设置入口、
该面板只编辑标签),并新增 decision-log 条目记录本次产品决策与「用户手动设
category 的能力就此移除」这一事实
- 说明:截图文案(编辑素材标签 / 新增标签,多个用逗号分隔 / 保存标签)在全仓检索
无命中,属仓库之外来源,本次按用户截图对齐,不是 PRD 明文
2026-09-11 15:34:36 +08:00
suzmii
399fcacb8e
同步删除栏目大纲导航的权威文档:PRD 与技术方案改成总览卡片/所有资源/下一页口径
...
- decision-log.md:新增「删除资源画布左侧的栏目大纲悬浮导航」决策,先记录查证结论(decision-log / pitfalls / PRD / 技术方案里此前只有要求保留该导航的条文,没有任何删除决策,本次是新决策),再写决策、语义变更、不做什么与变异验证结果。
- PRD:§阶段说明与 §7.2 验收两条不再写"大纲展示全部栏目""通过栏目大纲和滚轮访问全部栏目",改为栏目大纲由「资源总览」的栏目缩略卡片承载、切栏目走总览卡片 +「所有资源」入口 + 页内「下一页」。
- 技术方案:目标、操作边界与验收共五处删掉"栏目大纲悬浮在画布左侧/只显示图标和栏目名称""点击大纲切页""分页大纲以悬浮 Dock 展示全部栏目"等条文,改成当前状态(左侧不再有悬浮导航)。
- pitfalls.md:补记一条 jsdom 坑——栏目页 fit key 需要非零可测量尺寸,jsdom 下恒为 0,所以"总览→栏目"往返会重新适配视口;进入栏目后应恢复上次 viewport 的用例在 jsdom 里必须避免这种往返,不要误判成产品回归、也不要去改 fit 逻辑。
2026-09-11 13:54:27 +08:00
suzmii
66bb240115
进项目时按内存 registry 核对预览活体,陈旧记录不再冒充可运行预览
...
- 新增 features/app-shell/sessionPreview.ts 的 resolveSessionPreviewOnProjectOpen:进入项目时问一次 get_local_game_preview_status(内存 registry 是活体的唯一真相),确实 running 才把它作为本次会话的预览;记录写着 running 而 registry 没有活体时判为陈旧,复用现役 stop_local_game_preview 把落盘记录对齐成 stopped,并同时把会话 manifest 按真相投影成 stopped(否则运行入口会继续拿着打不开的 URL 渲染运行画面)。
- useHomeProjectCreation.ts:enterProjectDevelopment 改为 async,先做这次核对再进工作台,并按核对结果决定会话预览与 manifest 投影;三个调用点(新建项目、创建项目、打开项目)都改为 await。
- preview.rs:同一个项目重启预览时,旧 registry 身份的收尾不再覆盖刚落盘的 running——只有当旧预览属于**另一个项目**时才替它收尾。此前同项目重启会把刚写进去的 running 覆盖成 stopped,下次进项目便丢掉"预览在跑"这条事实(记录反方向失真)。
- preview.rs:stop_local_game_preview_for_root 在没有活体可停、但落盘记录仍是 running 时也把记录收尾成 stopped(stop 的语义变成"真的停干净,包括记录"),因此陈旧记录既可由进入项目触发对齐,也可由用户显式停止对齐。
- tests/project.rs:新增三条 Rust 定向用例——同项目重启后记录仍为 running 且端口是新预览的;换项目启动时旧项目记录写 stopped、新项目写 running;registry 无活体而记录写着 running 时 stop 会把记录对齐成 stopped。
- tests/sessionPreview.test.ts(新增):五条用例覆盖活体优先、陈旧记录对齐并投影、registry 不可读按没有在跑处理、记录本来不是 running 时不发多余停止命令、无 invoke 时零请求。变异验证:把活体核对去掉(直接信落盘记录)→「registry 里没有活体时不给会话预览」与「registry 不可读」两条立即红灯(已实测)。
- project-development.suite.ts:把「打开项目不查预览状态」那条断言改为「恰好核对一次预览活体」,并保留邻近的 start_local_game_preview 必须为 0 的断言——被新行为取代的是"从不核验","开项目不偷偷启动预览"这条原意一字未改。
- PRD §4.1:状态机按当前实现改写(进入项目一律落到 resource-overview;run 的自动进入只认内存 registry 的活体确认;落盘 preview 是记录而非活体,陈旧记录不触发切换也不参与渲染),并把退出收尾一并写进该节说明。
2026-09-11 12:27:31 +08:00
suzmii
364492de37
Revert "文档同步:资源管理页改为栏目分页纵向滚动网格"
...
This reverts commit c2b851cc36 .
2026-09-11 11:07:59 +08:00
suzmii
c2b851cc36
文档同步:资源管理页改为栏目分页纵向滚动网格
...
- PRD §3.3:栏目页改为纵向滚动网格,顺序由 sidecar 记录的 (y, x, resourceId) 读序推出,新增列数控件与栏目内拖拽排序条文
- PRD §3.3.1:三阶段改写为当前形态(本体卡保留;阶段二改为栏目分页网格;阶段三改为未排序栏目的初始顺序派生)
- PRD §3.3.2:可见性预取口径改为以栏目滚动容器为交叉根
- PRD §5.2:实现状态与字段语义改为「x / y 只承载栏目内顺序」,新增顺序阶梯、已排序栏目新资源追加末尾、列数偏好与关系说明条文
- PRD §5.2.4:删除 viewport、wheel、拖动改写坐标等画布条文,改为网格、列数与拖拽排序
- PRD §5.2.5:手动拖动合同改为拖拽排序合同
- PRD §5.2.6:删除资源依赖关系图层整节
- PRD §7.2:验收改为顺序持久化;§7.3 依赖关系图验收整节删除;§7.5 重写为栏目分页纵向网格验收,新增「纵向滚动无横向溢出」与「列数被记住」两条判据
- PRD §6/§8:分阶段范围与非目标同步
- 技术方案:原《GameAgent资源自由画板与快速编辑》改名为《AGC资源管理页纵向网格与排序》,重写为当前形态(页面形态、栏目内顺序、列数偏好、拖拽排序、关系说明),保留权威数据、焦点竞态与派生编辑条文
- 实施计划:资源卡与资源管理页边界改为栏目网格、顺序落盘、列数偏好与滚动容器可见性
- decision-log:新增 2026-09-11 决策(含用户明确判断优于 PRD 的事实依据,以及有意推翻 1da7dc62a)
- pitfalls:整体改写「AGC 资源管理页真正自制的交互面」条目
- docs/README.md 与 document-map.md:更新改名后的专题文档入口
2026-09-11 11:00:31 +08:00
suzmii
30acd9552c
写入侧产出 canonical kind,读取侧读时重派生自愈存量分类
...
- 写入侧:infer_canvas_export_asset_kind 直接返回 canonical kind(animation → character-animation、ui → ui-design、asset → image),不再让别名表替写入侧兜底
- 写入侧补防御性归一,并新增 canvas_export_asset_kind_is_always_canonical 逐分支钉死返回值为 canonical、且不再写回 ui / animation / asset
- 读取侧:gameCreationAppAssetCategory 加收窄覆盖规则——落盘 category 为 unclassified 且 kind 能派生出明确非 unclassified 分类时采用派生值
- 该规则不写迁移脚本、永久自愈:真机 57 条 ui 资产待归类从 58 降到 1,UI 交互从 2 升到 59,仅剩 code 类 game-entry 在待归类(分类表设计口径)
- 收窄条件把覆盖窗口压到最小:落盘值本身是明确分类时仍信任落盘值(保留用户在分类与标签面板手动设置的权威性)
- kind 派生结果本身即 unclassified 的 image / video / code / publication-material 不受影响,补断言钉住
- resourceCardPreviewRealManifest 由「记录缺陷」改为「守住修复」:断言归位后的 58 → 1 分布与 57 条 ui 全部落 UI 交互
- PRD 与 pitfalls 补记分类取值优先级、读时自愈规则、唯一盲区(手动把可明确分类的资产设为待归类会被覆盖)及写入侧 canonical 化
2026-09-10 23:15:04 +08:00
suzmii
df4168f71f
记录资源预览读取分支与版本时间的排查口径
...
- PRD 明确队列身份用的 category 是资源分区栏目、只用于前端去重与布局,不作为 IPC 入参
- PRD 明确 read_local_project_media_preview 的线上 category 是原生读取分支,只接受 art / audio,须由卡片预览类型派生
- pitfalls 新增「媒体预览 category 是读取分支而非栏目」:记录阶段二把用例一起改成错误行为导致门禁失守,并写明现有守卫位置与实测失败口径
- pitfalls 新增「versions[].createdAt 是 Unix 秒」:记录夹具与实现一起错导致门禁失真,以及已知秒值断言年月日的验收口径
2026-09-10 21:05:30 +08:00
suzmii
6f09bf3a00
AGC 资源画布分区轴改为 6 类资产分类加独立项目版本栏目(阶段一:契约与读时映射)
...
- 契约层新增 PROJECT_RESOURCE_CANVAS_SECTIONS:6 类资产分类加末尾独立的项目版本栏目,并补齐分区类型
- 契约层新增旧四 / 五栏目取值白名单、Persisted 联合类型与两个类型守卫
- Rust 契约 ProjectResourceCanvasSection 增补 7 个现行 variant 并保留 Code / Art 旧值,新增同名分区常量
- Rust 契约不升 game-creator-resource-layout.v1 版本、不给未知 section 加兜底,损坏 payload 继续失败关闭
- 新增 resourceCanvasSectionMapping.ts:旧栏目到现行分区的映射表、回落栏目与读时归一化
- 读时归一化只改写 section,x / y / manuallyPlaced 原样保留,无法归并时沿用既有丢弃行为
- resourceProjectionModel 把扩展名分类器更名为 projectedResourceKind 并收敛为准入与显示类型
- resourceProjectionModel 新增 projectResourceCanvasCategory:项目版本独立成栏、Agent 回执归文档、其余按资产分类
- Rust resource_layout 测试夹具改用现行分区值,并新增既有旧 section sidecar 仍可读取的用例
- 新增 resourceCanvasSectionMapping 测试:旧值乘目标栏目矩阵覆盖坐标保留、section 改写、changed 判定与回落列不变量
- projectResourceProjectionModel 测试新增 7 栏分区投影、项目版本独立成栏与只登记游戏代码项目落在待归类
- 同步 PRD、GameAgent 资源自由画板技术方案、AGC 实施计划与共享记忆决策记录的分区口径
2026-09-10 19:57:34 +08:00
suzmii
48700083a3
补齐 AGC V3 资源口径与环境约束的权威文档
...
- PRD §5.4 版本记录补充"只允许追加"的唯一例外:用户显式确认的连带删除,并写明放行集合按写入前 manifest 求值、被放行版本不得进入追加段
- decision-log 新增三条 2026-09-10 定稿:版本绑定恒等化并撤回运行期资源观察侧车;素材删除新口径(三分支 + 可选连带删除版本);资源画布交互 1:1 复刻美术画布(取消资源详情面板与全屏编辑路由、复用共享组件以可选 prop opt-in、AGC 宿主自备 chrome 样式)
- pitfalls 新增四条:新工作树的 cargo 必须在 npm ci 之后跑;残留 dev stack 会拖死 Rust 门禁;改共享美术画布组件时 AGC 门禁覆盖不到它自己的测试;AGC 侧没有 image-canvas-editor__* chrome 样式
2026-09-10 14:26:57 +08:00
suzmii
4c935ba219
同步 asset-canvas 退役后的文档现状并迁移仍有效合同
...
- 新增 docs/technical/【技术方案】AGC资源派生与非破坏性编辑合同-2026-09-09.md,承接阶段一合同第 16 节与第 5 节的现役条款,改写为 derive + editKind='image-reference' 口径
- 图片画布编辑器前端拆分计划新增"共享画布合同"一节,承接共享包目录与依赖方向、禁止复制的验收门、Host Port 边界、共享 chrome 与主题、图片能力与后续分期
- GameAgent资源自由画板与快速编辑删除精修草稿、最终图事务、精修来源规范化、事务恢复对账、批量导入与失败任务归档等退役章节,改写目标与操作边界,新增"编辑结果投影与焦点竞态"一节,并更新验证命令
- App实施计划删除阶段一至五的草稿画布描述,改写为共享画布源码与资源派生闭环现状,修正主视窗状态、适配器与派生提交条款
- 项目开发工作台 PRD 更新主视窗状态机与 ProjectWorkbenchViewState,移除 asset-canvas 状态
- decision-log 追加 2026-09-09 asset-canvas 整体退役决策(含保留项、路由口径、临时白名单与存量数据处置)
- pitfalls 删除草稿 CAS、素材保存区、正式素材提交原子性、生成账本与 upload ticket 五条退役条目,修正仍有效条目的关联文件与 legacyPrefix 描述
2026-09-09 20:28:22 +08:00
suzmii
6d3d24df5e
合并 #283 资源画本画布实现
...
合入 feat/game-agent-canvas-resource-workbench-v2 的完整画布实现:资源画本控制器/模型/视口/布局、转场层、资源分页缓存与自动聚焦修复、资源总览卡片预览懒加载
保留本分支已有的聊天素材引用改动(引用输入区、@ 引用按钮、运行画面点选)
解决 index.tsx 状态声明与 pitfalls.md 文档冲突;styles.css 去重后仅保留一份画本视觉层
2026-09-09 15:43:32 +08:00
k88936
01e057d047
Feat/AGC对话渲染markdown ( #281 )
...
Project CI / Frontend tests (push) Successful in 3m37s
Project CI / Backend tests (push) Failing after 4m13s
Project CI / Native shell tests (push) Failing after 4m11s
Project CI / Repository checks (push) Successful in 3m24s
before:

after:


考虑到在AGC场景下不是很有理由, 暂不实现链接, 图片, 内嵌html
---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: #281
Co-authored-by: 王德宇 <kvtodev@outlook.com >
Co-committed-by: 王德宇 <kvtodev@outlook.com >
2026-09-08 22:03:37 +08:00
suzmii
1347b4a743
去除资源区滚轮切换栏目
...
Project CI / Frontend tests (pull_request) Failing after 1m49s
Project CI / Native shell tests (pull_request) Failing after 4m32s
Project CI / Repository checks (pull_request) Failing after 9s
Project CI / Backend tests (pull_request) Failing after 9s
删除普通滚轮切页状态、队列与节流控制逻辑
资源区普通滚轮只平移当前视图,缩放继续由 Ctrl 或 Cmd 配合滚轮触发
同步更新 PRD、技术方案与控制器测试
2026-09-08 12:12:29 +08:00
kdletters
071faa482c
统一 Rust 与 TypeScript 格式化门禁
...
纳入 AGC Cargo workspace 的统一 rustfmt 检查与格式化入口
完成项目 TypeScript/Prettier 与 Rust 全量格式化
修复 Pingora expected executable 门禁的空白敏感误报
同步开发运维文档与 AGC skill pack 格式化忽略规则
2026-09-01 16:28:34 +08:00
suzmii
1c2f82e246
优化 Game Agent 资源画布展示与默认缩放 ( #208 )
...
Project CI / Backend tests (push) Successful in 9m53s
Project CI / Repository checks (push) Successful in 3m11s
Project CI / Frontend tests (push) Successful in 4m59s
Project CI / Native shell tests (push) Successful in 19m18s
## 变更内容
### 1. 普通资源画布隐藏游戏代码
- 资源画布的大纲、分页和卡片展示不再显示“游戏代码”栏目。
- 保留内部完整的五栏目布局契约,避免已有代码资源坐标被重写。
- 补充回归测试,确认游戏代码不会出现在普通资源画布中,且代码端点不可见时不会渲染对应依赖边。
### 2. 增加资源类型角标
- 资源卡右上角增加类型角标,用于快速识别资源类型。
- 类型从既有资源投影字段推导,覆盖图片、SVG、视频、音频、文档、任务产物、Agent 回执、项目版本等类型,并为未知类型兜底。
- 该能力仅用于前端展示,不新增后端字段或修改资源投影契约。
### 3. 限制默认自动适配缩放
- 画布首次自动适配和显式复位时的默认最大缩放统一限制为 `1.5`,避免内容较少或只有一个资源时卡片被放得过大。
- 该限制对设计文档、美术、音频、游戏代码、项目版本全部资源栏目生效。
- 用户主动缩放仍沿用现有上限,不受默认适配上限影响。
- 用户调整后的画布缩放会按排序模式和栏目保留;切换到其他栏目再返回后,仍恢复用户调整后的 viewport,而不是重新自动放大。
## 兼容性
- 不修改后端 API、SpacetimeDB schema 或 `/api/external/v1`。
- 资源类型角标是展示层推导逻辑,不改变资源数据结构。
- 内部布局仍保留游戏代码栏目契约,已有布局数据不需要迁移。
## 验证
- `resourceCanvasLayoutModel.test.ts`
- `project-development.suite.ts` 相关 App Surface 用例
- `npm run typecheck`
- `npm run check:encoding`
- Prettier 相关文件检查
- `git diff --check`
历史分支检查不替代最新 head CI;PR 更新后将以最新 CI 结果为准。
---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/208
Co-authored-by: 董羽秦 <suzmii@qq.com >
Co-committed-by: 董羽秦 <suzmii@qq.com >
2026-08-31 14:36:58 +08:00
kdletters
969dcc0272
整理项目文档并统一当前口径
...
- 删除过时 PRD、设计、计划和退役文档
- 收口文档索引、产品基线、玩法链路和共享记忆
- 清理历史决策重复内容、断链和本机路径
- 更新 AGC Runtime、Provider、后端与运维当前约束
2026-08-26 10:11:46 +08:00
kdletters
c09a511aaa
Codex/fix pr188 191 ci ( #194 )
...
Project CI / Repository checks (push) Successful in 2m24s
Project CI / Frontend tests (push) Successful in 2m54s
Project CI / Backend tests (push) Successful in 4m33s
Project CI / Native shell tests (push) Successful in 14m29s
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/194
Co-authored-by: kdletters <kdletters@qq.com >
Co-committed-by: kdletters <kdletters@qq.com >
2026-08-25 15:41:55 +08:00
wuxiangwanzi
5802048c30
Codex/agent chat layout fix ( #193 )
...
Project CI / Repository checks (push) Failing after 4m12s
Project CI / Frontend tests (push) Failing after 4m18s
Project CI / Native shell tests (push) Failing after 5m9s
Project CI / Backend tests (push) Successful in 5m45s
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/193
Co-authored-by: 五香丸子 <15518898337@163.com >
Co-committed-by: 五香丸子 <15518898337@163.com >
2026-08-25 12:36:51 +08:00
wuxiangwanzi
07afb6d753
增加资源页签新资源红点 ( #191 )
...
Project CI / Native shell tests (push) Failing after 5m3s
Project CI / Backend tests (push) Successful in 6m1s
Project CI / Repository checks (push) Failing after 3m53s
Project CI / Frontend tests (push) Failing after 3m20s
按项目会话追踪非当前栏目新增资源并在切换后清除
为页签名称添加红点样式和无障碍标识
补充资源页签行为测试及工作台文档
---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/191
Co-authored-by: 五香丸子 <15518898337@163.com >
Co-committed-by: 五香丸子 <15518898337@163.com >
2026-08-25 10:48:12 +08:00
wuxiangwanzi
77b090fc77
隐藏首页模糊项目提示 ( #188 )
...
Project CI / Frontend tests (push) Failing after 3m2s
Project CI / Backend tests (push) Successful in 4m40s
Project CI / Repository checks (push) Failing after 2m37s
Project CI / Native shell tests (push) Failing after 4m13s
首页默认项目状态改为空
移除最近项目标题下的解释性副标题
补充首页视觉规则并更新界面测试
---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/188
Co-authored-by: 五香丸子 <15518898337@163.com >
Co-committed-by: 五香丸子 <15518898337@163.com >
2026-08-25 10:47:20 +08:00
suzmii
532c6d51fd
完善 Game Agent 资源画布与图片精修生成事务 ( #181 )
...
Project CI / Repository checks (push) Successful in 4m5s
Project CI / Frontend tests (push) Successful in 4m48s
Project CI / Backend tests (push) Successful in 6m6s
Project CI / Native shell tests (push) Successful in 15m24s
## 背景
本合并请求整合 Game Agent 资源管理的栏目分页自由画布,以及图片持续精修、候选生成和本地恢复事务。
当前远端比较基线:
- base:`master` @ `b00a3f80576949567bf3320f0c6c92b4ed0a649d`
- head:`codex/game-agent-resource-section-pages` @ `5795d2f9b8797c342dcf2920ccefec2a3ff3f472`
- 相对 base:28 commits、33 files(`+3746 / -1333`)
## 主要改动
### 资源管理分页自由画布
- 固定展示“设计文档 → 美术资源 → 音乐音效 → 游戏代码 → 项目版本”五个栏目;空栏目仍可从悬浮 Dock 打开空画布。
- `按依赖` 与 `按类型` 共用栏目分页画布;每个“排序模式 + 栏目”组合独立保存 viewport。
- 普通滚轮使用有界意图队列切换栏目;Ctrl/Meta + 滚轮以指针为锚点缩放;空白拖拽可沿 x/y 无限平移,不以资源 extent 作为导航边界。
- 资源卡支持拖拽布局与一次 CAS 持久化;切页、排序切换和卸载会统一取消拖拽及 pointer capture。
- 资源详情为非模态独立卡片:打开、切换或关闭详情不卸载背景画布、资源卡或依赖连线,也不重置 viewport、搜索或排序状态。
- 顶部已移除“生成视频 / 生成音效 / 生成背景音乐 / 新增 UI 设计”的手动入口;保留播放、未完成编辑恢复、排序和画布复位,以及资源详情中的既有编辑动作。
### 图片持续精修与生成事务
- 图片资源可进入唯一活动精修草稿,支持原生批量导入、图片下方快速编辑卡、候选图层、任务侧栏和“设为最终图”。
- 生成成功只合并候选图层和 generation 权威事实,不以全量 hydrate 覆盖生成期间的本地编辑。
- 候选媒体、图层和公开 generation 记录写入并回读成功后,才推进私有 `candidate-ready`。
- 候选确认接入 Surface 保存 FIFO 与重新打开 hydrate;revision-sensitive 操作等待确认屏障。
- 失败归档和正式图提交采用可恢复中间态,避免中断后出现幽灵任务、重复 revision 或不一致的正式资产。
### 合同与文档
- `acknowledgeCandidateLayers`、`importLocalImages`、`archiveFailedGeneration` 为必选 Host Port;不支持的宿主返回结构化 `unsupported-capability`。
- 同步更新 TypeScript / Rust 合同、Tauri command 可达性、PRD、技术方案与项目共享记忆。
- 明确资源栏目无限画布合同:普通平移不夹取;资源 extent、图片测量、布局变更和 resize 不得重置用户 viewport;仅首次可测量布局与显式复位按真实卡片包围盒适配内容。
## 验证
CI run [#1290 ](https://git.genarrative.world/git/GenarrativeAI/Genarrative/actions/runs/1290 ) 针对当前 head 已完成且四项均成功:
- [x] Repository checks
- [x] Frontend tests(235 test files、3166 tests passed;App Surface 410 tests)
- [x] Backend tests
- [x] Native shell tests
另有本地定向检查:
- [x] `npm run agc:typecheck`
- [x] 资源画布、App Surface、Asset Canvas 与资源实时集成定向回归
- [x] Rust 候选确认、候选中断恢复、失败归档与恢复定向测试
- [x] `cargo fmt --check`
- [x] `npm run check:encoding`
- [x] `git diff --check`
## 评审 provenance
- review #247、#248、#252 都针对旧 head,当前在 Gitea 中均标记为 stale;不将其写作“已处理 #247”或当前 head 的评审结论。
- review #253 针对旧 `5456a1d…` head,提出 PRD 退役入口、共享 pitfalls 的 extent 旧合同和 PR 正文事实更新三项 P2;对应文档已在 `5795d2f…` head 修复并推送。
- 早期由 PR #176 引入的候选持久化、归档、Host Port 与快速编辑卡问题,当前已在 base/head 中具备对应修复,不作为本轮重复阻断项。
- 当前 head 仍需新的、针对最新提交的审批;历史 stale review 不能替代当前 head approval。
## 影响范围
- 修改 AI 游戏创作 App 的资源管理、图片精修、Tauri 本地持久化与恢复语义,以及共享合同和权威文档。
- 会调整本地资源布局、精修 draft 和私有 generation ledger 的状态机。
- 不修改 SpacetimeDB schema,不新增或变更 `/api/external/v1` 路由。
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/181
Co-authored-by: suzmii <suzmii@qq.com >
Co-committed-by: suzmii <suzmii@qq.com >
2026-08-24 20:42:58 +08:00
suzmii
15a524e6e0
Feat: 完善 Game Agent 资源画板与图片精修链路 ( #176 )
...
Project CI / Native shell tests (push) Successful in 13m19s
Project CI / Repository checks (push) Successful in 3m31s
Project CI / Frontend tests (push) Successful in 4m16s
Project CI / Backend tests (push) Successful in 5m7s
## 摘要
本 PR 将 Game Agent 资源管理页升级为真实自由画板,并打通图片资源的快速编辑、候选生成、导入、失败归档与正式图提交流程。
同时补齐图片精修的事务恢复、候选身份校验、生成中任务恢复、鉴权重试,以及“设为最终图”后游戏运行资源的稳定刷新链路。
## 主要变更
### 1. 资源管理页自由画板
- “按依赖”视图改为统一自由画板:
- 支持指针拖拽平移
- 滚轮平移
- `Ctrl / Meta + wheel` 以指针为锚点缩放
- 支持复位和全量资源适配
- 增加隐藏导航边界:
- 边界由全量资源世界范围加安全留白决定
- 搜索过滤不会缩小边界
- 用户不能把全部资源拖出可视区域
- 图片资源卡按真实宽高比展示:
- 预览读取真实 `pixelWidth / pixelHeight`
- 布局碰撞、世界范围、依赖连线共同消费同一资源矩形
- 非图片资源保持固定卡片尺寸
- 点击资源改为非模态详情卡:
- 背景画板不卸载
- 顶部工具栏、搜索、排序、缩放状态不重置
- 图片详情不再进入全屏页
### 2. 图片资源快速编辑与精修画布
- 点击图片资源后直接显示快速编辑卡。
- 图片精修顶栏收敛为紧凑操作:
- 返回
- 导入
- 定位当前最终图
- 撤销 / 重做
- 删除、修改、设为最终图进入选中图片的上下文卡片。
- 快速编辑生成不再阻塞整张画布:
- 立即创建生成占位卡
- 占位卡可拖动并持久化位置
- 右上任务列表显示排队 / 生成中 / 完成 / 失败状态
- 任务列表可折叠
- 生成失败只影响当前任务:
- 保留失败占位
- 可显式归档失败任务
- `reconciliation-required` 任务不允许删除
- 原生多选图片导入:
- 使用 Tauri 原生文件选择
- 后端批量安全读取
- 一次推进草稿 revision
- 失败不留下半导入状态
### 3. 候选图与正式图事务
- 生成成功只加入草稿私有候选层,不直接修改 manifest。
- “设为最终图”是唯一正式资源切换入口。
- refine 保持原 asset ID 和来源身份,不追加新的业务资产身份。
- 正式文件使用不可变路径:
```text
assets/canvas/<name>--<commitId>.png
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/176
Co-authored-by: suzmii <suzmii@qq.com >
Co-committed-by: suzmii <suzmii@qq.com >
2026-08-24 16:27:33 +08:00
wuxiangwanzi
44ee28c43f
让运行视窗按内容自适应 ( #180 )
...
Project CI / Repository checks (push) Successful in 3m38s
Project CI / Frontend tests (push) Successful in 3m55s
Project CI / Backend tests (push) Successful in 4m7s
Project CI / Native shell tests (push) Failing after 9m31s
为本地预览注入只读尺寸桥并校验 iframe 消息来源
按可用区域等比缩放完整游戏画面并移除横纵滚动条
补充前端与 Rust 回归测试并同步运行视窗文档
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/180
Co-authored-by: 五香丸子 <15518898337@163.com >
Co-committed-by: 五香丸子 <15518898337@163.com >
2026-08-24 10:54:06 +08:00
wuxiangwanzi
e3b229ac78
调整 Agent 对话栏 Logo 与工作台布局 ( #183 )
...
Project CI / Repository checks (push) Successful in 5m34s
Project CI / Frontend tests (push) Successful in 6m5s
Project CI / Backend tests (push) Successful in 12m14s
Project CI / Native shell tests (push) Successful in 22m32s
放大 Agent 栏产品 Logo 并接入正式钱包入口
移除工作台外层卡片圆角与间距,改用区域底色和竖向分隔
将资源依赖/类型切换整理为联通分段按钮
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/183
Co-authored-by: 五香丸子 <15518898337@163.com >
Co-committed-by: 五香丸子 <15518898337@163.com >
2026-08-23 22:09:47 +08:00
wuxiangwanzi
b1ee6d816d
优化Agent对话用户消息气泡 ( #179 )
...
Project CI / Repository checks (push) Successful in 3m42s
Project CI / Frontend tests (push) Successful in 4m19s
Project CI / Backend tests (push) Successful in 5m16s
Project CI / Native shell tests (push) Successful in 15m27s
将用户消息改为右侧气泡显示。
统一项目对话、Agent聊天页和Agent对话弹窗样式。
补充消息宽度、换行、圆角和移动端友好布局。
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/179
Co-authored-by: 五香丸子 <15518898337@163.com >
Co-committed-by: 五香丸子 <15518898337@163.com >
2026-08-23 19:06:05 +08:00
wuxiangwanzi
814fc343e2
优化客户端主界面表现 ( #177 )
...
Project CI / Repository checks (push) Successful in 4m11s
Project CI / Frontend tests (push) Successful in 5m52s
Project CI / Backend tests (push) Successful in 5m59s
Project CI / Native shell tests (push) Successful in 12m34s
调整首页品牌区、创作类型按钮和输入框视觉比例。
重做最近项目横向信息卡并展示类型、更新时间和进度。
补充本地项目修改时间只读字段及首页回归测试。
同步更新 GameAgent 客户端实施文档。
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/177
Co-authored-by: 五香丸子 <15518898337@163.com >
Co-committed-by: 五香丸子 <15518898337@163.com >
2026-08-23 16:50:14 +08:00
kdletters
81a35e0bff
让AGC登录后直接使用平台编辑器API
...
普通客户端使用陶泥儿登录态访问站内编辑器、素材与生成状态路由
隔离standalone高级模式的External URL与Developer API Key配置
同步GUI与Runner的平台会话、可信服务origin和鉴权代际
绑定生成账本owner并阻断登出或换号后的旧请求落盘
修正本地图片上传确认、项目资源登记和sourceReferenceId链路
区分401登录刷新与403权限不足并保留原幂等恢复语义
补充后端客户端幂等命名空间、稳定结果投影和图集请求头
更新AGC界面测试、Rust契约测试及项目技术文档
2026-08-17 10:43:08 +08:00
kdletters
9f5c84ee71
重构AGC项目管理界面
...
Project CI / Repository checks (push) Successful in 1m40s
Project CI / Frontend tests (push) Successful in 3m27s
Project CI / Native shell tests (push) Successful in 14m20s
Project CI / Backend tests (push) Successful in 4m17s
参考成熟桌面项目管理器重构紧凑项目表、搜索和行尾菜单
支持Windows路径及Godot根目录和一层子目录工程识别与导入
修复1280×720页面溢出、列表滚动和末行菜单裁切
补充项目页回归测试、PRD、技术方案和项目记忆
2026-08-15 11:43:58 +08:00
kdletters
578f8019fc
优化AGC项目入口并识别Godot工作区
...
Project CI / Repository checks (push) Successful in 1m14s
Project CI / Frontend tests (push) Successful in 3m9s
Project CI / Native shell tests (push) Successful in 14m6s
Project CI / Backend tests (push) Successful in 3m58s
项目页只保留打开项目和新建项目并统一原生目录选择
按根目录及一层子目录识别project.godot并记录相对Godot根
保持.agent位于用户选择的工作区根并补齐Windows构建门禁
补充响应式布局、测试、技术方案和共享项目记忆
2026-08-14 21:53:43 +08:00
kdletters
8e78be766e
修复AGC运行与首板版本登记
...
Project CI / Repository checks (push) Successful in 55s
Project CI / Frontend tests (push) Successful in 3m26s
Project CI / Backend tests (push) Successful in 3m59s
Project CI / Native shell tests (push) Failing after 11m44s
修复旧模型定价覆盖缺少ElevenLabs音效模型导致启动恢复持续失败
支持对话框回车发送并保留Shift换行和输入法组合态
重试受理后立即清理旧失败投影并展示新Run状态
阻止Windows后台Codex探测反复弹出控制台窗口
首板试玩持久回执通过后幂等登记初始项目版本
补充定价、交互、Windows与版本登记回归测试和文档
2026-08-13 20:11:51 +08:00
kdletters
5e16837f3d
恢复游戏创作 External Editor 配置入口
...
Project CI / Repository checks (push) Successful in 1m34s
Project CI / Frontend tests (push) Successful in 3m5s
Project CI / Backend tests (push) Successful in 4m12s
Project CI / Native shell tests (push) Failing after 10m55s
普通 Launcher、开发工作台和独立 game-chat 统一显示 External Editor 配置。
补齐配置可见性、密码输入和持久化回归测试。
同步配置静态门禁、PRD、技术合同与共享决策。
2026-08-12 18:43:55 +08:00
menghao
8e3d9991fa
完成资源管理的功能修复 ( #154 )
...
Project CI / Repository checks (push) Successful in 1m5s
Project CI / Frontend tests (push) Successful in 3m0s
Project CI / Backend tests (push) Successful in 4m4s
Project CI / Native shell tests (push) Successful in 14m17s
实现资源卡本体化与图片视频音频预览播放
实现四个资源分区独立高度与内外滚动
实现依赖视图确定性聚类与拓扑变化重排
补齐布局、SVG、AppSurface、性能和媒体回归
同步工作台PRD、技术方案与项目共享记忆
---------
Co-authored-by: kdletters <kdletters@qq.com >
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/154
Co-authored-by: menghao <mh18530625731@163.com >
Co-committed-by: menghao <mh18530625731@163.com >
2026-08-12 13:14:55 +08:00
menghao
03a4410272
game agent无限画布开发 ( #136 )
...
Project CI / Native shell tests (push) Failing after 11m56s
Project CI / Repository checks (push) Successful in 1m5s
Project CI / Frontend tests (push) Successful in 3m20s
Project CI / Backend tests (push) Successful in 4m1s
主要工作是共享同一套“画布内核与通用 UI 源码”,网站和 Tauri 只分别实现宿主适配层。
---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/136
Co-authored-by: menghao <mh18530625731@163.com >
Co-committed-by: menghao <mh18530625731@163.com >
2026-08-12 10:54:16 +08:00
kdletters
755bf80858
支持 AI 游戏创作打开现有 Godot 项目
...
Project CI / Repository checks (push) Failing after 44s
Project CI / Native shell tests (push) Failing after 1m42s
Project CI / Frontend tests (push) Successful in 2m50s
Project CI / Backend tests (push) Successful in 3m41s
新增 Godot 项目选择、校验、导入和项目上下文切换入口。
只在所选项目根保留 .agent 元数据,并让总控使用标准运行档。
修复发布版原生 API 访问和 React runtime 重复加载问题。
收紧 Provider 工具 Schema 子集并增加回归门禁。
补充 Rust、前端测试及 PRD、技术方案和共享决策记录。
2026-08-11 13:25:29 +08:00
menghao
62e0fe94ef
资源卡依赖关系及类型分类预览 ( #129 )
...
Project CI / Repository checks (push) Successful in 1m2s
Project CI / Frontend tests (push) Successful in 3m5s
Project CI / Backend tests (push) Successful in 3m41s
Project CI / Native shell tests (push) Successful in 13m7s
完成资源卡按类型和按依赖分类展现的功能
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/129
Co-authored-by: menghao <mh18530625731@163.com >
Co-committed-by: menghao <mh18530625731@163.com >
2026-08-05 19:15:46 +08:00
menghao
216407d93e
实现资源画布布局持久化 ( #116 )
...
Project CI / Frontend tests (push) Failing after 20s
Project CI / Repository checks (push) Successful in 1m2s
Project CI / Backend tests (push) Successful in 2m59s
Project CI / Native shell tests (push) Successful in 11m58s
冻结资源画布布局数据与 CAS 合同
实现双模式本地 sidecar 安全读写
接入二维拖动、默认排版和跨重启恢复
补齐并发冲突、安全边界和界面测试
同步技术文档与共享决策
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/116
Reviewed-by: 段舒康 <kdletters@qq.com >
Co-authored-by: menghao <mh18530625731@163.com >
Co-committed-by: menghao <mh18530625731@163.com >
2026-07-31 12:00:48 +08:00
AIGameCreator App
3a8dff1404
完善游戏创作工作台与智能体恢复闭环
...
实现横屏项目开发工作台、资源画布、Supervisor 对话与专业 Agent 状态展示
修复总控和专业 Agent 重试、Runner 接管、历史成果跨 Run 持久展示及确认流程
补齐画板图片产物合同、客户端内预览、共享契约与安全边界
新增完整回归测试、工作台 PRD、技术方案与待解决事项
2026-07-20 19:48:05 +08:00
kdletters
d73dc02f4d
合并 master 到跳一跳分支
...
合入 origin/master 最新变更
解决跳一跳提示词测试与图集去背冲突
2026-06-26 21:30:26 +08:00
kdletters
c206ca7c33
固定绿幕提示词颜色
...
统一绿幕生成提示词使用 #00FF00 / RGB(0,255,0)
补充暗绿绿幕去背兜底并覆盖聚焦测试
同步玩法、后端与项目记忆文档口径
2026-06-22 15:11:33 +08:00
wuxiangwanzi
6ee55707e1
统一跳一跳三维地块与落点判定
...
修正跳一跳长按起跳预测为真实脚点指向下一块顶面中心
统一前端指示器飞行动画与后端顶面 footprint 判定
调整 Three.js 方块贴图与角色顶面投影表现
补充跳一跳 UV 图集切片与运行态规则文档
2026-06-12 22:42:39 +08:00
lhk229
09ef80cd23
PRD补充自适应blob+gradient算法说明,保留AI prompt侧4x3 UV布局描述
2026-06-10 19:56:57 +08:00
kdletters
68dd48be42
修复跳一跳运行态方向与贴图刷新
...
恢复跳一跳运行态拖拽方向提交与后端方向落点计算
补齐平台六面贴图刷新签名和对应前端测试
更新跳一跳玩法链路文档与PRD方向契约说明
2026-06-09 17:42:24 +08:00
wuxiangwanzi
a0473771f1
fix: 优化跳一跳运行态与地块资源
2026-06-09 01:28:30 +08:00
kdletters
78791af424
修正跳一跳排行榜展示名
...
新增排行榜 displayName 契约并在 api-server 出口补齐展示名
调整跳一跳结果页和运行态排行榜只显示 displayName
补充禁止展示 user_id 的前后端回归测试
更新跳一跳 PRD、后端契约文档和 Hermes 决策记录
2026-06-07 16:27:14 +08:00
kdletters
b2543ba8a2
Merge branch 'master' into codex/puzzle-clear-template-runtime-fixes
2026-06-06 20:01:52 +08:00
kdletters
2db3a6e185
Merge remote-tracking branch 'origin/master' into dev-jenken
...
# Conflicts:
# .hermes/shared-memory/pitfalls.md
# server-rs/crates/api-server/src/modules/jump_hop.rs
# src/components/rpg-entry/RpgEntryFlowShell.agent.interaction.test.tsx
# src/services/jump-hop/jumpHopClient.test.ts
2026-06-05 23:59:40 +08:00
JenkenB
27b30f974b
Update spacetime-client bindings and frontend
...
Large update across server and web clients: regenerated/added many spacetime-client module bindings and input types (including new delete/work_delete input types and numerous procedure/reducer files), updates to server-rs API modules (bark_battle, jump_hop, wooden_fish, auth, module-runtime and shared contracts), and fixes in module-runtime behavior and domain logic. Frontend changes include new/updated components and tests (creative audio helpers, bark-battle/jump-hop/wooden-fish clients and views, unified generation pages, RPG entry views, and runtime shells), plus CSS and service updates. Documentation and operational notes updated (.hermes pitfalls and multiple PRD/docs) to cover daily-task refresh, banner asset fallback, recommend-key bug, and other platform behaviors. Tests and verification steps added/updated alongside these changes.
2026-06-04 22:44:19 +08:00