@yemi33/minions 0.1.1791 → 0.1.1793

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.1793 (2026-05-08)
4
+
5
+ ### Fixes
6
+ - hide redundant PRD work item IDs (#2206)
7
+
8
+ ### Other
9
+ - test(pipeline): add unit tests for startRun executeTaskStage isStageComplete plan lookup prd lookup (#2208)
10
+ - test(queries): add unit tests for skills knowledge and command indexes (#2207)
11
+
3
12
  ## 0.1.1791 (2026-05-08)
4
13
 
5
14
  ### Features
@@ -84,6 +84,14 @@ function _renderPrLink(pr, opts) {
84
84
  return '<a href="' + escHtml(pr.url || '#') + '" target="_blank" rel="noopener" onclick="event.stopPropagation()" style="font-size:' + size + ';color:' + statusColor + ';text-decoration:underline;cursor:pointer;margin-left:4px" title="' + escHtml((pr.title || '') + ' (' + (pr.status || 'active') + ')') + '">' + statusIcon + ' ' + escHtml(pr.id) + '</a>';
85
85
  }
86
86
 
87
+ function _renderPrdWorkItemIdBadge(workItemId, prdItemId, size, padding) {
88
+ const id = workItemId === undefined || workItemId === null ? '' : String(workItemId).trim();
89
+ const itemId = prdItemId === undefined || prdItemId === null ? '' : String(prdItemId).trim();
90
+ const fontSize = size || '9px';
91
+ const badgePadding = padding || '1px 5px';
92
+ return (!id || id === itemId) ? '' : '<span style="font-size:' + fontSize + ';color:var(--muted);background:var(--surface);padding:' + badgePadding + ';border-radius:3px;border:1px solid var(--border)" title="Work item: ' + escHtml(id) + '">' + escHtml(id) + '</span>';
93
+ }
94
+
87
95
  function renderPrdProgress(prog) {
88
96
  const el = document.getElementById('prd-progress-content');
89
97
  const countEl = document.getElementById('prd-progress-count');
@@ -153,7 +161,7 @@ function renderPrdProgress(prog) {
153
161
  return '<span style="font-size:9px;font-weight:700;padding:2px 6px;border-radius:3px;letter-spacing:0.5px;white-space:nowrap;' + style + '">' + label + '</span>';
154
162
  };
155
163
 
156
- // Build work item lookup: PRD item ID → work item info
164
+ // Build work item lookup by actual work item ID.
157
165
  const wiById = {};
158
166
  for (const w of (window._lastWorkItems || [])) {
159
167
  if (w.id) wiById[w.id] = w;
@@ -180,10 +188,10 @@ function renderPrdProgress(prog) {
180
188
  const iid = escHtml(i.id || '');
181
189
 
182
190
  // Linked work item info
183
- const wi = wiById[i.id];
191
+ const workItemId = i.workItemId || i._workItemId || i.work_item_id || i.id;
192
+ const wi = wiById[workItemId] || wiById[i.id];
184
193
  const wiAgent = wi?.dispatched_to ? (agentData.find(a => a.id === wi.dispatched_to) || {}) : null;
185
- const wiLabel = wi ? '<span style="font-size:9px;color:var(--muted);background:var(--surface);padding:1px 5px;border-radius:3px;border:1px solid var(--border)" title="Work item: ' + escHtml(wi.id) + '">' +
186
- escHtml(wi.id) + '</span>' : '';
194
+ const wiLabel = _renderPrdWorkItemIdBadge(wi ? wi.id : workItemId, i.id);
187
195
  const agentLabel = wiAgent ? '<span style="font-size:9px;color:var(--muted)" title="' + escHtml(wiAgent.name || wi.dispatched_to) + '">' +
188
196
  (wiAgent.emoji || '') + ' ' + escHtml(wiAgent.name || wi.dispatched_to) + '</span>' : '';
189
197
 
@@ -401,13 +409,14 @@ function renderPrdProgress(prog) {
401
409
  const borderColor = statusColor(i.status, i.id);
402
410
  const src = escHtml(i.source || '');
403
411
  const iid = escHtml(i.id || '');
404
- const agentId = wi[i.id]?.dispatched_to || '';
412
+ const workItemId = i.workItemId || i._workItemId || i.work_item_id || i.id;
413
+ const wiForCard = wi[workItemId] || wi[i.id];
414
+ const agentId = wiForCard?.dispatched_to || '';
405
415
  const agentInfo = agentId ? (agentData.find(a => a.id === agentId) || {}) : null;
406
416
  const agentDisplay = agentInfo ? (agentInfo.emoji || '') + ' ' + escHtml(agentInfo.name || agentId) : (agentId ? escHtml(agentId) : '');
407
417
  const deps = (i.depends_on || []).join(', ');
408
418
  const wipAnim = i.status === 'in-progress' ? 'animation:prdWipPulse 2s infinite;' : '';
409
- const wiForCard = wi[i.id];
410
- const wiIdBadge = wiForCard ? '<span style="font-size:8px;color:var(--muted);background:var(--surface);padding:1px 4px;border-radius:3px;border:1px solid var(--border)" title="Work item: ' + escHtml(wiForCard.id) + '">' + escHtml(wiForCard.id) + '</span>' : '';
419
+ const wiIdBadge = _renderPrdWorkItemIdBadge(wiForCard ? wiForCard.id : workItemId, i.id, '8px', '1px 4px');
411
420
  const isDoneCard = i.status === 'done' || (wiForCard && wiForCard.status === 'done');
412
421
  const reopenBtnGraph = isDoneCard
413
422
  ? '<span onclick="event.stopPropagation();prdItemReopen(\'' + src + '\',\'' + iid + '\')" style="font-size:8px;color:var(--blue);cursor:pointer;padding:1px 4px;background:rgba(56,139,253,0.1);border:1px solid rgba(56,139,253,0.3);border-radius:3px" title="Re-open: set to updated so engine re-dispatches on existing branch">re-open</span>'
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "runtime": "copilot",
3
3
  "models": null,
4
- "cachedAt": "2026-05-08T08:36:09.130Z"
4
+ "cachedAt": "2026-05-08T15:03:52.538Z"
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.1791",
3
+ "version": "0.1.1793",
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"