# Gongkao

> 公考面试结构化教研与产品题库工具。覆盖题目生成、方法论提炼、框架模板、过渡句库、素材库、讲义组装和产品JSON输出7个工作流， 支持从单题生成到完整讲义产品的全生命周期。每道题含 frontmatter 元信息 + 题干 + 思路大纲 + 800-1000字逐字稿， 经 Python 多模式验证（字数+AI痕迹+用语禁忌+结构完整性）后写入对应目录。 覆盖综合分析、组织计划、人际关系、应急应变、自我认知、言语表达六类题型。 触发词：面试题库、出面试题、公考面试题、批量出题、题库填充、填充题库、面试逐字稿、出题加答题、 生成方法论、更新方法论、生成框架、更新框架、生成过渡句、更新过渡句、生成素材、补充素材、素材库、 组装讲义、更新讲义、导出讲义、讲义更新、产品题库、JSON题库、程序导入、复测题数据。

- Skill: `rshawn0307-maker/gongkao` (Agent Skill, multi-file: 17 files)
- Install (CLI): `npx skillmds@latest add rshawn0307-maker/gongkao`
- Raw SKILL.md: https://api.skillmd.com/api/skills/rshawn0307-maker/gongkao/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: rshawn0307-maker (https://skillmd.com/u/rshawn0307-maker)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/rshawn0307-maker/gongkao

---


# 公考面试结构化讲义全产品工具

## 适用场景

为公考面试结构化培训提供教研与产品题库支持，覆盖从单题生成到程序可导入数据的7个工作流：
1. **题目生成**：批量生成面试题 md 文件（frontmatter + 题干 + 思路大纲 + 800-1000字逐字稿）
2. **方法论生成**：从题库样本提炼题型方法论（题型特征 + 核心要点 + 误区规避）
3. **框架模板生成**：生成答题框架骨架（完整结构 + 变体 + 结构要点）
4. **过渡句生成**：从题库提取分类过渡句库（破题/分析/对策/收尾）
5. **素材库生成**：生成4类素材（政策摘要/案例故事/金句语录/数据统计）
6. **讲义组装/更新**：组装或增量更新完整讲义（多章节合并 + 结构验证 + 导出）
7. **产品题库输出**：把新题或现有题转换为版本化 JSON（评分维度 + 错因候选 + 复测约束）

六类题型：综合分析题、组织计划题、人际关系题、应急应变题、自我认知题、言语表达题。

## 工作流调度

根据用户意图分派到对应工作流：

| 工作流 | 触发词 | 输入 | 输出 | 详细模板 |
|--------|--------|------|------|---------|
| A. 题目生成 | 面试题库/出面试题/批量出题/题库填充 | 题型+主题+数量 | 单题 md 文件 | 本文内嵌 |
| B. 方法论生成 | 生成方法论/更新方法论/方法论提炼 | 题型+题库样本 | 方法论段落 md | [references/workflow-b-methodology.md](references/workflow-b-methodology.md) |
| C. 框架模板生成 | 生成框架/更新框架/框架模板 | 题型+方法论 | 框架模板段落 md | [references/workflow-c-framework.md](references/workflow-c-framework.md) |
| D. 过渡句生成 | 生成过渡句/更新过渡句/过渡句库 | 题型+题库样本 | 过渡句段落 md | [references/workflow-d-transitions.md](references/workflow-d-transitions.md) |
| E. 素材库生成 | 生成素材/补充素材/素材库 | 主题+题型+素材类型 | 素材 md 文件 | [references/workflow-e-materials.md](references/workflow-e-materials.md) |
| F. 讲义组装/更新 | 组装讲义/更新讲义/导出讲义 | 各模块内容 | 完整讲义 md | [references/workflow-f-lecture.md](references/workflow-f-lecture.md) |
| G. 产品题库输出 | 产品题库/JSON题库/程序导入/复测题数据 | 新题或现有题 + 输出目录 | 每题一个标准 JSON | [references/workflow-g-product-data.md](references/workflow-g-product-data.md) |

