muaddib-scanner 2.11.1 → 2.11.2
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/package.json +1 -1
- package/src/monitor/webhook.js +8 -6
package/package.json
CHANGED
package/src/monitor/webhook.js
CHANGED
|
@@ -420,6 +420,14 @@ async function trySendWebhook(name, version, ecosystem, result, sandboxResult, m
|
|
|
420
420
|
const memoryCheck = shouldSuppressByMemory(name, result);
|
|
421
421
|
// Always record current scan (updates timestamp + fingerprint for future checks)
|
|
422
422
|
recordScanMemory(name, currentScore, currentTypes, currentHCTypes);
|
|
423
|
+
|
|
424
|
+
// Push to muad-api dashboard. Fires for every alert that passes shouldSendWebhook,
|
|
425
|
+
// independent of Discord dedup. The API's ON CONFLICT DO UPDATE absorbs duplicates;
|
|
426
|
+
// dedup downstream is a Discord noise filter, not a data filter.
|
|
427
|
+
if (isIngestConfigured()) {
|
|
428
|
+
sendIngest(name, version, result).catch(() => {});
|
|
429
|
+
}
|
|
430
|
+
|
|
423
431
|
// Persist periodically (throttled to every 10 scans to avoid disk I/O overhead)
|
|
424
432
|
let scansSinceLastMemoryPersist = getScansSinceLastMemoryPersist();
|
|
425
433
|
scansSinceLastMemoryPersist++;
|
|
@@ -452,12 +460,6 @@ async function trySendWebhook(name, version, ecosystem, result, sandboxResult, m
|
|
|
452
460
|
alertedPackageRules.set(name, new Set(currentRules));
|
|
453
461
|
}
|
|
454
462
|
|
|
455
|
-
// Push to muad-api dashboard (fire-and-forget, fires once per unique package
|
|
456
|
-
// even when scope grouping batches the Discord webhook).
|
|
457
|
-
if (isIngestConfigured()) {
|
|
458
|
-
sendIngest(name, version, result).catch(() => {});
|
|
459
|
-
}
|
|
460
|
-
|
|
461
463
|
// Scope grouping: buffer scoped npm packages for grouped webhook
|
|
462
464
|
const scope = extractScope(name);
|
|
463
465
|
if (scope && ecosystem === 'npm') {
|