@yemi33/minions 0.1.1586 → 0.1.1587

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,8 +1,9 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.1586 (2026-04-28)
3
+ ## 0.1.1587 (2026-04-28)
4
4
 
5
5
  ### Fixes
6
+ - align doc chat timeout guards
6
7
  - stop URL regex at backslash to prevent JSONL escape leakage
7
8
  - optimistic UI for planApprove cascades to linked PRD
8
9
  - stack chain-of-thought above progress block (was side-by-side)
@@ -27,7 +27,7 @@ let _qaProcessing = false; // true while waiting for response
27
27
  let _qaAbortController = null;
28
28
  let _qaQueue = []; // queued messages while processing
29
29
  const QA_QUEUE_CAP = 10; // max queued messages
30
- const QA_STREAM_STALL_MS = 90000; // abort doc-chat if heartbeats continue but no chunk/tool progress arrives
30
+ const QA_STREAM_STALL_MS = 6 * 60 * 1000; // allow the full doc-chat timeout before treating heartbeat-only streams as stalled
31
31
  let _qaSessionKey = ''; // key for current conversation (title or filePath)
32
32
 
33
33
  function _renderQaUserMessage(thread, message, selection) {
@@ -614,7 +614,7 @@ async function _processQaMessage(message, selection, opts) {
614
614
  clearInterval(qaTimer);
615
615
  _clearQaStreamWatchdog();
616
616
  const qaElapsedExc = Math.round((Date.now() - qaStartTime) / 1000);
617
- const stallMessage = 'Doc chat stalled with no tool or text progress for 90s.';
617
+ const stallMessage = 'Doc chat stalled with no tool or text progress for 6 minutes.';
618
618
  const messageHtml = _qaStreamStalled
619
619
  ? (streamedText
620
620
  ? _qaBuildAssistantHtml(streamedText + '\n\nError: ' + stallMessage, { borderColor: 'var(--red)', elapsed: qaElapsedExc })
package/dashboard.js CHANGED
@@ -548,6 +548,7 @@ const ccLiveStreams = new Map(); // tabId → buffered live stream state for rec
548
548
  const CC_INFLIGHT_TIMEOUT_MS = 2 * 60 * 1000; // 2 minutes — auto-release if request hangs
549
549
  const CC_LOCK_WAIT_MS = 200; // grace period for previous handler's finally to release lock
550
550
  const CC_STREAM_HEARTBEAT_MS = 15000; // keep streaming responses alive across proxies/restart races
551
+ const DOC_CHAT_TIMEOUT_MS = 360000; // allow longer doc-chat turns before timing out server-side
551
552
  const CC_STREAM_REATTACH_GRACE_MS = 60000; // keep CC job alive briefly after disconnect so the UI can reattach
552
553
  const CC_STREAM_DONE_RETENTION_MS = 30000; // retain final payload briefly so reconnect can still receive it
553
554
  function _releaseCCTab(tabId) { ccInFlightTabs.delete(tabId); ccInFlightAborts.delete(tabId); }
@@ -1425,6 +1426,7 @@ async function ccDocCall({ message, document, title, filePath, selection, canEdi
1425
1426
  const result = await ccCall(message, {
1426
1427
  store: 'doc', sessionKey,
1427
1428
  extraContext: docContext, label: 'doc-chat',
1429
+ timeout: DOC_CHAT_TIMEOUT_MS,
1428
1430
  allowedTools: canEdit ? 'Read,Write,Edit,Glob,Grep' : 'Read,Glob,Grep',
1429
1431
  maxTurns: canEdit ? 25 : 10,
1430
1432
  skipStatePreamble: true,
@@ -1473,6 +1475,7 @@ async function ccDocCallStreaming({ message, document, title, filePath, selectio
1473
1475
  const result = await ccCallStreaming(message, {
1474
1476
  store: 'doc', sessionKey,
1475
1477
  extraContext: docContext, label: 'doc-chat',
1478
+ timeout: DOC_CHAT_TIMEOUT_MS,
1476
1479
  allowedTools: canEdit ? 'Read,Write,Edit,Glob,Grep' : 'Read,Glob,Grep',
1477
1480
  maxTurns: canEdit ? 25 : 10,
1478
1481
  skipStatePreamble: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.1586",
3
+ "version": "0.1.1587",
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"