**调度规则**：用户明确要求程序导入或 JSON 时优先走 G；同时要求讲义和产品数据时，先执行 A 或 F，再基于已确认内容执行 G。其它多意图按 A→B→C→D→E→F 顺序询问优先级。

## 触发条件

用户说以下任意一种：
- 题目生成："面试题库" / "出面试题" / "公考面试题" / "批量出题" / "题库填充" / "填充题库" / "面试逐字稿" / "出题加答题"
- 方法论生成："生成方法论" / "更新方法论" / "方法论提炼"
- 框架模板生成："生成框架" / "更新框架" / "框架模板"
- 过渡句生成："生成过渡句" / "更新过渡句" / "过渡句库"
- 素材库生成："生成素材" / "补充素材" / "素材库"
- 讲义组装/更新："组装讲义" / "更新讲义" / "导出讲义" / "讲义更新"
- 产品题库输出："产品题库" / "JSON题库" / "程序导入" / "导入网页" / "导入小程序" / "复测题数据"
- 类似表述

---

## 工作流A：题目生成

### md 文件模板

每道题按以下结构生成（命名格式：`题型_编号_主题.md`，如 `综合分析_01_指尖形式主义.md`）：

````markdown
---
type: 面试题
题型: 综合分析
主题: 指尖形式主义
难度: 中
来源: 模拟
updated: 2026-06-29
tags:
  - 类型/面试题
  - 业务线/公考结构化
---

# {题型}题：{主题}

## 题干

> {题干内容，≤80字}

## 思路大纲

**破题角度**：{一句话点破本质，反常识/反模板}

**核心观点**（按题型选择展开方式）：

**方式A：3 观点结构**（综合分析/自我认知/言语表达默认）
1. {观点1}
2. {观点2}
3. {观点3}

**方式B：时间线结构**（组织计划/应急应变默认）
1. {事前：准备/止损}
2. {事中：执行/处置}
3. {事后：复盘/善后}

**方式C：多维分析结构**（综合分析政策类适用）
1. {个人层面}
2. {社会层面}
3. {政府/制度层面}

## 答题逐字稿

{800-1000字逐字稿，总分总结构}

---
*updated: 2026-06-29*
````

写入知识库的对应题型文件夹，目录结构见下方「输出目录」。

### 输出目录

知识库根目录按以下优先级确定：
1. 用户明确指定了路径 → 直接使用该路径
2. 当前工作目录下存在 `02-Areas/公考面试结构化培训/01_题库与训练/` → 使用该子目录（PARA 结构）
3. 当前工作目录下存在 `01_题库与训练/` → 使用该子目录（兼容旧结构）
4. 以上都不存在 → 在当前工作目录下创建 `02-Areas/公考面试结构化培训/01_题库与训练/<题型>题/` 后写入

```
AI工作区/                              <- 知识库根目录
|-- 02-Areas/                          <- PARA: 个人知识资产
|   +-- 公考面试结构化培训/
|       +-- 01_题库与训练/
|           |-- 综合分析题/
|           |   |-- 综合分析_01_指尖形式主义.md
|           |   +-- ...
|           |-- 组织计划题/
|           |-- 人际关系题/
|           |-- 应急应变题/
|           |-- 自我认知题/
|           +-- 言语表达题/
```

文件夹不存在时先 `mkdir -p` 创建再写入。写入后用 `ls` 确认文件已落盘。

### 核心流程（6步）

#### 步骤1：选题

- 六题型各选典型主题，热点话题/政策类/社会现象优先
- 避免过于专业的岗位题（除非用户指定岗位）
- 选题要"看着简单、实有政策深度"——这类题最容易暴露假大空
- 破题必须反常识/反模板（如"不是基层变懒了，是考核方式在逼基层装忙"）

**六题型选题参考**（非穷举，供选题方向对标）：

