| name | outline-review |
| description | 审查笔记目录结构的合理性,包括边界问题、内容重复、章节均衡、学习曲线等维度。当用户要求审查目录、检查章节划分是否合理、或询问某个知识点应该放在哪里时调用。 |
目录结构审查
任务说明
对 Typst 笔记的目录结构(注释大纲形式)进行系统性审查,识别结构问题并给出改进建议。重点关注边界问题——知识点是否重复出现、章节内是否保持高内聚与合理发散。
适用场景:
- 用户要求审查目录结构是否合理
- 用户询问某个知识点应该放在哪个章节
- 用户觉得某个章节内容太多/太少,想调整
- 用户感觉有内容重复或边界模糊
审查维度(8个维度)
1. 结构合理性
检查 Part/Chapter 的划分边界是否清晰:
- Part 层级:是否按大的知识领域划分,各 Part 之间是否有清晰的主题区分
- Chapter 层级:同一 Part 下的 Chapter 是否按统一逻辑排列(如基础→进阶、概念→应用)
- 边界清晰度:相邻 Chapter 之间是否有明确的主题分界,避免"既是A也是B"的模糊地带
评价标准:
- ✅ 好:每个 Part/Chapter 都能用一句话清晰描述其主题
- ⚠️ 一般:部分章节主题有重叠,但大致可区分
- ❌ 差:章节之间主题混乱,读者不知道某知识点该去哪找
2. 内容完整性
检查核心知识点是否有遗漏:
- 与该领域的经典教材/知识体系对比,是否缺少重要主题
- 各 Part 之间是否平衡(不会某一部分内容过多而另一部分过于简略)
- 基础→进阶的内容是否完整覆盖
注意:内容丰富性是本项目用户看重的重要优点,审查时要肯定内容广度,而不是建议删减。
3. 内容重复性(边界问题核心)
检查跨章节的知识点重叠:
| 重复类型 | 处理原则 | 示例 |
|---|
| 合理重复 | 保留,但需明确层次区分 | 基础章介绍 KMP 思想,高级章深入 next 数组细节 |
| 边界模糊 | 合并或明确分工 | BST 的操作在一章,性能分析在另一章 → 应合并 |
| 完全重复 | 删除一处 | 同一知识点在两章都完整讲解 → 保留一处,另一处引用 |
判断标准:
- 先基础后深入 → ✅ 合理重复(标注"基础/进阶"关系)
- 同一角度讲两次 → ❌ 完全重复(必须合并)
- 相关但不同角度 → ⚠️ 边界模糊(需明确分工)
审查方法:
- 通读所有章节标题和小节标题
- 标记出现两次以上的知识点
- 判断每次出现的侧重点是否不同
- 如果侧重点不同,确认是否在标题或注释中明确了层次关系
4. 章节均衡性
检查各章节的内容量是否均衡:
- 统计方法:数每个 Chapter 的 Section 数量
- 合理范围:3-10 个 Section 较为适中
- 过大章节(>15节):建议拆分为多个 Chapter
- 过小章节(<3节):建议合并到相邻章节或补充内容
拆分原则:
- 按难度层次拆分:基础 → 进阶 → 高级技巧
- 按主题类型拆分:不同的子模型各自成章
- 拆分后保持每章有独立的学习目标
5. 编号一致性
检查章节编号是否连续、正确:
- Chapter 编号是否连续(是否有跳号、重号)
- Section 编号是否与 Chapter 编号对应
- Part 编号是否连续
常见问题:
- 中间插入/删除章节后忘记更新后续编号
- 某一章被删除后留下空号
6. 学习曲线合理性
检查内容排列是否符合循序渐进的学习规律:
- 从易到难:基础概念 → 核心算法 → 高级技巧
- 从具体到抽象:具体实例 → 一般模型 → 优化方法
- 前置依赖:学习某章所需的预备知识是否已在前面覆盖
常见问题:
- 基础 Part 中混入了高级内容(如数据结构基础中出现后缀自动机)
- 前置知识在后面才讲(形成循环依赖)
7. 章节内聚性
检查每个章节内部的内容是否围绕统一主题:
- 高内聚:章节内所有小节都服务于同一个主题,去掉任何一个都会破坏完整性
- 低内聚:章节内包含多个不相关的主题,只是"凑在一起"
判断方法:
- 用一句话概括该章主题
- 检查每个小节是否都直接服务于这个主题
- 如果有多个小节偏离主题,考虑拆分或移出
8. 内容丰富性(亮点肯定)
用户看重内容丰富性,审查时要:
- 肯定亮点:明确指出哪些内容覆盖得好、有深度
- 保护广度:不要因为"章节均衡"而建议删减内容,而是建议拆分
- 建议补充:如果发现重要遗漏,可以建议添加(但需征得用户同意)
审查工作流
步骤1:读取目录
- 找到
main.typ 中的注释目录部分(// Part X: ... 和 // Chapter Y: ... 格式)
- 完整读取所有 Part、Chapter、Section 的标题
步骤2:逐项审查
按上述 8 个维度逐一审查,记录发现的问题:
【问题清单】
1. 编号问题:Chapter 17 后直接跳到 Chapter 19,缺少 Chapter 18
2. 内容重复:并查集同时出现在 Chapter 6 和 Chapter 25
3. 章节过大:Chapter 17 有 32 节,建议拆分
...
步骤3:分类整理
将问题按严重程度分类:
| 严重程度 | 说明 | 处理优先级 |
|---|
| 🔴 必须修复 | 编号错误、明显重复、内容缺失 | 高 |
| 🟡 建议改进 | 边界模糊、章节过大、内聚性弱 | 中 |
| 🟢 可选优化 | 学习曲线微调、内容补充建议 | 低 |
步骤4:给出改进方案
针对每个问题给出具体的改进建议:
- 编号问题:直接给出修正后的编号方案
- 内容重复:说明保留哪处、删除哪处,或如何明确层次关系
- 章节过大:给出拆分方案(拆成几章、每章主题是什么)
- 边界模糊:给出重新划分的建议
步骤5:总结评价
最后给出整体评价:
- 各维度评分(1-5分)
- 主要优点
- 主要问题
- 总体建议
边界问题判断指南
"先基础后深入"的合理模式
以下情况属于合理重复,应该保留但需明确层次:
| 基础章节(入门) | 高级章节(深入) | 层次区分说明 |
|---|
| 思想/概念介绍 | 实现细节/优化 | 知其然 → 知其所以然 |
| 基本操作 | 高级应用/变种 | 会用 → 用好 |
| 简单场景 | 复杂场景/拓展 | 基础 → 进阶 |
正确示例:
- Chapter 4:KMP 算法基础(思想、基本流程)
- Chapter 27:KMP 算法详解(next 数组推导、失配函数优化)
错误示例:
- Chapter 6:BST 的插入、删除、查找操作
- Chapter 10:BST 的查找效率分析
- (问题:操作与性能紧密相关,拆分导致学习割裂)
高内聚章节的特征
✅ 好的内聚:
- "字符串高级数据结构"——下面都是字符串相关的高级结构
- "动态规划经典模型"——下面都是不同类型的 DP 模型
❌ 差的内聚:
- "树的应用"——包含哈夫曼树、并查集、堆、BST、AVL(主题分散)
- "其他算法技巧"——包含前缀和、差分、数学、构造(缺乏统一主题)
拆分过大章节的方法
当某章内容过多时,按以下优先级选择拆分方式:
- 按难度层次:基础 → 进阶 → 高级技巧(最常用)
- 按子主题:不同子领域各自成章
- 按应用类型:理论 → 应用 → 优化
输出格式
审查结果按以下结构输出:
## 一、发现的问题
### 🔴 必须修复
1. ...
2. ...
### 🟡 建议改进
1. ...
2. ...
### 🟢 可选优化
1. ...
2. ...
## 二、详细分析
(对每个问题给出具体分析和改进建议)
## 三、整体评价
| 维度 | 评分(1-5) | 说明 |
|------|------------|------|
| 结构合理性 | x/5 | ... |
| 内容完整性 | x/5 | ... |
| 内容丰富性 | x/5 | ... |
| 章节均衡性 | x/5 | ... |
| 学习曲线 | x/5 | ... |
| 内聚性 | x/5 | ... |
| 编号一致性 | x/5 | ... |
**主要优点**:
- ...
**总体建议**:
- ...
注意事项
- 内容丰富性是优点:不要建议删减内容来"均衡"章节,而是建议拆分
- 尊重原有设计:优先在原有框架基础上调整,不要完全推翻重来
- 给出具体方案:每个问题都要附带具体的改进建议,而不是只说"有问题"
- 标注重复的合理性:重复不一定是坏事,要区分"合理的层次递进"和"无意义的重复"
- 先读后改:审查阶段只分析和提建议,不要直接修改文件——等用户确认后再改