dsh-vibe-math 1.3.5 → 1.3.6
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 +2 -0
- package/package.json +1 -1
- package/vibe-math-v4/vibe-math-v4.js +8 -4
package/README.md
CHANGED
|
@@ -55,6 +55,8 @@
|
|
|
55
55
|
> 🔧 **v1.3.4 和谐修复**:重排 `框架图-v4.png` 消除文字/箭头重叠遮挡(子标签不再溢出框、`/compact` 移入独立的"上下文"能力块、底部"产物沉淀·断点续跑"居中排布);补齐 `agent.cordis.yml` 常驻描述中的"deadlines"一词(v4 并无截止机制),并移除 `实现方案.md` 中不存在的 `vibe_v4_inject`(实际用 `vibe_v4_message`)。
|
|
56
56
|
>
|
|
57
57
|
> 🔧 **v1.3.5 边界 A 落地 + 真实 `/compact`**:`maxParallel` 真正限流(在途上限),`activityTimeoutMs` 作为**心跳门控**(空闲超时才触发 CHECKPOINT 唤醒,推动收敛/停止而非无限烧 token);并用 DSH 真实 `ctx.compaction.compactIfNeeded(常驻 agent, 'pressure', signal)` 压缩常驻自身上下文(回退到自述指令)。详见 §19。
|
|
58
|
+
>
|
|
59
|
+
> 🔧 **v1.3.6 修复 v4 preset 选择后跳回原 preset**:v4 插件的 `apply` 读取 `ctx.subagents/agents/fs/tools/commands` 却**未声明 `inject`**,被 DSH 守卫以"未声明依赖"拒绝 → 组合无法挂载 → 选择后自动回退。已补 `export const inject = [...]`,并把心跳定时器从全局 `setTimeout/clearTimeout`(插件沙箱里不存在)改为 **`timer` 服务(`ctx.timeout`)**。
|
|
58
60
|
|
|
59
61
|
---
|
|
60
62
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-vibe-math",
|
|
3
3
|
"description": "Multi-agent mathematical problem-solving & verification frameworks for DeepSeek Harness — FOUR agent presets in one install: vibe-math-v1 (classic pipeline), vibe-math-v2 (probability-driven: qs.json + Propos knowledge base + explorer→solver→review/debate verdict), vibe-math-v3 (THIRD-generation, recommended: paper-style Markdown knowledge base with Problems/Progress/Propos/Methods/Verified + planner-agent scheduling that decides the next N actions + universal theory/method invention library + agents write their own Markdown directly via a per-file write lock), and vibe-math-v4 (FOURTH-generation: persistent self-organizing resident subagents that message & meet to decide all tasks, verify only by unanimous consensus, /compact at a context threshold, and stop only when all agree the problem is solved). Installing this bundle auto-installs all four presets into the DSH preset root.",
|
|
4
|
-
"version": "1.3.
|
|
4
|
+
"version": "1.3.6",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "installer.js",
|
|
7
7
|
"exports": {
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
// unanimous-consensus verification / context compaction proxy / resume / human
|
|
4
4
|
// intervention). It NEVER assigns tasks: residents message & meet and decide all
|
|
5
5
|
// task allocation among themselves. Consumes HOST subagents/agents/fs/tools/commands.
|
|
6
|
+
// NOTE: must declare `inject` for every service read as a ctx property (the Guard
|
|
7
|
+
// rejects undeclared dependencies), and must use the `timer` Service (ctx.timeout),
|
|
8
|
+
// not global setTimeout/clearTimeout, which do not exist in the plugin runtime.
|
|
9
|
+
export const inject = ['subagents', 'agents', 'fs', 'tools', 'commands', 'timer']
|
|
6
10
|
export function apply(ctx) {
|
|
7
11
|
const subagents = ctx.subagents
|
|
8
12
|
const agents = ctx.agents
|
|
@@ -37,7 +41,7 @@ export function apply(ctx) {
|
|
|
37
41
|
let problemText = '', problemId = 'problem', runId = 'run-' + shortId()
|
|
38
42
|
let meetingState = null, verifyState = null, pendingVerify = null
|
|
39
43
|
let busy = new Set(), wakeKind = new Map(), currentResident = ''
|
|
40
|
-
let lastActivityAt = now(), artifactCount = 0, lastSyncMeetingAt = 0, persistedEpoch = '',
|
|
44
|
+
let lastActivityAt = now(), artifactCount = 0, lastSyncMeetingAt = 0, persistedEpoch = '', heartbeatDisposer = null
|
|
41
45
|
const activityLogCap = 200
|
|
42
46
|
|
|
43
47
|
// ---- utils ----
|
|
@@ -341,12 +345,12 @@ export function apply(ctx) {
|
|
|
341
345
|
+'\nReply with ONLY a JSON object (```json fence):\n'
|
|
342
346
|
+'{"summary":"<what you do next or a declaration>","solved":false,"propose_verify":"<id|null>","propose_meeting":"<agenda|null>","claim_task":"<id|null>"}'
|
|
343
347
|
}
|
|
344
|
-
function clearHeartbeat(){ if(
|
|
348
|
+
function clearHeartbeat(){ if(heartbeatDisposer!==null){ try{ heartbeatDisposer() }catch(e){} heartbeatDisposer=null } }
|
|
345
349
|
function armHeartbeat(){
|
|
346
350
|
clearHeartbeat()
|
|
347
351
|
const ms=Number(params.activityTimeoutMs)||120000
|
|
348
|
-
if(!(ms>0)) return
|
|
349
|
-
|
|
352
|
+
if(!(ms>0) || typeof ctx.timeout!=='function') return
|
|
353
|
+
heartbeatDisposer=ctx.timeout(()=>{ heartbeatDisposer=null; scheduleNext().catch(()=>{}) }, ms)
|
|
350
354
|
}
|
|
351
355
|
// Real DSH /compact of a resident's OWN session via ctx.compaction (if the host provides it);
|
|
352
356
|
// falling back silently to the resident self-summary directive when the service is absent.
|