| 题型 | 选题方向 | 示例主题 |
|------|---------|---------|
| 综合分析 | 社会现象 / 政策解读 | 指尖形式主义、银发经济、AI就业冲击、未成年人网络保护 |
| 组织计划 | 活动策划 / 调研组织 | 反诈宣传进社区、年轻干部下基层调研、政务服务满意度调查 |
| 人际关系 | 职场矛盾 / 群众沟通 | 新同事被老同事排挤、与矛盾同事合作、群众对工作不理解 |
| 应急应变 | 突发事件 / 舆情处置 | 暴雨导致办事大厅进水、网络舆情突然发酵、会议现场设备故障 |
| 自我认知 | 动机 / 优缺点 / 经历 | 报考动机、最失败的经历、你的优势与不足 |
| 言语表达 | 演讲 / 劝说 / 模拟 | 以"担当"为主题即兴演讲、劝说群众配合搬迁、模拟处理投诉 |

🔴 **CHECKPOINT：选题清单先呈现给用户确认数量、题型分布、主题方向，用户确认后再进入撰写。**

#### 步骤2：撰写内容

按上方 md 文件模板生成完整内容。撰写时主动规避下方"内容风格铁律"和"用语禁忌"，初稿就要尽量干净。题干写完先 `len()` 自检是否 ≤80字。

#### 步骤3：字数验证

运行验证脚本统计逐字稿字符数（含标点）。脚本位于本 skill 目录下 `scripts/validate_question.py`：

```bash
# 单个文件验证：
python <skill目录>/scripts/validate_question.py "<md文件路径>"

# 批量验证：
python <skill目录>/scripts/validate_question.py 综合分析_*.md
```

目标：800-1000字（含标点，允许轻微溢出100字）。

**脚本不存在 fallback**：如果 `validate_question.py` 找不到（路径错误/文件被移动），手动统计逐字稿部分字符数（含中文标点，不含 markdown 标记），确认在 800-1000 区间。

**字数不达标处理**：
- 字数 >1000 → 优先缩减冗余连接词、重复论点、注水标语，保留核心论据
- 字数 <800 → 在现有论点下补充具体数据、案例、操作动作，不加新论点

#### 步骤4：AI痕迹 + 用语禁忌扫描

同一脚本自动扫描 6 类 AI 痕迹模式 + 公考用语禁忌四类。脚本支持批量验证多个文件。

**扫描不达标处理**：
- AI痕迹命中 → 按下方"AI 痕迹扫描清单"的白名单替换原则逐条改写 → 重跑脚本确认零命中
- 用语禁忌命中 → 按下方"公考面试用语禁忌"的白名单替换原则改写 → 重跑脚本确认零命中
- 破折号（human-writing 硬禁令，以最新版为准）→ 全部改为逗号或句号断句 → 重跑确认
- 机械三段式命中 → 将"第一/第二/第三"改为递进关系或并列短语 → 重跑确认

#### 步骤5：写入md文件

🔴 **CHECKPOINT：写入前展示完整 md 内容给用户确认，用户说"OK 写"再写入。用户说"改"-> 回步骤 2 修改。**

命名 `题型_编号_主题.md`，按上方「输出目录」章节确定路径并写入。写入后用脚本做最终验证：

```bash
python <skill目录>/scripts/validate_question.py "<刚写入的md文件路径>"
```

#### 步骤5.5：上传 IMA 笔记

每道题写入 md 文件后，同步上传到 IMA 笔记。**本地 md 文件保留**，同时上传一份到 IMA。

**操作**：
1. 生成时间戳 `YYYYMMDD_HHMMSS`（如 `20260712_153000`）
2. 构造笔记标题：`{题型}_{主题}_{timestamp}`（如 `综合分析_指尖形式主义_20260712_153000`）
3. 调用本 skill 的 IMA 上传脚本：

