# {{PRODUCT}} Context Repo

{{DESCRIPTION}} 的中间产物仓库，记录从需求立项到上线全过程的产物。既作留档，也作 AI 的文件形态上下文。

## 仓库信息

| 项 | 值 |
|---|---|
| 产品 | {{PRODUCT}} |
| 类型 | context-repo（中间产物仓库） |
| 远端 | `{{REMOTE}}` |
| 初始化 | {{DATE}} |

## 目录结构

```
{{PRODUCT}}-context-repo/
├── AGENTS.md         # 目录约定与导航（真源，人和 AI 共用）
├── CLAUDE.md         # → AGENTS.md 软链
├── manifest.yaml     # 产品名与别名（ws init 据此校验一致性）
├── prds/             # 产品需求层：PRD 是产品意图的唯一源
├── requirements/     # 开发层：按 Jira 组织，引用 PRD
└── assets/           # 共享资产层：跨 Jira 复用的契约
```

配置**不在本仓内**，统一在全局 `~/.sdlc/config.yaml`。

## 需求产出形态

{{PRD_LAYOUT_NOTE}}

## 功能模块

{{MODULES}}

## 覆盖的逻辑代码仓

{{REPOS}}

manifest 的 `repos[]` 只写逻辑 id，地址由 `~/.sdlc/config.yaml` 解析。

## 上手

```bash
# 1. 建产品工作区（持久，建一次长期复用，之后所有 PRD 都在这里写）
sdlc-cli ws init --product {{PRODUCT}}

# 2. 新建 PRD：先看已有模块，再建骨架
sdlc-cli ctx modules
sdlc-cli ctx scaffold {{PRD_ID_EXAMPLE}} --module <模块名> --title "<中文标题>"
sdlc-cli ctx commit {{PRD_ID_EXAMPLE}} -m "新建 PRD 骨架"

# 3. 围绕 Jira 开发：建开发工作区（随 Jira 生死）
sdlc-cli ws create --jira <JIRA-id>
```

## 落盘三步

```bash
sdlc-cli ctx resolve --kind tech-spec --jira <id>   # ① 要路径，不自己拼
                                                    # ② 写产物文件（带 kind 标签）
sdlc-cli ctx commit <id> -m "完成技术方案设计"       # ③ 事务提交（默认提交后 push；--local 只留本地）
```

## 核心约定

- **本地即唯一真源**：阶段、影响面、模块归属一律读文件算出，仓内不存同步状态
- **git 即事务**：一次 run = 一次 commit，校验不过即中止不提交
- **路径向 CLI 要**：目录规则由 `sdlc-cli` 持有，不硬编码路径
- **模块判据**：`prds/` 下有 `manifest.yaml` 的是 PRD 实体，没有的是模块分组目录
- **PRD 引用不含模块段**：写 `prds/PRD-xxx`，归属由目录位置决定

目录约定详见 [AGENTS.md](AGENTS.md)。命令用法见 `sdlc-cli <命令> --help`。
