---
phase: 01-conflict-inventory-and-decision-matrix
plan: 01
type: execute
wave: 1
depends_on: []
files_modified:
  - .planning/phases/01-conflict-inventory-and-decision-matrix/01-PLAN.md
  - .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv
  - .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md
  - .planning/phases/01-conflict-inventory-and-decision-matrix/titan-decision-matrix.md
  - .planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md
autonomous: true
requirements:
  - MERGE-01
  - MERGE-03
must_haves:
  truths:
    - "团队可以看到 merge 覆写热点的文件级证据、风险分级与来源提交。"
    - "团队可以看到 Titan 重叠代码路径及每个热点的 keep/replace/hybrid 决策。"
    - "后续阶段可以直接使用本阶段产物作为“旧视觉+新逻辑”执行输入。"
  artifacts:
    - path: ".planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv"
      provides: "可审计冲突清单（文件、提交、风险、类别）"
    - path: ".planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md"
      provides: "冲突清单说明与分级口径"
    - path: ".planning/phases/01-conflict-inventory-and-decision-matrix/titan-decision-matrix.md"
      provides: "Titan overlap 决策矩阵（keep/replace/hybrid）"
    - path: ".planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md"
      provides: "命令级证据链（可复现）"
  key_links:
    - from: "git merge/author 历史"
      to: "conflict-inventory.csv"
      via: "冲突提交 + Titan 触达聚合"
      pattern: "git show -m + git log --author='[Tt]itan'"
    - from: "conflict-inventory.csv"
      to: "titan-decision-matrix.md"
      via: "按风险与重叠分层决策"
      pattern: "P0/P1 + keep/replace/hybrid"
---

<objective>
构建可审计的冲突盘点与 Titan 重叠决策基线，形成后续“旧视觉+新逻辑”执行阶段的唯一输入源。

Purpose: 在不做大规模功能实现的前提下，先把 merge 覆写风险与 Titan overlap 决策透明化、证据化。  
Output: `conflict-inventory.csv`、`conflict-inventory.md`、`titan-decision-matrix.md`、`audit-evidence.md`。
</objective>

<context>
@.planning/PROJECT.md
@.planning/REQUIREMENTS.md
@.planning/ROADMAP.md
@.planning/phases/01-conflict-inventory-and-decision-matrix/01-RESEARCH.md
@.planning/codebase/ARCHITECTURE.md
@.planning/codebase/STRUCTURE.md
@.planning/codebase/CONCERNS.md
</context>

<tasks>

<task type="auto" tdd="true">
  <name>Wave 1 - Task 1: 生成可复现证据链与原始热点集合</name>
  <files>
    .planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md
  </files>
  <behavior>
    - Test 1: 必须列出用于提取 merge 覆写热点的命令与提交列表（含冲突语义 merge 提交）。
    - Test 2: 必须列出用于提取 Titan overlap 的命令与结果摘要（作者轨 + 语义轨）。
    - Test 3: 任一命令复跑后可得到同类型输出结构（允许计数随仓库演进变化）。
  </behavior>
  <action>
    基于 01-RESEARCH 既有方法，固定并执行审计命令链：merge 提交采集、`git show -m` 文件提取、Titan 作者触达与“移植 Titan main”语义提交提取；将命令、时间、分支、输出摘要写入 `audit-evidence.md`，确保可复现与可审查。仅做证据整理，不修改业务代码。
  </action>
  <verify>
    <automated>test -s .planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md &amp;&amp; rg -n "git show -m|git log --all --author='\\[Tt\\]itan'|7342cc08|merge" .planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md</automated>
  </verify>
  <done>
    `audit-evidence.md` 包含完整命令链、执行上下文、结果摘要，并可支持他人复跑验证。
  </done>
</task>

<task type="auto" tdd="true">
  <name>Wave 2 - Task 2: 产出可审计冲突清单（MERGE-01）</name>
  <files>
    .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv
    .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md
  </files>
  <behavior>
    - Test 1: CSV 至少包含字段 `file_path, merge_hotspot_count, titan_touch_count, change_class, behavior_critical, risk_level, evidence_refs`。
    - Test 2: 每条记录必须有 evidence_refs 指向具体提交或命令结果。
    - Test 3: Markdown 文档明确风险分级规则（P0/P1/P2）与 change_class（visual-only/logic-only/mixed）。
  </behavior>
  <action>
    依据 Wave 1 证据，形成文件级冲突清单：汇总 merge 热点频次、Titan 触达频次、行为关键度，按研究中的三轴口径完成风险分级与类别标注；输出机器可消费 CSV + 人类可审阅说明文档，满足 MERGE-01 的“文件级证据 + 风险分类”要求。
  </action>
  <verify>
    <automated>test -s .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv &amp;&amp; test -s .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md &amp;&amp; head -n 1 .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv | rg "file_path,merge_hotspot_count,titan_touch_count,change_class,behavior_critical,risk_level,evidence_refs" &amp;&amp; rg -n "P0|P1|P2|visual-only|logic-only|mixed" .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md</automated>
  </verify>
  <done>
    冲突清单可直接回答“哪些文件被 merge 覆写风险影响、风险多高、证据来自哪里”。
  </done>
