# 模块源码目录清单: {项目名}

> 生成时间: {日期} | Commit: {commit} | 来源: architecture-overview.md
>
> 供 card-splitter 逐条扫描源码子目录拆卡使用。

## 模块清单

| 模块名 | 来源层 | node_type | 源码路径 | 备注 |
|--------|--------|-----------|----------|------|
| {项目名} 项目配置 | 第1层 | 项目配置 | {architecture-overview.md 路径} | 项目元信息、技术栈、模块结构 |
| 外部依赖库汇总 | 第2层 | 外部依赖库 | {依赖声明文件路径} | 外部依赖清单 |
| {能力名} | 第3层 | 基础设施 | {模块路径} | {说明} |
| {服务名} | 第4层 | 公共服务 | {模块路径} | {描述} |
| {模块名} | 第5层 | 业务模块 | {模块路径} | {功能描述} |
| {项目名} 测试配置 | 第6层 | 工程支撑 | {测试配置路径} | 测试框架、覆盖率工具 |
| {项目名} CI/CD | 第6层 | 工程支撑 | {CI 配置路径} | CI 平台配置、构建流水线 |
| {项目名} 外部支撑 | 第6层 | 工程支撑 | {脚本/工具路径} | 代码生成脚本、自动化工具 |
| {资源类型} | 第7层 | 资源文件 | {res/ / Resources/ / assets/ 路径} | {用途} |

## 提取规则

### node_type 映射

来源层到 node_type 的映射关系，填入时直接使用：

| 来源层 | node_type |
|--------|-----------|
| 第1层 | 项目配置 |
| 第2层 | 外部依赖库 |
| 第3层 | 基础设施 |
| 第4层 | 公共服务 |
| 第5层 | 业务模块 |
| 第6层 | 工程支撑 |
| 第7层 | 资源文件 |
| 跨层依赖 | 不入清单 |

### 第1层
- 出 1 行："项目配置" — 合并 5 个子项（项目元信息、技术栈、多模块结构、依赖管理、代码规范），源码路径 = architecture-overview.md 自身路径

### 第2层 外部依赖库
- 出 1 行，源码路径 = 项目的依赖声明文件路径

### 第3层 基础设施
- 逐行从 architecture-overview.md 第 3 层表提取
- 模块名取"能力/领域"列
- 源码路径取"源码路径"列

### 第4层 公共服务
- 逐行从 architecture-overview.md 第 4 层表提取
- 模块名取"服务"列
- 源码路径取"源码路径"列

### 第5层 业务模块
- 逐行从 architecture-overview.md 第 5 层表提取
- 模块名取"模块"列
- 源码路径 = 模块根目录（如 `p_location/`）

### 第6层 工程支撑
- 出 3 行：测试配置、CI/CD、外部支撑
- 源码路径取对应表格的"配置路径"列

### 第7层 资源文件
- 逐行从 architecture-overview.md 第 7 层表提取
- 模块名取"类型"列
- 源码路径取"路径"列

### 跨层依赖
- 不入清单

## 路径格式

源码路径统一使用项目根目录下的相对路径，格式：
```
{模块名}/ 或 {模块名}/src/main/java/{包路径}/
```

优先输出模块根目录即可，具体子目录由 card-splitter 用 glob 进一步扫描。
