@yemi33/minions 0.1.928 → 0.1.929

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.928 (2026-04-13)
3
+ ## 0.1.929 (2026-04-14)
4
4
 
5
5
  ### Features
6
6
  - doc-chat abort kills LLM process + queued messages auto-process
@@ -20,6 +20,7 @@
20
20
  - add red dot notification on CC tab when response completes (#934) (#946)
21
21
 
22
22
  ### Fixes
23
+ - steering kill on no-session re-queues dispatch instead of erroring (#1015)
23
24
  - inject cached ADO token into spawned agents (#998) (#1012)
24
25
  - qaAbort race + skip kill on completed doc-chat
25
26
  - doc-chat Stop button actually works — release server guard on disconnect
@@ -39,7 +40,6 @@
39
40
  - CC queued messages sent to wrong tab after tab switch
40
41
  - pass sysPromptPath instead of steerPromptPath as system prompt in steering resume (#962)
41
42
  - PRD item display dispatched/in-progress status conflation (closes #950) (#955)
42
- - remove KB watchdog — checkpoint never written, restore never worked
43
43
 
44
44
  ### Other
45
45
  - test(preflight): add unit tests for findClaudeBinary, runPreflight, printPreflight, checkOrExit (#953)
package/engine.js CHANGED
@@ -1110,6 +1110,34 @@ async function spawnAgent(dispatchItem, config) {
1110
1110
  return;
1111
1111
  }
1112
1112
 
1113
+ // Check if this was a no-session steering kill (#1014) — re-queue for retry instead of erroring.
1114
+ // timeout.js sets _steeringNoSession when it kills an agent that hasn't established a sessionId.
1115
+ // The steering message is already saved to inbox, so re-queuing lets the engine retry and the
1116
+ // agent picks up the message on the next dispatch.
1117
+ if (procInfo?._steeringNoSession) {
1118
+ log('info', `Steering no-session: re-queue ${agentId} (${id}) — dispatch moved back to pending`);
1119
+ activeProcesses.delete(id);
1120
+ realActivityMap.delete(id);
1121
+ // Move dispatch item from active back to pending so engine retries
1122
+ mutateDispatch((dp) => {
1123
+ const idx = dp.active.findIndex(d => d.id === id);
1124
+ if (idx >= 0) {
1125
+ const item = dp.active.splice(idx, 1)[0];
1126
+ delete item.started_at;
1127
+ delete item.workerState;
1128
+ delete item.workerStateAt;
1129
+ delete item.workerStateDetail;
1130
+ dp.pending.push(item);
1131
+ }
1132
+ return dp;
1133
+ });
1134
+ // Cleanup temp files
1135
+ try { fs.unlinkSync(sysPromptPath); } catch { /* cleanup */ }
1136
+ try { fs.unlinkSync(promptPath); } catch { /* cleanup */ }
1137
+ try { fs.unlinkSync(promptPath.replace(/prompt-/, 'pid-').replace(/\.md$/, '.pid')); } catch { /* cleanup */ }
1138
+ return;
1139
+ }
1140
+
1113
1141
  activeProcesses.delete(id);
1114
1142
  realActivityMap.delete(id); // Clean up real activity tracking
1115
1143
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.928",
3
+ "version": "0.1.929",
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"