superlab 0.1.27 → 0.1.28
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/README.md +3 -0
- package/README.zh-CN.md +3 -0
- package/bin/superlab.cjs +11 -0
- package/lib/auto_contracts.cjs +1 -1
- package/lib/auto_runner.cjs +1 -1
- package/lib/context.cjs +30 -198
- package/lib/i18n.cjs +170 -18
- package/lib/lab_write_contract.json +8 -0
- package/package-assets/claude/commands/lab-idea.md +1 -1
- package/package-assets/claude/commands/lab-write.md +1 -1
- package/package-assets/claude/commands/lab.md +4 -4
- package/package-assets/codex/prompts/lab-idea.md +1 -1
- package/package-assets/codex/prompts/lab-write.md +1 -1
- package/package-assets/codex/prompts/lab.md +4 -4
- package/package-assets/shared/lab/.managed/scripts/validate_idea_artifact.py +147 -0
- package/package-assets/shared/lab/.managed/scripts/validate_manuscript_delivery.py +50 -4
- package/package-assets/shared/lab/.managed/scripts/validate_paper_claims.py +86 -0
- package/package-assets/shared/lab/.managed/scripts/validate_paper_plan.py +38 -3
- package/package-assets/shared/lab/.managed/scripts/validate_section_draft.py +181 -0
- package/package-assets/shared/lab/.managed/templates/idea.md +43 -0
- package/package-assets/shared/lab/.managed/templates/paper-plan.md +24 -0
- package/package-assets/shared/lab/config/workflow.json +2 -1
- package/package-assets/shared/lab/context/auto-mode.md +1 -1
- package/package-assets/shared/lab/context/next-action.md +4 -4
- package/package-assets/shared/lab/context/session-brief.md +8 -1
- package/package-assets/shared/lab/context/summary.md +14 -3
- package/package-assets/shared/skills/lab/SKILL.md +17 -16
- package/package-assets/shared/skills/lab/references/paper-writing/examples/abstract/template-b.md +2 -2
- package/package-assets/shared/skills/lab/references/paper-writing/examples/conclusion/conservative-claim-boundary.md +13 -13
- package/package-assets/shared/skills/lab/references/paper-writing/examples/experiments/main-results-and-ablation-latex.md +18 -17
- package/package-assets/shared/skills/lab/references/paper-writing/examples/experiments-examples.md +1 -1
- package/package-assets/shared/skills/lab/references/paper-writing/examples/index.md +1 -1
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/pipeline-version-1-one-contribution-multi-advantages.md +3 -3
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/pipeline-version-2-two-contributions.md +1 -1
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/annotated-figure-to-text.md +66 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/example-of-the-three-elements.md +11 -11
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/{module-design-instant-ngp.md → module-design-multiresolution-encoding.md} +1 -1
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/{module-triad-neural-body.md → module-triad-anchored-representation.md} +4 -4
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/overview-template.md +4 -4
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/pre-writing-questions.md +4 -3
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method-examples.md +4 -4
- package/package-assets/shared/skills/lab/references/paper-writing/examples/related-work/closest-prior-gap-template.md +12 -12
- package/package-assets/shared/skills/lab/references/paper-writing/examples/related-work/topic-comparison-template.md +2 -2
- package/package-assets/shared/skills/lab/stages/auto.md +6 -2
- package/package-assets/shared/skills/lab/stages/data.md +0 -1
- package/package-assets/shared/skills/lab/stages/framing.md +0 -1
- package/package-assets/shared/skills/lab/stages/idea.md +30 -13
- package/package-assets/shared/skills/lab/stages/write.md +24 -3
- package/package.json +1 -1
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/neural-body-annotated-figure-text.md +0 -66
package/README.md
CHANGED
|
@@ -246,6 +246,7 @@ This installer also writes `.lab/config/workflow.json`, which is the global cont
|
|
|
246
246
|
- `figures_root`
|
|
247
247
|
- `deliverables_root`
|
|
248
248
|
- `paper_template_root`
|
|
249
|
+
- `paper_language_finalization_decision`
|
|
249
250
|
|
|
250
251
|
Stages should follow that file rather than guess language locally.
|
|
251
252
|
|
|
@@ -325,6 +326,8 @@ Internal writing-control artifacts stay under:
|
|
|
325
326
|
If `paper_template_root` is configured, `/lab:write` should inspect that template directory first and align drafting to it.
|
|
326
327
|
If no template is configured, the first manuscript-writing round should ask once whether to continue with the managed default LaTeX scaffold or attach a template directory first.
|
|
327
328
|
If the user approves the default scaffold, persist that choice in `.lab/config/workflow.json` and stop asking on ordinary rounds.
|
|
329
|
+
Ordinary manuscript drafting rounds should follow `workflow_language`.
|
|
330
|
+
If `workflow_language` and `paper_language` differ, the first final-draft or export round should ask once whether to keep the draft language or convert the final manuscript to `paper_language`, then persist that decision.
|
|
328
331
|
At the final export or final-draft boundary, if the project is still on the default scaffold and no attached template exists, ask one final reminder question before finalizing.
|
|
329
332
|
For final-draft or export rounds, `/lab:write` should materialize real LaTeX tables, figure placeholders with figure intent, a non-empty `references.bib`, and pass `.lab/.managed/scripts/validate_manuscript_delivery.py --paper-dir <deliverables_root>/paper` before stopping.
|
|
330
333
|
|
package/README.zh-CN.md
CHANGED
|
@@ -244,6 +244,7 @@ superlab init --lang en
|
|
|
244
244
|
- `figures_root`
|
|
245
245
|
- `deliverables_root`
|
|
246
246
|
- `paper_template_root`
|
|
247
|
+
- `paper_language_finalization_decision`
|
|
247
248
|
|
|
248
249
|
后续 stage 应该按这个配置决定语言和论文格式,而不是各模板自己猜。
|
|
249
250
|
|
|
@@ -310,6 +311,8 @@ Codex 和 Claude 的命令入口不一样:
|
|
|
310
311
|
如果配置了 `paper_template_root`,`/lab:write` 应先检查该模板目录并按其结构写作。
|
|
311
312
|
如果没有配置模板,第一次进入论文 `.tex` 写作时应先追问一次:继续使用内置默认 LaTeX scaffold,还是先接入模板目录。
|
|
312
313
|
如果用户确认先用默认 scaffold,就把这个决定持久化到 `.lab/config/workflow.json`,后续普通轮次不再重复追问。
|
|
314
|
+
普通论文起草轮次应先跟随 `workflow_language`。
|
|
315
|
+
如果 `workflow_language` 和 `paper_language` 不一致,则在第一次进入最终定稿或导出轮次时追问一次:保持当前草稿语言,还是把最终稿转换成 `paper_language`,并把这个决定持久化。
|
|
313
316
|
但在最终导出或最终定稿节点,如果项目仍在使用默认 scaffold 且没有接入模板,应再提醒一次,给用户最后切换模板的机会。
|
|
314
317
|
在最终定稿或导出轮次里,`/lab:write` 还应物化真正的 LaTeX 表格、带图意图的 figure placeholders、非空的 `references.bib`,并在停止前通过 `.lab/.managed/scripts/validate_manuscript_delivery.py --paper-dir <deliverables_root>/paper`。
|
|
315
318
|
|
package/bin/superlab.cjs
CHANGED
|
@@ -677,6 +677,17 @@ function validateWorkflowConfig(config) {
|
|
|
677
677
|
) {
|
|
678
678
|
issues.push("invalid paper_template_final_reminder_acknowledged");
|
|
679
679
|
}
|
|
680
|
+
const validLanguageFinalizationDecisions = new Set([
|
|
681
|
+
"unconfirmed",
|
|
682
|
+
"keep-workflow-language",
|
|
683
|
+
"convert-to-paper-language",
|
|
684
|
+
]);
|
|
685
|
+
if (
|
|
686
|
+
config.paper_language_finalization_decision !== undefined &&
|
|
687
|
+
!validLanguageFinalizationDecisions.has(config.paper_language_finalization_decision)
|
|
688
|
+
) {
|
|
689
|
+
issues.push("invalid paper_language_finalization_decision");
|
|
690
|
+
}
|
|
680
691
|
if (
|
|
681
692
|
typeof config.paper_template_root === "string" &&
|
|
682
693
|
config.paper_template_root.trim() !== "" &&
|
package/lib/auto_contracts.cjs
CHANGED
|
@@ -42,7 +42,7 @@ const PROMOTION_CANONICAL_FILES = [
|
|
|
42
42
|
path.join(".lab", "context", "data-decisions.md"),
|
|
43
43
|
path.join(".lab", "context", "decisions.md"),
|
|
44
44
|
path.join(".lab", "context", "state.md"),
|
|
45
|
-
path.join(".lab", "context", "
|
|
45
|
+
path.join(".lab", "context", "workflow-state.md"),
|
|
46
46
|
];
|
|
47
47
|
|
|
48
48
|
function resolveFrozenCoreEntries(rawValue) {
|
package/lib/auto_runner.cjs
CHANGED
|
@@ -433,7 +433,7 @@ async function startAutoMode({ targetDir, now = new Date() }) {
|
|
|
433
433
|
".lab/context/data-decisions.md",
|
|
434
434
|
".lab/context/decisions.md",
|
|
435
435
|
".lab/context/state.md",
|
|
436
|
-
".lab/context/
|
|
436
|
+
".lab/context/workflow-state.md",
|
|
437
437
|
]);
|
|
438
438
|
await runCommandWithPolling({
|
|
439
439
|
targetDir,
|
package/lib/context.cjs
CHANGED
|
@@ -983,7 +983,7 @@ function renderResearchState(lang, data) {
|
|
|
983
983
|
|
|
984
984
|
## 当前研究主线
|
|
985
985
|
|
|
986
|
-
- Current research focus: ${data.
|
|
986
|
+
- Current research focus: ${data.direction || "待补充"}
|
|
987
987
|
- Primary metric: ${data.evalPrimaryMetrics || data.threshold || "待补充"}
|
|
988
988
|
- Dataset or benchmark scope: ${data.datasetPackage || data.benchmarkRole || "待补充"}
|
|
989
989
|
|
|
@@ -991,7 +991,7 @@ function renderResearchState(lang, data) {
|
|
|
991
991
|
|
|
992
992
|
- Hard constraints: ${data.boundary || "待补充"}
|
|
993
993
|
- Claim boundary: ${data.evalClaimBoundary || "待补充"}
|
|
994
|
-
- Conditions that require reopening the direction: ${data.
|
|
994
|
+
- Conditions that require reopening the direction: ${data.question || "待补充"}
|
|
995
995
|
`;
|
|
996
996
|
}
|
|
997
997
|
|
|
@@ -1011,7 +1011,7 @@ function renderResearchState(lang, data) {
|
|
|
1011
1011
|
|
|
1012
1012
|
## Active Research Track
|
|
1013
1013
|
|
|
1014
|
-
- Current research focus: ${data.
|
|
1014
|
+
- Current research focus: ${data.direction || "TBD"}
|
|
1015
1015
|
- Primary metric: ${data.evalPrimaryMetrics || data.threshold || "TBD"}
|
|
1016
1016
|
- Dataset or benchmark scope: ${data.datasetPackage || data.benchmarkRole || "TBD"}
|
|
1017
1017
|
|
|
@@ -1019,7 +1019,7 @@ function renderResearchState(lang, data) {
|
|
|
1019
1019
|
|
|
1020
1020
|
- Hard constraints: ${data.boundary || "TBD"}
|
|
1021
1021
|
- Claim boundary: ${data.evalClaimBoundary || "TBD"}
|
|
1022
|
-
- Conditions that require reopening the direction: ${data.
|
|
1022
|
+
- Conditions that require reopening the direction: ${data.question || "TBD"}
|
|
1023
1023
|
`;
|
|
1024
1024
|
}
|
|
1025
1025
|
|
|
@@ -1078,74 +1078,36 @@ function renderSummary(lang, data) {
|
|
|
1078
1078
|
- Mission: ${data.problem || "待补充"}
|
|
1079
1079
|
- Approved direction: ${data.direction || "待补充"}
|
|
1080
1080
|
- Active stage: ${data.stage || "待补充"}
|
|
1081
|
+
- Current objective: ${data.workflowObjective || "待补充"}
|
|
1081
1082
|
- Auto mode: ${data.autoStatus || "未启用"}
|
|
1082
1083
|
- Auto objective: ${data.autoObjective || "待补充"}
|
|
1083
|
-
- Auto rung: ${data.autoCurrentRung || "待补充"}
|
|
1084
|
-
- Auto watch target: ${data.autoWatchTarget || "待补充"}
|
|
1085
1084
|
- Auto decision: ${data.autoDecision || "待补充"}
|
|
1086
|
-
- Auto terminal goal: ${joinNonEmpty([data.autoGoalType, data.autoGoalTarget], " | ") || "待补充"}
|
|
1087
|
-
- Auto goal reached: ${data.autoGoalReached || "待补充"}
|
|
1088
|
-
- Auto stop reason: ${data.autoStopReason || "待补充"}
|
|
1089
|
-
- Auto final artifact: ${data.autoFinalArtifact || "待补充"}
|
|
1090
|
-
- Auto final rung: ${data.autoFinalRung || "待补充"}
|
|
1091
1085
|
- Collaborator report mode: ${data.reportMode || "待补充"}
|
|
1092
1086
|
- Canonical context readiness: ${data.reportReadiness || "待补充"}
|
|
1093
|
-
- Why this report mode is active: ${data.reportModeReason || "待补充"}
|
|
1094
1087
|
- Method name: ${data.methodName || "待补充"}
|
|
1095
1088
|
- Contribution bullets: ${data.contributionBullets || "待补充"}
|
|
1096
1089
|
- Eval objective: ${data.evalObjective || "待补充"}
|
|
1097
1090
|
- Primary metrics: ${data.evalPrimaryMetrics || "待补充"}
|
|
1098
1091
|
- Secondary metrics: ${data.evalSecondaryMetrics || "待补充"}
|
|
1099
|
-
- Required terminal evidence: ${data.evalRequiredTerminalEvidence || "待补充"}
|
|
1100
|
-
- Table plan: ${data.evalTablePlan || "待补充"}
|
|
1101
|
-
- Metric glossary: ${data.evalMetricGlossary || "待补充"}
|
|
1102
|
-
- Background sources: ${data.evalBackgroundSources || "待补充"}
|
|
1103
|
-
- Method and baseline source papers: ${data.evalMethodAndBaselineSourcePapers || "待补充"}
|
|
1104
|
-
- Method and baseline implementation source: ${data.evalMethodAndBaselineImplementationSource || "待补充"}
|
|
1105
|
-
- Metric source papers: ${data.evalMetricSourcePapers || "待补充"}
|
|
1106
|
-
- Metric implementation source: ${data.evalMetricImplementationSource || "待补充"}
|
|
1107
|
-
- Comparison source papers: ${data.evalComparisonSourcePapers || "待补充"}
|
|
1108
|
-
- Comparison implementation source: ${data.evalComparisonImplementationSource || "待补充"}
|
|
1109
|
-
- Deviation from original implementation: ${data.evalDeviationFromOriginalImplementation || "待补充"}
|
|
1110
|
-
- Evaluation setting semantics: ${data.evalEvaluationSettingSemantics || "待补充"}
|
|
1111
|
-
- Visibility and leakage risks: ${data.evalVisibilityAndLeakageRisks || "待补充"}
|
|
1112
|
-
- Anchor and label policy: ${data.evalAnchorAndLabelPolicy || "待补充"}
|
|
1113
|
-
- Scale and comparability policy: ${data.evalScaleAndComparabilityPolicy || "待补充"}
|
|
1114
|
-
- Metric validity checks: ${data.evalMetricValidityChecks || "待补充"}
|
|
1115
|
-
- Comparison validity checks: ${data.evalComparisonValidityChecks || "待补充"}
|
|
1116
|
-
- Statistical validity checks: ${data.evalStatisticalValidityChecks || "待补充"}
|
|
1117
|
-
- Claim boundary: ${data.evalClaimBoundary || "待补充"}
|
|
1118
|
-
- Integrity self-check: ${data.evalIntegritySelfCheck || "待补充"}
|
|
1119
|
-
- Anomaly signals: ${data.evalAnomalySignals || "待补充"}
|
|
1120
|
-
- Implementation reality checks: ${data.evalImplementationRealityChecks || "待补充"}
|
|
1121
|
-
- Alternative explanations considered: ${data.evalAlternativeExplanationsConsidered || "待补充"}
|
|
1122
|
-
- Cross-check method: ${data.evalCrossCheckMethod || "待补充"}
|
|
1123
|
-
- Best-supported interpretation: ${data.evalBestSupportedInterpretation || "待补充"}
|
|
1124
|
-
- Escalation threshold: ${data.evalEscalationThreshold || "待补充"}
|
|
1125
|
-
- Experiment ladder: ${data.evalExperimentLadder || "待补充"}
|
|
1126
|
-
- Benchmark ladder: ${data.evalBenchmarkLadder || "待补充"}
|
|
1127
|
-
- Promotion gate: ${data.evalPromotionGate || "待补充"}
|
|
1128
1092
|
- Dataset package: ${data.datasetPackage || "待补充"}
|
|
1129
|
-
- Dataset years: ${data.datasetYears || "待补充"}
|
|
1130
1093
|
- Benchmark role: ${data.benchmarkRole || "待补充"}
|
|
1131
|
-
- Benchmark rationale: ${data.benchmarkRationale || "待补充"}
|
|
1132
1094
|
- Comparison suite: ${data.comparisonMethods || "待补充"}
|
|
1133
|
-
- Comparison rationale: ${data.comparisonRationale || "待补充"}
|
|
1134
|
-
- Comparison evidence: ${data.comparisonEvidence || "待补充"}
|
|
1135
|
-
- Source basis: ${data.datasetSources || "待补充"}
|
|
1136
|
-
- Representative papers: ${data.datasetPapers || "待补充"}
|
|
1137
1095
|
|
|
1138
1096
|
## 最强证据
|
|
1139
1097
|
|
|
1140
1098
|
- Claim: ${data.claim || "待补充"}
|
|
1099
|
+
- Supporting artifact: ${data.latestArtifactPath || "待补充"}
|
|
1100
|
+
- Caveat: ${data.evalClaimBoundary || data.question || "待补充"}
|
|
1141
1101
|
|
|
1142
1102
|
## 最大风险
|
|
1143
1103
|
|
|
1144
1104
|
- Risk: ${data.risk || "待补充"}
|
|
1105
|
+
- Why it matters: ${data.question || data.blocker || "待补充"}
|
|
1145
1106
|
|
|
1146
1107
|
## 当前缺口
|
|
1147
1108
|
|
|
1148
|
-
-
|
|
1109
|
+
- Missing evidence: ${data.question || "待补充"}
|
|
1110
|
+
- Missing artifact: ${data.nextArtifact || "待补充"}
|
|
1149
1111
|
`;
|
|
1150
1112
|
}
|
|
1151
1113
|
|
|
@@ -1156,74 +1118,36 @@ function renderSummary(lang, data) {
|
|
|
1156
1118
|
- Mission: ${data.problem || "TBD"}
|
|
1157
1119
|
- Approved direction: ${data.direction || "TBD"}
|
|
1158
1120
|
- Active stage: ${data.stage || "TBD"}
|
|
1121
|
+
- Current objective: ${data.workflowObjective || "TBD"}
|
|
1159
1122
|
- Auto mode: ${data.autoStatus || "inactive"}
|
|
1160
1123
|
- Auto objective: ${data.autoObjective || "TBD"}
|
|
1161
|
-
- Auto rung: ${data.autoCurrentRung || "TBD"}
|
|
1162
|
-
- Auto watch target: ${data.autoWatchTarget || "TBD"}
|
|
1163
1124
|
- Auto decision: ${data.autoDecision || "TBD"}
|
|
1164
|
-
- Auto terminal goal: ${joinNonEmpty([data.autoGoalType, data.autoGoalTarget], " | ") || "TBD"}
|
|
1165
|
-
- Auto goal reached: ${data.autoGoalReached || "TBD"}
|
|
1166
|
-
- Auto stop reason: ${data.autoStopReason || "TBD"}
|
|
1167
|
-
- Auto final artifact: ${data.autoFinalArtifact || "TBD"}
|
|
1168
|
-
- Auto final rung: ${data.autoFinalRung || "TBD"}
|
|
1169
1125
|
- Collaborator report mode: ${data.reportMode || "TBD"}
|
|
1170
1126
|
- Canonical context readiness: ${data.reportReadiness || "TBD"}
|
|
1171
|
-
- Why this report mode is active: ${data.reportModeReason || "TBD"}
|
|
1172
1127
|
- Method name: ${data.methodName || "TBD"}
|
|
1173
1128
|
- Contribution bullets: ${data.contributionBullets || "TBD"}
|
|
1174
1129
|
- Eval objective: ${data.evalObjective || "TBD"}
|
|
1175
1130
|
- Primary metrics: ${data.evalPrimaryMetrics || "TBD"}
|
|
1176
1131
|
- Secondary metrics: ${data.evalSecondaryMetrics || "TBD"}
|
|
1177
|
-
- Required terminal evidence: ${data.evalRequiredTerminalEvidence || "TBD"}
|
|
1178
|
-
- Table plan: ${data.evalTablePlan || "TBD"}
|
|
1179
|
-
- Metric glossary: ${data.evalMetricGlossary || "TBD"}
|
|
1180
|
-
- Background sources: ${data.evalBackgroundSources || "TBD"}
|
|
1181
|
-
- Method and baseline source papers: ${data.evalMethodAndBaselineSourcePapers || "TBD"}
|
|
1182
|
-
- Method and baseline implementation source: ${data.evalMethodAndBaselineImplementationSource || "TBD"}
|
|
1183
|
-
- Metric source papers: ${data.evalMetricSourcePapers || "TBD"}
|
|
1184
|
-
- Metric implementation source: ${data.evalMetricImplementationSource || "TBD"}
|
|
1185
|
-
- Comparison source papers: ${data.evalComparisonSourcePapers || "TBD"}
|
|
1186
|
-
- Comparison implementation source: ${data.evalComparisonImplementationSource || "TBD"}
|
|
1187
|
-
- Deviation from original implementation: ${data.evalDeviationFromOriginalImplementation || "TBD"}
|
|
1188
|
-
- Evaluation setting semantics: ${data.evalEvaluationSettingSemantics || "TBD"}
|
|
1189
|
-
- Visibility and leakage risks: ${data.evalVisibilityAndLeakageRisks || "TBD"}
|
|
1190
|
-
- Anchor and label policy: ${data.evalAnchorAndLabelPolicy || "TBD"}
|
|
1191
|
-
- Scale and comparability policy: ${data.evalScaleAndComparabilityPolicy || "TBD"}
|
|
1192
|
-
- Metric validity checks: ${data.evalMetricValidityChecks || "TBD"}
|
|
1193
|
-
- Comparison validity checks: ${data.evalComparisonValidityChecks || "TBD"}
|
|
1194
|
-
- Statistical validity checks: ${data.evalStatisticalValidityChecks || "TBD"}
|
|
1195
|
-
- Claim boundary: ${data.evalClaimBoundary || "TBD"}
|
|
1196
|
-
- Integrity self-check: ${data.evalIntegritySelfCheck || "TBD"}
|
|
1197
|
-
- Anomaly signals: ${data.evalAnomalySignals || "TBD"}
|
|
1198
|
-
- Implementation reality checks: ${data.evalImplementationRealityChecks || "TBD"}
|
|
1199
|
-
- Alternative explanations considered: ${data.evalAlternativeExplanationsConsidered || "TBD"}
|
|
1200
|
-
- Cross-check method: ${data.evalCrossCheckMethod || "TBD"}
|
|
1201
|
-
- Best-supported interpretation: ${data.evalBestSupportedInterpretation || "TBD"}
|
|
1202
|
-
- Escalation threshold: ${data.evalEscalationThreshold || "TBD"}
|
|
1203
|
-
- Experiment ladder: ${data.evalExperimentLadder || "TBD"}
|
|
1204
|
-
- Benchmark ladder: ${data.evalBenchmarkLadder || "TBD"}
|
|
1205
|
-
- Promotion gate: ${data.evalPromotionGate || "TBD"}
|
|
1206
1132
|
- Dataset package: ${data.datasetPackage || "TBD"}
|
|
1207
|
-
- Dataset years: ${data.datasetYears || "TBD"}
|
|
1208
1133
|
- Benchmark role: ${data.benchmarkRole || "TBD"}
|
|
1209
|
-
- Benchmark rationale: ${data.benchmarkRationale || "TBD"}
|
|
1210
1134
|
- Comparison suite: ${data.comparisonMethods || "TBD"}
|
|
1211
|
-
- Comparison rationale: ${data.comparisonRationale || "TBD"}
|
|
1212
|
-
- Comparison evidence: ${data.comparisonEvidence || "TBD"}
|
|
1213
|
-
- Source basis: ${data.datasetSources || "TBD"}
|
|
1214
|
-
- Representative papers: ${data.datasetPapers || "TBD"}
|
|
1215
1135
|
|
|
1216
1136
|
## Strongest Evidence
|
|
1217
1137
|
|
|
1218
1138
|
- Claim: ${data.claim || "TBD"}
|
|
1139
|
+
- Supporting artifact: ${data.latestArtifactPath || "TBD"}
|
|
1140
|
+
- Caveat: ${data.evalClaimBoundary || data.question || "TBD"}
|
|
1219
1141
|
|
|
1220
1142
|
## Largest Risk
|
|
1221
1143
|
|
|
1222
1144
|
- Risk: ${data.risk || "TBD"}
|
|
1145
|
+
- Why it matters: ${data.question || data.blocker || "TBD"}
|
|
1223
1146
|
|
|
1224
1147
|
## Current Gap
|
|
1225
1148
|
|
|
1226
|
-
-
|
|
1149
|
+
- Missing evidence: ${data.question || "TBD"}
|
|
1150
|
+
- Missing artifact: ${data.nextArtifact || "TBD"}
|
|
1227
1151
|
`;
|
|
1228
1152
|
}
|
|
1229
1153
|
|
|
@@ -1236,18 +1160,18 @@ function renderNextAction(lang, data) {
|
|
|
1236
1160
|
- Action: ${data.immediateAction || "待补充"}
|
|
1237
1161
|
- Success signal: ${data.nextArtifact || data.threshold || "待补充"}
|
|
1238
1162
|
|
|
1239
|
-
##
|
|
1163
|
+
## 完成后
|
|
1240
1164
|
|
|
1241
1165
|
- Next action: ${data.successFollowup || "继续推进当前阶段"}
|
|
1242
1166
|
|
|
1243
|
-
##
|
|
1167
|
+
## 如果卡住
|
|
1244
1168
|
|
|
1245
1169
|
- Fallback action: ${data.blocker ? `先处理阻塞:${data.blocker}` : "回到 review 或 iterate"}
|
|
1246
1170
|
|
|
1247
|
-
##
|
|
1171
|
+
## 升级条件
|
|
1248
1172
|
|
|
1249
1173
|
- Question: ${data.humanDecision || "无"}
|
|
1250
|
-
-
|
|
1174
|
+
- Escalate when: ${data.blocker || "无明显阻塞"}
|
|
1251
1175
|
`;
|
|
1252
1176
|
}
|
|
1253
1177
|
|
|
@@ -1258,18 +1182,18 @@ function renderNextAction(lang, data) {
|
|
|
1258
1182
|
- Action: ${data.immediateAction || "TBD"}
|
|
1259
1183
|
- Success signal: ${data.nextArtifact || data.threshold || "TBD"}
|
|
1260
1184
|
|
|
1261
|
-
##
|
|
1185
|
+
## After Completion
|
|
1262
1186
|
|
|
1263
1187
|
- Next action: ${data.successFollowup || "Continue the active stage"}
|
|
1264
1188
|
|
|
1265
|
-
## If
|
|
1189
|
+
## If Blocked
|
|
1266
1190
|
|
|
1267
1191
|
- Fallback action: ${data.blocker ? `Resolve blocker: ${data.blocker}` : "Route back to review or iterate"}
|
|
1268
1192
|
|
|
1269
|
-
##
|
|
1193
|
+
## Escalation
|
|
1270
1194
|
|
|
1271
1195
|
- Question: ${data.humanDecision || "none"}
|
|
1272
|
-
-
|
|
1196
|
+
- Escalate when: ${data.blocker || "no major blocker is known"}
|
|
1273
1197
|
`;
|
|
1274
1198
|
}
|
|
1275
1199
|
|
|
@@ -1280,6 +1204,8 @@ function renderSessionBrief(lang, data) {
|
|
|
1280
1204
|
## 当前阶段
|
|
1281
1205
|
|
|
1282
1206
|
- Stage: ${data.stage || "待补充"}
|
|
1207
|
+
- Current objective: ${data.workflowObjective || "待补充"}
|
|
1208
|
+
- Immediate next action: ${data.immediateAction || "待补充"}
|
|
1283
1209
|
|
|
1284
1210
|
## 主线任务
|
|
1285
1211
|
|
|
@@ -1288,63 +1214,15 @@ ${data.problem || "待补充"}
|
|
|
1288
1214
|
## 当前最优路径
|
|
1289
1215
|
|
|
1290
1216
|
- Approved direction: ${data.direction || "待补充"}
|
|
1291
|
-
-
|
|
1217
|
+
- Strongest supported claim: ${data.claim || "待补充"}
|
|
1292
1218
|
- Auto mode: ${data.autoStatus || "未启用"}
|
|
1293
1219
|
- Auto objective: ${data.autoObjective || "待补充"}
|
|
1294
|
-
- Auto rung: ${data.autoCurrentRung || "待补充"}
|
|
1295
|
-
- Auto watch target: ${data.autoWatchTarget || "待补充"}
|
|
1296
1220
|
- Auto decision: ${data.autoDecision || "待补充"}
|
|
1297
|
-
- Auto terminal goal: ${joinNonEmpty([data.autoGoalType, data.autoGoalTarget], " | ") || "待补充"}
|
|
1298
|
-
- Auto goal reached: ${data.autoGoalReached || "待补充"}
|
|
1299
|
-
- Auto stop reason: ${data.autoStopReason || "待补充"}
|
|
1300
|
-
- Auto final artifact: ${data.autoFinalArtifact || "待补充"}
|
|
1301
|
-
- Auto final rung: ${data.autoFinalRung || "待补充"}
|
|
1302
1221
|
- Collaborator report mode: ${data.reportMode || "待补充"}
|
|
1303
1222
|
- Canonical context readiness: ${data.reportReadiness || "待补充"}
|
|
1304
|
-
- Why this report mode is active: ${data.reportModeReason || "待补充"}
|
|
1305
1223
|
- Method name: ${data.methodName || "待补充"}
|
|
1306
|
-
- Contribution bullets: ${data.contributionBullets || "待补充"}
|
|
1307
|
-
- Eval objective: ${data.evalObjective || "待补充"}
|
|
1308
1224
|
- Primary metrics: ${data.evalPrimaryMetrics || "待补充"}
|
|
1309
1225
|
- Secondary metrics: ${data.evalSecondaryMetrics || "待补充"}
|
|
1310
|
-
- Required terminal evidence: ${data.evalRequiredTerminalEvidence || "待补充"}
|
|
1311
|
-
- Table plan: ${data.evalTablePlan || "待补充"}
|
|
1312
|
-
- Metric glossary: ${data.evalMetricGlossary || "待补充"}
|
|
1313
|
-
- Background sources: ${data.evalBackgroundSources || "待补充"}
|
|
1314
|
-
- Method and baseline source papers: ${data.evalMethodAndBaselineSourcePapers || "待补充"}
|
|
1315
|
-
- Method and baseline implementation source: ${data.evalMethodAndBaselineImplementationSource || "待补充"}
|
|
1316
|
-
- Metric source papers: ${data.evalMetricSourcePapers || "待补充"}
|
|
1317
|
-
- Metric implementation source: ${data.evalMetricImplementationSource || "待补充"}
|
|
1318
|
-
- Comparison source papers: ${data.evalComparisonSourcePapers || "待补充"}
|
|
1319
|
-
- Comparison implementation source: ${data.evalComparisonImplementationSource || "待补充"}
|
|
1320
|
-
- Deviation from original implementation: ${data.evalDeviationFromOriginalImplementation || "待补充"}
|
|
1321
|
-
- Evaluation setting semantics: ${data.evalEvaluationSettingSemantics || "待补充"}
|
|
1322
|
-
- Visibility and leakage risks: ${data.evalVisibilityAndLeakageRisks || "待补充"}
|
|
1323
|
-
- Anchor and label policy: ${data.evalAnchorAndLabelPolicy || "待补充"}
|
|
1324
|
-
- Scale and comparability policy: ${data.evalScaleAndComparabilityPolicy || "待补充"}
|
|
1325
|
-
- Metric validity checks: ${data.evalMetricValidityChecks || "待补充"}
|
|
1326
|
-
- Comparison validity checks: ${data.evalComparisonValidityChecks || "待补充"}
|
|
1327
|
-
- Statistical validity checks: ${data.evalStatisticalValidityChecks || "待补充"}
|
|
1328
|
-
- Claim boundary: ${data.evalClaimBoundary || "待补充"}
|
|
1329
|
-
- Integrity self-check: ${data.evalIntegritySelfCheck || "待补充"}
|
|
1330
|
-
- Anomaly signals: ${data.evalAnomalySignals || "待补充"}
|
|
1331
|
-
- Implementation reality checks: ${data.evalImplementationRealityChecks || "待补充"}
|
|
1332
|
-
- Alternative explanations considered: ${data.evalAlternativeExplanationsConsidered || "待补充"}
|
|
1333
|
-
- Cross-check method: ${data.evalCrossCheckMethod || "待补充"}
|
|
1334
|
-
- Best-supported interpretation: ${data.evalBestSupportedInterpretation || "待补充"}
|
|
1335
|
-
- Escalation threshold: ${data.evalEscalationThreshold || "待补充"}
|
|
1336
|
-
- Experiment ladder: ${data.evalExperimentLadder || "待补充"}
|
|
1337
|
-
- Benchmark ladder: ${data.evalBenchmarkLadder || "待补充"}
|
|
1338
|
-
- Promotion gate: ${data.evalPromotionGate || "待补充"}
|
|
1339
|
-
- Dataset package: ${data.datasetPackage || "待补充"}
|
|
1340
|
-
- Dataset years: ${data.datasetYears || "待补充"}
|
|
1341
|
-
- Benchmark role: ${data.benchmarkRole || "待补充"}
|
|
1342
|
-
- Benchmark rationale: ${data.benchmarkRationale || "待补充"}
|
|
1343
|
-
- Comparison suite: ${data.comparisonMethods || "待补充"}
|
|
1344
|
-
- Comparison rationale: ${data.comparisonRationale || "待补充"}
|
|
1345
|
-
- Comparison evidence: ${data.comparisonEvidence || "待补充"}
|
|
1346
|
-
- Source basis: ${data.datasetSources || "待补充"}
|
|
1347
|
-
- Representative papers: ${data.datasetPapers || "待补充"}
|
|
1348
1226
|
|
|
1349
1227
|
## 主要风险
|
|
1350
1228
|
|
|
@@ -1369,6 +1247,8 @@ ${data.problem || "待补充"}
|
|
|
1369
1247
|
## Active Stage
|
|
1370
1248
|
|
|
1371
1249
|
- Stage: ${data.stage || "TBD"}
|
|
1250
|
+
- Current objective: ${data.workflowObjective || "TBD"}
|
|
1251
|
+
- Immediate next action: ${data.immediateAction || "TBD"}
|
|
1372
1252
|
|
|
1373
1253
|
## Mission
|
|
1374
1254
|
|
|
@@ -1377,63 +1257,15 @@ ${data.problem || "TBD"}
|
|
|
1377
1257
|
## Best Current Path
|
|
1378
1258
|
|
|
1379
1259
|
- Approved direction: ${data.direction || "TBD"}
|
|
1380
|
-
-
|
|
1260
|
+
- Strongest supported claim: ${data.claim || "TBD"}
|
|
1381
1261
|
- Auto mode: ${data.autoStatus || "inactive"}
|
|
1382
1262
|
- Auto objective: ${data.autoObjective || "TBD"}
|
|
1383
|
-
- Auto rung: ${data.autoCurrentRung || "TBD"}
|
|
1384
|
-
- Auto watch target: ${data.autoWatchTarget || "TBD"}
|
|
1385
1263
|
- Auto decision: ${data.autoDecision || "TBD"}
|
|
1386
|
-
- Auto terminal goal: ${joinNonEmpty([data.autoGoalType, data.autoGoalTarget], " | ") || "TBD"}
|
|
1387
|
-
- Auto goal reached: ${data.autoGoalReached || "TBD"}
|
|
1388
|
-
- Auto stop reason: ${data.autoStopReason || "TBD"}
|
|
1389
|
-
- Auto final artifact: ${data.autoFinalArtifact || "TBD"}
|
|
1390
|
-
- Auto final rung: ${data.autoFinalRung || "TBD"}
|
|
1391
1264
|
- Collaborator report mode: ${data.reportMode || "TBD"}
|
|
1392
1265
|
- Canonical context readiness: ${data.reportReadiness || "TBD"}
|
|
1393
|
-
- Why this report mode is active: ${data.reportModeReason || "TBD"}
|
|
1394
1266
|
- Method name: ${data.methodName || "TBD"}
|
|
1395
|
-
- Contribution bullets: ${data.contributionBullets || "TBD"}
|
|
1396
|
-
- Eval objective: ${data.evalObjective || "TBD"}
|
|
1397
1267
|
- Primary metrics: ${data.evalPrimaryMetrics || "TBD"}
|
|
1398
1268
|
- Secondary metrics: ${data.evalSecondaryMetrics || "TBD"}
|
|
1399
|
-
- Required terminal evidence: ${data.evalRequiredTerminalEvidence || "TBD"}
|
|
1400
|
-
- Table plan: ${data.evalTablePlan || "TBD"}
|
|
1401
|
-
- Metric glossary: ${data.evalMetricGlossary || "TBD"}
|
|
1402
|
-
- Background sources: ${data.evalBackgroundSources || "TBD"}
|
|
1403
|
-
- Method and baseline source papers: ${data.evalMethodAndBaselineSourcePapers || "TBD"}
|
|
1404
|
-
- Method and baseline implementation source: ${data.evalMethodAndBaselineImplementationSource || "TBD"}
|
|
1405
|
-
- Metric source papers: ${data.evalMetricSourcePapers || "TBD"}
|
|
1406
|
-
- Metric implementation source: ${data.evalMetricImplementationSource || "TBD"}
|
|
1407
|
-
- Comparison source papers: ${data.evalComparisonSourcePapers || "TBD"}
|
|
1408
|
-
- Comparison implementation source: ${data.evalComparisonImplementationSource || "TBD"}
|
|
1409
|
-
- Deviation from original implementation: ${data.evalDeviationFromOriginalImplementation || "TBD"}
|
|
1410
|
-
- Evaluation setting semantics: ${data.evalEvaluationSettingSemantics || "TBD"}
|
|
1411
|
-
- Visibility and leakage risks: ${data.evalVisibilityAndLeakageRisks || "TBD"}
|
|
1412
|
-
- Anchor and label policy: ${data.evalAnchorAndLabelPolicy || "TBD"}
|
|
1413
|
-
- Scale and comparability policy: ${data.evalScaleAndComparabilityPolicy || "TBD"}
|
|
1414
|
-
- Metric validity checks: ${data.evalMetricValidityChecks || "TBD"}
|
|
1415
|
-
- Comparison validity checks: ${data.evalComparisonValidityChecks || "TBD"}
|
|
1416
|
-
- Statistical validity checks: ${data.evalStatisticalValidityChecks || "TBD"}
|
|
1417
|
-
- Claim boundary: ${data.evalClaimBoundary || "TBD"}
|
|
1418
|
-
- Integrity self-check: ${data.evalIntegritySelfCheck || "TBD"}
|
|
1419
|
-
- Anomaly signals: ${data.evalAnomalySignals || "TBD"}
|
|
1420
|
-
- Implementation reality checks: ${data.evalImplementationRealityChecks || "TBD"}
|
|
1421
|
-
- Alternative explanations considered: ${data.evalAlternativeExplanationsConsidered || "TBD"}
|
|
1422
|
-
- Cross-check method: ${data.evalCrossCheckMethod || "TBD"}
|
|
1423
|
-
- Best-supported interpretation: ${data.evalBestSupportedInterpretation || "TBD"}
|
|
1424
|
-
- Escalation threshold: ${data.evalEscalationThreshold || "TBD"}
|
|
1425
|
-
- Experiment ladder: ${data.evalExperimentLadder || "TBD"}
|
|
1426
|
-
- Benchmark ladder: ${data.evalBenchmarkLadder || "TBD"}
|
|
1427
|
-
- Promotion gate: ${data.evalPromotionGate || "TBD"}
|
|
1428
|
-
- Dataset package: ${data.datasetPackage || "TBD"}
|
|
1429
|
-
- Dataset years: ${data.datasetYears || "TBD"}
|
|
1430
|
-
- Benchmark role: ${data.benchmarkRole || "TBD"}
|
|
1431
|
-
- Benchmark rationale: ${data.benchmarkRationale || "TBD"}
|
|
1432
|
-
- Comparison suite: ${data.comparisonMethods || "TBD"}
|
|
1433
|
-
- Comparison rationale: ${data.comparisonRationale || "TBD"}
|
|
1434
|
-
- Comparison evidence: ${data.comparisonEvidence || "TBD"}
|
|
1435
|
-
- Source basis: ${data.datasetSources || "TBD"}
|
|
1436
|
-
- Representative papers: ${data.datasetPapers || "TBD"}
|
|
1437
1269
|
|
|
1438
1270
|
## Main Risk
|
|
1439
1271
|
|