账户素材超过 500 项时,AGC 曾在筛选和分页前直接拒绝整个素材库,导致查询、预览和指定 ID 导入不可用。本 PR 移除账户素材总量及账户分页 offset=500 的客户端限制,允许大库继续使用现有客户端筛选分页。
Closes #549
## 实现范围
- 移除账户素材库原始条数超过 500 的拒绝,以及 MCP schema、桥接、Runtime 执行层和原生函数 strict schema 的账户分页 offset 上限。
- 保留单页最多 100 项、导入批次数量与下载体积、媒体类型、账号归属、权限及会话校验。项目文件查询的 offset 上限和绑定项目画布资源的数量上限保持原有契约。
- 账户素材 UI 列表、预览及指定 ID 导入同步恢复可用。
- 修复真实账户导入时,在持有身份租约期间重复读取会话互斥锁造成的自锁;写入前校验和覆盖写入过程的身份租约继续保留。
- 同步工具说明、技术方案与排障记录。服务端仍返回全库,传输和解析开销另由 #574 跟进,不作为本 PR 的验收前置条件。
## 验收
以下已完成项表示本地自动化与代码核查通过,不代表线上真实账号验收。
- [x] 覆盖 500/501 项素材库解析;503 张静态图片及 1 项不支持媒体的模拟素材库可正常工作。
- [x] MCP 查询支持 limit=1、folderId、query 和 offset>500;nextOffset、末页、越界空页及默认每页 100 项符合现有契约。
- [x] 直接调用 Runtime 执行层时 offset=501 可查询;MCP schema 与参数校验一致,仍拒绝负数、非整数 offset 和 limit>100。这项不覆盖 Runtime 下发给模型的原生函数 schema。
- [x] Runtime 原生函数 asset.library.list 的 strict schema 允许 offset>500;实际下发的完整函数参数已验证 offset=501/600/10000、null 可用,负数/非整数偏移及超界页长拒绝。补丁已提交并推送:41e2cc0b5。
- [x] 共用读取链路的 UI 素材列表和预览在大库场景可用。
- [x] 指定有效 assetId 完成实际下载、本地文件写入及 manifest/revision 更新;重复导入保持幂等。
- [x] 模拟素材库中的不存在 ID 和不支持媒体被拒绝,且不改变 manifest;返回 Agent 的当前页元数据不泄露媒体地址、对象键或凭据。
- [x] 会话退出、账号切换、凭据刷新、身份租约和取消写入相关定向测试通过。
- [x] 工具说明、技术方案和共享排障文档已同步;项目文件与画布资源原有独立边界已核对保留。
- [ ] 真实平台账号联调:超过 500 项素材时查询、预览和导入,以及实际删除、跨账号、无权限素材的拒绝行为。
## 验证证据
- 账户素材、导入、参数校验、项目文件、取消写入与平台会话定向 Rust 测试:33 项通过。
- runtime_prompt_bundle_build:17 项通过;prompt_source_boundaries:6 项通过。合计 56 项通过。
- Rust 格式检查、npm run check:encoding、npm run check:doc-index、git diff --check 通过。
- 以上 Rust 测试在快进 master 前运行;快进至 44f415d05 后已核对本次代码及工具文本与已测试版本一致,并再次通过编码、文档索引、差异检查和提交时 Rust 格式检查。
- 未运行全量测试,未做真实线上账号或付费操作验证。
初次修复提交:697f421e570606d0519f952a0a5689b5f639f902;原生函数 schema 审查补丁:41e2cc0b57b7f9f5faf06546c1f6108e88380ac3(已推送)。
- 审查补丁验证:24 项定向 Rust 测试通过,覆盖全部 agent_native_tools 测试、大库查询/导入和修正后的旧流式结果测试;格式、编码、文档索引、差异检查、提交及推送检查通过。本轮未重复全量测试,未做真实模型或线上账号调用。
Reviewed-on: #573
文档总览
本目录只把当前实现依据、公开契约和仍在维护的专题合同作为入口。代码、当前文档与项目记忆冲突时,以当前代码和最新专题文档为准;未列入下表的材料不作为实现依据。
必读入口
文档治理
- 文档生命周期与现状索引:说明现行规范、历史记录、待复核文档、开放事项和活动计划的分类边界。
当前产品与平台
- 当前产品与工程约束:现役入口、账号钱包、UI 和后端分层。
- 平台入口与玩法链路:平台壳、图片画布、游戏分发与在线游玩合同;网站游戏评分与评价已实现并通过本地验证,待用户验收,未部署。
- 网站游戏评分与评价里程碑:唯一评价、编辑预填、4000 字符、公共分页与平均分/人数的验收边界与本地证据。
- 后台游戏评价管理合同:查找、分页、隐藏/恢复/删除、必填原因、统计与个人状态联动;已实现并通过本地验证,待用户验收,未部署。
- 后台游戏评价管理里程碑与实施计划:单里程碑范围、接口/schema 边界及验收要求;本地证据已回写主规范。
- 游戏广场评分展示合同、里程碑与实施计划:已实现并通过本地定向验证,待用户验收,未部署;公开列表/详情携带真实摘要,卡片显示一位小数均分与人数,复用有效评价统计。
- 外部 OpenAPI 与 API Key 接入方案
- 外部 MCP 语义工具说明与参数设计:15 个新增语义工具与全部原工具并存,复用现有 External API;包含工具说明、action、参数、幂等和兼容合同。
- External v1 OpenAPI:公开 HTTP 契约唯一机器可读来源。
- External v1 游戏场景生成路由:external v1 结构化场景生成专用路由与 AGC 美术包背景阶段迁移合同。
AI 游戏创作与 Agent Runtime
-
客户端本地埋点与主站入库契约:本地 12 类事件采集、每 15 分钟上传、私有事件表、确认后清理与后台明细查询已完成隔离环境验收;不扩充采集范围、不做加密,未部署生产。配置要求及验证边界见第 13 节。
-
AGC 资源 kind 枚举化契约:GameCreationApp 资源 kind 的 Rust enum、ts-rs 绑定、Unknown 可观测性和 shell 内重构边界。
-
策划 Agent 生产迁移与工作区浏览:已完成;当前策划入口统一使用 Design Agent,采用阶段审批与用户工作区文件浏览。旧 V1/V2 会话、命令、专用展示和测试不再作为兼容目标。
-
LLM 累计额度结算:Router 累计额度、首次基线与原子钱包结算。
-
Responses API 与 Agents SDK 迁移评估:评估 AGC 核心 Runtime 是否迁移到外部 Agent SDK 及其边界。
-
AI 游戏创作智能体 App 实施计划:当前 DirectProject、受控语义工具、UI workflow、资源和运行时合同。
-
AGC 后端框架整理与演进路线:共享 Runtime、本地执行宿主、云端控制面、领域/平台适配器及分阶段收口边界。
-
AGC 随包资源 staging 归位:随包资源改由准备步骤在
tauri dev|build之前一次性生成、build.rs退化为校验者;含缓存与原子性合同、入口接线、验收判据与里程碑拆分。 -
AGC 异步操作可恢复闭环:认证响应体、最近项目检查和首页自动创建的超时、逐项恢复与跨页防重合同。
-
AGC 客户端稳定版生命周期大切换:统一 operation、认证/Runner、项目入口、本地恢复和 dev-stack 身份边界。
-
策划会话 Runtime V2 接入与旧链路退役方案:历史方案,仅用于追溯 V2 的实现与退役过程,不作为当前实现依据。
-
DirectProject Codex 原始历史与异常恢复:原始 Responses item 持久化、线程注入与异常回合收尾。
-
DirectProject 对话历史单一事实源:AGC 项目开发对话只以项目对话历史与运行态事件为真相源,聊天投影不落盘。
-
DirectProject 独立聊天容器与工作台钱包布局:DirectProject 与 Supervisor 等路径分容器,钱包入口由项目工作台布局独立承载。
-
UI 工作流检查点用追加式 JSONL 日志:UI 设计文档的 Agent 工作流用文档旁追加式 JSONL 记录步骤完成,替代每步一个 sidecar 状态机。
-
[退役 AGC 项目对话斜杠命令](./adr/【ADR】退役AGC项目对话斜杠命令与终端swarm chat入口-2026-09-22.md):AGC 项目对话与终端 swarm chat 均不再解析斜杠命令,终端聊天入口一并退役;实现、测试、门禁与文档承诺全部删除,命令 id 与权限位作为项目策略词汇表保留。
-
引用候选由宿主注入:引用输入区只接受宿主注入的引用 provider,素材选择面板独立成组件,附件芯片成为本轮附件唯一事实源。
-
DirectProject 命令接单化:命令只负责接单、事件流回答整轮结果;拒单前置、失败后置。
-
DirectProject 命令接单化实施计划:四步落地顺序、每步不变式与验收;四步均已落地。
-
DirectProject 命令入队化与待发消息队列归宿主:命令只负责入队,放行归 Thread Manager;待发消息队列作为运行态事件归宿主、前端只投影;CLI 直连入口与调用身份守卫一并退役。
-
DirectProject 命令入队化与待发消息队列归宿主实施计划:五步落地顺序、每步不变式与验收;待实施。
-
GameAgent 对话工具调用卡片:把右侧对话里的执行命令 / 写文件投影成 Codex 风格可折叠卡片,含采集、独立历史文件、事件字段与回读契约。
-
DirectProject 客户端 Skill 与 MCP 扩展导入方案:客户端扩展导入、按独立 Skill/MCP 拆分、命名、启用和启动时注入边界。
-
AGC 通用插件宿主与编辑器适配:通用插件宿主、SDK、权限审计、UI 挂载和 Cocos 编辑器适配边界。
-
[AGC Unity 编辑器插件接入](./technical/【技术方案】AGC Unity编辑器插件接入-2026-09-18.md):DotCraft Attach 来源、Windows Mono 接入、项目身份、执行回执和分发边界。
-
AGC Godot 编辑器插件接入:GDExtension 聚焦加载、安装资源、受管描述文件、UID 归属、GDScript 回执与 Runner 边界。
-
AGC Cocos Creator 编辑器桥接模块:独立 crate、feature 开关、目标校验与 Windows 注入边界。
-
AGC 客户端更新检查与下载:启动版本检测、固定 dev 服务、OSS 清单与官网最新客户端下载。
-
AGC 总版本号与发号:客户端版本号收口到 OSS
agc/global-version.json,统一构建一次发号供各渠道共用,渠道高水位降级为断言。 -
AGC 模板库与模板建项:
templates/前缀的模板库契约、下载安装与「用模板建项目」链路。 -
AGC 模板包组织指南:模板 ZIP 的根目录结构、Cocos 工程保留项、禁止放入的内容、封面与体积上限、版本不可变与发布前自检。
-
DirectProject 附件按 AGC 主实施计划的 canonical
userItem合同传递;旧 sidecar 路径映射方案已归历史,见文档生命周期索引。 -
项目开发工作台 PRD:当前工作台页面和验收边界。
-
AGC 错误报告与诊断上传:当前进程错误事件、应用级日志和管理员查看器合同。
-
立项策划 Agent(Fast GDD):历史 V1 方案,仅用于追溯;旧
project-supervisor-plan/project-planning入口、审批、恢复和测试均已删除。 -
AGC 栏目画布底部工具栏入口矩阵:栏目画布底部工具栏的入口矩阵、可用条件与验收口径。
-
AGC 资源工作台三处交互收口改动前对照图:任务侧栏两个关闭入口、左侧贴边折叠把手、顶部播放按钮居中悬浮三张改动前截图与问题说明。
-
AGC 资源派生与非破坏性编辑合同:AGC 全类型现有资源非破坏性编辑的权威合同,约束资源派生、替换与写回边界。
-
AGC 聊天素材引用:聊天输入框 @ 引用项目素材的入口、引用模型与「当前版本素材」口径。
-
AGC 聊天 AI 润色与发送前提醒:提示词润色与发送前提醒的交互、失败与取消口径。
-
UI 编辑器代码地图与模块职责:Rust
ui_editor模块、features/ui-editor语义层与view/ui-editor视图层的职责划分与扩展指引。 -
UI 编辑器 Agent 工具化重写:三个工具(建文档 / 跑工作流 / 出 JS)的契约、两步工作流、JSONL 检查点与模块布局。
图片画布与媒体
-
AGC 抠图模式与背景色透传方案:External v1 与 AGC 客户端扩展
flat/complex及 BgFilterauto透传。 -
共享基础组件库与展示页:网站与客户端复用的无业务 UI chrome、样式边界和
/components展示页。 -
[Raw GPT Image 2 图片编辑代理](./technical/【技术方案】Raw GPT Image 2图片编辑代理-2026-09-07.md):主站客户端调用的同步图片编辑代理、multipart 输入、预检查与计费边界。
-
UI 编辑器自动切分素材工作流:UI 设计图素材切分、Raw GPT Image 2 调用与结果持久化边界。
-
画板音乐生成入口:BGM/SFX 共享视图、独立业务规则和当前发布门禁。
后端、运维与测试
- BgFilter 受限资源调度方案
- Issue225 登录成功 AGC 用户归属修复:登录 route tracking 的真实用户归属、
daily_login幂等边界和实施验收。 - SpacetimeDB 连接池取消安全
- Jenkins 容器预览部署控制面
- 浏览器内 AI Web 工程沙箱预览
- AI Web 工程 Runner 安全模型
- npm workspaces 统一依赖边界
- React 组件测试准则
- AGC 资源工作台 V3 端到端验收:资源工作台 V3 的端到端验收用例(S1–S16)与判据。
- 宿主壳能力统一协议
- Expo React Native 与 Tauri 宿主壳方案
已核准专题补充
以下文档已有源码、测试或运行时证据,现纳入 current 集合:
- 画板角色形象生成入口设计
- 画板图标素材生成入口设计
- 画板 UI 设计图生成入口设计
- 生成类面板 Lovart 统一改造方案
- 宣发素材工具入口设计
- 预览画布缩放滑杆
- 图片画布撤销、恢复范围与操作提示方案
- 微信虚拟支付接入
- SSE 客户端传输层收口约定
- 全站客服悬浮入口接入约定
- 图片画布素材导出方案
- UI 编辑器图片素材选择器
- 后台 Dashboard 运营看板方案
- 后台多账号与 Tab 访问权限方案
- Pingora 独立网关试点
- AGC 后台模型别名与对话选择:官方目录、本地自定义 LLM 开关、端点模型勾选与预览。
- UI 编辑器工作流完成通知弹窗
- 官网 SEO 地基实施约定
- UI 编辑器拖动变换提交边界
维护规则
- 当前文档只保留稳定合同、公开契约和仍在推进的专题;一次性计划、实施记录和已关闭实验完成后删除或融合,不再长期堆积。
- 文档现行/历史/待复核状态以文档生命周期与现状索引为准;未列入当前入口的文档不能直接作为实现依据。
docs/project-memory/shared-memory/只保存长期有效的概览、决策、流程和踩坑;plans/、todos/仅保存仍开放且有明确下一门禁的事项。- 修改
/api/external/v1必须同步 OpenAPI 和契约测试;修改 SpacetimeDB schema 必须同步 migration、表目录、绑定和 schema 检查。 - 当前入口、公开契约和数据对象只以现役代码、路由树、shared-contracts 与 SpacetimeDB schema / bindings 为准;未登记对象不得作为兼容目标恢复。
- 新增 Markdown 使用
【标签名】中文标题-YYYY-MM-DD.md命名;不要把个人配置、密钥、Token、日志或构建产物写入文档。