zizi 60e736ac1a docs(harness): 收口协议单清单化+四处漂移纠偏+配方出仓蒸馏——2026-06-11 harness 体检落地
体检根因:收口规则散落 4 处(总账铁律/作战清单回填铁律/README 维护规则/协议 §6)靠记忆执行
→ 漂移已实发(总账表头停 06-09 两日、作战清单轮次未滚动、.agent 残留 Day-0 横幅、AGENTS §3 仍写"三仓未入本仓")。

- 新增 .agents/skills/wave-close-checklist.md:收口七步唯一可执行清单(总账+表头/作战清单+归档/回填/.agent 仅结构变化/蒸馏/索引/编排资产入库+30秒自检);总账铁律、协议 §6、编排文档全部改为指向它
- 四处漂移一次纠偏:总账表头 06-11+对账 f403d11;game-cloud/.agent(Day-0→11/13 模块实态、技术栈对齐 C2 裁定、Wave4 销账);game-studio/.agent(mock 态→接 staging 实态);AGENTS.md §3 monorepo 实态+目录树补 contracts/game-*/deploy/mvp+memorys 标记停增
- 作战清单瘦身:3843 字符巨型 bullet 等完成史整体迁 MVP作战清单-完成史归档.md(原文快照保真),清单 68→33 行只留队列;新一轮完成线标注待创始人拍板重锁
- 配方出仓蒸馏(原仅存会话私有记忆):skills/staging-ops.md(机器分工/git 同步/重部署字节码实证/前端构建门/冒烟)+ skills/ui-walkthrough-cdp.md(CDP 七坑/studio/admin 走查/信道探针);README+AGENTS §5 索引同步(§5 顺带补回漏登的 add-game-template/prompt-governance)
- 编排器 .agent 户口:QA 工具箱定位/组件清单/纪律(新工具不再长进 runs/)/Doc B T-id 编目与 tools/ 迁移留待办
- 协议修正:§5 前端验证门 pnpm test→npm run build(vue-tsc 假门禁红线入文);§1 历史检索改指 agent-specs 收口报告;mvp-execution-orchestration 加波次制现状注记(Day0-15/站会为目标态)
- .gitignore 加 __pycache__/.pytest_cache(注释说明与 build/ 老雷的区别)

遗留:nightly cron 哨兵(动 mini-desktop,待拍板)/ Doc B 未编目组件销账 / tools/ 迁移评估。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 13:26:04 +00:00

