e15e3b455f
Project CI / Repository checks (push) Successful in 3m12s
Project CI / Frontend tests (push) Successful in 3m21s
Project CI / Backend tests (push) Successful in 7m42s
Project CI / Native shell tests (push) Successful in 20m14s
Project CI / Frontend tests (pull_request) Successful in 50m43s
Project CI / Repository checks (pull_request) Successful in 20m21s
Project CI / Backend tests (pull_request) Successful in 6m18s
Project CI / Native shell tests (pull_request) Successful in 18m19s
## 背景与问题 AGC(AI 游戏创作智能体 App)Direct Codex 模式在携带图片工具结果等大上下文调用 LLM 时,`/api/llm/responses` 与 `/api/llm/chat/completions` 会命中 Axum 默认 **2 MiB** 请求体上限,直接被 413 拒绝,大上下文任务无法执行;同时 Codex app-server 的 failed turn 未把上游 413 映射为稳定错误分类,前端只能显示笼统的“其他错误”,无法引导用户处理。 ## 改动内容 **1. api-server(server-rs)** - 新增常量 `LLM_REQUEST_MAX_BODY_BYTES = 32 MiB`,作为两个 LLM 代理路由的正式请求体上限; - 两个路由显式配置 `DefaultBodyLimit::max(32 MiB)`,避免 Axum 默认 2 MiB 提前拒绝;handler 内保留超限检查,超过 32 MiB 仍返回 `413 PAYLOAD_TOO_LARGE`; - 补充回归测试:>2 MiB 大上下文请求不再命中默认限制;超过 32 MiB 仍返回 413。 **2. AGC 壳(apps/ai-game-creator-shell)** - `codex_app_server` 错误映射:上游/连接层 HTTP 413、`PAYLOAD_TOO_LARGE`、`provider request too large` 等统一映射为稳定分类 `codex-app-server-error:request-too-large`,不再落入 `other` 或误判为权限/安全策略错误; - 前端新增用户可见文案“模型请求体过大,请减少参考图或上下文后重试”,并补充单测断言。 **3. 文档** - 【技术方案】AI游戏创作智能体App实施计划-2026-06-24.md 补充“2026-09-06 AGC LLM 代理请求体合同”:明确 32 MiB 上限、必须显式配置 `DefaultBodyLimit`、413 映射规则与用户文案。 ## 验证 - `cargo test -p api-server llm_routes_accept_large_context_bodies_beyond_axum_default` 通过 - `cargo test -p api-server llm_responses_rejects_bodies_above_explicit_limit` 通过 - `cargo test ... ai-game-creator-shell ... codex_app_server_failed_turn_maps_request_too_large_details` 通过 - `npm run test -- apps/ai-game-creator-shell/tests/agentRuntimeModel.test.ts`(27 通过) 全量 workspace 测试与 CI 门禁待推送后由 CI 覆盖。 Reviewed-on: #295 Reviewed-by: 段舒康 <kdletters@qq.com> Co-authored-by: 董羽秦 <suzmii@qq.com> Co-committed-by: 董羽秦 <suzmii@qq.com>
文档总览
本目录只把当前实现依据、公开契约和仍在维护的专题合同作为入口。代码、当前文档与项目记忆冲突时,以当前代码和最新专题文档为准;未列入下表的材料不作为实现依据。
必读入口
当前产品与平台
- 当前产品与工程约束:现役入口、账号钱包、UI 和后端分层。
- 平台入口与玩法链路:只描述现役平台壳与旧模板退役边界。
- 外部 OpenAPI 与 API Key 接入方案
- External v1 OpenAPI:公开 HTTP 契约唯一机器可读来源。
AI 游戏创作与 Agent Runtime
-
LLM 累计额度结算:Router 累计额度、首次基线与原子钱包结算。
-
AI 游戏创作智能体 App 实施计划:当前 DirectProject、受控语义工具、UI workflow、资源和运行时合同。
-
DirectProject 客户端 Skill 与 MCP 扩展导入方案:客户端扩展导入、按独立 Skill/MCP 拆分、命名、启用和启动时注入边界。
-
AGC 客户端更新检查与下载:启动版本检测、OSS 清单格式和下载约定。
-
DirectProject 本轮附件路径映射:Direct 首轮只映射附件原名与项目相对路径,不灌正文、不区别 GDD。
-
Direct 回合行为审计账本:Direct GUI 回合把 native 读 / MCP / 写文件落成项目内有界时间线,用于判断有没有打开本轮附件。
-
项目开发工作台 PRD:当前工作台页面和验收边界。
-
AGC 错误报告与诊断上传:当前进程错误事件、应用级日志和管理员查看器合同。
-
立项策划 Agent(Fast GDD):当前策划入口、审批和恢复合同。
图片画布与媒体
- 共享基础组件库与展示页:网站与客户端复用的无业务 UI chrome、样式边界和
/components展示页。 - 客户端素材创作无限画布阶段一合同
- 图片画布结构化持久化与迁移回滚
- 编辑器生成结果原子提交与幂等重放
- 画板音乐生成入口:BGM/SFX 共享视图、独立业务规则和当前发布门禁。
- 画布 Agent 对话面板
- 画布 Agent 会话消息存 OSS
- 编辑器模型定价配置
后端、运维与测试
- BgFilter 受限资源调度方案
- Issue225 登录成功 AGC 用户归属修复:登录 route tracking 的真实用户归属、
daily_login幂等边界和实施验收。 - SpacetimeDB 连接池取消安全
- Jenkins 容器预览部署控制面
- 浏览器内 AI Web 工程沙箱预览
- AI Web 工程 Runner 安全模型
- npm workspaces 统一依赖边界
- React 组件测试准则
- 宿主壳能力统一协议
- Expo React Native 与 Tauri 宿主壳方案
维护规则
- 当前文档只保留稳定合同、公开契约和仍在推进的专题;一次性计划、实施记录和已关闭实验完成后删除或融合,不再长期堆积。
docs/project-memory/shared-memory/只保存长期有效的概览、决策、流程和踩坑;plans/、todos/仅保存仍开放且有明确下一门禁的事项。- 修改
/api/external/v1必须同步 OpenAPI 和契约测试;修改 SpacetimeDB schema 必须同步 migration、表目录、绑定和 schema 检查。 - 旧模板、旧公开作品、旧运行态和旧后端路线不因历史源码或数据表仍存在而恢复入口。
- 新增 Markdown 使用
【标签名】中文标题-YYYY-MM-DD.md命名;不要把个人配置、密钥、Token、日志或构建产物写入文档。