```bash
node <skill目录>/scripts/upload_to_ima.js "<md文件路径>" "<笔记标题>"
```

**注意**：本地 md 文件保持原名（不含时间戳），仅在 IMA 笔记标题中加时间戳。上传失败不阻断主流程，在报告中标注即可。

**IMA 上传失败重试**：如果 `upload_to_ima.js` 返回 `⚠️ IMA上传失败`，检查 `ima_api.cjs` 是否存在 + IMA 登录状态。重试 1 次；仍失败则跳过上传，本地 md 文件已落盘不受影响，在最终报告中标注"IMA 未同步"。

#### 步骤6：批量生产策略

**铁律：先样例后铺量**

a. 先做每类1道样例（共6道），覆盖六个题型
b. 全部通过字数 + AI痕迹 + 用语禁忌 + 6条铁律验证
c. 呈现6道样例给用户审阅

🔴 **CHECKPOINT · 🛑 STOP：必须等用户明确确认"风格 OK / 可以批量"后，才继续下方 d-f。用户未确认前禁止批量生产。**

d. 用户确认后批量生产剩余题目
e. 批量生产时每批用脚本批量验证：`python <skill目录>/scripts/validate_question.py 综合分析_*.md`
f. 每批验证不通过的文件单独修正后重跑，不要混入下一批

---

## 工作流B：方法论生成

从现有题库样本提炼题型方法论，输出匹配讲义"一、答题方法论"结构的段落。

**输入**：题型 + 该题型现有题库样本（至少 8 道逐字稿）
**输出**：方法论段落 md，结构为：题型特征 → 核心方法论要点（6-8个）→ 常见误区与规避表格
**流程**：读取题库样本 → 分析共性模式 → 提炼要点+例句 → 生成误区表格 → 跑 `--mode methodology` 验证 → 🔴 CHECKPOINT 确认

详细输出模板和规范见 [references/workflow-b-methodology.md](references/workflow-b-methodology.md)。

## 工作流C：框架模板生成

基于方法论生成答题框架骨架，输出匹配讲义"二、答题框架模板"结构的段落。

**输入**：题型 + 该题型方法论
**输出**：框架模板段落 md，结构为：完整结构代码块 → 变体 → 结构要点
**流程**：读取方法论 → 设计骨架 → 生成变体 → 提取要点 → 跑 `--mode framework` 验证 → 🔴 CHECKPOINT 确认

详细输出模板和规范见 [references/workflow-c-framework.md](references/workflow-c-framework.md)。

## 工作流D：过渡句生成

从题库提取并分类过渡句，输出匹配讲义第七章结构的段落。

**输入**：题型 + 该题型现有题库样本
**输出**：过渡句段落 md，按破题开场/引出原因/深层分析/对策推进/收尾升华分类
**流程**：扫描逐字稿 → 按功能分类提取 → 去重去AI痕迹 → 按频率排序 → 验证 → 🔴 CHECKPOINT 确认

详细输出模板和规范见 [references/workflow-d-transitions.md](references/workflow-d-transitions.md)。

## 工作流E：素材库生成

生成4类素材（政策文件摘要/典型案例故事/高分金句语录/热点数据统计），每类有独立的内容规范和字数要求。

**输入**：主题 + 题型（可选）+ 素材类型（政策文件摘要/典型案例故事/高分金句语录/热点数据统计）
**输出**：素材 md 文件，写入 `02-Areas/公考面试结构化培训/02_素材库/{素材类型}/`
**流程**：确定主题 → 🔴 CHECKPOINT 选题确认 → 按规范生成 → 跑 `--mode material` 验证 → 🔴 CHECKPOINT 内容确认 → 写入文件夹

详细素材 md 模板、4类素材类型规范和输出目录见 [references/workflow-e-materials.md](references/workflow-e-materials.md)。

## 工作流F：讲义组装/更新

组装或增量更新完整讲义，支持新增章节插入、已有章节替换、前言更新。

