@yemi33/minions 0.1.1055 → 0.1.1057
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 +26 -1
- package/engine.js +31 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,11 +1,36 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.1.
|
|
3
|
+
## 0.1.1057 (2026-04-17)
|
|
4
4
|
|
|
5
5
|
### Features
|
|
6
6
|
- seed realActivityMap at spawn time, stamp pid in live-output (#1200)
|
|
7
7
|
|
|
8
8
|
### Fixes
|
|
9
|
+
- reassign pending items from unspawned temp agents to idle named agents (#1204) (#1212)
|
|
10
|
+
- guard undefined agent in pending dispatch loop (closes #1206) (#1210)
|
|
11
|
+
- improve fallback meeting conclusion
|
|
12
|
+
- remove command center chevron
|
|
13
|
+
- stamp live-output.log stub before spawn (#1198)
|
|
14
|
+
- harden settings save and migrate pr poll config
|
|
15
|
+
|
|
16
|
+
### Other
|
|
17
|
+
- Fix publish workflow merge
|
|
18
|
+
- chore: raise default meeting round timeout
|
|
19
|
+
- Harden prompt context handling
|
|
20
|
+
- Harden loop watch conversion
|
|
21
|
+
- Add watches sidebar activity badge
|
|
22
|
+
- test(cli): add unit tests for handleCommand, start, stop, kill, spawn (#1191)
|
|
23
|
+
- chore: untrack pipeline files — local config only
|
|
24
|
+
- restore: recover daily-arch-improvement and weekly-dead-code-cleanup pipelines
|
|
25
|
+
- Harden CC stream resilience
|
|
26
|
+
|
|
27
|
+
## 0.1.1056 (2026-04-17)
|
|
28
|
+
|
|
29
|
+
### Features
|
|
30
|
+
- seed realActivityMap at spawn time, stamp pid in live-output (#1200)
|
|
31
|
+
|
|
32
|
+
### Fixes
|
|
33
|
+
- reassign pending items from unspawned temp agents to idle named agents (#1204) (#1212)
|
|
9
34
|
- guard undefined agent in pending dispatch loop (closes #1206) (#1210)
|
|
10
35
|
- improve fallback meeting conclusion
|
|
11
36
|
- remove command center chevron
|
package/engine.js
CHANGED
|
@@ -3512,6 +3512,37 @@ async function tickInner() {
|
|
|
3512
3512
|
});
|
|
3513
3513
|
} catch (e) { log('warn', `Persist agent resolution for ${item.id} failed: ${e.message}`); }
|
|
3514
3514
|
}
|
|
3515
|
+
// #1204: Pre-assigned unspawned temp agents never unblock naturally.
|
|
3516
|
+
// When a batch discovery saturates maxConcurrent, resolveAgent hands out temp
|
|
3517
|
+
// IDs that get stamped onto pending items. Because those temp IDs are never
|
|
3518
|
+
// in busyAgents (they were never spawned), the agent-busy reassignment path
|
|
3519
|
+
// never fires — items sit forever even when named agents go idle. Re-route
|
|
3520
|
+
// them eagerly before the busy check so an idle named agent can pick up.
|
|
3521
|
+
const isUnspawnedTemp = item.agent?.startsWith('temp-') && !busyAgents.has(item.agent);
|
|
3522
|
+
if (isUnspawnedTemp) {
|
|
3523
|
+
const altAgent = resolveAgent(item.type, config);
|
|
3524
|
+
if (altAgent && altAgent !== item.agent) {
|
|
3525
|
+
const prevAgent = item.agent;
|
|
3526
|
+
item.agent = altAgent;
|
|
3527
|
+
item.agentName = config.agents[altAgent]?.name || tempAgents.get(altAgent)?.name || altAgent;
|
|
3528
|
+
item.agentRole = config.agents[altAgent]?.role || tempAgents.get(altAgent)?.role || 'Agent';
|
|
3529
|
+
delete item._agentBusySince;
|
|
3530
|
+
delete item.skipReason;
|
|
3531
|
+
log('info', `Reassigning ${item.id} from unspawned temp ${prevAgent} to ${altAgent} — temp agent never spawned`);
|
|
3532
|
+
// Persist reassignment to dispatch.json so it survives restarts/ticks
|
|
3533
|
+
mutateDispatch((dp) => {
|
|
3534
|
+
const p = (dp.pending || []).find(d => d.id === item.id);
|
|
3535
|
+
if (p) {
|
|
3536
|
+
p.agent = altAgent;
|
|
3537
|
+
p.agentName = item.agentName;
|
|
3538
|
+
p.agentRole = item.agentRole;
|
|
3539
|
+
delete p._agentBusySince;
|
|
3540
|
+
delete p.skipReason;
|
|
3541
|
+
}
|
|
3542
|
+
return dp;
|
|
3543
|
+
});
|
|
3544
|
+
}
|
|
3545
|
+
}
|
|
3515
3546
|
if (busyAgents.has(item.agent)) {
|
|
3516
3547
|
// Agent busy reassignment: if item has been waiting on a busy agent past the threshold,
|
|
3517
3548
|
// try to find an alternative agent via routing. Skip explicitly assigned items.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yemi33/minions",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1057",
|
|
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"
|