@yemi33/minions 0.1.965 → 0.1.967

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.965 (2026-04-14)
3
+ ## 0.1.967 (2026-04-14)
4
4
 
5
5
  ### Features
6
6
  - add quality standard reminder to all agent and CC prompts
@@ -25,6 +25,8 @@
25
25
  - fix dashboard plan-pause nested lock violation (#968)
26
26
 
27
27
  ### Fixes
28
+ - update ccInFlightAborts when retry LLM replaces original
29
+ - skip orphaned LLM retry when client disconnected during CC stream
28
30
  - restore queue flush after abort — queued messages are user intent
29
31
  - CC stale lock auto-release + queue drain on abort
30
32
  - CC streaming 'tabId' TDZ error on new tab first message
@@ -43,8 +45,6 @@
43
45
  - ADO build query uses repositoryId+pullRequest instead of branchName
44
46
  - persist adoPollEnabled/ghPollEnabled in settings save
45
47
  - prevent _consolidationInFlight race from stale force-reset timeout (#1023)
46
- - stop perpetual ADO poll retry when token unavailable (#1021)
47
- - await discoverPipelineWork instead of fire-and-forget .catch (#1020)
48
48
 
49
49
  ### Other
50
50
  - refactor(dashboard): extract _releaseCCTab helper and CC_LOCK_WAIT_MS constant
package/dashboard.js CHANGED
@@ -3560,8 +3560,8 @@ What would you like to discuss or change? When you're happy, say "approve" and I
3560
3560
  trackUsage('command-center', result.usage);
3561
3561
 
3562
3562
  // Handle failure — non-zero exit with text = max_turns or partial success, still usable
3563
- if (!result.text && wasResume && result.code !== 0) {
3564
- // Resume failed (stale/expired session) — auto-retry as fresh session
3563
+ if (!result.text && wasResume && result.code !== 0 && !req.destroyed) {
3564
+ // Resume failed (stale/expired session) — auto-retry as fresh session (skip if client already disconnected)
3565
3565
  console.log(`[CC-stream] Resume failed (code=${result.code}) — retrying fresh`);
3566
3566
  const freshPreamble = buildCCStatePreamble();
3567
3567
  const freshPrompt = (freshPreamble ? freshPreamble + '\n\n---\n\n' : '') + body.message;
@@ -3579,6 +3579,7 @@ What would you like to discuss or change? When you're happy, say "approve" and I
3579
3579
  }
3580
3580
  });
3581
3581
  _ccStreamAbort = retryPromise.abort;
3582
+ ccInFlightAborts.set(tabId, _ccStreamAbort);
3582
3583
  const retryResult = await retryPromise;
3583
3584
  trackUsage('command-center', retryResult.usage);
3584
3585
  if (retryResult.text) {
@@ -3587,6 +3588,7 @@ What would you like to discuss or change? When you're happy, say "approve" and I
3587
3588
  }
3588
3589
  }
3589
3590
  if (!result.text) {
3591
+ if (req.destroyed) { _ccStreamEnded = true; return; } // client already gone — nothing to send
3590
3592
  const debugInfo = result.code !== 0 ? `(exit code ${result.code})` : '(empty response)';
3591
3593
  const stderrTail = (result.stderr || '').trim().split('\n').filter(Boolean).slice(-3).join(' | ');
3592
3594
  console.error(`[CC-stream] Failed: code=${result.code}, stderr=${(result.stderr || '').slice(0, 500)}, stdout_tail=${(result.raw || '').slice(-500)}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.965",
3
+ "version": "0.1.967",
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"