@yemi33/minions 0.1.1808 → 0.1.1810

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,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.1810 (2026-05-09)
4
+
5
+ ### Features
6
+ - make review fixes adversarial (#2239)
7
+
8
+ ### Other
9
+ - Harden CC and doc-chat delegation
10
+
3
11
  ## 0.1.1808 (2026-05-08)
4
12
 
5
13
  ### Fixes
@@ -567,7 +567,8 @@ function ccAddMessage(role, html, skipSave, targetTabId, meta) {
567
567
  }
568
568
  }
569
569
 
570
- async function ccSend() {
570
+ async function ccSend(options) {
571
+ var intentMetadata = options && options.intentMetadata ? options.intentMetadata : null;
571
572
  var input = document.getElementById('cc-input');
572
573
  var message = input.value.trim();
573
574
  if (!message) return;
@@ -580,11 +581,11 @@ async function ccSend() {
580
581
 
581
582
  // If this tab is already processing, queue the message
582
583
  if (tab._sending) {
583
- tab._queue.push(message);
584
+ tab._queue.push({ message: message, intentMetadata: intentMetadata });
584
585
  _renderQueueIndicator();
585
586
  return;
586
587
  }
587
- var wasAborted = await _ccDoSend(message, false, originTabId);
588
+ var wasAborted = await _ccDoSend(message, false, originTabId, intentMetadata);
588
589
 
589
590
  // Flush queued messages to the ORIGINAL tab, even if user switched tabs
590
591
  while (tab._queue && tab._queue.length > 0) {
@@ -592,8 +593,10 @@ async function ccSend() {
592
593
  await new Promise(function(r) { setTimeout(r, 1500); });
593
594
  }
594
595
  var next = tab._queue.shift();
596
+ var nextMessage = typeof next === 'string' ? next : next.message;
597
+ var nextIntentMetadata = typeof next === 'string' ? null : (next.intentMetadata || null);
595
598
  _renderQueueIndicator();
596
- wasAborted = await _ccDoSend(next, false, originTabId);
599
+ wasAborted = await _ccDoSend(nextMessage, false, originTabId, nextIntentMetadata);
597
600
  }
598
601
  }
599
602
 
@@ -608,13 +611,13 @@ function _renderQueueIndicator() {
608
611
  var el = document.createElement('div');
609
612
  el.className = 'cc-queue-item';
610
613
  el.style.cssText = 'padding:8px 12px;border-radius:8px;font-size:12px;line-height:1.6;max-width:95%;align-self:flex-end;background:var(--blue);color:#fff;opacity:0.5;order:9999';
611
- el.innerHTML = escHtml(m) + '<div style="font-size:9px;opacity:0.7;font-style:italic;margin-top:2px">queued</div>';
614
+ el.innerHTML = escHtml(typeof m === 'string' ? m : m.message) + '<div style="font-size:9px;opacity:0.7;font-style:italic;margin-top:2px">queued</div>';
612
615
  msgs.appendChild(el);
613
616
  });
614
617
  if (msgs.scrollHeight - msgs.scrollTop - msgs.clientHeight < 150) msgs.scrollTop = msgs.scrollHeight;
615
618
  }
616
619
 
617
- async function _ccDoSend(message, skipUserMsg, forceTabId) {
620
+ async function _ccDoSend(message, skipUserMsg, forceTabId, intentMetadata) {
618
621
  // Client-side /pin and /unpin — no LLM round-trip needed
619
622
  var pinMatch = message.match(/^\/(pin|unpin)\s+(.+)/i);
620
623
  if (pinMatch) {
@@ -762,7 +765,7 @@ async function _ccDoSend(message, skipUserMsg, forceTabId) {
762
765
  if (!isReconnect && res.status === 429 && (!activeTab._429retries || activeTab._429retries < 3)) {
763
766
  activeTab._429retries = (activeTab._429retries || 0) + 1;
764
767
  await new Promise(function(r) { setTimeout(r, 1500); });
765
- return await _ccConsumeStream({ message: message, tabId: activeTabId, sessionId: activeTab.sessionId || null, transcript: _ccBuildTranscript(activeTab) }, false);
768
+ return await _ccConsumeStream({ message: message, tabId: activeTabId, sessionId: activeTab.sessionId || null, transcript: _ccBuildTranscript(activeTab), intentMetadata: intentMetadata || null }, false);
766
769
  }
767
770
  activeTab._429retries = 0;
768
771
  var errText = await res.text();
@@ -871,7 +874,7 @@ async function _ccDoSend(message, skipUserMsg, forceTabId) {
871
874
  while (true) {
872
875
  var consume = await _ccConsumeStream(
873
876
  reconnectAttempts === 0
874
- ? { message: message, tabId: activeTabId, sessionId: activeTab.sessionId || null, transcript: _ccBuildTranscript(activeTab) }
877
+ ? { message: message, tabId: activeTabId, sessionId: activeTab.sessionId || null, transcript: _ccBuildTranscript(activeTab), intentMetadata: intentMetadata || null }
875
878
  : { tabId: activeTabId, sessionId: activeTab.sessionId || null, reconnect: true },
876
879
  reconnectAttempts > 0
877
880
  );
@@ -134,12 +134,13 @@ async function cmdSubmit() {
134
134
  const input = document.getElementById('cmd-input');
135
135
  const raw = input.value.trim();
136
136
  if (!raw) return showToast('cmd-toast', 'Type something first', false);
137
+ const parsed = cmdParseInput(raw);
137
138
 
138
139
  // Route to Command Center panel
139
140
  input.value = '';
140
141
  if (!_ccOpen) toggleCommandCenter();
141
142
  document.getElementById('cc-input').value = raw;
142
- ccSend();
143
+ ccSend({ intentMetadata: parsed });
143
144
  cmdSaveHistory(raw, 'cc');
144
145
  return;
145
146
  }
@@ -344,7 +344,7 @@ function _qaBuildAssistantHtml(text, opts) {
344
344
  '</div>';
345
345
  }
346
346
 
347
- const QA_WORK_ITEM_ACTION_TYPES = new Set(['dispatch', 'fix', 'implement', 'explore', 'review', 'test']);
347
+ const QA_WORK_ITEM_ACTION_TYPES = new Set(['dispatch', 'fix', 'explore', 'review', 'test']);
348
348
 
349
349
  function _qaActionFeedbackHandled(action, actionResult) {
350
350
  const type = String(actionResult?.type || action?.type || '');