Skip to main content

part3-human-selection

学术研究 workflow Part 3 第三步:执行 argument_tree_selected 人工 gate。只有用户明确提供 candidate_id、候选来源(original/refined)和选择理由后,才写入 outputs/part3/human_selection_feedback.json,并将对应候选锁定为 canonical outputs/part3/argument_tree.json。当用户说「选择论证树」「锁定 argument tree」「part3-human-selection」时触发。不得自动跳过 gate 或进入 Part 4。

Source facts

Repository
hideaway007/thesis-destroyer
Last source activity
April 17, 2026 at 14:54
Detected SKILL.md language
Chinese
Stars
5
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
part3-human-selection
description
学术研究 workflow Part 3 第三步:执行 argument_tree_selected 人工 gate。只有用户明确提供 candidate_id、候选来源(original/refined)和选择理由后,才写入 outputs/part3/human_selection_feedback.json,并将对应候选锁定为 canonical outputs/part3/argument_tree.json。当用户说「选择论证树」「锁定 argument tree」「part3-human-selection」时触发。不得自动跳过 gate 或进入 Part 4。
# Part 3 Step 3 — Human Selection and Canonical Lock 你的任务是展示候选与比较结果,记录用户明确选择,并在 human gate 通过后锁定 canonical `outputs/part3/argument_tree.json`。这是 Part 3 的人工决策点,不允许由 agent 代替用户完成。用户可以选择原始候选或 refined 候选;选择 refined candidate 时必须通过工程 CLI 的 refined source 入口,不得覆盖原始 candidate 文件。 ## 前置检查 1. 原始候选目录 `outputs/part3/candidate_argument_trees/` 存在;如果用户选择 refined candidate,`outputs/part3/refined_candidate_argument_trees/` 也必须存在。 2. 原始候选至少包含 `candidate_theory_first.json`、`candidate_problem_solution.json`、`candidate_case_application.json`。 3. refined candidate 只能从 `outputs/part3/refined_candidate_argument_trees/` 读取,ID 必须是 `{original_candidate_id}_refined`,例如 `candidate_theory_first_refined`;不得复制到原始候选目录后再选择。 4. `outputs/part3/candidate_comparison.json` 存在。 5. `outputs/part3/candidate_selection_table.md` 应存在;缺失时先运行 `python3 cli.py part3-review` 生成并展示表格。 6. 用户在当前对话中明确提供: - `candidate_id` - 候选来源:`original` 或 `refined` - 选择理由 7. 如果 `outputs/part3/argument_tree.json` 已存在,必须提示这是重新锁定场景;只有用户明确要求覆盖时才继续。 如果用户只说“按推荐的来”但没有提供 candidate_id 和理由,应先展示推荐与候选摘要,并要求用户明确确认。不得推断为已选择。 ## 输入 - `outputs/part3/candidate_argument_trees/{candidate_id}.json`,或通过 refined source 入口读取 `outputs/part3/refined_candidate_argument_trees/{original_candidate_id}_refined.json` - `outputs/part3/candidate_comparison.json` - `outputs/part3/argument_quality_report.json`(选择 refined candidate 时建议存在) - `outputs/part3/candidate_selection_table.md` - 用户明确给出的 `candidate_id` - 用户明确给出的候选来源:`original` 或 `refined` - 用户明确给出的选择理由 ## 输出 - `outputs/part3/candidate_selection_table.md`(人工选择前的三候选表格) - `outputs/part3/human_selection_feedback.json` - `outputs/part3/argument_tree.json` `human_selection_feedback.json` 建议结构: ```json { "schema_version": "1.0.0", "selected_at": "<ISO 时间>", "selected_candidate_id": "candidate_theory_first", "candidate_source": "original | refined", "selection_notes": "用户选择理由", "candidate_tree_ref": "outputs/part3/candidate_argument_trees/candidate_theory_first.json", "candidate_comparison_ref": "outputs/part3/candidate_comparison.json", "locked_artifact": "outputs/part3/argument_tree.json" } ``` `argument_tree.json` 应复制并规范化所选候选内容,同时增加 canonical 锁定字段: ```json { "schema_version": "1.0.0", "locked_at": "<ISO 时间>", "selected_candidate_id": "candidate_theory_first", "human_selection_ref": "outputs/part3/human_selection_feedback.json", "candidate_comparison_ref": "outputs/part3/candidate_comparison.json", "wiki_ref": "research-wiki/index.json", "root": {} } ``` ## 执行步骤 1. 读取 comparison 和 3 份候选,运行 `python3 cli.py part3-review`,生成并展示 `candidate_selection_table.md`。 2. 检查用户是否明确提供 `candidate_id` 和选择理由。 3. 如果缺任一项,停止,要求用户补充;不要写文件。 4. 验证 `candidate_id` 对应候选文件存在;如果来源是 `refined`,必须通过工程 CLI 的 refined source 入口读取 `outputs/part3/refined_candidate_argument_trees/`,不得覆盖原始候选。 5. 写入 `human_selection_feedback.json`,记录选择理由、候选树路径、comparison 路径与 locked artifact。 6. 将所选候选复制为 canonical `outputs/part3/argument_tree.json`,保留候选 root,并追加 canonical 锁定字段。 7. 通过 CLI 调用时,记录 `argument_tree_selected` human gate;不得启动 Part 4。 建议执行: ```bash python3 cli.py part3-review python3 cli.py part3-select --candidate-id candidate_theory_first --notes "人工选择理由" # 选择 refined candidate 时,使用工程 CLI 提供的 refined source 入口,例如: python3 cli.py part3-select --candidate-id candidate_theory_first_refined --candidate-source refined --notes "人工选择理由" ``` 如果已存在 `outputs/part3/argument_tree.json`,只有用户明确要求重新锁定时才可追加 `--force`。 ## 禁止事项 - 不得替用户选择候选。 - 不得把 agent recommendation 当作 human selection。 - 不得在没有选择理由时写入 `human_selection_feedback.json`。 - 不得通过复制 refined candidate 覆盖原始 candidate 的方式绕过 refined source 入口。 - 不得自动进入 Part 4,或生成 `outputs/part4/paper_outline.json`。 - 不得覆盖既有 canonical `argument_tree.json`,除非用户明确要求重新锁定。 - 不得手动修改 `runtime/` 或 `process-memory/`;必须通过 `python3 cli.py part3-select ...` 或 selection locker 记录 `argument_tree_selected`,保证 state 与 process-memory 可审计。 ## 结果摘要格式 ```text ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Part 3 人工选择已记录 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Gate: argument_tree_selected 选择候选: <candidate_id> 候选来源: <original / refined> 选择理由: <用户理由摘要> 候选表格: outputs/part3/candidate_selection_table.md 反馈文件: outputs/part3/human_selection_feedback.json Canonical: outputs/part3/argument_tree.json Part 3 gate 状态: 已满足 Part 4 授权状态: 未授权 下一步:等待用户明确要求进入 Part 4 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ```
View on GitHub