@yemi33/minions 0.1.464 → 0.1.466
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/CHANGELOG.md +3 -1
- package/dashboard.js +1 -1
- package/engine/timeout.js +5 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.1.
|
|
3
|
+
## 0.1.466 (2026-04-07)
|
|
4
4
|
|
|
5
5
|
### Fixes
|
|
6
|
+
- prevent duplicate plan-to-prd execution for already-converted plans
|
|
7
|
+
- extend heartbeat timeout for Agent (subagent) tool calls — 30min
|
|
6
8
|
- extend heartbeat timeout for any Bash tool call (10min default)
|
|
7
9
|
- clear stale session.json on resume failure, hang kill, and orphan
|
|
8
10
|
|
package/dashboard.js
CHANGED
|
@@ -2163,7 +2163,7 @@ If nothing to do: { "duplicates": [], "reclassify": [], "remove": [] }`;
|
|
|
2163
2163
|
// Check if already queued
|
|
2164
2164
|
const centralPath = path.join(MINIONS_DIR, 'work-items.json');
|
|
2165
2165
|
const items = JSON.parse(safeRead(centralPath) || '[]');
|
|
2166
|
-
const existing = items.find(w => w.type === 'plan-to-prd' && w.planFile === body.file &&
|
|
2166
|
+
const existing = items.find(w => w.type === 'plan-to-prd' && w.planFile === body.file && w.status !== 'failed' && w.status !== 'cancelled');
|
|
2167
2167
|
if (existing) return jsonReply(res, 200, { ok: true, id: existing.id, alreadyQueued: true });
|
|
2168
2168
|
|
|
2169
2169
|
const id = 'W-' + shared.uid();
|
package/engine/timeout.js
CHANGED
|
@@ -194,6 +194,11 @@ function checkTimeouts(config) {
|
|
|
194
194
|
blockingTimeout = Math.max(heartbeatTimeout, bashTimeout + 60000);
|
|
195
195
|
isBlocking = true;
|
|
196
196
|
}
|
|
197
|
+
// Agent (subagent) tool call — parent waits silently for child to complete
|
|
198
|
+
if (name === 'Agent') {
|
|
199
|
+
blockingTimeout = Math.max(heartbeatTimeout, 1800000); // 30min for subagents
|
|
200
|
+
isBlocking = true;
|
|
201
|
+
}
|
|
197
202
|
break; // only check the most recent tool_use
|
|
198
203
|
} catch { /* JSON parse — line may not be valid JSON */ }
|
|
199
204
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yemi33/minions",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.466",
|
|
4
4
|
"description": "Multi-agent AI dev team that runs from ~/.minions/ — five autonomous agents share a single engine, dashboard, and knowledge base",
|
|
5
5
|
"bin": {
|
|
6
6
|
"minions": "bin/minions.js"
|