@yemi33/minions 0.1.1794 → 0.1.1796

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,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.1796 (2026-05-08)
4
+
5
+ ### Other
6
+ - Preserve aborted doc-chat context (#2214)
7
+
8
+ ## 0.1.1795 (2026-05-08)
9
+
10
+ ### Other
11
+ - Fix Copilot steering checkpoint handling
12
+
3
13
  ## 0.1.1794 (2026-05-08)
4
14
 
5
15
  ### Other
@@ -113,6 +113,14 @@ function _qaBuildTranscript(history, currentMessage) {
113
113
  return out.slice(-QA_TRANSCRIPT_MAX_TURNS);
114
114
  }
115
115
 
116
+ function _qaRecordAbortedPartial(runtime, message, partialText) {
117
+ const text = typeof partialText === 'string' ? partialText.trim() : '';
118
+ if (!runtime || !text) return false;
119
+ runtime.history.push({ role: 'user', text: message });
120
+ runtime.history.push({ role: 'assistant', text });
121
+ return true;
122
+ }
123
+
116
124
  function _qaSummarizeActionContext(actions, actionResults) {
117
125
  if (!Array.isArray(actions) || actions.length === 0) return '';
118
126
  const lines = [];
@@ -860,6 +868,9 @@ async function _processQaMessage(message, selection, opts) {
860
868
  if (loadingEl) loadingEl.remove();
861
869
  _qaInsertBeforeQueued(tmp, messageHtml);
862
870
  });
871
+ if (e.name === 'AbortError' && _qaRecordAbortedPartial(runtime, message, streamedText) && _qaIsActiveSession(sessionKey)) {
872
+ _qaHistory = runtime.history.slice();
873
+ }
863
874
  _qaFlushPersistDebounce(sessionKey);
864
875
  _qaPersistSession(sessionKey, {
865
876
  threadHtml: updatedThreadHtml,
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "runtime": "copilot",
3
3
  "models": null,
4
- "cachedAt": "2026-05-08T16:04:08.215Z"
4
+ "cachedAt": "2026-05-08T16:21:02.022Z"
5
5
  }
package/engine/timeout.js CHANGED
@@ -78,6 +78,15 @@ function rememberDeferredSteering(info, steerEntry) {
78
78
  info._deferredSteeringFiles = Array.from(existing);
79
79
  }
80
80
 
81
+ function deferSteeringUntilCheckpoint(id, info, steerEntry) {
82
+ log('info', `Steering: no mid-run resumable checkpoint for ${info.agentId} (${id}) — queued until checkpoint`);
83
+ rememberDeferredSteering(info, steerEntry);
84
+ try {
85
+ const liveLogPath = path.join(AGENTS_DIR, info.agentId, 'live-output.log');
86
+ fs.appendFileSync(liveLogPath, `\n[steering] Message received. This runtime has not emitted a resumable checkpoint for the current run yet, so the message is queued until the agent reaches a resumable checkpoint or the next dispatch.\n`);
87
+ } catch { /* optional */ }
88
+ }
89
+
81
90
  function checkSteering(config) {
82
91
  const activeProcesses = engine().activeProcesses;
83
92
  for (const [id, info] of activeProcesses) {
@@ -112,18 +121,13 @@ function checkSteering(config) {
112
121
  if (!steerEntry) continue; // ENOENT/no agents/<id>/inbox/steering-*.md message
113
122
  const message = steerEntry.message.trim();
114
123
 
124
+ if (!runtimeSupportsMidRunSessionId(info)) {
125
+ deferSteeringUntilCheckpoint(id, info, steerEntry);
126
+ continue;
127
+ }
128
+
115
129
  const sessionId = info.sessionId;
116
130
  if (!sessionId) {
117
- if (!runtimeSupportsMidRunSessionId(info)) {
118
- log('info', `Steering: no mid-run sessionId for ${info.agentId} (${id}) — queued until resumable checkpoint`);
119
- rememberDeferredSteering(info, steerEntry);
120
- try {
121
- const liveLogPath = path.join(AGENTS_DIR, info.agentId, 'live-output.log');
122
- fs.appendFileSync(liveLogPath, `\n[steering] Message received. This runtime has not emitted a resumable session yet, so the message is queued until the agent reaches a resumable checkpoint or the next dispatch.\n`);
123
- } catch { /* optional */ }
124
- continue;
125
- }
126
-
127
131
  // No session to resume for a runtime that should have emitted one — kill
128
132
  // agent and leave message unread in inbox for retry. Previously this
129
133
  // silently skipped for up to 5m then deleted the message (#627).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.1794",
3
+ "version": "0.1.1796",
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"