@yemi33/minions 0.1.775 → 0.1.776
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/engine/ado.js +9 -3
- package/engine/github.js +13 -5
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.1.
|
|
3
|
+
## 0.1.776 (2026-04-10)
|
|
4
4
|
|
|
5
5
|
### Features
|
|
6
6
|
- auto-rebase dependent PRs after dependency merge
|
|
7
7
|
- show PR merged/active status on PRD item links
|
|
8
8
|
|
|
9
9
|
### Fixes
|
|
10
|
+
- better agent comment filtering — detect by patterns, not just signature
|
|
10
11
|
- filter CI bot noise from PR human comment detection
|
|
11
12
|
|
|
12
13
|
### Other
|
package/engine/ado.js
CHANGED
|
@@ -458,12 +458,18 @@ async function pollPrHumanComments(config) {
|
|
|
458
458
|
for (const thread of threads) {
|
|
459
459
|
for (const comment of (thread.comments || [])) {
|
|
460
460
|
if (!comment.content || comment.commentType === 'system') continue;
|
|
461
|
-
|
|
461
|
+
const content = comment.content;
|
|
462
|
+
// Minions agent signatures
|
|
463
|
+
if (/\bMinions\s*\(/i.test(content)) continue;
|
|
464
|
+
if (/\b(Review|Fixed|Explored|Verified|Tested)\s+by\s+Minions\b/i.test(content)) continue;
|
|
465
|
+
if (/\[minions\]/i.test(content)) continue;
|
|
462
466
|
// Skip bot/service account comments
|
|
463
467
|
const authorName = (comment.author?.displayName || '').toLowerCase();
|
|
464
468
|
if (/\b(bot|service|build|pipeline|codecov|sonar)\b/i.test(authorName)) continue;
|
|
465
|
-
//
|
|
466
|
-
if (
|
|
469
|
+
// Short comments from same author that look agent-generated
|
|
470
|
+
if (content.length < 500 && /\b(fixed|addressed|resolved|pushed|updated|rebased)\b/i.test(content) && /\b(review|feedback|comment|finding)\b/i.test(content)) continue;
|
|
471
|
+
// Automated status comments (coverage, build reports)
|
|
472
|
+
if (/^#{1,3}\s*(Coverage|Build|Test|Deploy|Pipeline)\s*(Report|Status|Result|Summary)/i.test(content)) continue;
|
|
467
473
|
|
|
468
474
|
const entry = {
|
|
469
475
|
threadId: thread.id,
|
package/engine/github.js
CHANGED
|
@@ -441,17 +441,25 @@ async function pollPrHumanComments(config) {
|
|
|
441
441
|
...(Array.isArray(reviewComments) ? reviewComments : []).map(c => ({ ...c, _type: 'review' }))
|
|
442
442
|
];
|
|
443
443
|
|
|
444
|
-
// Filter out bot comments, minions
|
|
444
|
+
// Filter out bot comments, minions agent comments, and CI noise
|
|
445
|
+
// Agents post as the PAT owner — detect by signature patterns, not account type
|
|
446
|
+
const prAuthorLogin = (prData?.user?.login || '').toLowerCase();
|
|
445
447
|
const humanComments = allComments.filter(c => {
|
|
446
448
|
if (c.user?.type === 'Bot') return false;
|
|
447
|
-
|
|
448
|
-
//
|
|
449
|
+
const body = c.body || '';
|
|
450
|
+
// Minions agent signatures (review, fix, explore, etc.)
|
|
451
|
+
if (/\bMinions\s*\(/i.test(body)) return false;
|
|
452
|
+
if (/\b(Review|Fixed|Explored|Verified|Tested)\s+by\s+Minions\b/i.test(body)) return false;
|
|
453
|
+
if (/\[minions\]/i.test(body)) return false;
|
|
454
|
+
// Comments from the PR author account are likely agent-generated (agents use same PAT)
|
|
455
|
+
// Only skip if the comment looks automated (short, or has agent patterns)
|
|
449
456
|
const login = (c.user?.login || '').toLowerCase();
|
|
457
|
+
if (login === prAuthorLogin && body.length < 500 && /\b(fixed|addressed|resolved|pushed|updated|rebased)\b/i.test(body)) return false;
|
|
458
|
+
// Common CI bot usernames
|
|
450
459
|
if (/\b(bot|codecov|sonar|dependabot|renovate|github-actions|azure-pipelines)\b/i.test(login)) return false;
|
|
451
460
|
// Automated status comments (coverage reports, build badges, etc.)
|
|
452
|
-
const body = c.body || '';
|
|
453
461
|
if (/^#{1,3}\s*(Coverage|Build|Test|Deploy|Pipeline)\s*(Report|Status|Result|Summary)/i.test(body)) return false;
|
|
454
|
-
if (/!\[.*\]\(https?:\/\/.*badge/i.test(body)) return false;
|
|
462
|
+
if (/!\[.*\]\(https?:\/\/.*badge/i.test(body)) return false;
|
|
455
463
|
return true;
|
|
456
464
|
});
|
|
457
465
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yemi33/minions",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.776",
|
|
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"
|