dsh-vibe-math 2.8.4 → 2.8.5
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.en.md +19 -4
- package/README.md +19 -4
- package/cordis.patch.yml +8 -8
- package/docs/COMPAT-AUDIT-ROUND2.md +27 -0
- package/docs/final-paper.md +8 -0
- package/docs/formal-verification.md +6 -6
- package/docs/release-notes/README.en.md +1 -0
- package/docs/release-notes/README.md +1 -0
- package/docs/release-notes/RELEASE-NOTES-2.8.5.en.md +75 -0
- package/docs/release-notes/RELEASE-NOTES-2.8.5.md +75 -0
- package/package.json +5 -3
- package/prompt-corpus-persona/persona-corpus.json +9 -9
- package/prompt-corpus-persona/persona-corpus.md +17 -17
- package/prompt-corpus-v2/formal-verify-v2.json +109 -109
- package/prompt-corpus-v2/formal-verify-v2.md +216 -216
- package/prompt-corpus-v3/formal-verify-v3.json +77 -77
- package/prompt-corpus-v3/formal-verify-v3.md +147 -147
- package/prompt-corpus-v4/formal-verify-v4.json +10 -10
- package/prompt-corpus-v4/formal-verify-v4.md +40 -40
- package/prompt-corpus-v5/prompt-corpus-v5.json +61 -61
- package/prompt-corpus-v5/prompt-corpus-v5.md +613 -186
- package/tests/audit-artifact-docs.mjs +38 -2
- package/tests/audit-artifact-docs.mutants.mjs +66 -1
- package/tests/audit-engine-faces.mjs +2 -2
- package/tests/audit-persona-surface.test.mjs +4 -1
- package/tests/audit-prompt-invariants.mjs +292 -2
- package/tests/e2e-v5-round2.test.mjs +214 -2
- package/tests/formal-verify-v2.test.mjs +6 -5
- package/tests/formal-verify-v3.test.mjs +6 -5
- package/tests/formal-verify-v4.test.mjs +4 -4
- package/tests/prompt-v5-integrity.test.mjs +6 -6
- package/tests/run-tests.mjs +18 -2
- package/tests/v4-final-paper.mutants.mjs +14 -0
- package/tests/v4-final-paper.test.mjs +18 -0
- package/tests/v5-institute-fixes.mutants.mjs +107 -0
- package/vibe-math-v2/agent.cordis.yml +2 -2
- package/vibe-math-v2/math-computation.js +5 -5
- package/vibe-math-v2/vibe-math-v2.js +66 -17
- package/vibe-math-v3/agent.cordis.yml +2 -2
- package/vibe-math-v3/math-computation.js +5 -5
- package/vibe-math-v3/vibe-math-v3.js +64 -15
- package/vibe-math-v4/agent.cordis.yml +6 -6
- package/vibe-math-v4/math-computation.js +5 -5
- package/vibe-math-v4/vibe-math-v4.js +71 -20
- package/vibe-math-v5/agent.cordis.yml +6 -6
- package/vibe-math-v5/math-computation.js +5 -5
- package/vibe-math-v5/vibe-math-v5.js +378 -33
- package/vibe-math-v5//345/256/236/347/216/260/346/226/271/346/241/210.md +55 -2
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
{
|
|
9
9
|
"kind": "work",
|
|
10
10
|
"label": "off/normal",
|
|
11
|
-
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
11
|
+
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40}"
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
14
|
"kind": "verify",
|
|
@@ -18,17 +18,17 @@
|
|
|
18
18
|
{
|
|
19
19
|
"kind": "work",
|
|
20
20
|
"label": "encourage/normal",
|
|
21
|
-
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n【顺手形式化(鼓励)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**这会让后续的验证与证明省掉大量重复工作。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
21
|
+
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n【顺手形式化(鼓励)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**这会让后续的验证与证明省掉大量重复工作。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40,\"formal\":{\"target\":\"<对象 id>\",\"decision\":\"used|blocked|defect\",\"file\":\"Formal/<对象 id>.lean\",\"note\":\"难度判断/阻塞原因/具体偏差\"}}"
|
|
22
22
|
},
|
|
23
23
|
{
|
|
24
24
|
"kind": "work",
|
|
25
25
|
"label": "encourage/heartbeat",
|
|
26
|
-
"prompt": "Resident researcher r-1 — CHECKPOINT(团队空闲,请由你们继续自主推进)。当前项目尚未解决(除非你已确认)。团队在等待有人继续:请**继续解决这个问题**——读他人的库对齐、推进某个子问题/引理/方法、尝试一条路线;或向团队发消息(input)、提议任务(propose_task)让大家分工。若你确实认为问题已解决、或已彻底无路可走,才提议开会(propose_meeting)让团队表决/商量、或声明 solved=true。默认立场是:**请推进,而不是停在原地。**\n【顺手形式化(鼓励)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**这会让后续的验证与证明省掉大量重复工作。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
26
|
+
"prompt": "Resident researcher r-1 — CHECKPOINT(团队空闲,请由你们继续自主推进)。当前项目尚未解决(除非你已确认)。团队在等待有人继续:请**继续解决这个问题**——读他人的库对齐、推进某个子问题/引理/方法、尝试一条路线;或向团队发消息(input)、提议任务(propose_task)让大家分工。若你确实认为问题已解决、或已彻底无路可走,才提议开会(propose_meeting)让团队表决/商量、或声明 solved=true。默认立场是:**请推进,而不是停在原地。**\n【顺手形式化(鼓励)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**这会让后续的验证与证明省掉大量重复工作。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you will do / what you advanced this round>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<id|null>\",\"contextPct\":40,\"formal\":{\"target\":\"<对象 id>\",\"decision\":\"used|blocked|defect\",\"file\":\"Formal/<对象 id>.lean\",\"note\":\"难度判断/阻塞原因/具体偏差\"}}"
|
|
27
27
|
},
|
|
28
28
|
{
|
|
29
29
|
"kind": "work",
|
|
30
30
|
"label": "encourage/coreRules",
|
|
31
|
-
"prompt": "[核心规则重申] 只有 Verified/(及标记\"已验证·真/假\")算已确立;验证须全组一致(全真或全假)才作数,否则留库附平均概率;你只写自己的库(<VIBEMATH>/Projects/default/ 的 Progress/<你>/、Propos/<你>/、Methods/<你>/、Subproblems/<你>/),可只读任何人的库;任务分工由团队讨论决定;退出只输出一个 JSON 对象。\n`facilitator` 是**框架/人类介入的信使名**,不是常驻成员,也不在编制里——**不要向它回信**(`vibe_v4_send_message` 会返回 no such resident);要回话请用本轮回执的 \"input\" 字段(会转给全组)或 `vibe_v4_send_message {to:\"all\"}`。\n【顺手形式化(鼓励)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**这会让后续的验证与证明省掉大量重复工作。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
31
|
+
"prompt": "[核心规则重申] 只有 Verified/(及标记\"已验证·真/假\")算已确立;验证须全组一致(全真或全假)才作数,否则留库附平均概率;你只写自己的库(<VIBEMATH>/Projects/default/ 的 Progress/<你>/、Propos/<你>/、Methods/<你>/、Subproblems/<你>/),可只读任何人的库;任务分工由团队讨论决定;退出只输出一个 JSON 对象。\n`facilitator` 是**框架/人类介入的信使名**,不是常驻成员,也不在编制里——**不要向它回信**(`vibe_v4_send_message` 会返回 no such resident);要回话请用本轮回执的 \"input\" 字段(会转给全组)或 `vibe_v4_send_message {to:\"all\"}`。\n【顺手形式化(鼓励)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**这会让后续的验证与证明省掉大量重复工作。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly."
|
|
32
32
|
},
|
|
33
33
|
{
|
|
34
34
|
"kind": "verify",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
{
|
|
44
44
|
"kind": "work",
|
|
45
45
|
"label": "require/normal",
|
|
46
|
-
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
46
|
+
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40,\"formal\":{\"target\":\"<对象 id>\",\"decision\":\"used|blocked|defect\",\"file\":\"Formal/<对象 id>.lean\",\"note\":\"难度判断/阻塞原因/具体偏差\"}}"
|
|
47
47
|
},
|
|
48
48
|
{
|
|
49
49
|
"kind": "verify",
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
{
|
|
74
74
|
"kind": "work",
|
|
75
75
|
"label": "require/real work wake",
|
|
76
|
-
"prompt": "Resident researcher r-2 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
76
|
+
"prompt": "Resident researcher r-2 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40,\"formal\":{\"target\":\"<对象 id>\",\"decision\":\"used|blocked|defect\",\"file\":\"Formal/<对象 id>.lean\",\"note\":\"难度判断/阻塞原因/具体偏差\"}}\n\n[NEW MESSAGE from facilitator]\n请继续推进。"
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
79
|
"kind": "hint",
|
|
@@ -98,22 +98,22 @@
|
|
|
98
98
|
{
|
|
99
99
|
"kind": "work",
|
|
100
100
|
"label": "normal + queued inbox line ([<sender>] content)",
|
|
101
|
-
"prompt": "Resident researcher r-1 — 第 1 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮1\n- r-2「(未定)」active·轮1\nNew items:\n [facilitator(框架/人类信使,不是常驻成员,不要向它回信;要回话请用本轮回执的 \"input\" 或 vibe_v4_send_message {to:\"all\"})] 请优先核对引理 B 的假设条件。\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
101
|
+
"prompt": "Resident researcher r-1 — 第 1 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮1\n- r-2「(未定)」active·轮1\nNew items:\n [facilitator(框架/人类信使,不是常驻成员,不要向它回信;要回话请用本轮回执的 \"input\" 或 vibe_v4_send_message {to:\"all\"})] 请优先核对引理 B 的假设条件。\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40,\"formal\":{\"target\":\"<对象 id>\",\"decision\":\"used|blocked|defect\",\"file\":\"Formal/<对象 id>.lean\",\"note\":\"难度判断/阻塞原因/具体偏差\"}}"
|
|
102
102
|
},
|
|
103
103
|
{
|
|
104
104
|
"kind": "work",
|
|
105
105
|
"label": "normal + delivered message frame ([NEW MESSAGE from ...])",
|
|
106
|
-
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
106
|
+
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮0\nNew items:\n (no new messages)\n\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40}\n\n[NEW MESSAGE from facilitator]\n请优先核对引理 B 的假设条件。"
|
|
107
107
|
},
|
|
108
108
|
{
|
|
109
109
|
"kind": "work",
|
|
110
110
|
"label": "normal + group-chat frame ([群聊])",
|
|
111
|
-
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮1\nNew items:\n (no new messages)\n\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
111
|
+
"prompt": "Resident researcher r-1 — 第 0 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮0\n- r-2「(未定)」active·轮1\nNew items:\n (no new messages)\n\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40}\n\n[MESSAGE from r-2]\n[群聊] 我对引理 B 的假设有异议:需要 n≥1。"
|
|
112
112
|
},
|
|
113
113
|
{
|
|
114
114
|
"kind": "work",
|
|
115
115
|
"label": "task frame ([YOU CLAIMED TASK ...])",
|
|
116
|
-
"prompt": "Resident researcher r-1 — 第 2 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮2\n- r-2「(未定)」active·轮2\nNew items:\n (no new messages)\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation
|
|
116
|
+
"prompt": "Resident researcher r-1 — 第 2 轮。一切由你和团队讨论决定。动手前先**读别人的库**对齐事实、避免重复;把新进展/结论**直接用 fs 写进你自己的文件**(**路径带库根 **);想对团队说的话放 \"input\"(会转给其他常驻)。\n\n团队成员:\n- r-1「(未定)」active·轮2\n- r-2「(未定)」active·轮2\nNew items:\n (no new messages)\n\n\n【顺手形式化(强制)】把你工作中常用或可能复用的对象、假设、新定义,用 Lean 形式化定义并归档到全局可复用库(vibe_v4_lean_archive kind='def'),已成立的引理归到 Formal/Proved/(kind='lemma');写之前先 vibe_v4_lean_lib 查重,避免重复定义。\n · 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)。**没把握的先别入库**——\n 进了 Formal/Proved 的东西会被当成已核对引理;没把握就记 blocked 并写清难点,别用形式化掩盖不确定。\n · 复用优先:写新定义/证明前**先 vibe_v4_lean_lib 查已有库**;复用已归档内容用\n `import Formal.Lib.<name>` / `import Formal.Proved.<name>`(模块根 = VibeMath 根,框架已把它加进编译搜索路径),\n 或 `vibe_v4_lean_read {name}` 取原文逐字复制。**查不到再新写**;同内容重复归档会自动去重。\n · 编译默认走后台队列(leanAsync=true):入队后你可以继续工作;用 vibe_v4_lean_lib 的 jobs 字段或下一轮提示里的\n 【形式化结果】行看结果。**在作业落地为\"通过\"之前,不得把该对象当成已通过。**本模式下,任何要定论为真/假的对象都必须先有 Lean 通过或显式阻塞记录。归档前先跑通(vibe_v4_lean_run 或 run=true);跑不通的定义不要进可复用库。\n\n- math_computation {op: probe|run|receipt|install, engine, mode: code|file|expr, …} — 先 probe 预检引擎/包/许可,再调引擎计算并把脚本与输出归档成可复核回执;缺引擎/缺包只报告与给安装指引/计划;shell 兜底不算归档。\n- math_computation:可用引擎 无。需要数值/符号/统计计算时先 probe 再 run(工具路径会留下可复核回执,结论请引用回执路径);缺包时如实说明并给替代方案或安装计划(不要假装),安装需先出计划并征得确认。\n- shell 兜底标注:工具不可用而改用宿主 shell 时,结论必须写\"未经工具归档(shell 路径)\",且不得与工具回执混同(shell 无回执、无超时/输出上限保证)。\n- 归档→编辑→重跑(**回执=一次 math_computation 调用的 JSON 结果**:先 probe 或 run 一次,它有哪些字段就一目了然):mode:'code' 的脚本原件在回执的 scriptPath(Computation/<id>/script.<ext>,**相对项目根**);**成员的文件工具是按会话 cwd 解析的**,所以读它要用**绝对路径** `receipt.scriptAbs`,或把 `receipt.cwd` 与 `receipt.scriptPath` 拼起来(回执两个字段都有)。要拿到\"改过代码\"的证据,请**编辑你最初运行的那个源文件**,再用 mode:'file' 指向**同一个源路径**重跑:归档 id 以**源路径**为键,因此这落在**同一归档**的 **attempt ≥ 2**,并给出 `scriptChanged:true`(脚本内容相对上一份回执变过)与 `previousReceipt`(指向上一次)。**指向归档副本本身**(`receipt.scriptAbs` 那个路径)按设计是**另一份新归档**:新 id、attempt 1、没有 `previousReceipt`、`scriptChanged:false`;旧 attempt 绝不会被覆盖,但它**不是**\"同一归档的新 attempt\"——工具会用 `fileIsArchivedScript` 与 `ARCHIVED_SCRIPT_RERUN` 警告明确说明。**旧回执对修改后的代码无效**——报告里必须引用与当前代码哈希一致的那份回执;工具会在 scriptChanged / scriptChangedDuringRun 为 true 时显式告警。\n- 需要精确数值、符号化简、反例搜索、统计或线性代数时调用 math_computation:先 probe,再 run。\n- 复核他人的数值结论时用 op:'receipt'(或 op:'run', mode:'file' 指向同一脚本)重跑,并把回执路径写进报告。\n- 归档即引用:报告里带 Computation/<id>/receipt.json;这是\"支撑材料\"的用法。\n- 判断标准:① 有价值或可能复用;② 较为关键或必要;③ 你对该陈述有把握(置信度高)——没把握的先别入库。\n- 不得把计算结果当成\"已证明\":对象是否已验证仍只由本预设既有的验证/共识路径给出。\n- 替代必须声明(诚实性):当替代方案改变了**精确性或结论强度**时(精确符号解 → 数值近似、闭式解 → 采样/求积、改了精度/容差/假设、换了算法类),结论里**必须写明**,不得读起来像得到了原本(精确/所要求的)结果;拿不到精确结果就直说。\n- math_computation: available engines none. Probe first, then run (the tool path leaves a re-runnable receipt - cite it). If a package is missing, say so and offer a fallback or an install plan; installing requires a plan plus confirmation.\n- Shell fallback: if the tool cannot run you may use the host shell, but mark the conclusion \"not tool-archived (shell path)\" - shell runs have no receipt and no timeout/output guarantees; only tool-routed computations count as reproducible supporting material.\n- Archive -> edit -> re-run (a RECEIPT is the JSON result of ONE math_computation call - run `probe` or `run` once and the fields below are right there in front of you): for mode:'code' the script original is at the receipt's scriptPath (Computation/<id>/script.<ext>, **relative to the project root**); member file tools resolve paths against the SESSION CWD, so READ it via the ABSOLUTE `receipt.scriptAbs`, or join `receipt.cwd` with `receipt.scriptPath` (both are in the receipt). To produce evidence for EDITED code, edit the SOURCE FILE you originally ran and re-run mode:'file' pointing at THAT SAME PATH: the archive id is keyed by the SOURCE PATH, so this lands on the SAME archive as attempt >= 2, with `scriptChanged:true` (the script content differs from the previous receipt) and `previousReceipt` pointing at the previous attempt. Pointing mode:'file' at the ARCHIVED COPY itself (the `receipt.scriptAbs` path) is a DIFFERENT archive BY DESIGN - a new id, attempt 1, no `previousReceipt`, `scriptChanged:false`: the earlier attempt is never overwritten, but it is NOT \"a new attempt of the same archive\", and the tool says so via `fileIsArchivedScript` and the `ARCHIVED_SCRIPT_RERUN` warning. **An old receipt is NOT evidence for edited code** - cite the receipt whose scriptHash matches the current code; the tool warns explicitly via scriptChanged / scriptChangedDuringRun.\n- Call math_computation for exact numerics, symbolic simplification, counter-example search, statistics or linear algebra: probe first, then run.\n- To re-check someone else's numeric conclusion, re-run the same script (op:'receipt' or op:'run', mode:'file') and cite the receipt path.\n- Archive means cite: put Computation/<id>/receipt.json in your report - that is what \"supporting material\" means.\n- Criteria: (1) valuable or likely reusable; (2) important or necessary; (3) you are confident in it - do not archive what you are unsure about.\n- Never treat a computation result as \"proved\": whether an object is verified is still decided only by this preset's existing verification/consensus path.\n- Declare substitutions (honesty): when an alternative changes EXACTNESS or conclusion strength (exact symbolic solution -> numerical approximation, closed form -> sampling/quadrature, changed precision/tolerances/assumptions, a different algorithm class), the conclusion MUST say so explicitly and must not read as if the original (exact/requested) result had been obtained; if the exact result is unavailable, say so plainly.\nReply with ONLY a JSON object:\n{\"summary\":\"<what you did / decided this round, 1-3 sentences>\",\"input\":\"<optional: a message to the whole team, or \\\"\\\">\",\"solved\":false,\"propose_verify\":\"<id|null>\",\"propose_meeting\":\"<agenda|null>\",\"propose_task\":\"<task title|null>\",\"task_desc\":\"<optional: why this task matters / what it covers|null>\",\"claim_task\":\"<task id|null>\",\"task_done\":\"<task id|null>\",\"contextPct\":40,\"formal\":{\"target\":\"<对象 id>\",\"decision\":\"used|blocked|defect\",\"file\":\"Formal/<对象 id>.lean\",\"note\":\"难度判断/阻塞原因/具体偏差\"}}\n\n[YOU CLAIMED TASK <TASKID>] 核对引理 B 的假设 — 确认 n≥1 是否必要"
|
|
117
117
|
}
|
|
118
118
|
]
|
|
119
119
|
}
|