分析树
把分析树维护为用户主导的当前问题依赖结构。树随认知更新;用户决定核心方向、广度、深度和结束时间。
适用边界
- 默认用于数据分析过程;是否使用不取决于分析复杂度,而取决于是否需要持续维护分析思路、证据和当前位置。
- 产品需求、功能设计、技术方案等非数据分析任务不得自动触发,也不得自动创建或更新分析树文档。
- 非数据分析场景仅在用户明确要求使用
analysis-tree或“分析树”时使用。
1. 读取当前状态
-
从对话、项目材料和已有状态文档识别当前核心问题。
-
同一问题更新原状态文档;新问题建立新文档。状态文档是该问题的唯一事实来源:
{项目基目录}/reports/analysis-tree/<分析主题>.md -
从用户表述、取数要求和结果反馈中提取实际分析意图。数据请求已经明确表达假设时,直接记录该假设。
-
比较本轮认知与现有树,确定需要增补、改写、重组或剪枝的内容。
-
歧义会改变核心问题或主要结构时,询问一个具体问题;结构明确时按现有上下文推进。
完成标准:核心问题已对应到唯一状态文档,本轮变化范围明确。
2. 重构问题依赖
先归位内容,再调整层级:
- 节点只承载需要单独取证并影响上层判断的问题或假设;范围、定义、现象和证据写入节点内部,结论回写到被回答的节点。
- 同级节点能够分别判断;子节点依赖父节点的判断结果。
- 对话顺序用于识别认知变化,节点位置由问题依赖决定。
按以下动作更新:
- 增补:增加需要单独取证的问题,或增加依赖现有判断的子问题。
- 改写:修正对象、范围、口径、标准或结论;用正式结果替换探测结果。
- 重组:节点出现包含、重复或层级错位时,合并、拆分或移动节点;核心框架变化时重构相关分支。
- 剪枝:合理假设已被证据排除且仍限制当前结论时,保留简要证据和剪枝原因。误解、错误口径、重复内容和替代结果直接改写或删除。
正式树写入用户明确提出或取数行为直接表达的方向。模型推导的方向作为候选,用户采用后写入。将正在推进的节点标记为当前分析位置。
完成标准:当前有效内容均已归位;每个节点、同级和父子关系符合上述定义;被修正或替代的内容已退出当前结构。
3. 写回状态文档
问题、证据、结论、状态、结构或当前位置发生实质变化时,完成语义归并后更新同一份 Markdown:
# <分析主题>
## 核心问题
<当前核心问题>
## 当前结论
<已形成的结论及其适用范围;尚未形成时省略本节>
## 分析树
- **1 [待验证] <问题或假设>**
- 证据:<最新有效的简要证据>
- 当前结论:<已有判断或仍待验证>
- **1.1 [已结论] <子问题或假设>**
- 证据:<最新有效的简要证据>
- 当前结论:<当前判断>
- **2 [已剪枝] <问题或假设>**
- 证据:<简要证据>
- 当前结论:<排除该方向的判断>
- 剪枝原因:<原因>
## 当前分析位置
`1.1`
状态使用 待验证、已结论 或 已剪枝。具体数值、SQL、工具调用和执行日志保留在原始材料中;树只保留理解问题依赖所需的简要证据。当前结论保持证据能够支持的强度。仅当重大重构会影响读者理解时,在文档末尾补一行结构变更说明。
完成标准:本轮实质变化、受影响的上层结论、分支关系和当前位置均已同步,状态文档与当前分析状态一致。
按需分支
展示
用户要求查看时,根据最新状态文档即时生成 Mermaid 流程图:节点显示编号、问题、状态和可压缩的一行结论;高亮当前位置,弱化已剪枝节点,保留完整连接关系。详细证据继续保留在 Markdown 正文。
完成标准:流程图与状态文档中的节点、关系、状态和当前位置一致。
交接
用户要求生成报告或结束分析时,先写回最新状态,再交给后续任务。报告选择并压缩所需子树,同时保留原问题依赖;待验证节点保持可见,结论保持当前证据边界。
完成标准:后续任务取得的树与当前分析状态一致。