---
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"
---
构建可审计的冲突盘点与 Titan 重叠决策基线,形成后续“旧视觉+新逻辑”执行阶段的唯一输入源。
Purpose: 在不做大规模功能实现的前提下,先把 merge 覆写风险与 Titan overlap 决策透明化、证据化。
Output: `conflict-inventory.csv`、`conflict-inventory.md`、`titan-decision-matrix.md`、`audit-evidence.md`。
@.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
Wave 1 - Task 1: 生成可复现证据链与原始热点集合
.planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md
- Test 1: 必须列出用于提取 merge 覆写热点的命令与提交列表(含冲突语义 merge 提交)。
- Test 2: 必须列出用于提取 Titan overlap 的命令与结果摘要(作者轨 + 语义轨)。
- Test 3: 任一命令复跑后可得到同类型输出结构(允许计数随仓库演进变化)。
基于 01-RESEARCH 既有方法,固定并执行审计命令链:merge 提交采集、`git show -m` 文件提取、Titan 作者触达与“移植 Titan main”语义提交提取;将命令、时间、分支、输出摘要写入 `audit-evidence.md`,确保可复现与可审查。仅做证据整理,不修改业务代码。
test -s .planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md && rg -n "git show -m|git log --all --author='\\[Tt\\]itan'|7342cc08|merge" .planning/phases/01-conflict-inventory-and-decision-matrix/audit-evidence.md
`audit-evidence.md` 包含完整命令链、执行上下文、结果摘要,并可支持他人复跑验证。
Wave 2 - Task 2: 产出可审计冲突清单(MERGE-01)
.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv
.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md
- 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)。
依据 Wave 1 证据,形成文件级冲突清单:汇总 merge 热点频次、Titan 触达频次、行为关键度,按研究中的三轴口径完成风险分级与类别标注;输出机器可消费 CSV + 人类可审阅说明文档,满足 MERGE-01 的“文件级证据 + 风险分类”要求。
test -s .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv && test -s .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md && 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" && rg -n "P0|P1|P2|visual-only|logic-only|mixed" .planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md
冲突清单可直接回答“哪些文件被 merge 覆写风险影响、风险多高、证据来自哪里”。
Wave 3 - Task 3: 产出 Titan 重叠决策矩阵并绑定后续输入(MERGE-03)
.planning/phases/01-conflict-inventory-and-decision-matrix/titan-decision-matrix.md
- Test 1: 每个 Titan overlap 热点都有 `decision`(keep/replace/hybrid)与 `rationale`。
- Test 2: 每条决策都包含“旧视觉+新逻辑”落地指引(L0/L1/L2 边界)。
- Test 3: 每条决策都包含后续阶段入口(建议归属 Phase 2 或 Phase 3)。
基于冲突清单筛选 Titan overlap 文件,形成决策矩阵:逐项定义 keep/replace/hybrid、给出可审计依据与冲突化解理由,并明确后续执行归属(逻辑归 Phase 2、视觉归 Phase 3)。确保输出是后续“旧视觉+新逻辑”实施的直接输入,不在本阶段实现功能改动。
test -s .planning/phases/01-conflict-inventory-and-decision-matrix/titan-decision-matrix.md && 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
决策矩阵可直接回答“Titan overlap 该保留什么、替换什么、为什么,以及后续在哪个阶段执行”。
## 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 查询,不引入重型构建任务 |
1. 执行 Wave 1-3 各任务的 `` 命令,全部返回 0。
2. 抽查 `conflict-inventory.csv` 中 P0 文件,能在 `audit-evidence.md` 找到对应证据。
3. 抽查 `titan-decision-matrix.md` 至少 3 条记录,确认均有 `decision + rationale + Phase 2/3 输入`。
- 满足 MERGE-01:存在文件级冲突清单,且每条有证据引用与风险分级。
- 满足 MERGE-03:存在 Titan overlap 决策矩阵,且每条有 keep/replace/hybrid 明确结论。
- 产物可作为后续“旧视觉+新逻辑”执行输入:每个热点有 L0/L1/L2 边界与阶段归属。
- Phase 01 不引入业务功能实现,仅交付可审计规划资产。