superlab 0.1.72 → 0.1.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/i18n.cjs +274 -0
- package/lib/install.cjs +4 -0
- package/package-assets/shared/lab/.managed/templates/core-mutation-ledger.md +66 -0
- package/package-assets/shared/lab/.managed/templates/rebuttal-panel.md +71 -0
- package/package-assets/shared/lab/.managed/templates/stage-report.md +10 -0
- package/package-assets/shared/lab/.managed/templates/write-iteration.md +11 -0
- package/package-assets/shared/skills/lab/SKILL.md +3 -0
- package/package-assets/shared/skills/lab/references/rebuttal-mode.md +135 -0
- package/package-assets/shared/skills/lab/stages/auto.md +10 -0
- package/package-assets/shared/skills/lab/stages/report.md +6 -0
- package/package-assets/shared/skills/lab/stages/review.md +9 -0
- package/package-assets/shared/skills/lab/stages/write.md +16 -0
- package/package.json +1 -1
package/lib/i18n.cjs
CHANGED
|
@@ -345,6 +345,9 @@ const ZH_SKILL_FILES = {
|
|
|
345
345
|
- 如果出现 coverage、completeness、confidence 或类似健康度指标,必须明确说明这类指标回答的是“实验是否跑稳、证据是否完整”,而不是主要科学效应本身。
|
|
346
346
|
- 报告开头必须写出核心洞见:结果让我们学到了什么、为什么更简单解释不够、哪个机制最能解释结果、哪些证据支撑它、它带来什么行动或设计含义,以及仍然不能外推到哪里。
|
|
347
347
|
- 主表和消融要作为洞见的诊断证据,而不只是数字容器;每张表都应说明它回答的机制问题和不能证明的边界。
|
|
348
|
+
- 报告必须按三轮分离修改:先做逻辑 / 证据轮,检查 bottom-line claim、证据链、主表到 claim 的映射、失败运行处理和结论是否来自已批准协议;再做理论 / 指标轮,检查术语、指标定义、分母、方向、baseline 含义、比较范围和解释是否符合领域或报告受众;最后才做语言 / 读者轮,处理白话解释、段落流、读表引导、简洁度和非营销语气。
|
|
349
|
+
- 如果逻辑 / 证据轮或理论 / 指标轮仍有 blocker,不要进入语言润色;先修 blocker,或者把报告降级成 artifact-anchored interim。
|
|
350
|
+
- 默认执行时可以无感跑完三轮,不需要每轮都等用户确认;只有失败轮会改变已批准 claim boundary、指标解释或行动建议时,才问一个问题。
|
|
348
351
|
- 要把最关键的背景来源、方法/基线来源和指标来源直接写进报告,不要把它们藏在 \`.lab/context/*\` 里。
|
|
349
352
|
- 把 \`report.md\` 当作给外部评审或合作者看的研究 memo;来源章节必须给出人类可读的 anchor references,不能拿本地路径或内部 provenance 充数。
|
|
350
353
|
- 如果 \`.lab/context/terminology-lock.md\` 里已经冻结了方法名和 contribution bullets,就必须把它们带进报告。
|
|
@@ -950,6 +953,16 @@ const ZH_SKILL_FILES = {
|
|
|
950
953
|
- 已避免的禁用修复:
|
|
951
954
|
- 确认验证:
|
|
952
955
|
|
|
956
|
+
## 分轮改稿纪律
|
|
957
|
+
|
|
958
|
+
- 逻辑 / 证据轮结果:
|
|
959
|
+
- 逻辑 / 证据 blocker:
|
|
960
|
+
- 理论 / 指标 / 领域轮结果:
|
|
961
|
+
- 理论 / 指标 / 领域 blocker:
|
|
962
|
+
- 语言 / 读者轮结果:
|
|
963
|
+
- 是否等上游 blocker 解决后才做语言润色:
|
|
964
|
+
- 是否需要用户在各轮之间确认,为什么:
|
|
965
|
+
|
|
953
966
|
## 核心说明表
|
|
954
967
|
|
|
955
968
|
| 问题 | 白话回答 |
|
|
@@ -1512,6 +1525,17 @@ const ZH_SKILL_FILES = {
|
|
|
1512
1525
|
- 如果当前 section 是 Experiments,哪个机制被结果或消融诊断:
|
|
1513
1526
|
- 如果当前 section 是 Conclusion,提炼了什么更广泛原则或行动含义:
|
|
1514
1527
|
|
|
1528
|
+
## 分轮改稿纪律
|
|
1529
|
+
|
|
1530
|
+
- 逻辑轮结果:
|
|
1531
|
+
- 逻辑 blocker:
|
|
1532
|
+
- 理论 / 领域轮结果:
|
|
1533
|
+
- 理论 / 领域 blocker:
|
|
1534
|
+
- 语言轮结果:
|
|
1535
|
+
- 是否等逻辑和理论 blocker 解决后才做语言润色:
|
|
1536
|
+
- 是否需要用户在各轮之间确认,为什么:
|
|
1537
|
+
- 如果某轮失败,选择了哪条路径:revise / review / iterate / report / ask user:
|
|
1538
|
+
|
|
1515
1539
|
## Terminology Clarity
|
|
1516
1540
|
|
|
1517
1541
|
- Key terms introduced or revised this round:
|
|
@@ -1948,6 +1972,237 @@ for (const [relativePath, content] of Object.entries(ZH_SKILL_FILES)) {
|
|
|
1948
1972
|
ZH_CONTENT[relativePath.replace(".codex", ".claude")] = content;
|
|
1949
1973
|
}
|
|
1950
1974
|
|
|
1975
|
+
const zhRebuttalModeReference = `# Rebuttal Mode
|
|
1976
|
+
|
|
1977
|
+
本文件是 reviewer panel 和外部 rebuttal intake 的唯一共享合同。review、write、auto 阶段只引用本文件,不复制四审稿人逻辑。
|
|
1978
|
+
|
|
1979
|
+
## 触发条件
|
|
1980
|
+
|
|
1981
|
+
- 用户提供 reviewer、AC、meta-review、rebuttal、同事或用户自己的批评意见
|
|
1982
|
+
- \`/lab:review\` 审查论文、section、表、图、report 或 claim set
|
|
1983
|
+
- \`/lab:write\` 在接受非平凡论文轮次前需要 reviewer gate
|
|
1984
|
+
- \`/lab:auto\` 包含 paper-facing report、write 或 reviewer-driven repair
|
|
1985
|
+
|
|
1986
|
+
普通路径修复、依赖安装、实验轮询不触发本模式,除非它们会影响 paper-facing claim。
|
|
1987
|
+
|
|
1988
|
+
## 外部 Rebuttal Intake
|
|
1989
|
+
|
|
1990
|
+
外部批评必须先转成内部 issue,再进入改稿或实验。
|
|
1991
|
+
|
|
1992
|
+
每条外部意见必须记录:
|
|
1993
|
+
|
|
1994
|
+
- 来源:reviewer id、AC、meta-review、同事或用户
|
|
1995
|
+
- 批评摘要
|
|
1996
|
+
- 影响对象:claim、section、table、figure、protocol、metric、threat model、experiment 或 wording
|
|
1997
|
+
- 审稿轴:R1、R2、R3 或 R4
|
|
1998
|
+
- 严重性:fatal、major、minor 或 clarification
|
|
1999
|
+
- 路由:\`write\`、\`iterate\`、\`report\`、\`framing\`、\`data\`、\`spec\` 或 \`ask-user\`
|
|
2000
|
+
- 接受检查:什么证据或稿件状态算修完
|
|
2001
|
+
|
|
2002
|
+
## Reviewer Panel
|
|
2003
|
+
|
|
2004
|
+
### R1 Significance / Originality / Insight
|
|
2005
|
+
|
|
2006
|
+
检查问题是否重要、贡献是否只是工程堆叠、核心 insight 是否回答社区学到了什么。
|
|
2007
|
+
|
|
2008
|
+
### R2 Soundness / Technical Quality
|
|
2009
|
+
|
|
2010
|
+
检查方法、假设、协议、baseline、实现细节、指标和统计是否站得住。
|
|
2011
|
+
|
|
2012
|
+
### R3 Evaluation / Analysis
|
|
2013
|
+
|
|
2014
|
+
检查消融、鲁棒性、泛化、失败案例、替代解释和指标解释是否完整。
|
|
2015
|
+
|
|
2016
|
+
### R4 Presentation / Clarity
|
|
2017
|
+
|
|
2018
|
+
检查叙事线、术语、图表自解释、引用、LaTeX 和 section flow 是否清楚。
|
|
2019
|
+
|
|
2020
|
+
## Core Mutation Ledger
|
|
2021
|
+
|
|
2022
|
+
核心变更包括改 paper-level claim、实验协议、指标定义、主指标、threat model、reviewer profile、数据集范围、benchmark 范围或 framing。
|
|
2023
|
+
|
|
2024
|
+
L1/L2 默认把核心变更当作批准边界。L3 可以在已批准 envelope 内执行核心变更,但必须先用 \`.lab/.managed/templates/core-mutation-ledger.md\` 写入 \`.lab/writing/core-mutation-ledger.md\`。
|
|
2025
|
+
`;
|
|
2026
|
+
|
|
2027
|
+
ZH_CONTENT[path.join(".codex", "skills", "lab", "references", "rebuttal-mode.md")] = zhRebuttalModeReference;
|
|
2028
|
+
ZH_CONTENT[path.join(".claude", "skills", "lab", "references", "rebuttal-mode.md")] = zhRebuttalModeReference;
|
|
2029
|
+
|
|
2030
|
+
ZH_CONTENT[path.join(".lab", ".managed", "templates", "rebuttal-panel.md")] = `# Rebuttal Panel / rebuttal 面板
|
|
2031
|
+
|
|
2032
|
+
## 审查目标
|
|
2033
|
+
|
|
2034
|
+
- 目标工件:
|
|
2035
|
+
- 阶段:
|
|
2036
|
+
- 自治级别:
|
|
2037
|
+
- 证据基础:
|
|
2038
|
+
- 外部 rebuttal 来源(如果有):
|
|
2039
|
+
|
|
2040
|
+
## 外部 Rebuttal Intake
|
|
2041
|
+
|
|
2042
|
+
| 来源 | 批评摘要 | 影响对象 | 审稿轴 | 严重性 | 路由 | 接受检查 |
|
|
2043
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
2044
|
+
| | | | | | | |
|
|
2045
|
+
|
|
2046
|
+
## 四类审稿视角
|
|
2047
|
+
|
|
2048
|
+
### R1 Significance / Originality / Insight
|
|
2049
|
+
|
|
2050
|
+
- 问题:
|
|
2051
|
+
- 为什么重要:
|
|
2052
|
+
- 必要修复:
|
|
2053
|
+
- 路由:
|
|
2054
|
+
- 接受检查:
|
|
2055
|
+
|
|
2056
|
+
### R2 Soundness / Technical Quality
|
|
2057
|
+
|
|
2058
|
+
- 问题:
|
|
2059
|
+
- 为什么重要:
|
|
2060
|
+
- 必要修复:
|
|
2061
|
+
- 路由:
|
|
2062
|
+
- 接受检查:
|
|
2063
|
+
|
|
2064
|
+
### R3 Evaluation / Analysis
|
|
2065
|
+
|
|
2066
|
+
- 问题:
|
|
2067
|
+
- 为什么重要:
|
|
2068
|
+
- 必要修复:
|
|
2069
|
+
- 路由:
|
|
2070
|
+
- 接受检查:
|
|
2071
|
+
|
|
2072
|
+
### R4 Presentation / Clarity
|
|
2073
|
+
|
|
2074
|
+
- 问题:
|
|
2075
|
+
- 为什么重要:
|
|
2076
|
+
- 必要修复:
|
|
2077
|
+
- 路由:
|
|
2078
|
+
- 接受检查:
|
|
2079
|
+
|
|
2080
|
+
## 可执行问题登记
|
|
2081
|
+
|
|
2082
|
+
| ID | 审稿轴 | 严重性 | 影响工件 | 问题 | 必要修复 | 路由 | 接受检查 | 是否需要核心变更 |
|
|
2083
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
2084
|
+
| | | | | | | | | |
|
|
2085
|
+
|
|
2086
|
+
## 核心变更检查
|
|
2087
|
+
|
|
2088
|
+
- 是否需要改变 paper-level claim、协议、指标、threat model、数据集范围、benchmark 范围或 framing:
|
|
2089
|
+
- 当前自治级别是否允许:
|
|
2090
|
+
- 核心变更台账路径:
|
|
2091
|
+
- 被废弃的旧 claim 或资产:
|
|
2092
|
+
- 新验证要求:
|
|
2093
|
+
|
|
2094
|
+
## 决策
|
|
2095
|
+
|
|
2096
|
+
- continue / revise / rerun / escalate / stop:
|
|
2097
|
+
- 下一路由:
|
|
2098
|
+
- 阻塞 issue:
|
|
2099
|
+
- 交接说明:
|
|
2100
|
+
`;
|
|
2101
|
+
|
|
2102
|
+
ZH_CONTENT[path.join(".lab", ".managed", "templates", "core-mutation-ledger.md")] = `# 核心变更台账
|
|
2103
|
+
|
|
2104
|
+
## 变更摘要
|
|
2105
|
+
|
|
2106
|
+
- 变更 ID:
|
|
2107
|
+
- 日期:
|
|
2108
|
+
- Mutation trigger / 触发源:internal reviewer panel / external rebuttal / failed gate / anomaly / user request
|
|
2109
|
+
- 是否被当前自治级别允许:
|
|
2110
|
+
- campaign 或阶段:
|
|
2111
|
+
- owner:
|
|
2112
|
+
|
|
2113
|
+
## 被改变的核心项
|
|
2114
|
+
|
|
2115
|
+
- 类型:claim / protocol / metric / threat model / reviewer profile / dataset scope / benchmark scope / framing
|
|
2116
|
+
- 旧状态:
|
|
2117
|
+
- 新状态:
|
|
2118
|
+
- 为什么必须改:
|
|
2119
|
+
- 为什么不能只靠稿件措辞修复:
|
|
2120
|
+
|
|
2121
|
+
## 来源 Issue
|
|
2122
|
+
|
|
2123
|
+
- rebuttal 面板路径:
|
|
2124
|
+
- issue ID:
|
|
2125
|
+
- 审稿轴:
|
|
2126
|
+
- 严重性:
|
|
2127
|
+
- 外部批评来源(如果有):
|
|
2128
|
+
|
|
2129
|
+
## 作废或收窄的旧结论
|
|
2130
|
+
|
|
2131
|
+
- Invalidated prior claims:
|
|
2132
|
+
- 作废 claims:
|
|
2133
|
+
- 受影响 sections:
|
|
2134
|
+
- 受影响 tables:
|
|
2135
|
+
- 受影响 figures:
|
|
2136
|
+
- 受影响 reports:
|
|
2137
|
+
- 被 supersede 的结果或运行:
|
|
2138
|
+
- 仍可在更窄解释下使用的证据:
|
|
2139
|
+
|
|
2140
|
+
## 全文影响审计
|
|
2141
|
+
|
|
2142
|
+
- Paper-wide impact audit:
|
|
2143
|
+
- Abstract:
|
|
2144
|
+
- Introduction:
|
|
2145
|
+
- Method:
|
|
2146
|
+
- Experiments:
|
|
2147
|
+
- Related work:
|
|
2148
|
+
- Conclusion:
|
|
2149
|
+
- Tables:
|
|
2150
|
+
- Figures / analysis assets:
|
|
2151
|
+
- Metric glossary:
|
|
2152
|
+
- Terminology glossary:
|
|
2153
|
+
- Paper plan:
|
|
2154
|
+
|
|
2155
|
+
## 新验证
|
|
2156
|
+
|
|
2157
|
+
- 需要的新证据:
|
|
2158
|
+
- rerun 或 validator 命令:
|
|
2159
|
+
- manuscript validators:
|
|
2160
|
+
- confirmation check:
|
|
2161
|
+
- 结果:
|
|
2162
|
+
|
|
2163
|
+
## 回滚
|
|
2164
|
+
|
|
2165
|
+
- 回滚条件:
|
|
2166
|
+
- 回滚目标:
|
|
2167
|
+
- 备注:
|
|
2168
|
+
`;
|
|
2169
|
+
|
|
2170
|
+
const zhReviewRebuttalMode = `
|
|
2171
|
+
|
|
2172
|
+
## Rebuttal 模式
|
|
2173
|
+
|
|
2174
|
+
- 当目标是论文、section、表、图、report、claim set 或外部 rebuttal 批评时,必须读取 \`skills/lab/references/rebuttal-mode.md\`。
|
|
2175
|
+
- 不要在 review 阶段复制四审稿人逻辑;使用 \`.lab/.managed/templates/rebuttal-panel.md\` 写持久 reviewer panel 工件。
|
|
2176
|
+
- 外部 reviewer、AC、meta-review、同事或用户批评必须先转成内部可执行 issue,再进入改稿或 response draft。
|
|
2177
|
+
- Reviewer Panel 按 R1 Significance / Originality / Insight、R2 Soundness / Technical Quality、R3 Evaluation / Analysis、R4 Presentation / Clarity 四类审稿视角分类。
|
|
2178
|
+
- L1/L2 默认把核心变更当作批准边界;L3 通过共享核心变更台账策略处理核心 claim、协议、指标、threat model、数据集范围、benchmark 范围或 framing 变化。
|
|
2179
|
+
`;
|
|
2180
|
+
|
|
2181
|
+
const zhWriteRebuttalMode = `
|
|
2182
|
+
|
|
2183
|
+
## Rebuttal 模式
|
|
2184
|
+
|
|
2185
|
+
- 当用户提供外部 reviewer、AC、meta-review、rebuttal、同事或用户自己的批评时,起草前必须读取 \`skills/lab/references/rebuttal-mode.md\`。
|
|
2186
|
+
- 非平凡 paper-facing 写作轮次应把 rebuttal mode 当成 reviewer acceptance gate,并用 \`.lab/.managed/templates/rebuttal-panel.md\` 写 critique artifact。
|
|
2187
|
+
- 不要实现 write-only rebuttal workflow;共享 rebuttal-mode 负责审稿轴、外部 rebuttal intake、issue routing 和核心变更策略。
|
|
2188
|
+
- fatal 或 major 的 R1/R2/R3 issue 未解决前,不要进入 prose polish;先修复、路由到 \`iterate\` / \`report\` / \`framing\` / \`spec\`,或用证据显式 waive。
|
|
2189
|
+
- L3 或显式授权的写作 campaign 可以改 paper-level claim、协议、指标、threat model、数据集范围、benchmark 范围或 framing,但必须通过 \`skills/lab/references/rebuttal-mode.md\` 里的 Core Mutation Ledger 策略。
|
|
2190
|
+
- 在 write iteration artifact 里记录 rebuttal panel 路径、核心变更台账路径和未解决 issue id。
|
|
2191
|
+
`;
|
|
2192
|
+
|
|
2193
|
+
const zhAutoRebuttalMode = `
|
|
2194
|
+
|
|
2195
|
+
## Rebuttal Mode Promotion Guard
|
|
2196
|
+
|
|
2197
|
+
- 当 auto campaign 包含 paper-facing \`report\`、\`write\`、外部 rebuttal repair 或 reviewer-driven paper revision 时,必须读取 \`skills/lab/references/rebuttal-mode.md\`。
|
|
2198
|
+
- 使用 \`.lab/.managed/templates/rebuttal-panel.md\` 写持久 Reviewer Panel 工件,不要在 auto mode 里复制一套 reviewer workflow。
|
|
2199
|
+
- 外部 rebuttal 批评必须先转成内部 issue、route 和 acceptance check,再开始 \`run\`、\`iterate\`、\`report\` 或 \`write\`。
|
|
2200
|
+
- L1/L2 默认把核心变更当作批准边界;L3 可以在已批准 envelope 内修改 paper-level claim、协议、指标、threat model、reviewer profile、数据集范围、benchmark 范围或 framing。
|
|
2201
|
+
- L3 执行核心变更前,必须用 \`.lab/.managed/templates/core-mutation-ledger.md\` 写或更新 \`.lab/writing/core-mutation-ledger.md\`。
|
|
2202
|
+
- 核心变更必须触发全文影响审计:section、table、figure、report、metric glossary、terminology glossary 和 paper plan 都要标记为已更新、已 supersede 或仍待处理。
|
|
2203
|
+
- 当前 L3 envelope 允许修复且预算未耗尽时,不要因为可恢复 reviewer issue 停止;按 issue route 继续进入 \`write\`、\`iterate\`、\`report\`、\`framing\` 或 \`spec\`。
|
|
2204
|
+
`;
|
|
2205
|
+
|
|
1951
2206
|
ZH_CONTENT[path.join(".lab", "system", "core.md")] = `# Lab 系统核心
|
|
1952
2207
|
|
|
1953
2208
|
本项目使用 \`.lab/\` 作为持久研究工作流根目录。
|
|
@@ -2259,6 +2514,10 @@ ZH_CONTENT[path.join(".codex", "skills", "lab", "stages", "write.md")] = `# \`/l
|
|
|
2259
2514
|
- 一旦 paper-facing 模型名或消融名锁定,后续 prose、表格、caption 和排序摘要都必须复用 canonical label,不要再换回“完整模型”“去除结构主干”这类叙述性别名。
|
|
2260
2515
|
- 整篇论文必须沿用同一个核心洞见锚点:Introduction 制造常规认知与本文发现之间的反差,Method 把洞见转成设计动机,Experiments 用结果和消融诊断洞见,Conclusion 提炼更广泛原则和边界。
|
|
2261
2516
|
- 不要单开 \`Our Insights\` 或 \`核心洞见\` 章节来凑数;洞见要融入动机、机制、证据和限制。
|
|
2517
|
+
- 重要 section 不能一轮通写到底,必须按三轮分离改稿:逻辑轮先检查段落角色、claim 链、前提到结论的过渡、证据依赖和与相邻 section 的衔接,不做措辞润色;理论 / 领域轮在逻辑过关后检查概念、领域术语、指标定义、引用锚点和框架是否真的支撑 claim,不把语言流畅当成理论正确;语言轮只能在前两轮没有未解决 blocker 后再处理学术语气、句式节奏、过渡、简洁度和局部可读性。
|
|
2518
|
+
- 如果逻辑轮或理论 / 领域轮还有 blocker,不要继续语言 polish;先修 blocker,或者在证据问题上回到 \`review\`、\`iterate\` 或 \`report\`。
|
|
2519
|
+
- 默认自动执行不需要用户逐轮确认;把三轮结果写进 write iteration artifact。只有失败轮会改变 paper-level framing、claim、protocol 或下游 section 结构时,才停下来问一个问题。
|
|
2520
|
+
- 如果用户明确要求 interactive / human-in-the-loop 改稿,就每轮展示结果,等用户确认后再从逻辑轮进入理论轮、再进入语言轮。
|
|
2262
2521
|
- 起草或润色前,先检查当前 section 在 \`section-style-policies.md\` 里的规则块,并遵守其中的 encouraged expressions、discouraged expressions 和 banned expressions / moves。
|
|
2263
2522
|
- 不要默认当前 section 可以无限继续压句子;在同一个 section 上做新的 tighten、compress 或 polish 之前,先过一遍 section-level acceptance gate。
|
|
2264
2523
|
- section-level acceptance gate 至少要显式确认命名一致性、前后文一致性、claim / metric / ranking 与当前证据的一致性、局部清晰度、局部简洁度和 section 风格合规(section-style compliance)。
|
|
@@ -3151,6 +3410,21 @@ ZH_CONTENT[path.join(".claude", "skills", "lab", "stages", "auto.md")] =
|
|
|
3151
3410
|
ZH_CONTENT[path.join(".claude", "skills", "lab", "stages", "report.md")] =
|
|
3152
3411
|
ZH_CONTENT[path.join(".codex", "skills", "lab", "stages", "report.md")];
|
|
3153
3412
|
|
|
3413
|
+
for (const platformRoot of [".codex", ".claude"]) {
|
|
3414
|
+
const reviewKey = path.join(platformRoot, "skills", "lab", "stages", "review.md");
|
|
3415
|
+
const writeKey = path.join(platformRoot, "skills", "lab", "stages", "write.md");
|
|
3416
|
+
const autoKey = path.join(platformRoot, "skills", "lab", "stages", "auto.md");
|
|
3417
|
+
if (ZH_CONTENT[reviewKey] && !ZH_CONTENT[reviewKey].includes("rebuttal-mode.md")) {
|
|
3418
|
+
ZH_CONTENT[reviewKey] += zhReviewRebuttalMode;
|
|
3419
|
+
}
|
|
3420
|
+
if (ZH_CONTENT[writeKey] && !ZH_CONTENT[writeKey].includes("rebuttal-mode.md")) {
|
|
3421
|
+
ZH_CONTENT[writeKey] += zhWriteRebuttalMode;
|
|
3422
|
+
}
|
|
3423
|
+
if (ZH_CONTENT[autoKey] && !ZH_CONTENT[autoKey].includes("core-mutation-ledger.md")) {
|
|
3424
|
+
ZH_CONTENT[autoKey] += zhAutoRebuttalMode;
|
|
3425
|
+
}
|
|
3426
|
+
}
|
|
3427
|
+
|
|
3154
3428
|
const zhStageReportCloseout = `
|
|
3155
3429
|
|
|
3156
3430
|
## 阶段报告收尾
|
package/lib/install.cjs
CHANGED
|
@@ -654,6 +654,7 @@ function localizeInstalledAssets(targetDir, lang, { newlyCreatedProjectOwnedPath
|
|
|
654
654
|
path.join(".codex", "skills", "lab", "stages", "write.md"),
|
|
655
655
|
path.join(".codex", "skills", "lab", "references", "workflow.md"),
|
|
656
656
|
path.join(".codex", "skills", "lab", "references", "recipes.md"),
|
|
657
|
+
path.join(".codex", "skills", "lab", "references", "rebuttal-mode.md"),
|
|
657
658
|
path.join(".claude", "skills", "lab", "SKILL.md"),
|
|
658
659
|
path.join(".claude", "skills", "lab", "stages", "idea.md"),
|
|
659
660
|
path.join(".claude", "skills", "lab", "stages", "data.md"),
|
|
@@ -667,6 +668,7 @@ function localizeInstalledAssets(targetDir, lang, { newlyCreatedProjectOwnedPath
|
|
|
667
668
|
path.join(".claude", "skills", "lab", "stages", "write.md"),
|
|
668
669
|
path.join(".claude", "skills", "lab", "references", "workflow.md"),
|
|
669
670
|
path.join(".claude", "skills", "lab", "references", "recipes.md"),
|
|
671
|
+
path.join(".claude", "skills", "lab", "references", "rebuttal-mode.md"),
|
|
670
672
|
path.join(".lab", ".managed", "templates", "idea.md"),
|
|
671
673
|
path.join(".lab", ".managed", "templates", "data.md"),
|
|
672
674
|
path.join(".lab", ".managed", "templates", "framing.md"),
|
|
@@ -677,6 +679,8 @@ function localizeInstalledAssets(targetDir, lang, { newlyCreatedProjectOwnedPath
|
|
|
677
679
|
path.join(".lab", ".managed", "templates", "stage-report.md"),
|
|
678
680
|
path.join(".lab", ".managed", "templates", "iteration-report.md"),
|
|
679
681
|
path.join(".lab", ".managed", "templates", "review-checklist.md"),
|
|
682
|
+
path.join(".lab", ".managed", "templates", "rebuttal-panel.md"),
|
|
683
|
+
path.join(".lab", ".managed", "templates", "core-mutation-ledger.md"),
|
|
680
684
|
path.join(".lab", ".managed", "templates", "final-report.md"),
|
|
681
685
|
path.join(".lab", ".managed", "templates", "main-tables.md"),
|
|
682
686
|
path.join(".lab", ".managed", "templates", "artifact-status.md"),
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Core Mutation Ledger
|
|
2
|
+
|
|
3
|
+
## Mutation Summary
|
|
4
|
+
|
|
5
|
+
- Mutation ID:
|
|
6
|
+
- Date:
|
|
7
|
+
- Mutation trigger: internal reviewer panel / external rebuttal / failed gate / anomaly / user request
|
|
8
|
+
- Allowed by autonomy level:
|
|
9
|
+
- Campaign or stage:
|
|
10
|
+
- Owner:
|
|
11
|
+
|
|
12
|
+
## Changed Core Item
|
|
13
|
+
|
|
14
|
+
- Core item type: claim / protocol / metric / threat model / reviewer profile / dataset scope / benchmark scope / framing
|
|
15
|
+
- Previous state:
|
|
16
|
+
- New state:
|
|
17
|
+
- Why the change is necessary:
|
|
18
|
+
- Why a smaller manuscript-only fix is insufficient:
|
|
19
|
+
|
|
20
|
+
## Source Issue
|
|
21
|
+
|
|
22
|
+
- Rebuttal panel path:
|
|
23
|
+
- Issue ID:
|
|
24
|
+
- Reviewer axis:
|
|
25
|
+
- Severity:
|
|
26
|
+
- External criticism source, if any:
|
|
27
|
+
|
|
28
|
+
## Invalidated Prior Claims
|
|
29
|
+
|
|
30
|
+
- Invalidated prior claims:
|
|
31
|
+
- Claims invalidated:
|
|
32
|
+
- Sections invalidated:
|
|
33
|
+
- Tables invalidated:
|
|
34
|
+
- Figures invalidated:
|
|
35
|
+
- Reports invalidated:
|
|
36
|
+
- Results or runs superseded:
|
|
37
|
+
- Evidence that remains valid under a narrower interpretation:
|
|
38
|
+
|
|
39
|
+
## Paper-Wide Impact Audit
|
|
40
|
+
|
|
41
|
+
- Paper-wide impact audit:
|
|
42
|
+
- Abstract impact:
|
|
43
|
+
- Introduction impact:
|
|
44
|
+
- Method impact:
|
|
45
|
+
- Experiments impact:
|
|
46
|
+
- Related work impact:
|
|
47
|
+
- Conclusion impact:
|
|
48
|
+
- Table impact:
|
|
49
|
+
- Figure or analysis asset impact:
|
|
50
|
+
- Metric glossary impact:
|
|
51
|
+
- Terminology glossary impact:
|
|
52
|
+
- Paper plan impact:
|
|
53
|
+
|
|
54
|
+
## New Verification
|
|
55
|
+
|
|
56
|
+
- New evidence required:
|
|
57
|
+
- Rerun command or validation command:
|
|
58
|
+
- Manuscript validators required:
|
|
59
|
+
- Confirmation check:
|
|
60
|
+
- Result:
|
|
61
|
+
|
|
62
|
+
## Rollback
|
|
63
|
+
|
|
64
|
+
- Rollback condition:
|
|
65
|
+
- Rollback target:
|
|
66
|
+
- Notes:
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Rebuttal Panel
|
|
2
|
+
|
|
3
|
+
## Review Target
|
|
4
|
+
|
|
5
|
+
- Target artifact:
|
|
6
|
+
- Stage:
|
|
7
|
+
- Autonomy level:
|
|
8
|
+
- Evidence base:
|
|
9
|
+
- External rebuttal source, if any:
|
|
10
|
+
|
|
11
|
+
## External Rebuttal Intake
|
|
12
|
+
|
|
13
|
+
| Source | Raw criticism summary | Affected unit | Reviewer axis | Severity | Route | Acceptance check |
|
|
14
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
15
|
+
| | | | | | | |
|
|
16
|
+
|
|
17
|
+
## Reviewer Panel Findings
|
|
18
|
+
|
|
19
|
+
### R1 Significance / Originality / Insight
|
|
20
|
+
|
|
21
|
+
- Finding:
|
|
22
|
+
- Why it matters:
|
|
23
|
+
- Required fix:
|
|
24
|
+
- Route:
|
|
25
|
+
- Acceptance check:
|
|
26
|
+
|
|
27
|
+
### R2 Soundness / Technical Quality
|
|
28
|
+
|
|
29
|
+
- Finding:
|
|
30
|
+
- Why it matters:
|
|
31
|
+
- Required fix:
|
|
32
|
+
- Route:
|
|
33
|
+
- Acceptance check:
|
|
34
|
+
|
|
35
|
+
### R3 Evaluation / Analysis
|
|
36
|
+
|
|
37
|
+
- Finding:
|
|
38
|
+
- Why it matters:
|
|
39
|
+
- Required fix:
|
|
40
|
+
- Route:
|
|
41
|
+
- Acceptance check:
|
|
42
|
+
|
|
43
|
+
### R4 Presentation / Clarity
|
|
44
|
+
|
|
45
|
+
- Finding:
|
|
46
|
+
- Why it matters:
|
|
47
|
+
- Required fix:
|
|
48
|
+
- Route:
|
|
49
|
+
- Acceptance check:
|
|
50
|
+
|
|
51
|
+
## Actionable Issue Register
|
|
52
|
+
|
|
53
|
+
| ID | Axis | Severity | Affected artifact | Finding | Required fix | Route | Acceptance check | Core mutation required |
|
|
54
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
55
|
+
| | | | | | | | | |
|
|
56
|
+
|
|
57
|
+
## Core Mutation Check
|
|
58
|
+
|
|
59
|
+
- Does any issue require changing a paper-level claim, protocol, metric, threat model, dataset scope, benchmark scope, or framing:
|
|
60
|
+
- If yes, is the current autonomy level L3 or explicitly approved for core mutation:
|
|
61
|
+
- Core mutation ledger path:
|
|
62
|
+
- Prior claims or assets invalidated:
|
|
63
|
+
- New verification required:
|
|
64
|
+
|
|
65
|
+
## Decision
|
|
66
|
+
|
|
67
|
+
- Continue / revise / rerun / escalate / stop:
|
|
68
|
+
- Next route:
|
|
69
|
+
- Blocking issue, if any:
|
|
70
|
+
- Handoff note:
|
|
71
|
+
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
- Forbidden repairs avoided:
|
|
40
40
|
- Confirmation check:
|
|
41
41
|
|
|
42
|
+
## Revision Pass Discipline
|
|
43
|
+
|
|
44
|
+
- Logic / evidence pass outcome:
|
|
45
|
+
- Logic / evidence blockers found:
|
|
46
|
+
- Theory / metric / field pass outcome:
|
|
47
|
+
- Theory / metric / field blockers found:
|
|
48
|
+
- Language / reader pass outcome:
|
|
49
|
+
- Was language polish delayed until upstream blockers were resolved:
|
|
50
|
+
- Was user confirmation required between passes, and why:
|
|
51
|
+
|
|
42
52
|
## Core Explanation Table
|
|
43
53
|
|
|
44
54
|
| Question | Plain Answer |
|
|
@@ -51,6 +51,17 @@
|
|
|
51
51
|
- If the section is Experiments, which mechanism did the result or ablation diagnose:
|
|
52
52
|
- If the section is Conclusion, what broader principle or action implication was stated:
|
|
53
53
|
|
|
54
|
+
## Revision Pass Discipline
|
|
55
|
+
|
|
56
|
+
- Logic pass outcome:
|
|
57
|
+
- Logic blockers found:
|
|
58
|
+
- Theory / field pass outcome:
|
|
59
|
+
- Theory / field blockers found:
|
|
60
|
+
- Language pass outcome:
|
|
61
|
+
- Was language polish delayed until logic and theory blockers were resolved:
|
|
62
|
+
- Was user confirmation required between passes, and why:
|
|
63
|
+
- If a pass failed, what route was chosen: revise / review / iterate / report / ask user:
|
|
64
|
+
|
|
54
65
|
## Terminology Clarity
|
|
55
66
|
|
|
56
67
|
- Key terms introduced or revised this round:
|
|
@@ -53,6 +53,7 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
|
|
|
53
53
|
- Separate sourced facts from model-generated hypotheses.
|
|
54
54
|
- Preserve failed runs, failed ideas, and limitations.
|
|
55
55
|
- Use `skills/lab/references/recipes.md` as the quick path for common stage chains without inventing new commands.
|
|
56
|
+
- Use `.codex/skills/lab/references/rebuttal-mode.md` or `.claude/skills/lab/references/rebuttal-mode.md` as the single shared reviewer-panel and external rebuttal intake contract. Do not copy four-reviewer logic into `review`, `write`, or `auto` stage guides.
|
|
56
57
|
|
|
57
58
|
## Stage Contract
|
|
58
59
|
|
|
@@ -220,6 +221,7 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
|
|
|
220
221
|
- Surface the strongest alternative explanation and any boundary risk that should narrow the claim.
|
|
221
222
|
- Output findings first, then fatal flaws, then fix priority, then residual risks.
|
|
222
223
|
- Use `.lab/.managed/templates/review-checklist.md`.
|
|
224
|
+
- When reviewing paper-facing artifacts or external rebuttal criticism, use the shared rebuttal mode reference and write the panel artifact from `.lab/.managed/templates/rebuttal-panel.md`.
|
|
223
225
|
- Write durable review conclusions back to `.lab/context/decisions.md`, `.lab/context/evidence-index.md`, or `.lab/context/open-questions.md` when they affect later stages. Do not use `.lab/context/state.md` as a primary write target.
|
|
224
226
|
|
|
225
227
|
### `/lab:report`
|
|
@@ -348,6 +350,7 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
|
|
|
348
350
|
- Workflow summary: `.codex/skills/lab/references/workflow.md` or `.claude/skills/lab/references/workflow.md`
|
|
349
351
|
- Stage recipes: `skills/lab/references/recipes.md`
|
|
350
352
|
- Brainstorming integration: `.codex/skills/lab/references/brainstorming-integration.md` or `.claude/skills/lab/references/brainstorming-integration.md`
|
|
353
|
+
- Rebuttal mode: `.codex/skills/lab/references/rebuttal-mode.md` or `.claude/skills/lab/references/rebuttal-mode.md`
|
|
351
354
|
- Idea stage guide: `.codex/skills/lab/stages/idea.md` or `.claude/skills/lab/stages/idea.md`
|
|
352
355
|
- Data stage guide: `.codex/skills/lab/stages/data.md` or `.claude/skills/lab/stages/data.md`
|
|
353
356
|
- Auto stage guide: `.codex/skills/lab/stages/auto.md` or `.claude/skills/lab/stages/auto.md`
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
# Rebuttal Mode
|
|
2
|
+
|
|
3
|
+
Use this reference whenever a lab stage must turn reviewer-style criticism into executable research or writing work. Keep this logic here; stage guides should reference this file instead of copying the reviewer panel rules.
|
|
4
|
+
|
|
5
|
+
## When To Trigger
|
|
6
|
+
|
|
7
|
+
Trigger rebuttal mode when any of these are present:
|
|
8
|
+
|
|
9
|
+
- external reviewer, AC, meta-review, rebuttal, or colleague criticism
|
|
10
|
+
- a user asks for reviewer-style criticism before another write or auto round
|
|
11
|
+
- `/lab:review` targets a paper, section, table, figure, report, or claim set
|
|
12
|
+
- `/lab:write` needs a reviewer gate before accepting a nontrivial manuscript round
|
|
13
|
+
- `/lab:auto` is allowed to run `write`, paper-facing `report`, or reviewer-driven repair
|
|
14
|
+
|
|
15
|
+
Do not trigger rebuttal mode for routine implementation reviews, path fixes, dependency setup, or experiment polling unless the issue affects paper-facing claims.
|
|
16
|
+
|
|
17
|
+
## Required Inputs
|
|
18
|
+
|
|
19
|
+
- artifact under review: section, paper, report, table, figure, result, or claim set
|
|
20
|
+
- evidence base used by the artifact
|
|
21
|
+
- current framing or mission when available
|
|
22
|
+
- current metric and terminology glossaries when relevant
|
|
23
|
+
- external rebuttal text when provided
|
|
24
|
+
- active autonomy level when the stage is `/lab:auto`
|
|
25
|
+
|
|
26
|
+
## External Rebuttal Intake
|
|
27
|
+
|
|
28
|
+
External criticism must be converted into internal issues before any rewrite.
|
|
29
|
+
|
|
30
|
+
For each external comment, record:
|
|
31
|
+
|
|
32
|
+
- source: reviewer id, AC, meta-review, colleague, or user
|
|
33
|
+
- raw criticism summary
|
|
34
|
+
- affected paper unit: claim, section, table, figure, protocol, metric, threat model, experiment, or wording
|
|
35
|
+
- reviewer axis: R1, R2, R3, or R4
|
|
36
|
+
- severity: fatal, major, minor, or clarification
|
|
37
|
+
- route: `write`, `iterate`, `report`, `framing`, `data`, `spec`, or `ask-user`
|
|
38
|
+
- acceptance check: concrete evidence or manuscript condition that resolves the issue
|
|
39
|
+
|
|
40
|
+
Do not answer external criticism with prose-only reassurance. If the issue is valid, it must become a repair task. If it is invalid, state the evidence that rules it out.
|
|
41
|
+
|
|
42
|
+
## Reviewer Panel
|
|
43
|
+
|
|
44
|
+
Run four independent review lenses. Each lens must produce actionable issues, not vague advice.
|
|
45
|
+
|
|
46
|
+
### R1 Significance / Originality / Insight
|
|
47
|
+
|
|
48
|
+
Ask whether the problem matters, whether the paper teaches the community something beyond an artifact, whether the motivation is necessary, and whether the claimed insight is deeper than a module stack or benchmark gain.
|
|
49
|
+
|
|
50
|
+
Typical fixes route to `framing`, `write`, or `iterate`.
|
|
51
|
+
|
|
52
|
+
### R2 Soundness / Technical Quality
|
|
53
|
+
|
|
54
|
+
Ask whether the method, assumptions, proofs, protocol, baselines, implementation details, metrics, and statistics are technically defensible and reproducible.
|
|
55
|
+
|
|
56
|
+
Typical fixes route to `spec`, `run`, `iterate`, `report`, or `write`.
|
|
57
|
+
|
|
58
|
+
### R3 Evaluation / Analysis
|
|
59
|
+
|
|
60
|
+
Ask whether evaluation covers ablations, robustness, generalization, failure cases, alternative explanations, and metric interpretation.
|
|
61
|
+
|
|
62
|
+
Typical fixes route to `iterate`, `report`, or `write`.
|
|
63
|
+
|
|
64
|
+
### R4 Presentation / Clarity
|
|
65
|
+
|
|
66
|
+
Ask whether the storyline, terminology, figure/table semantics, citations, LaTeX, and section flow are readable and self-contained.
|
|
67
|
+
|
|
68
|
+
Typical fixes route to `write`.
|
|
69
|
+
|
|
70
|
+
## Actionable Issue Register
|
|
71
|
+
|
|
72
|
+
Every issue must include:
|
|
73
|
+
|
|
74
|
+
- id
|
|
75
|
+
- reviewer axis
|
|
76
|
+
- severity
|
|
77
|
+
- affected artifact
|
|
78
|
+
- finding
|
|
79
|
+
- why it matters
|
|
80
|
+
- required fix
|
|
81
|
+
- route
|
|
82
|
+
- acceptance check
|
|
83
|
+
- whether core mutation is required
|
|
84
|
+
|
|
85
|
+
Prioritize fatal and major issues before language polish. Minor presentation fixes may be batched.
|
|
86
|
+
|
|
87
|
+
## Core Mutation Policy
|
|
88
|
+
|
|
89
|
+
Core mutation means changing any of:
|
|
90
|
+
|
|
91
|
+
- paper-level claim or contribution
|
|
92
|
+
- experiment or evaluation protocol
|
|
93
|
+
- metric definition or primary metric choice
|
|
94
|
+
- threat model, reviewer profile, dataset scope, or benchmark scope
|
|
95
|
+
- paper-facing framing that invalidates existing sections or tables
|
|
96
|
+
|
|
97
|
+
L1 and L2 treat core mutation as an approval boundary unless the current contract explicitly allows it.
|
|
98
|
+
|
|
99
|
+
L3 may perform core mutation inside the approved campaign envelope. It must not hide the change as ordinary writing or routine repair.
|
|
100
|
+
|
|
101
|
+
When L3 changes a core item, write or update `.lab/writing/core-mutation-ledger.md` from `.lab/.managed/templates/core-mutation-ledger.md` before claiming the issue is resolved.
|
|
102
|
+
|
|
103
|
+
## Core Mutation Ledger
|
|
104
|
+
|
|
105
|
+
The ledger must record:
|
|
106
|
+
|
|
107
|
+
- mutation trigger: internal reviewer panel, external rebuttal, failed gate, anomaly, or user request
|
|
108
|
+
- changed core item
|
|
109
|
+
- previous state
|
|
110
|
+
- new state
|
|
111
|
+
- why the change is necessary
|
|
112
|
+
- invalidated prior claims, sections, tables, figures, reports, or results
|
|
113
|
+
- new evidence required
|
|
114
|
+
- rerun, rewrite, or validation command
|
|
115
|
+
- paper-wide impact audit
|
|
116
|
+
- rollback condition
|
|
117
|
+
|
|
118
|
+
If old evidence remains usable under a narrower interpretation, say exactly where it remains valid. If it does not remain valid, mark it superseded.
|
|
119
|
+
|
|
120
|
+
## Stage Integration
|
|
121
|
+
|
|
122
|
+
`/lab:review` uses rebuttal mode as its reviewer-panel operating mode when the target is paper-facing or when external criticism is supplied.
|
|
123
|
+
|
|
124
|
+
`/lab:write` uses rebuttal mode as an acceptance gate for nontrivial section or manuscript rounds. A write round may not proceed to prose polish while a fatal or major R1/R2/R3 issue remains unresolved.
|
|
125
|
+
|
|
126
|
+
`/lab:auto` uses rebuttal mode as a promotion guard when the campaign includes paper-facing `report`, `write`, or external rebuttal repair. In L3, auto may execute core mutation after ledger entry and impact audit.
|
|
127
|
+
|
|
128
|
+
## Stop Or Continue Decision
|
|
129
|
+
|
|
130
|
+
- Continue when issues are actionable inside the approved envelope.
|
|
131
|
+
- Rerun when the acceptance check requires new evidence.
|
|
132
|
+
- Revise when the fix is manuscript-only.
|
|
133
|
+
- Escalate when the issue requires a decision outside the current autonomy level.
|
|
134
|
+
- Stop only when the remaining issue is terminal, already waived with evidence, or outside the campaign boundary.
|
|
135
|
+
|
|
@@ -125,6 +125,16 @@
|
|
|
125
125
|
- Before each rung and before each success, stop, or promotion decision, re-check the generic academic-risk questions: setting semantics, visibility/leakage, anchor or label policy, scale comparability, metric validity, comparison validity, statistical validity, claim boundary, and integrity self-check.
|
|
126
126
|
- Before each success, stop, or promotion decision, also re-check the anomaly policy: whether anomaly signals fired, whether simpler explanations were ruled out, whether a cross-check was performed, and whether the current interpretation is still the narrowest supported one.
|
|
127
127
|
|
|
128
|
+
## Rebuttal Mode Promotion Guard
|
|
129
|
+
|
|
130
|
+
- When an auto campaign includes paper-facing `report`, `write`, external rebuttal repair, or reviewer-driven paper revision, load the shared rebuttal procedure in `skills/lab/references/rebuttal-mode.md`.
|
|
131
|
+
- Use `.lab/.managed/templates/rebuttal-panel.md` for the durable Reviewer Panel artifact instead of embedding a separate reviewer workflow in auto mode.
|
|
132
|
+
- External rebuttal criticism must be converted into internal issues, routes, and acceptance checks before `run`, `iterate`, `report`, or `write` work starts.
|
|
133
|
+
- In L1/L2, core mutation remains an approval boundary unless explicitly authorized by the auto contract.
|
|
134
|
+
- In L3, auto may change paper-level claim, protocol, metric, threat model, reviewer profile, dataset scope, benchmark scope, or framing inside the approved campaign envelope. It must first write or update `.lab/writing/core-mutation-ledger.md` from `.lab/.managed/templates/core-mutation-ledger.md`.
|
|
135
|
+
- A core mutation must trigger paper-wide impact audit before promotion: affected sections, tables, figures, reports, metric glossary, terminology glossary, and paper plan must be listed as updated, superseded, or still pending.
|
|
136
|
+
- Do not stop after a recoverable reviewer issue when the current L3 envelope allows a repair route and budget remains. Continue through `write`, `iterate`, `report`, `framing`, or `spec` according to the issue route.
|
|
137
|
+
|
|
128
138
|
## Gate Miss And Repair Loop
|
|
129
139
|
|
|
130
140
|
- A gate miss is not automatically a terminal stop for `L2` or `L3` when `iterate` is allowed and the loop budget remains.
|
|
@@ -66,6 +66,12 @@
|
|
|
66
66
|
- Keep insight interpretation in the reader summary, method overview, main result interpretation, ablations, and limitations. Do not hide it in a standalone inspirational paragraph.
|
|
67
67
|
- When results are negative, mixed, or too strong, still write the insight honestly: what the result teaches about the mechanism, target, setup, metric, or boundary, and what action follows.
|
|
68
68
|
- For technical or business reports, state the decision implication as an actionable rule, next experiment, system change, or stop boundary. Do not leave the insight as a theoretical phrase only.
|
|
69
|
+
- Draft reports with three separated revision passes:
|
|
70
|
+
- Logic / evidence pass: check the bottom-line claim, evidence chain, table-to-claim mapping, failed-run handling, and whether conclusions follow from the approved protocol. Do not polish wording in this pass.
|
|
71
|
+
- Theory / metric pass: after logic is clean, check terminology, metric definitions, denominators, directionality, baseline meaning, comparison scope, and whether the chosen interpretation fits the field or report audience.
|
|
72
|
+
- Language / reader pass: only after logic and metric blockers are resolved, improve plain-language explanation, section flow, table-reading guidance, concision, and non-marketing tone.
|
|
73
|
+
- Do not move to language cleanup when the logic / evidence pass or theory / metric pass still has an unresolved blocker; repair the blocker first or downgrade the report to artifact-anchored interim.
|
|
74
|
+
- Default report execution may run the three passes without asking the user between them. Ask only when a failed pass would change the approved claim boundary, metric interpretation, or action recommendation.
|
|
69
75
|
- When citing prior work or baselines in the method overview, include only the few anchor references a collaborator needs, and summarize their role and limitation in one short line each.
|
|
70
76
|
- Report only the few references a collaborator needs to orient themselves quickly; do not turn `report.md` into a full bibliography dump.
|
|
71
77
|
- In `Background Sources`, `Method and Baseline Sources`, and `Metric Sources`, every anchor must include a citation line, one short line about what it established or measures, and one limitation or caveat.
|
|
@@ -41,6 +41,15 @@
|
|
|
41
41
|
- unresolved alternative explanations
|
|
42
42
|
- boundary risks that should narrow the claim even if the implementation is correct
|
|
43
43
|
|
|
44
|
+
## Rebuttal Mode
|
|
45
|
+
|
|
46
|
+
- When the target is a paper, paper section, table, figure, report, claim set, or external rebuttal criticism, run the shared reviewer-panel procedure in `skills/lab/references/rebuttal-mode.md`.
|
|
47
|
+
- Do not duplicate the four-reviewer logic in this stage file. Use `.lab/.managed/templates/rebuttal-panel.md` for the durable critique artifact.
|
|
48
|
+
- External rebuttal, AC, meta-review, colleague, or user criticism must be converted into internal actionable issues before any rewrite or response draft.
|
|
49
|
+
- The Reviewer Panel must classify issues across R1 Significance / Originality / Insight, R2 Soundness / Technical Quality, R3 Evaluation / Analysis, and R4 Presentation / Clarity.
|
|
50
|
+
- Each issue must include severity, affected artifact, required fix, route, acceptance check, and whether core mutation is required.
|
|
51
|
+
- In L1/L2, core mutation remains an approval boundary unless explicitly authorized. In L3, route core mutation through the shared ledger policy instead of treating it as a reviewer-stage blocker.
|
|
52
|
+
|
|
44
53
|
## Output Style
|
|
45
54
|
|
|
46
55
|
- concise summary first
|
|
@@ -71,6 +71,15 @@ Run these on every round:
|
|
|
71
71
|
- reviewer pass -> `skills/lab/references/paper-writing/paper-review.md`
|
|
72
72
|
- section-specific style policy -> `skills/lab/references/paper-writing/section-style-policies.md` (load the block matching the current section)
|
|
73
73
|
|
|
74
|
+
## Rebuttal Mode
|
|
75
|
+
|
|
76
|
+
- When the user provides external reviewer, AC, meta-review, rebuttal, colleague, or user criticism, load `skills/lab/references/rebuttal-mode.md` before drafting.
|
|
77
|
+
- For nontrivial paper-facing write rounds, use rebuttal mode as the reviewer acceptance gate and write the critique artifact from `.lab/.managed/templates/rebuttal-panel.md`.
|
|
78
|
+
- Do not implement a separate write-only rebuttal workflow. The shared rebuttal-mode reference owns reviewer axes, external rebuttal intake, issue routing, and core mutation policy.
|
|
79
|
+
- Fatal or major R1/R2/R3 issues block prose polish until they are repaired, routed to `iterate`/`report`/`framing`/`spec`, or explicitly waived with evidence.
|
|
80
|
+
- In L3 or an explicitly core-authorized write campaign, paper-level claim, protocol, metric, threat model, dataset scope, benchmark scope, or framing changes are allowed only through the shared Core Mutation Ledger policy in `skills/lab/references/rebuttal-mode.md`.
|
|
81
|
+
- Record the rebuttal panel path, any core mutation ledger path, and unresolved issue ids in the write-iteration artifact.
|
|
82
|
+
|
|
74
83
|
## Reference-Guided Deep Write
|
|
75
84
|
|
|
76
85
|
Trigger this mode automatically when the user provides reference PDFs, paper URLs, local reference-paper paths, a template paper, or asks to "参考" papers while continuing `/lab:write`.
|
|
@@ -156,6 +165,13 @@ Do not enter prose polish until the current section has passed the reference-con
|
|
|
156
165
|
- In Experiments, interpret results diagnostically: say which part of the insight each result, ablation, robustness check, or failure case supports, weakens, or bounds. Do not only read numbers from a table.
|
|
157
166
|
- In Conclusion, state the broader principle or action implication implied by the evidence, then state the boundary. Do not introduce a new insight there.
|
|
158
167
|
- Avoid paper-facing headings such as `Our Insights` or `核心洞见`; if a heading is needed, use normal section roles such as motivation, analysis, ablation, or discussion and let the insight appear in the prose.
|
|
168
|
+
- Nontrivial section work must use three separated revision passes instead of one all-purpose rewrite:
|
|
169
|
+
- Logic pass: check the paragraph role, claim chain, premise-to-conclusion transition, evidence dependency, and whether the section naturally follows from adjacent sections. Do not polish wording in this pass.
|
|
170
|
+
- Theory / field pass: after the logic pass is clean, check concept use, field terminology, metric definitions, citation anchors, and whether the chosen framework actually fits the claim. Do not treat fluent language as proof that the theory is right.
|
|
171
|
+
- Language pass: only after logic and theory blockers are resolved, revise academic tone, sentence rhythm, transitions, concision, and local readability.
|
|
172
|
+
- Do not continue into language polish when the logic pass or theory / field pass still has an unresolved blocker; repair the blocker first or route back to `review`, `iterate`, or `report` if the blocker is evidentiary.
|
|
173
|
+
- Default automation should not require the user to approve every pass. Record the three pass outcomes in the write-iteration artifact and stop for one user question only when a failed pass would change paper-level framing, claims, protocol, or downstream section structure.
|
|
174
|
+
- If the user explicitly asks for interactive or human-in-the-loop rewriting, show the result of each pass and wait before moving from logic -> theory -> language.
|
|
159
175
|
- Before drafting or polishing, check the current section's block in `section-style-policies.md` and follow its encouraged, discouraged, and banned expression lists.
|
|
160
176
|
- Before any additional tighten, compress, or polish pass on the same section, run a section-level acceptance gate first.
|
|
161
177
|
- The section-level acceptance gate is passed only when canonical naming consistency, adjacent-section consistency, claim, metric, and ranking consistency with the current evidence, local clarity, local concision, and section-style compliance are all explicitly checked and no unresolved blocker remains.
|