50 lines
6.5 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# game-cloud(后端 · monorepo 子目录)
> **本目录状态:MVP 后端主体已建成运行(2026-06-11 对账)。** 11/13 game 模块建成接入单体(community/biz 已建;ip=seam 寄宿 compliance、pay=yudao 原生未接),M1 全栈真启动 + M2 生成链路 + 发布/数据回路/审核台 e2e 真实。**进度一律以 `docs/mvp/MVP进度总账.md` 为准,本文件只随结构变化更新**(收口规则见 `.agents/skills/wave-close-checklist.md` 第 4 步)。
> 决策:MVP 先在当前仓 monorepo 承载,later 再拆为独立 game-cloud 仓(见 memory monorepo-first-split-later)。
## 目标功能
绘境AI 后端:Yudao Cloud fork + 13 个 game-module 业务模块(project/aigc/runtime/feed/telemetry/pay/trade/community/ip/compliance/biz/ad/studio)。技术栈 Java 17 + Spring Cloud Alibaba + MySQL + Redis + Flyway(MVP 单体承载);生成主线=模板驱动经 new-api 网关(C2 裁定;Dify/OpenGame 降级远期增强,RocketMQ/Nacos 为远期形态、MVP 未部署)。
## 目录规划(已落地)
```
game-cloud/
├── (yudao-cloud fork 框架:game-framework / game-gateway / game-server ...) ← fork 已就位(master-jdk17 裁剪版)
├── game-module-project/ ← 黄金模板模块(先做到完美,其余 12 个克隆)
│ ├── game-module-project-api/ # 枚举/错误码段 1-100/跨模块 DTO·Feign
│ └── game-module-project-server/ # controller(admin/app)/service/dal/convert(结构对齐 yudao fork)
└── game-module-*/ ← 其余 12 模块克隆黄金模板
```
## 边界 / 不做
- 契约不放这里:`contracts/`(仓根)是跨端单一事实源,本模块引用它。
- 管理后台前端 = `game-admin/`;产品端前端 = `game-studio/`(各自子目录)。
## 当前状态 / TODO(更新 2026-06-11;此后逐波进度不再追记于此,以总账 §2/§6 为准)
> **进度对账以 `docs/mvp/MVP进度总账.md`(单一事实源)为准**,本节只记本模块要点。
- [x] 契约先行:8 类契约锁定(`contracts/`,M0),含 project 的 DB+API。
- [x] **fork yudao-cloud 完成**:GitHub `master-jdk17`(Java17, rev 2026.05-SNAPSHOT),已裁剪至 system/infra/pay/bpm + framework/gateway/server/dependencies(删 11 个 demo 模块,74M→44M)。
- [x] 业务决策 HJ-DEC-001 敲定:D1 主 DeepSeek+备 Qwen / D2 放置·经营·合成·点击 4 模板 / D3 MVP 统一 80%(全配置化) / D4 ui-ux-pro-max+demo(详见 `docs/agent-specs/2026-06-08-mvp业务决策.md`)。
- [x] 结构决定:游戏模块跟 fork 用 **`-api`/`-server`**(已同步规范 §9/§1)。
- [x] **工具链就绪**:JDK 17.0.19 + Maven 3.8.7。
- [x] **黄金模块 `game-module-project` 建成并编译通过**(`mvn install` BUILD SUCCESS,18 源文件,照抄 fork notice/infra 范式):
-api(ErrorCodeConstants 段1-100/ProjectStatusEnum/ReviewDecisionEnum) + -server(ProjectDO·ReviewRecordDO 继承 TenantBaseDO / 2 Mapper / ProjectService+Impl 状态机·归属·门禁·审核事务 / ProjectConvert / 7 VO / App+Admin 双控制器)。
- [x] **B 路线接线 yudao-server**:pom 依赖 game-module-project-server;`YudaoServerApplication` 加 `cn.wanxiang.game.module` 组件扫描 + `@MapperScan`;`application.yaml` type-aliases 纳入 game DO。
- [x] **关键核实**:`WebProperties` 端前缀按 `**.controller.app/admin.**` 通配 → cn.wanxiang 包自动获 `/app-api`·`/admin-api`,无需改框架。
- [x] **集成编译通过**:`mvn -pl yudao-server -am compile` BUILD SUCCESS(接线后整体编译,含 Flyway 依赖)。
- [x] **Flyway 启用(创始人定 A)**:yudao-server 加 `flyway-core`+`flyway-mysql`(版本由 spring-boot 管理);`application.yaml` 加 `spring.flyway`(enabled+`baseline-on-migrate`+`baseline-version=0`,关键防 V1.0.0 被当≤baseline 跳过);迁移脚本复制到 `yudao-server/.../db/migration/`(执行副本,源在 `contracts/db-schemas/`,diff 一致;Flyway 校验和敏感故保持同步)。
- [x] **端前缀(创始人定 B)**:保留 yudao 默认 `/app-api`·`/admin-api`,已把 `project.yaml`/`README`/`规范§4`/`events.schema` 的 `/app`·`/admin` 改为 `/app-api`·`/admin-api`(控制器代码零改,前缀框架按包名自动加)。
- [x] **Service 单测通过**:`ProjectServiceImplTest` 9 用例全绿(Mockito,覆盖默认值/归属/状态机/发布门禁/审核流转)。
- [x] **M1 全栈真启动达成(2026-06-09,mini-desktop 隔离 staging)**:单体 `Started YudaoServerApplication`、Flyway V1-V9 全 success、24 张 game_* 表、admin-api/app-api 均 200。启动装配缺陷已修(撤 openfeign 排除+4 CommonApi 补 primary=false `d7fac90`;去 system/infra-server repackage `8565fa2`)。详见记忆 `m1-runtime-bringup-state`。
- [x] **Wave1 闭环脊柱 4 模块(aigc/runtime/feed/telemetry)已并行建成并验证**(Workflow 三相编排:契约→建设→集成;4 模块 46 单测绿 + 全量集成编译绿 41 模块 reactor;详见 `docs/agent-specs/2026-06-08-后端模块并行建设-execution.md`)。13 张表全落 `contracts/db-schemas/V1-V5`,错误码段 100-104 独占。
- [x] **Wave2 变现域**:ad/trade 后端建成验证(`43fce85`)。pay 为 yudao 原生,当前未接单体。
- [x] **Wave3 治理/创作**:compliance(锁风门 Gate 二态,已注入 project.publish)+ studio(创作任务链)建成(`b70e90b`/`6c8844f`)。
- [x] **已建 11/13 game 模块**(project/aigc/runtime/feed/telemetry/ad/trade/compliance/studio + Wave4 的 community/biz),全部接入单体、有单测、有契约 yaml、有 Flyway V1-V13;ip=D5 seam 寄宿 compliance 不独立建,pay=yudao 原生未接。
- [x] **Wave4 community+biz 建成+集成门收口(2026-06-11,`737e6d5`+`6c7d93f`)**:60 模块编译/启动 Flyway V11→V13/18 端点/单测 32 绿/两链路 staging 实测,详见总账 §2/§6 与 `HJ-WAVE4-EXEC-001`。
- [ ] **桩真实化(决定 M2-M5)**:Dify 真实生成 / runtime 真实编译 / OSS 存取 / telemetry MQ 聚合 / 真实广告+pay。见总账 §5。
- [x] **已全量 git 提交并推送** origin/dev/2.0.0(最新 `8565fa2`)。
## 规范锚点
包名 `cn.wanxiang.game.module.{模块}.{层}`;错误码段见 `.agents/rules/engineering-conventions.md §1.3`;API `/app-api`·`/admin-api` 双端(前缀框架按包名自动加);DO/VO/DTO 分层;Flyway 迁移(执行位 `yudao-server/.../db/migration/`);测试金字塔(单测>80%/集成 Testcontainers)。