**输入**：各模块内容文件
**流程**：
1. 读取现有讲义，解析章节结构
2. 识别需更新章节（新增/修改/删除）
3. 增量更新（新增章节插入指定位置、修改章节替换内容）
4. 更新前言（章节数量、目录结构、使用说明）
5. 更新 frontmatter（updated 日期）
6. 跑 `--mode lecture --expected-chapters N` 验证整体结构
7. 🔴 CHECKPOINT 展示更新摘要
8. 写入讲义文件

**章节编号**：第一至六章题型章，第七章过渡句，第八章表达技巧，第九章素材库（新增）

详细流程和注意事项见 [references/workflow-f-lecture.md](references/workflow-f-lecture.md)。

## 工作流G：产品题库输出

把新题或已确认的 Markdown 题目转换为产品可直接导入的 JSON。仅在用户明确要求产品题库、JSON 或程序导入时触发，不改变工作流 A 的默认 Markdown 输出。

**输入**：新题或现有题文件 + 输出目录 + 可选题目 ID 范围

**输出**：每题一个符合 `question-schema-v1` 的 JSON 文件
**流程**：读取产品合同 → 确认题目与 ID → 映射7个评分维度 → 选择合法错因候选 → 填写复测约束 → 校验 → 🔴 CHECKPOINT → 写入

执行前必须读取 [references/workflow-g-product-data.md](references/workflow-g-product-data.md)。其中会按需路由到 `references/product/` 下的题目 Schema、评分量表、错因标签和复测规则。

产品 JSON 默认不上传 IMA；只有用户明确要求同步时才执行 IMA 上传。题目 ID 无法确认唯一性时停止写入，不得猜测或复用 ID。

---

## 共享质量标准

以下标准适用于所有工作流，不可妥协。

### 内容风格铁律（6条不可妥协）

答题不是写作文，是"考场口述"。要的是高分感，不是字数堆砌。

1. **有观点**——敢说"我认为""本质是""核心矛盾是"，别用"客观来说""值得我们思考"这种和稀泥
2. **有逻辑**——每段要有"承上→启下→落到点"的内部节奏，别三段孤立
3. **有表达**——节奏有快有慢，长短句交替；避免每段都"第一""第二""第三"机械
4. **避免套路**——不写"领导让我干这个、领导让我想这个"那种万能套话
5. **拒绝假大空**——不写"体现了……彰显了……标志着……"那种注水标语
6. **有深度、可操作、接地气**——观点要落到具体抓手（数据、案例、动作），不说虚的

**白话原则**：写完大声读一遍——读起来像"人话"再继续，读起来像"作文"就重写。

### 分题型高分要素差异化

不同题型考官看的核心不同，逐字稿侧重点要跟着变：

| 题型 | 考官最看重的 | 逐字稿侧重点 | 常见失分点 |
|------|------------|-------------|-----------|
| **综合分析** | 分析深度，透过现象看本质 | 重"本质+机制+对策"递进，观点要有判断力 | 停在现象层，缺机制分析 |
| **组织计划** | 流程完整性 + 可落地性 | 按"事前准备/事中执行/事后复盘"时间线展开，对策要有具体抓手 | 万能模板"领导交给我"，缺细节 |
| **人际关系** | 情商 + 原则性平衡 | 重"情理法"平衡：先理解对方 -> 再分析矛盾点 -> 给出兼顾方案 | 一味忍让或一味对抗 |
| **应急应变** | 轻重缓急排序 + 快速反应 | 按"止损/调查/处置/善后"优先级展开，先解决最紧急的 | 平均用力，没排序 |
| **自我认知** | 真实性 + 岗位匹配度 | 用具体经历支撑观点，不说空话"我很努力" | 假大空自我表扬 |
| **言语表达** | 感染力 + 对象感 | 有"对人说话"的对象感，不是背稿，注意语气身份适配 | 背演讲稿腔调 |

### 公考面试用语禁忌（4类 + 白名单替换）

