@yemi33/minions 0.1.1101 → 0.1.1102

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,11 +1,12 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.1101 (2026-04-18)
3
+ ## 0.1.1102 (2026-04-18)
4
4
 
5
5
  ### Features
6
6
  - seed realActivityMap at spawn time, stamp pid in live-output (#1200)
7
7
 
8
8
  ### Fixes
9
+ - PRD info cache staleness and aggregate PR bleed-through (#1222)
9
10
  - avoid no-op work item writes
10
11
  - resilient claude binary resolution + surface spawn errors
11
12
  - resolve native claude.exe from npm wrapper on Windows
@@ -488,7 +488,9 @@ function renderPrdProgress(prog) {
488
488
  }
489
489
 
490
490
  function renderE2eSection(planFile) {
491
- const prs = e2eByPlan[planFile] || [];
491
+ // Filter out abandoned E2E PRs — superseded aggregate branches should not
492
+ // linger in the E2E section after their constituents merged individually.
493
+ const prs = (e2eByPlan[planFile] || []).filter(pr => pr.status !== 'abandoned');
492
494
  const guide = guideByPlan[planFile];
493
495
  if (prs.length === 0 && !guide) return '';
494
496
  let html = '<div style="margin:6px 0 10px;padding:6px 10px;background:rgba(56,139,253,0.08);border:1px solid rgba(56,139,253,0.25);border-radius:4px">';
package/engine/queries.js CHANGED
@@ -922,6 +922,8 @@ function _getPrdInputHash(projects) {
922
922
  for (const project of projects) {
923
923
  try { mtimes.push(fs.statSync(projectPrPath(project)).mtimeMs); } catch { mtimes.push(0); }
924
924
  }
925
+ // Static pr-links.json overrides (affect shared.getPrLinks(); missing project mtimes otherwise)
926
+ try { mtimes.push(fs.statSync(path.join(MINIONS_DIR, 'engine', 'pr-links.json')).mtimeMs); } catch { mtimes.push(0); }
925
927
  return { hash: mtimes.join(','), prdDirMtime, archiveDirMtime };
926
928
  }
927
929
 
@@ -1024,6 +1026,10 @@ function getPrdInfo(config) {
1024
1026
  const prLinks = shared.getPrLinks(); // { "PR-xxxx": ["P-xxxx", "P-yyyy"] }
1025
1027
  for (const [prId, itemIds] of Object.entries(prLinks)) {
1026
1028
  const pr = prById[prId];
1029
+ // Skip aggregate / E2E PRs from per-item mapping — they link to multiple items
1030
+ // (or are typed as verify) and would bleed through as duplicate entries on every
1031
+ // constituent item. They are surfaced via renderE2eSection instead.
1032
+ if ((itemIds || []).length > 1 || pr?.itemType === 'verify' || pr?.title?.startsWith('[E2E]')) continue;
1027
1033
  const project = projects.find(p => p.name === pr?._project) || projects[0] || null;
1028
1034
  const prNumber = shared.getPrNumber(pr || prId);
1029
1035
  const url = pr?.url || (project?.prUrlBase && prNumber != null ? project.prUrlBase + prNumber : '');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.1101",
3
+ "version": "0.1.1102",
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"