@yemi33/minions 0.1.836 → 0.1.838
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 +2 -1
- package/dashboard/js/render-prd.js +31 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -193,6 +193,12 @@ function renderPrdProgress(prog) {
|
|
|
193
193
|
requeueBtn = '<span onclick="event.stopPropagation();prdItemRequeue(\'' + escHtml(wi ? wi.id : i.id) + '\',\'' + escHtml(wi ? (wi._source || '') : '') + '\',\'' + escHtml(i.source || '') + '\')" style="color:var(--green);cursor:pointer;font-size:9px;padding:1px 5px;background:rgba(63,185,80,0.1);border:1px solid rgba(63,185,80,0.3);border-radius:3px" title="Requeue this work item">retry</span>';
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
+
// Re-open button for done items — sets PRD item to "updated" so engine re-dispatches
|
|
197
|
+
const isDone = i.status === 'done' || (wi && wi.status === 'done');
|
|
198
|
+
const reopenBtn = isDone
|
|
199
|
+
? '<span onclick="event.stopPropagation();prdItemReopen(\'' + escHtml(i.source || '') + '\',\'' + escHtml(i.id) + '\')" style="color:var(--blue);cursor:pointer;font-size:9px;padding:1px 5px;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>'
|
|
200
|
+
: '';
|
|
201
|
+
|
|
196
202
|
return '<div class="prd-item-row st-' + (i.status || 'missing') + '" style="flex-wrap:wrap;cursor:pointer" onclick="prdItemEdit(\'' + src + '\',\'' + iid + '\')">' +
|
|
197
203
|
statusBadge(i.status, i.id) +
|
|
198
204
|
'<span class="prd-item-id">' + escHtml(i.id) + '</span>' +
|
|
@@ -200,6 +206,7 @@ function renderPrdProgress(prog) {
|
|
|
200
206
|
wiLabel +
|
|
201
207
|
agentLabel +
|
|
202
208
|
requeueBtn +
|
|
209
|
+
reopenBtn +
|
|
203
210
|
(projBadges ? '<span>' + projBadges + '</span>' : '') +
|
|
204
211
|
(prLinks ? '<span>' + prLinks + '</span>' : '') +
|
|
205
212
|
branchLabel +
|
|
@@ -766,6 +773,29 @@ async function prdItemRequeue(workItemId, source, prdFile) {
|
|
|
766
773
|
}
|
|
767
774
|
}
|
|
768
775
|
|
|
776
|
+
async function prdItemReopen(source, itemId) {
|
|
777
|
+
if (!confirm('Re-open this item? It will be set to "updated" and the engine will re-dispatch it on the existing branch.')) return;
|
|
778
|
+
try {
|
|
779
|
+
// Set item to "updated" + clear stale flag + approve so materializer picks it up
|
|
780
|
+
const res = await fetch('/api/prd-items/update', {
|
|
781
|
+
method: 'POST', headers: { 'Content-Type': 'application/json' },
|
|
782
|
+
body: JSON.stringify({ source, itemId, status: 'updated' })
|
|
783
|
+
});
|
|
784
|
+
if (res.ok) {
|
|
785
|
+
// Also approve the plan (clears planStale so materializer runs)
|
|
786
|
+
await fetch('/api/plans/approve', {
|
|
787
|
+
method: 'POST', headers: { 'Content-Type': 'application/json' },
|
|
788
|
+
body: JSON.stringify({ file: source, skipRegen: true })
|
|
789
|
+
});
|
|
790
|
+
showToast('cmd-toast', 'Item re-opened — will dispatch on next tick', true);
|
|
791
|
+
refresh();
|
|
792
|
+
} else {
|
|
793
|
+
const d = await res.json().catch(() => ({}));
|
|
794
|
+
alert('Re-open failed: ' + (d.error || 'unknown'));
|
|
795
|
+
}
|
|
796
|
+
} catch (e) { alert('Error: ' + e.message); }
|
|
797
|
+
}
|
|
798
|
+
|
|
769
799
|
async function _planApproveAction(prdFile, skipRegen, confirmMsg, successMsg) {
|
|
770
800
|
if (!confirm(confirmMsg)) return;
|
|
771
801
|
try {
|
|
@@ -866,4 +896,4 @@ function openArchive(i) {
|
|
|
866
896
|
document.getElementById('modal').classList.add('open');
|
|
867
897
|
}
|
|
868
898
|
|
|
869
|
-
window.MinionsPrd = { renderPrd, renderPrdProgress, openArchivedPrdModal, showArchivedPrdDetail, prdItemEdit, prdItemSave, prdItemRemove, prdItemRequeue, prdRegenerate, openArchive };
|
|
899
|
+
window.MinionsPrd = { renderPrd, renderPrdProgress, openArchivedPrdModal, showArchivedPrdDetail, prdItemEdit, prdItemSave, prdItemRemove, prdItemRequeue, prdItemReopen, prdRegenerate, openArchive };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yemi33/minions",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.838",
|
|
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"
|