refactor: design产出拆两层——应用级(architecture+ui-design风格/主页/交互/弹窗规范),数据设计下沉到各模块(数据/CRUD/处理逻辑/skills)实现模块自包含复用

This commit is contained in:
ymq 2026-08-19 23:11:38 +08:00
parent f78d327853
commit eb861b2c70

View File

@ -412,14 +412,17 @@ ROLE_SPECIFICS = {
'design': """你是系统设计师。按 SDLC 仓库标准产出文档。 'design': """你是系统设计师。按 SDLC 仓库标准产出文档。
产出路径: docs/01-design/ 目录下: 应用级设计(产出到 docs/01-design/):
- architecture.md: 系统架构、技术选型理由 - architecture.md: 系统架构、技术选型理由、模块划分、模块间依赖关系、开发顺序
- database-design.md: ER图描述、表结构DDL - ui-design.md: 视觉风格(配色/字体/间距)、主页面布局、用户交互模式、弹窗/表单规范
- api-design.md: 接口列表(method/path/request/response)
- ui-design.md: 页面结构、组件树(如适用) 模块级设计(每个模块自包含、可复用,产出到各模块目录):
同时完成模块划分(modules/<模块名>.md): 把应用拆成模块——概念相近的功能组合成一个独立模块,每个模块独立仓库(归入应用伞仓库 pkgs/<模块>),每个模块含: 模块功能、仓库URL(先填规划地址)、技术栈、依赖。 - modules/<模块名>.md: 模块功能、仓库URL(先填规划地址)、技术栈、依赖、开发顺序
同时定义模块间依赖关系 + 开发顺序: 每个模块在「依赖」字段写明它依赖哪些其他模块(被依赖方须先开发),并给出开发顺序(拓扑序)。无依赖的模块可并行开发;有依赖的模块须等其依赖的模块完成后再开发。 - modules/<模块名>/design.md: 该模块的数据设计(表结构DDL) + CRUD 定义 + 处理逻辑(接口)
模块划分遵循: apppublic、sqlor、ahserver、accounting、appbase、rbac 等基础模块已存在、可直接引用,**不必列为待开发模块**(除非需求明确要改它们)。后续 PM 按你划分好的模块 + 依赖关系派发 develop 任务,develop 按你的模块清单逐个开发。 - modules/<模块名>/skill/SKILL.md: 该模块技能文档
数据、CRUD、处理逻辑、skills 都属于模块本身,不放在应用级 design——这样模块可整体复用(换个应用带着自己的数据/逻辑/skills 一起加载)。
模块划分遵循: 概念相近的功能组合成一个独立模块,每个模块独立仓库(归入应用伞仓库 pkgs/<模块>)。apppublic、sqlor、ahserver、accounting、appbase、rbac 等基础模块已存在、可直接引用,**不必列为待开发模块**(除非需求明确要改它们)。后续 PM 按你划分好的模块 + 依赖关系派发 develop 任务,develop 按你的模块清单逐个开发。
产出后用 result 输出文档,files 列出所有文件路径。""", 产出后用 result 输出文档,files 列出所有文件路径。""",
'develop': """你是开发工程师。按模块化原则开发:概念相近的功能组合成一个独立模块,每个模块独立仓库,所有模块归入应用的伞仓库(pkgs/<模块>)。源码写入模块独立仓库,不在项目仓库。 'develop': """你是开发工程师。按模块化原则开发:概念相近的功能组合成一个独立模块,每个模块独立仓库,所有模块归入应用的伞仓库(pkgs/<模块>)。源码写入模块独立仓库,不在项目仓库。
@ -427,8 +430,8 @@ ROLE_SPECIFICS = {
基础模块复用(必读): apppublic、sqlor、ahserver、accounting、appbase、rbac 等基础模块已存在、可直接引用,**不必再开发**——需要权限走 rbac、需要数据访问走 sqlor、需要 HTTP 框架走 ahserver、需要配置/参数走 appbase、需要工具函数走 apppublic。开发前先确认目标能力是否已由基础模块提供,能复用就不重造。 基础模块复用(必读): apppublic、sqlor、ahserver、accounting、appbase、rbac 等基础模块已存在、可直接引用,**不必再开发**——需要权限走 rbac、需要数据访问走 sqlor、需要 HTTP 框架走 ahserver、需要配置/参数走 appbase、需要工具函数走 apppublic。开发前先确认目标能力是否已由基础模块提供,能复用就不重造。
准备工作: 准备工作:
1. read_file 读 docs/01-design/ 下的设计文档 1. read_file 读 docs/01-design/ 下的架构与 UI 设计文档
2. read_file 读 modules/<模块名>.md 获取模块仓库 URL 2. read_file 读 modules/<模块名>.md 获取模块仓库 URL,读 modules/<模块名>/design.md 获取该模块的数据设计/CRUD/处理逻辑
3. git_clone 克隆模块仓库到工作空间 3. git_clone 克隆模块仓库到工作空间
开发流程: 开发流程:
4. write_file 写代码到模块仓库目录下 4. write_file 写代码到模块仓库目录下