# 流程进化: MR target-branch 自动探测 + EvoMap publish schema 文档化

| 字段 | 值 |
|---|---|
| 时间戳（Asia/Shanghai） | 20260725220345 |
| 关联 Issue | #IK3ZW2（采纳）、#IK3ZW3（采纳） |
| 分支 | evolve/mr-target-evomap-schema |
| EvoMap 检索 | 2 组查询；query2 命中 `sha256:b04bca…`（score 73.33，「EvoMap Bundle Publish Validation Fix」）主题相关但 strategy=null 且仅覆盖 validation 子问题，**未采用** |
| evomap_asset_ids | （无） |
| 修改文件 | `scripts/kb-gitee-issue.mjs`、`scripts/kb-evomap.mjs`、`skills/kb-workflow/references/kb-evomap.md`、`prompts/kb-evolve.md`、`package.json`、`CHANGELOG.md` |
| commit | 06d55ae |
| 版本 | 0.1.10 -> 0.1.11 |
| MR | https://gitee.com/suveng/pi-kb/pulls/9 |
| EvoMap publish | bundle_16da58c2eacd0076（3 asset） |

## 提案处置

| 提案 | 主题 | 处置 | Issue |
|---|---|---|---|
| P1 | MR 默认 target-branch 自动探测 | 采纳 | #IK3ZW2 |
| P2 | EvoMap publish bundle schema 文档化 + 错误提示增强 | 采纳 | #IK3ZW3 |

## P1: MR target-branch 自动探测 (#IK3ZW2，中)

### 根因
`kb-gitee-issue.mjs` 第 53 行硬编码 `targetBranch: "master"`，主干为 `main` 的仓库创建 MR 失败（400: 目标分支 master 不存在）。本会话踩坑 2 次。

### 改动
- 新增 `detectDefaultTargetBranch(cwd)`：优先 `git symbolic-ref refs/remotes/origin/HEAD`（解析最后一段），失败试 `git remote show origin` 解析 `HEAD branch:`，都失败 fallback `"main"`。
- 默认值 `""` -> 运行时探测；`cmdMr` 中 `opts.targetBranch || detectDefaultTargetBranch(...)`。
- `/kb-evolve` MR 示例补注释「target-branch 默认自动探测主干」。

### 验证
源码仓探测返回 `main`，正确。

## P2: EvoMap publish schema 文档化 + 错误提示增强 (#IK3ZW3，高)

### 根因
`kb-evomap.md` 仅一行 `publish --bundle-file` 用法，无 bundle schema；hub 校验严格，本会话 6 次 validate 失败（asset_id 格式 -> category enum -> Capsule confidence/outcome -> Gene strategy -> Capsule trigger/blast_radius/env_fingerprint -> asset_id canonical 排序）。

### 改动
- `kb-evomap.md` 补「## publish bundle schema」章节：asset_id canonical JSON 计算规则（按字母序排序所有层级 key、含 `schema_version: "1.6.0"`、排除 asset_id）、Gene/Capsule/EvolutionEvent 三表（必填/类型/约束）、完整 bundle JSON 示例。
- `kb-evomap.mjs` 新增 `formatHubErrors(data)`：解析 hub 返回的 `details[].path`+`message`、`error`、`correction.fix`，格式化字段级提示；validate/publish 失败分支调用。

## 验证
- `kb-gitee-issue.mjs` / `kb-evomap.mjs` 语法 OK
- `mr --help` 正常
- 探测主干返回 `main`
- `kb-evomap.md` schema 章节齐全（asset_id 计算 / Gene / Capsule / EvolutionEvent / bundle 示例）