用语得体、政治正确、考官听得进——是比"有观点"更基础的红线。

1. **不要带贬义色彩的比喻词**：落水狗、狼狈、龟孙、痛打、狼狈为奸等
2. **慎用网络流行词**：韭菜、小白、键盘侠、内卷、摆烂、躺平、yyds、绝绝子等
3. **慎用情绪化表达**：气死、笑死、巨坑、血亏、无语、离谱等
4. **不要有政治风险**："上面""领导拍脑袋""上面不作为"等不指明的吐槽；涉及民族、宗教、性别等要中性得体

**白名单替换原则**：
- 想用比喻 → 改成中性描述（如"落水狗"→"整治覆盖得了的只是显性摊位"）
- 想用网络词 → 改成书面表达（如"内卷"→"过度竞争"、"躺平"→"消极应对"）
- 想吐槽 → 改成建言（"运动式执法难持续"已经是建言式吐槽，OK）

**自检**：写完最后一遍"考官读出来不得罪人"——能过即可继续；任何一句读出来让考官皱眉或"笑场"，重写。

### AI 痕迹扫描清单（6类）

写完逐字稿后必跑扫描。重点扫：

1. **AI标志性短语**："标志着""彰显了""体现了""不断演变的""至关重要""不可或缺"等 → 换具体动作/数据/时间
2. **三段式列举**（"无缝、直观、强大"）→ 改两项或四项，别凑3
3. **破折号**（"——这是关键"）→ 按 human-writing 最新版硬禁令全部清零，改为逗号或句号
4. **模糊归因**（"专家认为""业内人士表示"）→ 给出具体出处或直接删
5. **否定式排比**（"这不仅仅是……而是……"）→ 改直接陈述
6. **万能收束**（"总之，…"）→ 重写一个（如"说到底"、具体行动、不需要"总之"开头）

**公考领域高危词**（一字不差禁用）：
- "体现/彰显/凸显" → 改"X表明"/"X是因为"/直接说事实
- "深入推进/全面落实/持续优化" → 给出谁、什么时间、做什么
- "多措并举/综合施策/协同推进" → 列出具体几条
- "切实保障/有效提升/有力推动" → 给出可量化指标

**改写后自检**：总字数仍在 800-1000 之间；读起来像人话（用 human-writing 的 scripts/check_prose.py 复核，同仓库安装时位于 `../human-writing/scripts/check_prose.py`；冒号/破折号/翻案腔按 human-writing 最新版硬禁令，全部清零）

### 字数统计口径

- 统计"答题逐字稿"部分的字符数（含中文标点）
- 不含 markdown 标记、空行、frontmatter
- 目标：800-1000字（含标点，允许轻微溢出100字）
- 验证脚本自动提取逐字稿部分并统计
- 方法论全文：1500-4000字
- 素材按类型：政策200-400字 / 案例250-400字 / 金句50-150字 / 数据100-250字

### 验证清单（每次必查）

**工作流A（题目生成）**：
- [ ] 字数 800-1000（含标点）
- [ ] AI痕迹零命中（6类扫描清单）
- [ ] 用语禁忌零命中（4类）
- [ ] 破折号清零（1段0个）
- [ ] 无机械三段式（第一/第二/第三连续）
- [ ] 6条铁律逐条过
- [ ] frontmatter 字段完整
- [ ] 命名格式正确（`题型_编号_主题.md`）
- [ ] 题干 ≤80 字
- [ ] 逐字稿总分总结构
- [ ] IMA 笔记已上传（note_id 已记录）

**工作流B（方法论生成）**：
- [ ] 含"题型特征""核心方法论要点""常见误区与规避"三段
- [ ] 核心要点 6-8 个
- [ ] 每个要点至少 2 条引用例句
- [ ] 误区表格至少 5 行
- [ ] 全文 1500-4000 字
- [ ] AI痕迹零命中

