@panguard-ai/atr 1.5.5 → 1.6.0

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.
Files changed (245) hide show
  1. package/package.json +2 -2
  2. package/dist/action-executor.d.ts +0 -44
  3. package/dist/action-executor.d.ts.map +0 -1
  4. package/dist/action-executor.js +0 -130
  5. package/dist/action-executor.js.map +0 -1
  6. package/dist/adapters/default-adapter.d.ts +0 -24
  7. package/dist/adapters/default-adapter.d.ts.map +0 -1
  8. package/dist/adapters/default-adapter.js +0 -51
  9. package/dist/adapters/default-adapter.js.map +0 -1
  10. package/dist/adapters/stdio-adapter.d.ts +0 -30
  11. package/dist/adapters/stdio-adapter.d.ts.map +0 -1
  12. package/dist/adapters/stdio-adapter.js +0 -128
  13. package/dist/adapters/stdio-adapter.js.map +0 -1
  14. package/dist/badge.d.ts +0 -42
  15. package/dist/badge.d.ts.map +0 -1
  16. package/dist/badge.js +0 -163
  17. package/dist/badge.js.map +0 -1
  18. package/dist/capability-extractor.d.ts +0 -35
  19. package/dist/capability-extractor.d.ts.map +0 -1
  20. package/dist/capability-extractor.js +0 -91
  21. package/dist/capability-extractor.js.map +0 -1
  22. package/dist/cli/scan-handler.d.ts +0 -21
  23. package/dist/cli/scan-handler.d.ts.map +0 -1
  24. package/dist/cli/scan-handler.js +0 -276
  25. package/dist/cli/scan-handler.js.map +0 -1
  26. package/dist/cli/tc-pipeline.d.ts +0 -18
  27. package/dist/cli/tc-pipeline.d.ts.map +0 -1
  28. package/dist/cli/tc-pipeline.js +0 -295
  29. package/dist/cli/tc-pipeline.js.map +0 -1
  30. package/dist/cli.d.ts +0 -12
  31. package/dist/cli.d.ts.map +0 -1
  32. package/dist/cli.js +0 -894
  33. package/dist/cli.js.map +0 -1
  34. package/dist/content-hash.d.ts +0 -7
  35. package/dist/content-hash.d.ts.map +0 -1
  36. package/dist/content-hash.js +0 -10
  37. package/dist/content-hash.js.map +0 -1
  38. package/dist/converters/elastic.d.ts +0 -36
  39. package/dist/converters/elastic.d.ts.map +0 -1
  40. package/dist/converters/elastic.js +0 -125
  41. package/dist/converters/elastic.js.map +0 -1
  42. package/dist/converters/generic-regex.d.ts +0 -37
  43. package/dist/converters/generic-regex.d.ts.map +0 -1
  44. package/dist/converters/generic-regex.js +0 -59
  45. package/dist/converters/generic-regex.js.map +0 -1
  46. package/dist/converters/index.d.ts +0 -32
  47. package/dist/converters/index.d.ts.map +0 -1
  48. package/dist/converters/index.js +0 -38
  49. package/dist/converters/index.js.map +0 -1
  50. package/dist/converters/sarif.d.ts +0 -18
  51. package/dist/converters/sarif.d.ts.map +0 -1
  52. package/dist/converters/sarif.js +0 -142
  53. package/dist/converters/sarif.js.map +0 -1
  54. package/dist/converters/splunk.d.ts +0 -19
  55. package/dist/converters/splunk.d.ts.map +0 -1
  56. package/dist/converters/splunk.js +0 -148
  57. package/dist/converters/splunk.js.map +0 -1
  58. package/dist/coverage-analyzer.d.ts +0 -43
  59. package/dist/coverage-analyzer.d.ts.map +0 -1
  60. package/dist/coverage-analyzer.js +0 -329
  61. package/dist/coverage-analyzer.js.map +0 -1
  62. package/dist/embedding/build-corpus.d.ts +0 -15
  63. package/dist/embedding/build-corpus.d.ts.map +0 -1
  64. package/dist/embedding/build-corpus.js +0 -105
  65. package/dist/embedding/build-corpus.js.map +0 -1
  66. package/dist/embedding/model-loader.d.ts +0 -41
  67. package/dist/embedding/model-loader.d.ts.map +0 -1
  68. package/dist/embedding/model-loader.js +0 -90
  69. package/dist/embedding/model-loader.js.map +0 -1
  70. package/dist/embedding/vector-store.d.ts +0 -41
  71. package/dist/embedding/vector-store.d.ts.map +0 -1
  72. package/dist/embedding/vector-store.js +0 -70
  73. package/dist/embedding/vector-store.js.map +0 -1
  74. package/dist/engine.d.ts +0 -222
  75. package/dist/engine.d.ts.map +0 -1
  76. package/dist/engine.js +0 -1185
  77. package/dist/engine.js.map +0 -1
  78. package/dist/eval/corpus.d.ts +0 -42
  79. package/dist/eval/corpus.d.ts.map +0 -1
  80. package/dist/eval/corpus.js +0 -427
  81. package/dist/eval/corpus.js.map +0 -1
  82. package/dist/eval/eval-harness.d.ts +0 -44
  83. package/dist/eval/eval-harness.d.ts.map +0 -1
  84. package/dist/eval/eval-harness.js +0 -296
  85. package/dist/eval/eval-harness.js.map +0 -1
  86. package/dist/eval/index.d.ts +0 -13
  87. package/dist/eval/index.d.ts.map +0 -1
  88. package/dist/eval/index.js +0 -9
  89. package/dist/eval/index.js.map +0 -1
  90. package/dist/eval/metrics.d.ts +0 -74
  91. package/dist/eval/metrics.d.ts.map +0 -1
  92. package/dist/eval/metrics.js +0 -108
  93. package/dist/eval/metrics.js.map +0 -1
  94. package/dist/eval/pint-corpus.d.ts +0 -34
  95. package/dist/eval/pint-corpus.d.ts.map +0 -1
  96. package/dist/eval/pint-corpus.js +0 -113
  97. package/dist/eval/pint-corpus.js.map +0 -1
  98. package/dist/eval/rule-corpus.d.ts +0 -9
  99. package/dist/eval/rule-corpus.d.ts.map +0 -1
  100. package/dist/eval/rule-corpus.js +0 -4780
  101. package/dist/eval/rule-corpus.js.map +0 -1
  102. package/dist/eval/rule-metrics.d.ts +0 -34
  103. package/dist/eval/rule-metrics.d.ts.map +0 -1
  104. package/dist/eval/rule-metrics.js +0 -92
  105. package/dist/eval/rule-metrics.js.map +0 -1
  106. package/dist/eval/run-eval.d.ts +0 -7
  107. package/dist/eval/run-eval.d.ts.map +0 -1
  108. package/dist/eval/run-eval.js +0 -11
  109. package/dist/eval/run-eval.js.map +0 -1
  110. package/dist/eval/run-pint-benchmark.d.ts +0 -18
  111. package/dist/eval/run-pint-benchmark.d.ts.map +0 -1
  112. package/dist/eval/run-pint-benchmark.js +0 -159
  113. package/dist/eval/run-pint-benchmark.js.map +0 -1
  114. package/dist/eval/skill-benchmark.d.ts +0 -66
  115. package/dist/eval/skill-benchmark.d.ts.map +0 -1
  116. package/dist/eval/skill-benchmark.js +0 -194
  117. package/dist/eval/skill-benchmark.js.map +0 -1
  118. package/dist/flywheel.d.ts +0 -54
  119. package/dist/flywheel.d.ts.map +0 -1
  120. package/dist/flywheel.js +0 -121
  121. package/dist/flywheel.js.map +0 -1
  122. package/dist/hook-handler.d.ts +0 -61
  123. package/dist/hook-handler.d.ts.map +0 -1
  124. package/dist/hook-handler.js +0 -178
  125. package/dist/hook-handler.js.map +0 -1
  126. package/dist/layer-integration.d.ts +0 -55
  127. package/dist/layer-integration.d.ts.map +0 -1
  128. package/dist/layer-integration.js +0 -187
  129. package/dist/layer-integration.js.map +0 -1
  130. package/dist/loader.d.ts +0 -18
  131. package/dist/loader.d.ts.map +0 -1
  132. package/dist/loader.js +0 -129
  133. package/dist/loader.js.map +0 -1
  134. package/dist/mcp-server.d.ts +0 -13
  135. package/dist/mcp-server.d.ts.map +0 -1
  136. package/dist/mcp-server.js +0 -246
  137. package/dist/mcp-server.js.map +0 -1
  138. package/dist/mcp-tools/coverage-gaps.d.ts +0 -13
  139. package/dist/mcp-tools/coverage-gaps.d.ts.map +0 -1
  140. package/dist/mcp-tools/coverage-gaps.js +0 -55
  141. package/dist/mcp-tools/coverage-gaps.js.map +0 -1
  142. package/dist/mcp-tools/list-rules.d.ts +0 -17
  143. package/dist/mcp-tools/list-rules.d.ts.map +0 -1
  144. package/dist/mcp-tools/list-rules.js +0 -45
  145. package/dist/mcp-tools/list-rules.js.map +0 -1
  146. package/dist/mcp-tools/scan-skill.d.ts +0 -17
  147. package/dist/mcp-tools/scan-skill.d.ts.map +0 -1
  148. package/dist/mcp-tools/scan-skill.js +0 -65
  149. package/dist/mcp-tools/scan-skill.js.map +0 -1
  150. package/dist/mcp-tools/scan.d.ts +0 -24
  151. package/dist/mcp-tools/scan.d.ts.map +0 -1
  152. package/dist/mcp-tools/scan.js +0 -94
  153. package/dist/mcp-tools/scan.js.map +0 -1
  154. package/dist/mcp-tools/submit-proposal.d.ts +0 -12
  155. package/dist/mcp-tools/submit-proposal.d.ts.map +0 -1
  156. package/dist/mcp-tools/submit-proposal.js +0 -103
  157. package/dist/mcp-tools/submit-proposal.js.map +0 -1
  158. package/dist/mcp-tools/threat-summary.d.ts +0 -12
  159. package/dist/mcp-tools/threat-summary.d.ts.map +0 -1
  160. package/dist/mcp-tools/threat-summary.js +0 -74
  161. package/dist/mcp-tools/threat-summary.js.map +0 -1
  162. package/dist/mcp-tools/validate.d.ts +0 -15
  163. package/dist/mcp-tools/validate.d.ts.map +0 -1
  164. package/dist/mcp-tools/validate.js +0 -51
  165. package/dist/mcp-tools/validate.js.map +0 -1
  166. package/dist/modules/embedding.d.ts +0 -71
  167. package/dist/modules/embedding.d.ts.map +0 -1
  168. package/dist/modules/embedding.js +0 -141
  169. package/dist/modules/embedding.js.map +0 -1
  170. package/dist/modules/index.d.ts +0 -144
  171. package/dist/modules/index.d.ts.map +0 -1
  172. package/dist/modules/index.js +0 -82
  173. package/dist/modules/index.js.map +0 -1
  174. package/dist/modules/semantic.d.ts +0 -106
  175. package/dist/modules/semantic.d.ts.map +0 -1
  176. package/dist/modules/semantic.js +0 -359
  177. package/dist/modules/semantic.js.map +0 -1
  178. package/dist/modules/session.d.ts +0 -70
  179. package/dist/modules/session.d.ts.map +0 -1
  180. package/dist/modules/session.js +0 -128
  181. package/dist/modules/session.js.map +0 -1
  182. package/dist/quality/adapters/atr.d.ts +0 -65
  183. package/dist/quality/adapters/atr.d.ts.map +0 -1
  184. package/dist/quality/adapters/atr.js +0 -154
  185. package/dist/quality/adapters/atr.js.map +0 -1
  186. package/dist/quality/adapters/index.d.ts +0 -10
  187. package/dist/quality/adapters/index.d.ts.map +0 -1
  188. package/dist/quality/adapters/index.js +0 -10
  189. package/dist/quality/adapters/index.js.map +0 -1
  190. package/dist/quality/compute-confidence.d.ts +0 -45
  191. package/dist/quality/compute-confidence.d.ts.map +0 -1
  192. package/dist/quality/compute-confidence.js +0 -133
  193. package/dist/quality/compute-confidence.js.map +0 -1
  194. package/dist/quality/index.d.ts +0 -36
  195. package/dist/quality/index.d.ts.map +0 -1
  196. package/dist/quality/index.js +0 -39
  197. package/dist/quality/index.js.map +0 -1
  198. package/dist/quality/quality-gate.d.ts +0 -86
  199. package/dist/quality/quality-gate.d.ts.map +0 -1
  200. package/dist/quality/quality-gate.js +0 -187
  201. package/dist/quality/quality-gate.js.map +0 -1
  202. package/dist/quality/types.d.ts +0 -129
  203. package/dist/quality/types.d.ts.map +0 -1
  204. package/dist/quality/types.js +0 -10
  205. package/dist/quality/types.js.map +0 -1
  206. package/dist/quality/validate-maturity.d.ts +0 -51
  207. package/dist/quality/validate-maturity.d.ts.map +0 -1
  208. package/dist/quality/validate-maturity.js +0 -134
  209. package/dist/quality/validate-maturity.js.map +0 -1
  210. package/dist/rule-scaffolder.d.ts +0 -53
  211. package/dist/rule-scaffolder.d.ts.map +0 -1
  212. package/dist/rule-scaffolder.js +0 -301
  213. package/dist/rule-scaffolder.js.map +0 -1
  214. package/dist/session-tracker.d.ts +0 -58
  215. package/dist/session-tracker.d.ts.map +0 -1
  216. package/dist/session-tracker.js +0 -176
  217. package/dist/session-tracker.js.map +0 -1
  218. package/dist/shadow-evaluator.d.ts +0 -48
  219. package/dist/shadow-evaluator.d.ts.map +0 -1
  220. package/dist/shadow-evaluator.js +0 -129
  221. package/dist/shadow-evaluator.js.map +0 -1
  222. package/dist/skill-fingerprint.d.ts +0 -85
  223. package/dist/skill-fingerprint.d.ts.map +0 -1
  224. package/dist/skill-fingerprint.js +0 -284
  225. package/dist/skill-fingerprint.js.map +0 -1
  226. package/dist/tc-reporter.d.ts +0 -50
  227. package/dist/tc-reporter.d.ts.map +0 -1
  228. package/dist/tc-reporter.js +0 -164
  229. package/dist/tc-reporter.js.map +0 -1
  230. package/dist/tier0-invariant.d.ts +0 -49
  231. package/dist/tier0-invariant.d.ts.map +0 -1
  232. package/dist/tier0-invariant.js +0 -185
  233. package/dist/tier0-invariant.js.map +0 -1
  234. package/dist/tier1-blacklist.d.ts +0 -48
  235. package/dist/tier1-blacklist.d.ts.map +0 -1
  236. package/dist/tier1-blacklist.js +0 -92
  237. package/dist/tier1-blacklist.js.map +0 -1
  238. package/dist/types.d.ts +0 -232
  239. package/dist/types.d.ts.map +0 -1
  240. package/dist/types.js +0 -6
  241. package/dist/types.js.map +0 -1
  242. package/dist/verdict.d.ts +0 -26
  243. package/dist/verdict.d.ts.map +0 -1
  244. package/dist/verdict.js +0 -127
  245. package/dist/verdict.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"rule-corpus.js","sourceRoot":"","sources":["../../src/eval/rule-corpus.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- /**
2
- * Per-Rule Quality Metrics -- computes TP, FP, precision, recall,
3
- * and confidence stats for each individual rule based on eval results.
4
- *
5
- * All functions are pure (no side effects, no mutation).
6
- *
7
- * @module agent-threat-rules/eval/rule-metrics
8
- */
9
- import type { SampleResult } from './metrics.js';
10
- export interface RuleQuality {
11
- readonly ruleId: string;
12
- readonly matchCount: number;
13
- readonly tpCount: number;
14
- readonly fpCount: number;
15
- readonly categories: readonly string[];
16
- readonly avgConfidence: number;
17
- }
18
- export interface RuleQualityReport {
19
- readonly totalRulesEvaluated: number;
20
- readonly rulesFired: number;
21
- readonly rulesNeverFired: number;
22
- readonly topRules: readonly RuleQuality[];
23
- readonly weakRules: readonly RuleQuality[];
24
- readonly neverFiredRuleIds: readonly string[];
25
- }
26
- /**
27
- * Compute per-rule quality metrics from eval results.
28
- *
29
- * @param results - The sample results from an eval run
30
- * @param loadedRuleIds - All rule IDs that were loaded in the engine
31
- * @returns A RuleQualityReport with top, weak, and never-fired rules
32
- */
33
- export declare function computeRuleQuality(results: readonly SampleResult[], loadedRuleIds: readonly string[]): RuleQualityReport;
34
- //# sourceMappingURL=rule-metrics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rule-metrics.d.ts","sourceRoot":"","sources":["../../src/eval/rule-metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAMjD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,SAAS,WAAW,EAAE,CAAC;IAC3C,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/C;AA8DD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,SAAS,YAAY,EAAE,EAChC,aAAa,EAAE,SAAS,MAAM,EAAE,GAC/B,iBAAiB,CAyCnB"}
@@ -1,92 +0,0 @@
1
- /**
2
- * Per-Rule Quality Metrics -- computes TP, FP, precision, recall,
3
- * and confidence stats for each individual rule based on eval results.
4
- *
5
- * All functions are pure (no side effects, no mutation).
6
- *
7
- * @module agent-threat-rules/eval/rule-metrics
8
- */
9
- function emptyAccumulator(ruleId) {
10
- return {
11
- ruleId,
12
- tp: 0,
13
- fp: 0,
14
- categories: new Set(),
15
- confidenceSum: 0,
16
- confidenceCount: 0,
17
- };
18
- }
19
- function addSampleToAccumulator(acc, sample) {
20
- const isAttack = sample.expectedDetection;
21
- const newCategories = new Set(acc.categories);
22
- newCategories.add(sample.category);
23
- return {
24
- ruleId: acc.ruleId,
25
- tp: acc.tp + (isAttack ? 1 : 0),
26
- fp: acc.fp + (isAttack ? 0 : 1),
27
- categories: newCategories,
28
- confidenceSum: acc.confidenceSum + sample.confidence,
29
- confidenceCount: acc.confidenceCount + 1,
30
- };
31
- }
32
- function accumulatorToQuality(acc) {
33
- const matchCount = acc.tp + acc.fp;
34
- return {
35
- ruleId: acc.ruleId,
36
- matchCount,
37
- tpCount: acc.tp,
38
- fpCount: acc.fp,
39
- categories: [...acc.categories].sort(),
40
- avgConfidence: acc.confidenceCount > 0
41
- ? acc.confidenceSum / acc.confidenceCount
42
- : 0,
43
- };
44
- }
45
- // ---------------------------------------------------------------------------
46
- // Core computation
47
- // ---------------------------------------------------------------------------
48
- /**
49
- * Compute per-rule quality metrics from eval results.
50
- *
51
- * @param results - The sample results from an eval run
52
- * @param loadedRuleIds - All rule IDs that were loaded in the engine
53
- * @returns A RuleQualityReport with top, weak, and never-fired rules
54
- */
55
- export function computeRuleQuality(results, loadedRuleIds) {
56
- // Build per-rule accumulators from results
57
- const accumulators = new Map();
58
- for (const sample of results) {
59
- for (const ruleId of sample.matchedRules) {
60
- const existing = accumulators.get(ruleId) ?? emptyAccumulator(ruleId);
61
- accumulators.set(ruleId, addSampleToAccumulator(existing, sample));
62
- }
63
- }
64
- // Convert accumulators to RuleQuality entries
65
- const allQualities = [...accumulators.values()]
66
- .map(accumulatorToQuality);
67
- // Sort by matchCount descending for top rules
68
- const sortedByMatch = [...allQualities].sort((a, b) => b.matchCount - a.matchCount);
69
- // Weak rules: have FP > 0, or matchCount <= 1 (very low contribution)
70
- const weakRules = [...allQualities]
71
- .filter((r) => r.fpCount > 0 || r.matchCount <= 1)
72
- .sort((a, b) => {
73
- // Sort by fpCount desc first, then matchCount asc
74
- if (b.fpCount !== a.fpCount)
75
- return b.fpCount - a.fpCount;
76
- return a.matchCount - b.matchCount;
77
- });
78
- // Determine never-fired rules
79
- const firedRuleIds = new Set(accumulators.keys());
80
- const neverFiredRuleIds = loadedRuleIds
81
- .filter((id) => !firedRuleIds.has(id))
82
- .sort();
83
- return {
84
- totalRulesEvaluated: loadedRuleIds.length,
85
- rulesFired: firedRuleIds.size,
86
- rulesNeverFired: neverFiredRuleIds.length,
87
- topRules: sortedByMatch,
88
- weakRules,
89
- neverFiredRuleIds,
90
- };
91
- }
92
- //# sourceMappingURL=rule-metrics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rule-metrics.js","sourceRoot":"","sources":["../../src/eval/rule-metrics.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env npx tsx
2
- /**
3
- * CLI entry point for: npx tsx src/eval/run-eval.ts
4
- * or: npm run eval
5
- */
6
- export {};
7
- //# sourceMappingURL=run-eval.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-eval.d.ts","sourceRoot":"","sources":["../../src/eval/run-eval.ts"],"names":[],"mappings":";AACA;;;GAGG"}
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env npx tsx
2
- /**
3
- * CLI entry point for: npx tsx src/eval/run-eval.ts
4
- * or: npm run eval
5
- */
6
- import { runEvalCLI } from './eval-harness.js';
7
- runEvalCLI().catch((err) => {
8
- console.error('Eval failed:', err);
9
- process.exitCode = 1;
10
- });
11
- //# sourceMappingURL=run-eval.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-eval.js","sourceRoot":"","sources":["../../src/eval/run-eval.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACzB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACnC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env npx tsx
2
- /**
3
- * PINT Benchmark Runner
4
- *
5
- * Standalone CLI that loads the PINT corpus (built from publicly available
6
- * prompt injection datasets) and runs it through the ATR evaluation harness.
7
- *
8
- * Usage:
9
- * npx tsx src/eval/run-pint-benchmark.ts
10
- * npm run eval:pint
11
- *
12
- * The PINT corpus lives at data/pint-benchmark/pint-corpus.json and is
13
- * converted on-the-fly into CorpusSample[] via loadPintCorpus().
14
- *
15
- * @module agent-threat-rules/eval/run-pint-benchmark
16
- */
17
- export {};
18
- //# sourceMappingURL=run-pint-benchmark.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-pint-benchmark.d.ts","sourceRoot":"","sources":["../../src/eval/run-pint-benchmark.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG"}
@@ -1,159 +0,0 @@
1
- #!/usr/bin/env npx tsx
2
- /**
3
- * PINT Benchmark Runner
4
- *
5
- * Standalone CLI that loads the PINT corpus (built from publicly available
6
- * prompt injection datasets) and runs it through the ATR evaluation harness.
7
- *
8
- * Usage:
9
- * npx tsx src/eval/run-pint-benchmark.ts
10
- * npm run eval:pint
11
- *
12
- * The PINT corpus lives at data/pint-benchmark/pint-corpus.json and is
13
- * converted on-the-fly into CorpusSample[] via loadPintCorpus().
14
- *
15
- * @module agent-threat-rules/eval/run-pint-benchmark
16
- */
17
- import { resolve, join } from 'node:path';
18
- import { loadPintCorpus, getPintCorpusStats } from './pint-corpus.js';
19
- import { runEval } from './eval-harness.js';
20
- // ---------------------------------------------------------------------------
21
- // Formatting helpers
22
- // ---------------------------------------------------------------------------
23
- function formatPercent(n) {
24
- return `${(n * 100).toFixed(1)}%`;
25
- }
26
- function formatMs(n) {
27
- return `${n.toFixed(2)}ms`;
28
- }
29
- // ---------------------------------------------------------------------------
30
- // Main
31
- // ---------------------------------------------------------------------------
32
- async function main() {
33
- const base = resolve(join(import.meta.dirname ?? '.', '..', '..'));
34
- const rulesDir = join(base, 'rules');
35
- const dataPath = join(base, 'data', 'pint-benchmark', 'pint-corpus.json');
36
- const outputPath = join(base, 'data', 'pint-benchmark', 'pint-eval-report.json');
37
- console.log('\n=== PINT Benchmark -- ATR Evaluation ===\n');
38
- console.log(`Corpus: ${dataPath}`);
39
- console.log(`Rules: ${rulesDir}\n`);
40
- // Load the PINT corpus
41
- const corpus = loadPintCorpus(dataPath);
42
- const stats = getPintCorpusStats(corpus);
43
- console.log(`Loaded ${stats.total} samples (${stats.attacks} attacks, ${stats.benign} benign)`);
44
- console.log(`Categories: ${Object.entries(stats.byCategory).map(([k, v]) => `${k}=${v}`).join(', ')}`);
45
- console.log(`Difficulty: ${Object.entries(stats.byDifficulty).map(([k, v]) => `${k}=${v}`).join(', ')}`);
46
- console.log(`Languages: ${Object.entries(stats.byLanguage).map(([k, v]) => `${k}=${v}`).join(', ')}`);
47
- // Use relaxed thresholds for the PINT benchmark since it contains
48
- // many paraphrased / multilingual attacks that regex-only won't catch.
49
- // The PINT corpus is an external, adversarial dataset -- low recall is
50
- // expected and reveals coverage gaps for future rule development.
51
- // PINT-specific thresholds: relaxed vs global defaults (0.60 recall, 0.05 FP rate)
52
- // because the PINT corpus contains adversarial paraphrasing and dataset noise.
53
- const pintThresholds = {
54
- minRecall: 0.58,
55
- maxFpRate: 0.15,
56
- minF1: 0.70,
57
- maxP95LatencyMs: 100,
58
- };
59
- // Run eval with the PINT corpus
60
- const { report, regression, tiersUsed, ruleQuality } = await runEval({
61
- rulesDir,
62
- corpus,
63
- thresholds: pintThresholds,
64
- outputPath,
65
- });
66
- // Overall metrics
67
- console.log(`\nTiers: ${tiersUsed.join(' + ')}`);
68
- console.log(`\n--- Overall ---`);
69
- console.log(` Precision: ${formatPercent(report.overall.precision)}`);
70
- console.log(` Recall: ${formatPercent(report.overall.recall)}`);
71
- console.log(` F1: ${formatPercent(report.overall.f1)}`);
72
- console.log(` Accuracy: ${formatPercent(report.overall.accuracy)}`);
73
- console.log(` FP Rate: ${formatPercent(report.overall.fpRate)}`);
74
- console.log(` Confusion: TP=${report.overall.confusion.tp} FP=${report.overall.confusion.fp} TN=${report.overall.confusion.tn} FN=${report.overall.confusion.fn}`);
75
- // Latency
76
- console.log(`\n--- Latency ---`);
77
- console.log(` P50: ${formatMs(report.latency.p50)}`);
78
- console.log(` P95: ${formatMs(report.latency.p95)}`);
79
- console.log(` P99: ${formatMs(report.latency.p99)}`);
80
- console.log(` Mean: ${formatMs(report.latency.mean)}`);
81
- console.log(` Max: ${formatMs(report.latency.max)}`);
82
- // Per category
83
- console.log(`\n--- By Category ---`);
84
- for (const cat of report.byCategory) {
85
- const missed = cat.missedSamples.length;
86
- const fps = cat.falsePositives.length;
87
- console.log(` ${cat.category}: recall=${formatPercent(cat.metrics.recall)} ` +
88
- `precision=${formatPercent(cat.metrics.precision)} ` +
89
- `f1=${formatPercent(cat.metrics.f1)} ` +
90
- `(missed=${missed}, FP=${fps})`);
91
- }
92
- // Per difficulty
93
- console.log(`\n--- By Difficulty ---`);
94
- for (const diff of report.byDifficulty) {
95
- console.log(` ${diff.difficulty}: recall=${formatPercent(diff.metrics.recall)} ` +
96
- `precision=${formatPercent(diff.metrics.precision)} ` +
97
- `f1=${formatPercent(diff.metrics.f1)}`);
98
- }
99
- // Missed attacks (show first 20)
100
- if (report.missedAttacks.length > 0) {
101
- const showCount = Math.min(report.missedAttacks.length, 20);
102
- console.log(`\n--- Missed Attacks (${report.missedAttacks.length} total, showing ${showCount}) ---`);
103
- for (const m of report.missedAttacks.slice(0, showCount)) {
104
- const lang = corpus.find((c) => c.id === m.id)?.fields?.['language'] ?? '?';
105
- console.log(` [${m.id}] lang=${lang} ${m.category}/${m.difficulty}`);
106
- }
107
- if (report.missedAttacks.length > showCount) {
108
- console.log(` ... and ${report.missedAttacks.length - showCount} more`);
109
- }
110
- }
111
- // False positives (show first 20)
112
- if (report.falsePositives.length > 0) {
113
- const showCount = Math.min(report.falsePositives.length, 20);
114
- console.log(`\n--- False Positives (${report.falsePositives.length} total, showing ${showCount}) ---`);
115
- for (const fp of report.falsePositives.slice(0, showCount)) {
116
- console.log(` [${fp.id}] rules: ${fp.matchedRules.join(', ')}`);
117
- }
118
- if (report.falsePositives.length > showCount) {
119
- console.log(` ... and ${report.falsePositives.length - showCount} more`);
120
- }
121
- }
122
- // Rule quality summary
123
- console.log(`\n--- Rule Quality ---`);
124
- console.log(` Total rules loaded: ${ruleQuality.totalRulesEvaluated}`);
125
- console.log(` Rules fired: ${ruleQuality.rulesFired}`);
126
- console.log(` Rules never fired: ${ruleQuality.rulesNeverFired}`);
127
- if (ruleQuality.topRules.length > 0) {
128
- console.log(`\n Top 10 rules by match count:`);
129
- for (const rule of ruleQuality.topRules.slice(0, 10)) {
130
- const precision = rule.matchCount > 0
131
- ? formatPercent(rule.tpCount / rule.matchCount)
132
- : 'N/A';
133
- console.log(` ${rule.ruleId}: matches=${rule.matchCount} ` +
134
- `TP=${rule.tpCount} FP=${rule.fpCount} ` +
135
- `precision=${precision}`);
136
- }
137
- }
138
- // Regression
139
- console.log(`\n--- Regression Check (PINT thresholds) ---`);
140
- if (regression.passed) {
141
- console.log(' PASSED');
142
- }
143
- else {
144
- console.log(' FAILED:');
145
- for (const v of regression.violations) {
146
- console.log(` - ${v}`);
147
- }
148
- }
149
- console.log(`\nReport saved to: ${outputPath}`);
150
- console.log('Done.\n');
151
- if (!regression.passed) {
152
- process.exitCode = 1;
153
- }
154
- }
155
- main().catch((err) => {
156
- console.error('PINT benchmark failed:', err);
157
- process.exitCode = 1;
158
- });
159
- //# sourceMappingURL=run-pint-benchmark.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-pint-benchmark.js","sourceRoot":"","sources":["../../src/eval/run-pint-benchmark.ts"],"names":[],"mappings":"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"}
@@ -1,66 +0,0 @@
1
- /**
2
- * SKILL.md Benchmark Harness
3
- *
4
- * Evaluates the ATR scanSkill() method against a labeled corpus of
5
- * malicious and benign SKILL.md files. Produces per-layer recall,
6
- * overall precision, and a detailed per-sample report.
7
- *
8
- * Corpus: data/skill-benchmark/manifest.json
9
- * Samples: data/skill-benchmark/malicious/ and data/skill-benchmark/benign/
10
- *
11
- * Layers:
12
- * A = obvious payload (curl|bash, base64 exec, reverse shell)
13
- * B = obfuscated (bash expansion, paste service relay, encoded)
14
- * C = semantic (natural language instructions, social engineering)
15
- *
16
- * @module agent-threat-rules/eval/skill-benchmark
17
- */
18
- interface SampleResult {
19
- readonly file: string;
20
- readonly label: 'malicious' | 'benign';
21
- readonly layer: string;
22
- readonly attack_type: string;
23
- readonly detected: boolean;
24
- readonly rules_fired: readonly string[];
25
- readonly correct: boolean;
26
- readonly latency_ms: number;
27
- readonly expected_rules_matched: boolean;
28
- readonly category_correct: boolean;
29
- }
30
- interface LayerMetrics {
31
- readonly total: number;
32
- readonly detected: number;
33
- readonly recall: number;
34
- }
35
- interface SkillBenchmarkReport {
36
- readonly timestamp: string;
37
- readonly corpus_size: number;
38
- readonly malicious_count: number;
39
- readonly benign_count: number;
40
- readonly overall_recall: number;
41
- readonly overall_precision: number;
42
- readonly overall_f1: number;
43
- readonly fp_rate: number;
44
- readonly layer_a: LayerMetrics;
45
- readonly layer_b: LayerMetrics;
46
- readonly layer_c: LayerMetrics;
47
- readonly true_positives: number;
48
- readonly false_positives: number;
49
- readonly true_negatives: number;
50
- readonly false_negatives: number;
51
- readonly expected_rules_accuracy: number;
52
- readonly category_accuracy: number;
53
- readonly avg_latency_ms: number;
54
- readonly max_latency_ms: number;
55
- readonly results: readonly SampleResult[];
56
- readonly missed_attacks: readonly SampleResult[];
57
- readonly false_alarms: readonly SampleResult[];
58
- }
59
- export declare function runSkillBenchmark(options?: {
60
- readonly rulesDir?: string;
61
- readonly corpusDir?: string;
62
- readonly outputPath?: string;
63
- }): Promise<SkillBenchmarkReport>;
64
- export declare function printReport(report: SkillBenchmarkReport): void;
65
- export {};
66
- //# sourceMappingURL=skill-benchmark.d.ts.map