diff --git a/.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv b/.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv new file mode 100644 index 00000000..cf07c027 --- /dev/null +++ b/.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.csv @@ -0,0 +1,13 @@ +file_path,merge_hotspot_count,titan_touch_count,change_class,behavior_critical,risk_level,evidence_refs +frontend/src/app/workspace/chats/[thread_id]/page.tsx,4,7,mixed,high,P0,"merge:8a2cac7b|6335424a|49503504; titan-author; titan-semantic:7342cc08" +frontend/src/core/threads/hooks.ts,3,4,logic-only,high,P0,"merge:588673d0|6335424a|49503504; titan-author; titan-semantic:7342cc08" +frontend/src/core/skills/api.ts,1,3,logic-only,high,P0,"merge:49503504; titan-author; titan-semantic:7342cc08" +frontend/src/components/workspace/chats/use-thread-chat.ts,1,1,mixed,high,P1,"merge:49503504; titan-author; titan-semantic:7342cc08" +frontend/src/core/uploads/api.ts,1,1,logic-only,medium,P1,"merge:49503504; titan-author; titan-semantic:7342cc08" +frontend/src/components/workspace/messages/message-list-item.tsx,7,1,mixed,medium,P1,"merge:8a2cac7b|0fff2880|588673d0|6a540d84|49503504; titan-author; titan-semantic:7342cc08" +frontend/src/components/workspace/artifacts/artifact-file-detail.tsx,8,0,mixed,medium,P1,"merge:8a2cac7b|0fff2880|588673d0|6a540d84|6335424a|49503504" +frontend/src/components/workspace/messages/message-group.tsx,5,0,mixed,medium,P1,"merge:8a2cac7b|0fff2880|588673d0|6a540d84|49503504" +frontend/src/components/workspace/input-box.tsx,3,0,mixed,medium,P2,"merge:0fff2880|6335424a|49503504" +frontend/src/core/i18n/locales/zh-CN.ts,8,0,visual-only,low,P2,"merge:0fff2880|588673d0|6a540d84|6335424a|49503504" +frontend/src/core/i18n/locales/en-US.ts,6,0,visual-only,low,P2,"merge:0fff2880|588673d0|6a540d84|49503504" +frontend/src/core/messages/utils.ts,3,0,logic-only,medium,P2,"merge:588673d0|49503504" diff --git a/.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md b/.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md new file mode 100644 index 00000000..8890ad98 --- /dev/null +++ b/.planning/phases/01-conflict-inventory-and-decision-matrix/conflict-inventory.md @@ -0,0 +1,32 @@ +# Phase 01 冲突清单(MERGE-01) + +## 目标 + +以“merge 覆写证据 + Titan overlap 证据 + 行为关键度”构建可审计的文件级冲突清单,为后续 Phase 2/3 提供执行输入。 + +## 分级口径 + +- `P0`:行为关键路径(线程路由、流式会话、skills 协议),且存在 merge 热点或 Titan 重叠。 +- `P1`:中高频冲突文件,直接影响聊天/工件主流程,但非核心协议入口。 +- `P2`:低行为关键度或偏文案/样式文件,保留审计记录并延后处理。 + +## 变更类型口径 + +- `logic-only`:主要是数据流、协议、状态处理。 +- `visual-only`:主要是样式、文案、视觉层结构。 +- `mixed`:同一文件同时承载视觉与逻辑,后续执行必须按 L0/L1/L2 边界拆分。 + +## 关键热点(优先输入后续阶段) + +1. `frontend/src/app/workspace/chats/[thread_id]/page.tsx`(P0) +2. `frontend/src/core/threads/hooks.ts`(P0) +3. `frontend/src/core/skills/api.ts`(P0) +4. `frontend/src/components/workspace/chats/use-thread-chat.ts`(P1) +5. `frontend/src/components/workspace/messages/message-list-item.tsx`(P1) + +以上文件均在 `conflict-inventory.csv` 提供 `evidence_refs`,可回溯到具体 merge/Titan 证据。 + +## 审计说明 + +- 原始证据链见 `audit-evidence.md`。 +- CSV 为机器可消费输入;本文件为人类审查口径说明。