@blamejs/exceptd-skills 0.16.25 → 0.16.29
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/AGENTS.md +5 -5
- package/ARCHITECTURE.md +3 -3
- package/CHANGELOG.md +28 -0
- package/CONTEXT.md +2 -2
- package/README.md +6 -6
- package/agents/threat-researcher.md +2 -2
- package/bin/exceptd.js +41 -8
- package/data/_indexes/_meta.json +41 -40
- package/data/_indexes/activity-feed.json +240 -240
- package/data/_indexes/catalog-summaries.json +3 -3
- package/data/_indexes/currency.json +64 -64
- package/data/_indexes/jurisdiction-map.json +31 -158
- package/data/_indexes/recipes.json +1 -1
- package/data/_indexes/section-offsets.json +510 -510
- package/data/_indexes/summary-cards.json +33 -33
- package/data/_indexes/token-budget.json +200 -200
- package/data/atlas-ttps.json +7 -7
- package/data/attack-techniques.json +5 -5
- package/data/framework-control-gaps.json +3 -3
- package/lib/auto-discovery.js +15 -9
- package/lib/collectors/library-author.js +26 -9
- package/lib/collectors/secrets.js +8 -1
- package/lib/cvss.js +108 -0
- package/lib/lint-skills.js +6 -1
- package/lib/playbook-runner.js +17 -4
- package/lib/prefetch.js +97 -5
- package/lib/refresh-external.js +25 -13
- package/lib/schemas/manifest.schema.json +1 -1
- package/lib/schemas/skill-frontmatter.schema.json +1 -1
- package/lib/validate-indexes.js +5 -0
- package/lib/version-pins.js +3 -3
- package/manifest-snapshot.json +2 -2
- package/manifest-snapshot.sha256 +1 -1
- package/manifest.json +124 -124
- package/orchestrator/pipeline.js +16 -4
- package/package.json +1 -1
- package/sbom.cdx.json +170 -140
- package/scripts/build-indexes.js +12 -1
- package/scripts/builders/catalog-summaries.js +1 -1
- package/scripts/builders/recipes.js +1 -1
- package/scripts/check-sbom-currency.js +76 -14
- package/scripts/refresh-sbom.js +1 -1
- package/scripts/run-e2e-scenarios.js +48 -17
- package/scripts/sync-package-description.js +74 -0
- package/scripts/verify-shipped-tarball.js +18 -7
- package/skills/age-gates-child-safety/skill.md +3 -3
- package/skills/ai-attack-surface/skill.md +4 -4
- package/skills/ai-c2-detection/skill.md +5 -5
- package/skills/api-security/skill.md +2 -2
- package/skills/attack-surface-pentest/skill.md +4 -4
- package/skills/cloud-security/skill.md +3 -3
- package/skills/compliance-theater/skill.md +3 -3
- package/skills/container-runtime-security/skill.md +3 -3
- package/skills/coordinated-vuln-disclosure/skill.md +2 -2
- package/skills/defensive-countermeasure-mapping/skill.md +3 -3
- package/skills/dlp-gap-analysis/skill.md +5 -5
- package/skills/exploit-scoring/skill.md +2 -2
- package/skills/framework-gap-analysis/skill.md +4 -4
- package/skills/fuzz-testing-strategy/skill.md +2 -2
- package/skills/incident-response-playbook/skill.md +3 -3
- package/skills/mcp-agent-trust/skill.md +2 -2
- package/skills/mlops-security/skill.md +3 -3
- package/skills/ot-ics-security/skill.md +3 -3
- package/skills/policy-exception-gen/skill.md +3 -3
- package/skills/pqc-first/skill.md +2 -2
- package/skills/rag-pipeline-security/skill.md +4 -4
- package/skills/ransomware-response/skill.md +2 -2
- package/skills/sector-energy/skill.md +2 -2
- package/skills/sector-federal-government/skill.md +2 -2
- package/skills/sector-financial/skill.md +4 -4
- package/skills/sector-healthcare/skill.md +3 -3
- package/skills/security-maturity-tiers/skill.md +1 -1
- package/skills/skill-update-loop/skill.md +6 -6
- package/skills/supply-chain-integrity/skill.md +2 -2
- package/skills/threat-model-currency/skill.md +8 -8
- package/skills/threat-modeling-methodology/skill.md +2 -2
- package/skills/webapp-security/skill.md +2 -2
- package/skills/zeroday-gap-learn/skill.md +3 -3
- package/sources/validators/cve-validator.js +27 -18
package/orchestrator/pipeline.js
CHANGED
|
@@ -233,11 +233,20 @@ function _currencyScore(daysSinceReview, _forwardWatchCount) {
|
|
|
233
233
|
// currency even on the day after a review. forward_watch is a
|
|
234
234
|
// signal of ACTIVE maintenance, not staleness, so the count no
|
|
235
235
|
// longer affects the score. The arg is retained for ABI compat.
|
|
236
|
+
// The penalty schedule must be able to cross the tiers the gate checks
|
|
237
|
+
// against (currencyCheck: action_required at < 70, critical_count at < 50;
|
|
238
|
+
// _currencyLabel: 'stale' < 70, 'critical_stale' < 50). A schedule whose
|
|
239
|
+
// worst penalty was -30 floored the score at 70, so the warn/critical tiers —
|
|
240
|
+
// and the workflow issue they gate — could never fire. The deeper penalties
|
|
241
|
+
// only bite past 180/270/365 days, so a normally-maintained skill stays
|
|
242
|
+
// 'acceptable' while a genuinely abandoned one reaches the gate.
|
|
236
243
|
let score = 100;
|
|
237
|
-
if (daysSinceReview >
|
|
238
|
-
else if (daysSinceReview >
|
|
239
|
-
else if (daysSinceReview >
|
|
240
|
-
else if (daysSinceReview >
|
|
244
|
+
if (daysSinceReview > 365) score -= 100; // a year+ unreviewed → 0 (critical_stale)
|
|
245
|
+
else if (daysSinceReview > 270) score -= 60; // → 40 (critical_stale, < 50)
|
|
246
|
+
else if (daysSinceReview > 180) score -= 40; // → 60 (stale, < 70 warn tier)
|
|
247
|
+
else if (daysSinceReview > 90) score -= 20; // → 80 (acceptable)
|
|
248
|
+
else if (daysSinceReview > 60) score -= 10; // → 90 (current)
|
|
249
|
+
else if (daysSinceReview > 30) score -= 5; // → 95 (current)
|
|
241
250
|
return Math.max(0, score);
|
|
242
251
|
}
|
|
243
252
|
|
|
@@ -265,4 +274,7 @@ module.exports = {
|
|
|
265
274
|
getAgentDefinition,
|
|
266
275
|
MANIFEST_CACHE_TTL_MS,
|
|
267
276
|
_resetManifestCache,
|
|
277
|
+
// Exported for the gate-reachability contract test: the schedule must be able
|
|
278
|
+
// to reach the warn (< 70) and critical (< 50) tiers the workflow issues on.
|
|
279
|
+
_currencyScore,
|
|
268
280
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blamejs/exceptd-skills",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.29",
|
|
4
4
|
"description": "AI security skills grounded in mid-2026 threat reality, not stale framework documentation. 51 skills, 11 catalogs (439 CVEs / 177 CWEs / 805 ATT&CK + ICS / 170 ATLAS / 468 D3FEND / 8888 RFCs), 35 jurisdictions, 10-class catalog gap detector + budget gate, real XML parser + canonical-form diff + content-pattern regression detection, Ed25519-signed.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai-security",
|