@yemi33/minions 0.1.2295 → 0.1.2297
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/dashboard/pages/home.html +3 -3
- package/engine.js +11 -10
- package/package.json +1 -1
|
@@ -16,15 +16,15 @@
|
|
|
16
16
|
</div>
|
|
17
17
|
</section>
|
|
18
18
|
<section>
|
|
19
|
-
<h2>Minions Members <span
|
|
19
|
+
<h2>Minions Members <span class="qa-section-subtitle">click for details</span></h2>
|
|
20
20
|
<div class="agents" id="agents-grid">Loading...</div>
|
|
21
21
|
</section>
|
|
22
22
|
<section>
|
|
23
|
-
<h2>Pinned Context <button class="btn-add" style="margin-left:8px" onclick="openPinNoteModal()">+ Pin</button> <span
|
|
23
|
+
<h2>Pinned Context <button class="btn-add" style="margin-left:8px" onclick="openPinNoteModal()">+ Pin</button> <span class="qa-section-subtitle">injected into all agent prompts</span></h2>
|
|
24
24
|
<div id="pinned-content"><p class="empty">No pinned notes.</p></div>
|
|
25
25
|
</section>
|
|
26
26
|
<section>
|
|
27
|
-
<h2>Dispatch Queue <span
|
|
27
|
+
<h2>Dispatch Queue <span class="qa-section-subtitle">agents being assigned and completing tasks</span></h2>
|
|
28
28
|
<div class="dispatch-stats" id="dispatch-stats"></div>
|
|
29
29
|
<div id="dispatch-active"></div>
|
|
30
30
|
<div id="dispatch-pending"></div>
|
package/engine.js
CHANGED
|
@@ -6198,6 +6198,17 @@ function materializePlansAsWorkItems(config) {
|
|
|
6198
6198
|
|
|
6199
6199
|
let totalCreated = 0;
|
|
6200
6200
|
for (const [projName, { project, items: projItems }] of itemsByProject) {
|
|
6201
|
+
// Re-read PRD status from disk to guard against mid-tick status changes (P-f1a3b5c7).
|
|
6202
|
+
// A pause/reject/awaiting-approval signal may arrive between the outer-loop initial
|
|
6203
|
+
// read and this point (e.g. operator pauses via dashboard while the tick is running).
|
|
6204
|
+
// Re-reading here prevents phantom WI creation on a paused, rejected, or unapproved plan.
|
|
6205
|
+
const freshPrd = safeJsonNoRestore(path.join(PRD_DIR, file));
|
|
6206
|
+
const freshStatus = (freshPrd || {}).status || ((freshPrd || {}).requires_approval ? 'awaiting-approval' : null);
|
|
6207
|
+
if (freshStatus === PLAN_STATUS.PAUSED || freshStatus === PLAN_STATUS.REJECTED || freshStatus === 'awaiting-approval') {
|
|
6208
|
+
log('warn', `PRD ${file}: status changed to '${freshStatus}' mid-tick — skipping WI batch for ${projName} (P-f1a3b5c7)`);
|
|
6209
|
+
break;
|
|
6210
|
+
}
|
|
6211
|
+
|
|
6201
6212
|
const wiPath = project ? projectWorkItemsPath(project) : path.join(MINIONS_DIR, 'work-items.json');
|
|
6202
6213
|
let created = 0;
|
|
6203
6214
|
const newlyCreatedIds = new Set(); // tracks IDs created in this pass for reconciliation scoping
|
|
@@ -9738,16 +9749,6 @@ async function tickInner() {
|
|
|
9738
9749
|
} else if (!autoFixPaused) {
|
|
9739
9750
|
_resetAutoFixPausedLogState();
|
|
9740
9751
|
}
|
|
9741
|
-
const adoPollEnabled = !pollingPaused && (config.engine?.adoPollEnabled ?? ENGINE_DEFAULTS.adoPollEnabled);
|
|
9742
|
-
const ghPollEnabled = !pollingPaused && (config.engine?.ghPollEnabled ?? ENGINE_DEFAULTS.ghPollEnabled);
|
|
9743
|
-
// P-c4d8e1a3 — granular per-poller flags. Each of the 6 PR-poll axes
|
|
9744
|
-
// (ADO/GH × status/comments/reconcile) plus processPendingRebases gets
|
|
9745
|
-
// its own resolution via shared.resolvePollFlag(...). Explicit granular
|
|
9746
|
-
// values win; the legacy `adoPollEnabled` / `ghPollEnabled` macros
|
|
9747
|
-
// silence their whole bundle as a fallback (including reconcile — a
|
|
9748
|
-
// documented breaking change). Defaults: all true. pollingPaused (master
|
|
9749
|
-
// killswitch) still composes with status + comments gates; reconcile and
|
|
9750
|
-
// the rebase processor are recovery-sweep paths and are NOT gated by it.
|
|
9751
9752
|
const adoStatusPollEnabled = !pollingPaused && resolvePollFlag(config.engine, 'adoPrStatusPollEnabled', 'adoPollEnabled');
|
|
9752
9753
|
const ghStatusPollEnabled = !pollingPaused && resolvePollFlag(config.engine, 'ghPrStatusPollEnabled', 'ghPollEnabled');
|
|
9753
9754
|
const adoCommentsPollEnabled = !pollingPaused && resolvePollFlag(config.engine, 'adoPrCommentsPollEnabled', 'adoPollEnabled');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yemi33/minions",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2297",
|
|
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"
|