**工作流C（框架模板生成）**：
- [ ] 含"完整结构""结构要点"
- [ ] 完整结构下至少 1 个代码块
- [ ] 代码块内有占位说明（至少 3 处）
- [ ] 代码块内有【破题】和【收尾】标记
- [ ] AI痕迹零命中

**工作流D（过渡句生成）**：
- [ ] 按破题/分析/对策/收尾分类
- [ ] 每类至少 3 条过渡句
- [ ] 去重去AI痕迹
- [ ] 无"总之/综上"收尾

**工作流E（素材库生成）**：
- [ ] frontmatter 含 type/素材类型/题型/主题/来源/updated/tags
- [ ] 素材类型为4种之一
- [ ] 含"素材内容""适用场景""使用建议"三段
- [ ] 字数符合类型要求
- [ ] 来源标注完整
- [ ] AI痕迹零命中（素材内容段落）

**工作流F（讲义组装/更新）**：
- [ ] 章节编号连续（第一章至第N章）
- [ ] 前言章节数量描述与实际一致
- [ ] 题型章含"答题方法论""答题框架模板""例题汇编"三节
- [ ] 所有嵌入逐字稿字数 800-1000
- [ ] 所有嵌入逐字稿AI痕迹零命中
- [ ] frontmatter updated 字段已更新

**工作流G（产品题库输出）**：
- [ ] `schema_version` 固定为 `question-schema-v1`
- [ ] 题目 ID 唯一，题型代码与 ID 一致
- [ ] 4个公共维度 + 当前题型3个专属维度，分值合计100
- [ ] 错因候选只使用 `error-tags-v1` 中合法编码
- [ ] 主能力进入复测目标，复测约束包含实质变化要求
- [ ] 参考答案在产品中标记为提交前不可见
- [ ] `validate_product_question.py` 校验通过
- [ ] 未经用户确认不写入，不默认上传 IMA

### 执行反例黑名单（不要做什么）

以下行为会破坏流程质量，明确禁止：

| # | 禁止行为 | 为什么 | 正确做法 |
|---|---------|--------|---------|
| 1 | 用户未确认选题就直接撰写 | 选题方向偏了后面全白写 | 步骤1 🔴 CHECKPOINT 先确认 |
| 2 | 样例未通过验证就批量生产 | 样例有问题会复制到所有题 | 6道样例全过 + 用户确认后才批量 |
| 3 | 跳过验证脚本凭感觉判断字数 | 中文逐字稿字数目测误差 ≥50字 | 每道必跑 `validate_question.py` |
| 4 | AI痕迹命中后只删词不替换 | 删了之后字数不够且语义断裂 | 按白名单替换原则改写 |
| 5 | 批量验证不通过的文件混入下一批 | 错误累积，最后无法定位 | 每批不通过的单独修正后重跑 |
| 6 | 逐字稿写成议论文而非口述稿 | 考场是说的不是写的，作文感扣分 | 写完大声读一遍，像人话才继续 |
| 7 | 题干超过80字 | 题干太长说明没抓住核心 | 精简到 ≤80字，用 `len()` 自检 |
| 8 | 在逐字稿中使用"总之/综上"收尾 | AI万能收束，考官一眼识破 | 用具体行动或"说到底"收束 |
| 9 | 工作流B-F跳过 CHECKPOINT 直接写入 | 方法论/框架/素材方向偏了返工成本高 | 每个工作流的 CHECKPOINT 必须等用户确认 |
| 10 | 讲义组装时整文件重写而非增量更新 | 888KB大文件整文件重写易丢内容 | 用 SearchReplace 做增量修改 |
| 11 | 产品 JSON 使用量表或标签库中不存在的编码 | 程序无法评分或安排复测 | 只从 `references/product/` 的版本化合同取值并运行校验 |
| 12 | 只替换地名和数字生成复测题 | 会把记忆原题误当能力改善 | 保持目标能力，实质改变情境、主体和表面任务 |