</task>

<task type="auto" tdd="true">
  <name>Wave 3 - Task 3: 产出 Titan 重叠决策矩阵并绑定后续输入（MERGE-03）</name>
  <files>
    .planning/phases/01-conflict-inventory-and-decision-matrix/titan-decision-matrix.md
  </files>
  <behavior>
    - Test 1: 每个 Titan overlap 热点都有 `decision`（keep/replace/hybrid）与 `rationale`。
    - Test 2: 每条决策都包含“旧视觉+新逻辑”落地指引（L0/L1/L2 边界）。
    - Test 3: 每条决策都包含后续阶段入口（建议归属 Phase 2 或 Phase 3）。
  </behavior>
  <action>
    基于冲突清单筛选 Titan overlap 文件，形成决策矩阵：逐项定义 keep/replace/hybrid、给出可审计依据与冲突化解理由，并明确后续执行归属（逻辑归 Phase 2、视觉归 Phase 3）。确保输出是后续“旧视觉+新逻辑”实施的直接输入，不在本阶段实现功能改动。
  </action>
  <verify>
    <automated>test -s .planning/phases/01-conflict-inventory-and-decision-matrix/titan-decision-matrix.md &amp;&amp; rg -n "keep|replace|hybrid|L0|L1|L2|Phase 2|Phase 3|rationale" .planning/phases/01-conflict-inventory-and-decision-matrix/titan-decision-matrix.md</automated>
  </verify>
  <done>
    决策矩阵可直接回答“Titan overlap 该保留什么、替换什么、为什么，以及后续在哪个阶段执行”。
  </done>
</task>

</tasks>

<threat_model>
## Trust Boundaries

| Boundary | Description |
|----------|-------------|
| `git history -> planning artifacts` | 来自历史提交的证据在写入计划产物前需要防止误读与遗漏 |
| `planning artifacts -> next-phase execution` | 错误决策会传递到后续实现阶段并造成行为回归 |

## STRIDE Threat Register

| Threat ID | Category | Component | Disposition | Mitigation Plan |
|-----------|----------|-----------|-------------|-----------------|
| T-01-01 | T (Tampering) | `conflict-inventory.csv` | mitigate | 所有记录必须带 `evidence_refs`，且在 `audit-evidence.md` 可追溯到具体命令/提交 |
| T-01-02 | R (Repudiation) | `titan-decision-matrix.md` | mitigate | 每条 keep/replace/hybrid 必须包含 `rationale` 与来源证据，避免无法追责 |
| T-01-03 | I (Information Disclosure) | `audit-evidence.md` | accept | 仅记录仓库公开代码提交信息，不写入密钥/凭据；若发现敏感值立即脱敏 |
| T-01-04 | D (Denial of Service) | 验证命令链 | accept | 验证命令限定在本地文本扫描与 git 查询，不引入重型构建任务 |
</threat_model>

<verification>
1. 执行 Wave 1-3 各任务的 `<automated>` 命令，全部返回 0。  
2. 抽查 `conflict-inventory.csv` 中 P0 文件，能在 `audit-evidence.md` 找到对应证据。  
3. 抽查 `titan-decision-matrix.md` 至少 3 条记录，确认均有 `decision + rationale + Phase 2/3 输入`。  
</verification>

<success_criteria>
- 满足 MERGE-01：存在文件级冲突清单，且每条有证据引用与风险分级。  
- 满足 MERGE-03：存在 Titan overlap 决策矩阵，且每条有 keep/replace/hybrid 明确结论。  
- 产物可作为后续“旧视觉+新逻辑”执行输入：每个热点有 L0/L1/L2 边界与阶段归属。  
- Phase 01 不引入业务功能实现，仅交付可审计规划资产。  
</success_criteria>

<output>
After completion, create `.planning/phases/01-conflict-inventory-and-decision-matrix/01-SUMMARY.md`
</output>
