@yemi33/minions 0.1.14 → 0.1.15

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,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.15 (2026-03-28)
4
+
5
+ ### Dashboard
6
+ - dashboard/js/command-center.js
7
+ - dashboard/js/render-plans.js
8
+ - dashboard/js/render-prd.js
9
+ - dashboard/js/render-work-items.js
10
+ - dashboard/js/utils.js
11
+
3
12
  ## 0.1.14 (2026-03-26)
4
13
 
5
14
  ### Dashboard
@@ -222,6 +222,7 @@ async function ccExecuteAction(action) {
222
222
  const d = await res.json();
223
223
  status.innerHTML = '&#10003; Dispatched: <strong>' + escHtml(d.id || action.title) + '</strong>';
224
224
  status.style.color = 'var(--green)';
225
+ wakeEngine();
225
226
  break;
226
227
  }
227
228
  case 'note': {
@@ -261,6 +262,7 @@ async function ccExecuteAction(action) {
261
262
  }
262
263
  status.innerHTML = '&#10003; Retried: <strong>' + escHtml((action.ids || []).join(', ')) + '</strong>';
263
264
  status.style.color = 'var(--green)';
265
+ wakeEngine();
264
266
  break;
265
267
  }
266
268
  case 'pause-plan': {
@@ -338,6 +340,7 @@ async function ccExecuteAction(action) {
338
340
  });
339
341
  status.innerHTML = '&#10003; Plan execution queued: <strong>' + escHtml(action.file) + '</strong>';
340
342
  status.style.color = 'var(--green)';
343
+ wakeEngine();
341
344
  refreshPlans();
342
345
  break;
343
346
  }
@@ -269,6 +269,7 @@ async function planExecute(file, project, btn) {
269
269
  }
270
270
  closeModal();
271
271
  showToast('cmd-toast', data.alreadyQueued ? 'Already queued (' + data.id + ')' : 'Queued ' + data.id + ' — agent will convert plan to PRD', true);
272
+ wakeEngine();
272
273
  refreshPlans();
273
274
  } else {
274
275
  if (btn) { btn.textContent = 'Execute'; btn.disabled = false; btn.style.color = 'var(--green)'; }
@@ -582,6 +582,7 @@ async function prdItemRequeue(workItemId, source) {
582
582
  if (res.ok) {
583
583
  setPrdRequeueState(workItemId, { status: 'queued', until: Date.now() + 10000 });
584
584
  rerenderPrdFromCache();
585
+ wakeEngine();
585
586
  refresh();
586
587
  showToast('cmd-toast', workItemId + ' requeued', true);
587
588
  } else {
@@ -198,7 +198,7 @@ async function retryWorkItem(id, source) {
198
198
  method: 'POST', headers: { 'Content-Type': 'application/json' },
199
199
  body: JSON.stringify({ id, source: source || undefined })
200
200
  });
201
- if (res.ok) { refresh(); } else {
201
+ if (res.ok) { wakeEngine(); refresh(); } else {
202
202
  const d = await res.json();
203
203
  alert('Retry failed: ' + (d.error || 'unknown'));
204
204
  }
@@ -1,5 +1,8 @@
1
1
  // dashboard/js/utils.js — Utility functions extracted from dashboard.html
2
2
 
3
+ // Signal the engine to tick immediately (pick up new work without waiting 60s)
4
+ function wakeEngine() { fetch('/api/engine/wakeup', { method: 'POST' }).catch(() => {}); }
5
+
3
6
  function escHtml(s) {
4
7
  return String(s).replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;').replace(/"/g,'&quot;').replace(/'/g,'&#39;');
5
8
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.14",
3
+ "version": "0.1.15",
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"