@cdot65/prisma-airs-cli 2.11.0 → 3.0.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 (388) hide show
  1. package/README.md +27 -169
  2. package/dist/chunk-JXHYQFEK.js +1752 -0
  3. package/dist/cli/index.js +6511 -4
  4. package/dist/dlp-5XKWITZX.js +710 -0
  5. package/dist/index.d.ts +1396 -26
  6. package/dist/index.js +40 -37
  7. package/package.json +22 -25
  8. package/dist/airs/dlp/data-filtering-profiles.d.ts +0 -10
  9. package/dist/airs/dlp/data-filtering-profiles.d.ts.map +0 -1
  10. package/dist/airs/dlp/data-filtering-profiles.js +0 -17
  11. package/dist/airs/dlp/data-filtering-profiles.js.map +0 -1
  12. package/dist/airs/dlp/data-patterns.d.ts +0 -13
  13. package/dist/airs/dlp/data-patterns.d.ts.map +0 -1
  14. package/dist/airs/dlp/data-patterns.js +0 -26
  15. package/dist/airs/dlp/data-patterns.js.map +0 -1
  16. package/dist/airs/dlp/data-profiles.d.ts +0 -12
  17. package/dist/airs/dlp/data-profiles.d.ts.map +0 -1
  18. package/dist/airs/dlp/data-profiles.js +0 -23
  19. package/dist/airs/dlp/data-profiles.js.map +0 -1
  20. package/dist/airs/dlp/dictionaries.d.ts +0 -13
  21. package/dist/airs/dlp/dictionaries.d.ts.map +0 -1
  22. package/dist/airs/dlp/dictionaries.js +0 -34
  23. package/dist/airs/dlp/dictionaries.js.map +0 -1
  24. package/dist/airs/dlp/index.d.ts +0 -6
  25. package/dist/airs/dlp/index.d.ts.map +0 -1
  26. package/dist/airs/dlp/index.js +0 -6
  27. package/dist/airs/dlp/index.js.map +0 -1
  28. package/dist/airs/dlp/types.d.ts +0 -36
  29. package/dist/airs/dlp/types.d.ts.map +0 -1
  30. package/dist/airs/dlp/types.js +0 -2
  31. package/dist/airs/dlp/types.js.map +0 -1
  32. package/dist/airs/management.d.ts +0 -68
  33. package/dist/airs/management.d.ts.map +0 -1
  34. package/dist/airs/management.js +0 -317
  35. package/dist/airs/management.js.map +0 -1
  36. package/dist/airs/modelsecurity.d.ts +0 -74
  37. package/dist/airs/modelsecurity.d.ts.map +0 -1
  38. package/dist/airs/modelsecurity.js +0 -337
  39. package/dist/airs/modelsecurity.js.map +0 -1
  40. package/dist/airs/promptsets.d.ts +0 -50
  41. package/dist/airs/promptsets.d.ts.map +0 -1
  42. package/dist/airs/promptsets.js +0 -120
  43. package/dist/airs/promptsets.js.map +0 -1
  44. package/dist/airs/redteam.d.ts +0 -74
  45. package/dist/airs/redteam.d.ts.map +0 -1
  46. package/dist/airs/redteam.js +0 -406
  47. package/dist/airs/redteam.js.map +0 -1
  48. package/dist/airs/runtime.d.ts +0 -27
  49. package/dist/airs/runtime.d.ts.map +0 -1
  50. package/dist/airs/runtime.js +0 -158
  51. package/dist/airs/runtime.js.map +0 -1
  52. package/dist/airs/scanner.d.ts +0 -36
  53. package/dist/airs/scanner.d.ts.map +0 -1
  54. package/dist/airs/scanner.js +0 -101
  55. package/dist/airs/scanner.js.map +0 -1
  56. package/dist/airs/types.d.ts +0 -780
  57. package/dist/airs/types.d.ts.map +0 -1
  58. package/dist/airs/types.js +0 -6
  59. package/dist/airs/types.js.map +0 -1
  60. package/dist/audit/evaluator.d.ts +0 -17
  61. package/dist/audit/evaluator.d.ts.map +0 -1
  62. package/dist/audit/evaluator.js +0 -82
  63. package/dist/audit/evaluator.js.map +0 -1
  64. package/dist/audit/report.d.ts +0 -38
  65. package/dist/audit/report.d.ts.map +0 -1
  66. package/dist/audit/report.js +0 -141
  67. package/dist/audit/report.js.map +0 -1
  68. package/dist/audit/runner.d.ts +0 -18
  69. package/dist/audit/runner.d.ts.map +0 -1
  70. package/dist/audit/runner.js +0 -60
  71. package/dist/audit/runner.js.map +0 -1
  72. package/dist/audit/types.d.ts +0 -53
  73. package/dist/audit/types.d.ts.map +0 -1
  74. package/dist/audit/types.js +0 -5
  75. package/dist/audit/types.js.map +0 -1
  76. package/dist/backup/index.d.ts +0 -3
  77. package/dist/backup/index.d.ts.map +0 -1
  78. package/dist/backup/index.js +0 -3
  79. package/dist/backup/index.js.map +0 -1
  80. package/dist/backup/io.d.ts +0 -15
  81. package/dist/backup/io.d.ts.map +0 -1
  82. package/dist/backup/io.js +0 -67
  83. package/dist/backup/io.js.map +0 -1
  84. package/dist/backup/types.d.ts +0 -25
  85. package/dist/backup/types.d.ts.map +0 -1
  86. package/dist/backup/types.js +0 -2
  87. package/dist/backup/types.js.map +0 -1
  88. package/dist/cli/builders/profile-builder.d.ts +0 -45
  89. package/dist/cli/builders/profile-builder.d.ts.map +0 -1
  90. package/dist/cli/builders/profile-builder.js +0 -308
  91. package/dist/cli/builders/profile-builder.js.map +0 -1
  92. package/dist/cli/bulk-scan-state.d.ts +0 -15
  93. package/dist/cli/bulk-scan-state.d.ts.map +0 -1
  94. package/dist/cli/bulk-scan-state.js +0 -20
  95. package/dist/cli/bulk-scan-state.js.map +0 -1
  96. package/dist/cli/commands/audit.d.ts +0 -4
  97. package/dist/cli/commands/audit.d.ts.map +0 -1
  98. package/dist/cli/commands/audit.js +0 -113
  99. package/dist/cli/commands/audit.js.map +0 -1
  100. package/dist/cli/commands/backup.d.ts +0 -10
  101. package/dist/cli/commands/backup.d.ts.map +0 -1
  102. package/dist/cli/commands/backup.js +0 -102
  103. package/dist/cli/commands/backup.js.map +0 -1
  104. package/dist/cli/commands/dlp/build-body.d.ts +0 -28
  105. package/dist/cli/commands/dlp/build-body.d.ts.map +0 -1
  106. package/dist/cli/commands/dlp/build-body.js +0 -174
  107. package/dist/cli/commands/dlp/build-body.js.map +0 -1
  108. package/dist/cli/commands/dlp/dictionaries.d.ts +0 -3
  109. package/dist/cli/commands/dlp/dictionaries.d.ts.map +0 -1
  110. package/dist/cli/commands/dlp/dictionaries.js +0 -167
  111. package/dist/cli/commands/dlp/dictionaries.js.map +0 -1
  112. package/dist/cli/commands/dlp/filtering-profiles.d.ts +0 -3
  113. package/dist/cli/commands/dlp/filtering-profiles.d.ts.map +0 -1
  114. package/dist/cli/commands/dlp/filtering-profiles.js +0 -82
  115. package/dist/cli/commands/dlp/filtering-profiles.js.map +0 -1
  116. package/dist/cli/commands/dlp/generate.d.ts +0 -3
  117. package/dist/cli/commands/dlp/generate.d.ts.map +0 -1
  118. package/dist/cli/commands/dlp/generate.js +0 -51
  119. package/dist/cli/commands/dlp/generate.js.map +0 -1
  120. package/dist/cli/commands/dlp/index.d.ts +0 -3
  121. package/dist/cli/commands/dlp/index.d.ts.map +0 -1
  122. package/dist/cli/commands/dlp/index.js +0 -16
  123. package/dist/cli/commands/dlp/index.js.map +0 -1
  124. package/dist/cli/commands/dlp/patch.d.ts +0 -15
  125. package/dist/cli/commands/dlp/patch.d.ts.map +0 -1
  126. package/dist/cli/commands/dlp/patch.js +0 -70
  127. package/dist/cli/commands/dlp/patch.js.map +0 -1
  128. package/dist/cli/commands/dlp/patterns.d.ts +0 -3
  129. package/dist/cli/commands/dlp/patterns.d.ts.map +0 -1
  130. package/dist/cli/commands/dlp/patterns.js +0 -127
  131. package/dist/cli/commands/dlp/patterns.js.map +0 -1
  132. package/dist/cli/commands/dlp/profiles.d.ts +0 -3
  133. package/dist/cli/commands/dlp/profiles.d.ts.map +0 -1
  134. package/dist/cli/commands/dlp/profiles.js +0 -126
  135. package/dist/cli/commands/dlp/profiles.js.map +0 -1
  136. package/dist/cli/commands/modelsecurity.d.ts +0 -4
  137. package/dist/cli/commands/modelsecurity.d.ts.map +0 -1
  138. package/dist/cli/commands/modelsecurity.js +0 -605
  139. package/dist/cli/commands/modelsecurity.js.map +0 -1
  140. package/dist/cli/commands/profiles-cleanup.d.ts +0 -26
  141. package/dist/cli/commands/profiles-cleanup.d.ts.map +0 -1
  142. package/dist/cli/commands/profiles-cleanup.js +0 -113
  143. package/dist/cli/commands/profiles-cleanup.js.map +0 -1
  144. package/dist/cli/commands/redteam.d.ts +0 -12
  145. package/dist/cli/commands/redteam.d.ts.map +0 -1
  146. package/dist/cli/commands/redteam.js +0 -1071
  147. package/dist/cli/commands/redteam.js.map +0 -1
  148. package/dist/cli/commands/restore.d.ts +0 -11
  149. package/dist/cli/commands/restore.d.ts.map +0 -1
  150. package/dist/cli/commands/restore.js +0 -109
  151. package/dist/cli/commands/restore.js.map +0 -1
  152. package/dist/cli/commands/runtime.d.ts +0 -6
  153. package/dist/cli/commands/runtime.d.ts.map +0 -1
  154. package/dist/cli/commands/runtime.js +0 -822
  155. package/dist/cli/commands/runtime.js.map +0 -1
  156. package/dist/cli/commands/topics-apply.d.ts +0 -16
  157. package/dist/cli/commands/topics-apply.d.ts.map +0 -1
  158. package/dist/cli/commands/topics-apply.js +0 -69
  159. package/dist/cli/commands/topics-apply.js.map +0 -1
  160. package/dist/cli/commands/topics-create.d.ts +0 -16
  161. package/dist/cli/commands/topics-create.d.ts.map +0 -1
  162. package/dist/cli/commands/topics-create.js +0 -71
  163. package/dist/cli/commands/topics-create.js.map +0 -1
  164. package/dist/cli/commands/topics-eval.d.ts +0 -7
  165. package/dist/cli/commands/topics-eval.d.ts.map +0 -1
  166. package/dist/cli/commands/topics-eval.js +0 -65
  167. package/dist/cli/commands/topics-eval.js.map +0 -1
  168. package/dist/cli/commands/topics-revert.d.ts +0 -9
  169. package/dist/cli/commands/topics-revert.d.ts.map +0 -1
  170. package/dist/cli/commands/topics-revert.js +0 -52
  171. package/dist/cli/commands/topics-revert.js.map +0 -1
  172. package/dist/cli/commands/topics-sample.d.ts +0 -4
  173. package/dist/cli/commands/topics-sample.d.ts.map +0 -1
  174. package/dist/cli/commands/topics-sample.js +0 -27
  175. package/dist/cli/commands/topics-sample.js.map +0 -1
  176. package/dist/cli/debug-logger.d.ts +0 -11
  177. package/dist/cli/debug-logger.d.ts.map +0 -1
  178. package/dist/cli/debug-logger.js +0 -137
  179. package/dist/cli/debug-logger.js.map +0 -1
  180. package/dist/cli/index.d.ts +0 -3
  181. package/dist/cli/index.d.ts.map +0 -1
  182. package/dist/cli/index.js.map +0 -1
  183. package/dist/cli/parse-input.d.ts +0 -9
  184. package/dist/cli/parse-input.d.ts.map +0 -1
  185. package/dist/cli/parse-input.js +0 -109
  186. package/dist/cli/parse-input.js.map +0 -1
  187. package/dist/cli/program.d.ts +0 -3
  188. package/dist/cli/program.d.ts.map +0 -1
  189. package/dist/cli/program.js +0 -32
  190. package/dist/cli/program.js.map +0 -1
  191. package/dist/cli/renderer/audit.d.ts +0 -11
  192. package/dist/cli/renderer/audit.d.ts.map +0 -1
  193. package/dist/cli/renderer/audit.js +0 -58
  194. package/dist/cli/renderer/audit.js.map +0 -1
  195. package/dist/cli/renderer/backup.d.ts +0 -8
  196. package/dist/cli/renderer/backup.d.ts.map +0 -1
  197. package/dist/cli/renderer/backup.js +0 -50
  198. package/dist/cli/renderer/backup.js.map +0 -1
  199. package/dist/cli/renderer/common.d.ts +0 -14
  200. package/dist/cli/renderer/common.d.ts.map +0 -1
  201. package/dist/cli/renderer/common.js +0 -50
  202. package/dist/cli/renderer/common.js.map +0 -1
  203. package/dist/cli/renderer/dlp.d.ts +0 -34
  204. package/dist/cli/renderer/dlp.d.ts.map +0 -1
  205. package/dist/cli/renderer/dlp.js +0 -348
  206. package/dist/cli/renderer/dlp.js.map +0 -1
  207. package/dist/cli/renderer/eval.d.ts +0 -30
  208. package/dist/cli/renderer/eval.d.ts.map +0 -1
  209. package/dist/cli/renderer/eval.js +0 -61
  210. package/dist/cli/renderer/eval.js.map +0 -1
  211. package/dist/cli/renderer/index.d.ts +0 -9
  212. package/dist/cli/renderer/index.d.ts.map +0 -1
  213. package/dist/cli/renderer/index.js +0 -9
  214. package/dist/cli/renderer/index.js.map +0 -1
  215. package/dist/cli/renderer/modelsecurity.d.ts +0 -35
  216. package/dist/cli/renderer/modelsecurity.d.ts.map +0 -1
  217. package/dist/cli/renderer/modelsecurity.js +0 -339
  218. package/dist/cli/renderer/modelsecurity.js.map +0 -1
  219. package/dist/cli/renderer/redteam.d.ts +0 -216
  220. package/dist/cli/renderer/redteam.d.ts.map +0 -1
  221. package/dist/cli/renderer/redteam.js +0 -471
  222. package/dist/cli/renderer/redteam.js.map +0 -1
  223. package/dist/cli/renderer/runtime.d.ts +0 -107
  224. package/dist/cli/renderer/runtime.d.ts.map +0 -1
  225. package/dist/cli/renderer/runtime.js +0 -359
  226. package/dist/cli/renderer/runtime.js.map +0 -1
  227. package/dist/config/loader.d.ts +0 -3
  228. package/dist/config/loader.d.ts.map +0 -1
  229. package/dist/config/loader.js +0 -59
  230. package/dist/config/loader.js.map +0 -1
  231. package/dist/config/schema.d.ts +0 -63
  232. package/dist/config/schema.d.ts.map +0 -1
  233. package/dist/config/schema.js +0 -38
  234. package/dist/config/schema.js.map +0 -1
  235. package/dist/core/constraints.d.ts +0 -19
  236. package/dist/core/constraints.d.ts.map +0 -1
  237. package/dist/core/constraints.js +0 -82
  238. package/dist/core/constraints.js.map +0 -1
  239. package/dist/core/metrics.d.ts +0 -13
  240. package/dist/core/metrics.d.ts.map +0 -1
  241. package/dist/core/metrics.js +0 -73
  242. package/dist/core/metrics.js.map +0 -1
  243. package/dist/core/prompt-loader.d.ts +0 -14
  244. package/dist/core/prompt-loader.d.ts.map +0 -1
  245. package/dist/core/prompt-loader.js +0 -122
  246. package/dist/core/prompt-loader.js.map +0 -1
  247. package/dist/core/types.d.ts +0 -96
  248. package/dist/core/types.d.ts.map +0 -1
  249. package/dist/core/types.js +0 -5
  250. package/dist/core/types.js.map +0 -1
  251. package/dist/dlp/embed/docx.d.ts +0 -3
  252. package/dist/dlp/embed/docx.d.ts.map +0 -1
  253. package/dist/dlp/embed/docx.js +0 -54
  254. package/dist/dlp/embed/docx.js.map +0 -1
  255. package/dist/dlp/embed/index.d.ts +0 -6
  256. package/dist/dlp/embed/index.d.ts.map +0 -1
  257. package/dist/dlp/embed/index.js +0 -20
  258. package/dist/dlp/embed/index.js.map +0 -1
  259. package/dist/dlp/embed/jpeg.d.ts +0 -5
  260. package/dist/dlp/embed/jpeg.d.ts.map +0 -1
  261. package/dist/dlp/embed/jpeg.js +0 -60
  262. package/dist/dlp/embed/jpeg.js.map +0 -1
  263. package/dist/dlp/embed/pdf.d.ts +0 -7
  264. package/dist/dlp/embed/pdf.d.ts.map +0 -1
  265. package/dist/dlp/embed/pdf.js +0 -92
  266. package/dist/dlp/embed/pdf.js.map +0 -1
  267. package/dist/dlp/embed/png-chunks.d.ts +0 -12
  268. package/dist/dlp/embed/png-chunks.d.ts.map +0 -1
  269. package/dist/dlp/embed/png-chunks.js +0 -85
  270. package/dist/dlp/embed/png-chunks.js.map +0 -1
  271. package/dist/dlp/embed/png.d.ts +0 -5
  272. package/dist/dlp/embed/png.d.ts.map +0 -1
  273. package/dist/dlp/embed/png.js +0 -68
  274. package/dist/dlp/embed/png.js.map +0 -1
  275. package/dist/dlp/embed/svg.d.ts +0 -3
  276. package/dist/dlp/embed/svg.d.ts.map +0 -1
  277. package/dist/dlp/embed/svg.js +0 -28
  278. package/dist/dlp/embed/svg.js.map +0 -1
  279. package/dist/dlp/embed/zip.d.ts +0 -3
  280. package/dist/dlp/embed/zip.d.ts.map +0 -1
  281. package/dist/dlp/embed/zip.js +0 -25
  282. package/dist/dlp/embed/zip.js.map +0 -1
  283. package/dist/dlp/generate/docx.d.ts +0 -3
  284. package/dist/dlp/generate/docx.d.ts.map +0 -1
  285. package/dist/dlp/generate/docx.js +0 -24
  286. package/dist/dlp/generate/docx.js.map +0 -1
  287. package/dist/dlp/generate/index.d.ts +0 -5
  288. package/dist/dlp/generate/index.d.ts.map +0 -1
  289. package/dist/dlp/generate/index.js +0 -21
  290. package/dist/dlp/generate/index.js.map +0 -1
  291. package/dist/dlp/generate/jpeg.d.ts +0 -3
  292. package/dist/dlp/generate/jpeg.d.ts.map +0 -1
  293. package/dist/dlp/generate/jpeg.js +0 -8
  294. package/dist/dlp/generate/jpeg.js.map +0 -1
  295. package/dist/dlp/generate/pdf.d.ts +0 -3
  296. package/dist/dlp/generate/pdf.d.ts.map +0 -1
  297. package/dist/dlp/generate/pdf.js +0 -19
  298. package/dist/dlp/generate/pdf.js.map +0 -1
  299. package/dist/dlp/generate/png.d.ts +0 -3
  300. package/dist/dlp/generate/png.d.ts.map +0 -1
  301. package/dist/dlp/generate/png.js +0 -8
  302. package/dist/dlp/generate/png.js.map +0 -1
  303. package/dist/dlp/generate/raster.d.ts +0 -9
  304. package/dist/dlp/generate/raster.d.ts.map +0 -1
  305. package/dist/dlp/generate/raster.js +0 -20
  306. package/dist/dlp/generate/raster.js.map +0 -1
  307. package/dist/dlp/generate/svg.d.ts +0 -3
  308. package/dist/dlp/generate/svg.d.ts.map +0 -1
  309. package/dist/dlp/generate/svg.js +0 -17
  310. package/dist/dlp/generate/svg.js.map +0 -1
  311. package/dist/dlp/index.d.ts +0 -15
  312. package/dist/dlp/index.d.ts.map +0 -1
  313. package/dist/dlp/index.js +0 -54
  314. package/dist/dlp/index.js.map +0 -1
  315. package/dist/dlp/lorem.d.ts +0 -3
  316. package/dist/dlp/lorem.d.ts.map +0 -1
  317. package/dist/dlp/lorem.js +0 -65
  318. package/dist/dlp/lorem.js.map +0 -1
  319. package/dist/dlp/manifest.d.ts +0 -11
  320. package/dist/dlp/manifest.d.ts.map +0 -1
  321. package/dist/dlp/manifest.js +0 -14
  322. package/dist/dlp/manifest.js.map +0 -1
  323. package/dist/dlp/payload.d.ts +0 -6
  324. package/dist/dlp/payload.d.ts.map +0 -1
  325. package/dist/dlp/payload.js +0 -62
  326. package/dist/dlp/payload.js.map +0 -1
  327. package/dist/dlp/rng.d.ts +0 -9
  328. package/dist/dlp/rng.d.ts.map +0 -1
  329. package/dist/dlp/rng.js +0 -28
  330. package/dist/dlp/rng.js.map +0 -1
  331. package/dist/dlp/types.d.ts +0 -26
  332. package/dist/dlp/types.d.ts.map +0 -1
  333. package/dist/dlp/types.js +0 -2
  334. package/dist/dlp/types.js.map +0 -1
  335. package/dist/index.d.ts.map +0 -1
  336. package/dist/index.js.map +0 -1
  337. package/dist/llm/prompts/analyze-results.d.ts +0 -3
  338. package/dist/llm/prompts/analyze-results.d.ts.map +0 -1
  339. package/dist/llm/prompts/analyze-results.js +0 -52
  340. package/dist/llm/prompts/analyze-results.js.map +0 -1
  341. package/dist/llm/prompts/generate-companion.d.ts +0 -3
  342. package/dist/llm/prompts/generate-companion.d.ts.map +0 -1
  343. package/dist/llm/prompts/generate-companion.js +0 -42
  344. package/dist/llm/prompts/generate-companion.js.map +0 -1
  345. package/dist/llm/prompts/generate-tests.d.ts +0 -3
  346. package/dist/llm/prompts/generate-tests.d.ts.map +0 -1
  347. package/dist/llm/prompts/generate-tests.js +0 -46
  348. package/dist/llm/prompts/generate-tests.js.map +0 -1
  349. package/dist/llm/prompts/generate-topic.d.ts +0 -4
  350. package/dist/llm/prompts/generate-topic.d.ts.map +0 -1
  351. package/dist/llm/prompts/generate-topic.js +0 -41
  352. package/dist/llm/prompts/generate-topic.js.map +0 -1
  353. package/dist/llm/prompts/improve-topic.d.ts +0 -3
  354. package/dist/llm/prompts/improve-topic.d.ts.map +0 -1
  355. package/dist/llm/prompts/improve-topic.js +0 -77
  356. package/dist/llm/prompts/improve-topic.js.map +0 -1
  357. package/dist/llm/prompts/simplify-topic.d.ts +0 -3
  358. package/dist/llm/prompts/simplify-topic.d.ts.map +0 -1
  359. package/dist/llm/prompts/simplify-topic.js +0 -50
  360. package/dist/llm/prompts/simplify-topic.js.map +0 -1
  361. package/dist/llm/provider.d.ts +0 -21
  362. package/dist/llm/provider.d.ts.map +0 -1
  363. package/dist/llm/provider.js +0 -76
  364. package/dist/llm/provider.js.map +0 -1
  365. package/dist/llm/schemas.d.ts +0 -97
  366. package/dist/llm/schemas.d.ts.map +0 -1
  367. package/dist/llm/schemas.js +0 -24
  368. package/dist/llm/schemas.js.map +0 -1
  369. package/dist/llm/service.d.ts +0 -34
  370. package/dist/llm/service.d.ts.map +0 -1
  371. package/dist/llm/service.js +0 -268
  372. package/dist/llm/service.js.map +0 -1
  373. package/dist/llm/types.d.ts +0 -18
  374. package/dist/llm/types.d.ts.map +0 -1
  375. package/dist/llm/types.js +0 -2
  376. package/dist/llm/types.js.map +0 -1
  377. package/dist/report/html.d.ts +0 -6
  378. package/dist/report/html.d.ts.map +0 -1
  379. package/dist/report/html.js +0 -200
  380. package/dist/report/html.js.map +0 -1
  381. package/dist/report/json.d.ts +0 -11
  382. package/dist/report/json.d.ts.map +0 -1
  383. package/dist/report/json.js +0 -74
  384. package/dist/report/json.js.map +0 -1
  385. package/dist/report/types.d.ts +0 -58
  386. package/dist/report/types.d.ts.map +0 -1
  387. package/dist/report/types.js +0 -5
  388. package/dist/report/types.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../../src/backup/io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,MAAM,SAAS,GAAG,IAAI;SACnB,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC3B,OAAO,SAAS,IAAI,SAAS,CAAC;AAChC,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,gBAAgB,CAAC,OAA2B,EAAE,aAAqB;IACjF,IAAI,OAAO;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AACtD,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,eAAe,CAC7B,GAAW,EACX,QAAgB,EAChB,QAA2B,EAC3B,MAAoB;IAEpB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,IAAI,GAAG,EAAE,CAAC,CAAC;IACtD,MAAM,OAAO,GACX,MAAM,KAAK,MAAM;QACf,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QACtD,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;IAC/C,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,cAAc,CAAI,QAAgB;IAChD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACjD,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,mCAAmC,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE,CAAC;QAC3F,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,4BAA4B,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,MAA2B,CAAC;AACrC,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,aAAa,CAAI,OAAe,EAAE,YAA0B;IAC1E,MAAM,KAAK,GAAG,EAAE;SACb,WAAW,CAAC,OAAO,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACzC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,SAAS,GAAwB,EAAE,CAAC;IAC1C,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,cAAc,CAAI,QAAQ,CAAC,CAAC;YAC7C,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;gBAC3C,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oCAAoC;QACtC,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,25 +0,0 @@
1
- /** Supported backup serialization formats. */
2
- export type BackupFormat = 'json' | 'yaml';
3
- /** Discriminator for multi-resource backup directories. */
4
- export type ResourceType = 'redteam-target';
5
- /** Envelope wrapping any backed-up resource. */
6
- export interface BackupEnvelope<T> {
7
- version: string;
8
- resourceType: ResourceType;
9
- exportedAt: string;
10
- data: T;
11
- }
12
- /** Per-target result reported after a backup run. */
13
- export interface BackupResult {
14
- name: string;
15
- filename: string;
16
- status: 'ok' | 'failed';
17
- error?: string;
18
- }
19
- /** Per-target result reported after a restore run. */
20
- export interface RestoreResult {
21
- name: string;
22
- action: 'created' | 'updated' | 'skipped' | 'failed';
23
- error?: string;
24
- }
25
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/backup/types.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,2DAA2D;AAC3D,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,gDAAgD;AAChD,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,CAAC;CACT;AAED,qDAAqD;AACrD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,IAAI,GAAG,QAAQ,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,sDAAsD;AACtD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/backup/types.ts"],"names":[],"mappings":""}
@@ -1,45 +0,0 @@
1
- import type { CreateSecurityProfileRequest, Policy } from '@cdot65/prisma-airs-sdk';
2
- /**
3
- * Parsed CLI flag values for profile create/update commands.
4
- */
5
- export interface ProfileFlags {
6
- name: string;
7
- active?: boolean;
8
- promptInjection?: string;
9
- toxicContent?: string;
10
- contextualGrounding?: string;
11
- maliciousCode?: string;
12
- urlAction?: string;
13
- allowUrlCategories?: string;
14
- blockUrlCategories?: string;
15
- alertUrlCategories?: string;
16
- agentSecurity?: string;
17
- dlpAction?: string;
18
- dlpProfiles?: string;
19
- maskDataInline?: boolean;
20
- dbSecurityCreate?: string;
21
- dbSecurityRead?: string;
22
- dbSecurityUpdate?: string;
23
- dbSecurityDelete?: string;
24
- inlineTimeoutAction?: string;
25
- maxInlineLatency?: number;
26
- maskDataInStorage?: boolean;
27
- }
28
- /** Build a full CreateSecurityProfileRequest from CLI flags (used by `create`). */
29
- export declare function buildProfileRequest(flags: ProfileFlags): CreateSecurityProfileRequest;
30
- /** Build a partial Policy from flags (used by `update` — merged into existing). */
31
- export declare function buildProfileOverrides(flags: Partial<ProfileFlags>): Policy | undefined;
32
- /**
33
- * Deep-merge overrides INTO the existing policy.
34
- *
35
- * Merge rules:
36
- * - model-protection: keyed merge by `name`, preserves unmentioned items
37
- * - topic-guardrails: NEVER modified by flags — always preserved from existing
38
- * - app-protection: field-level overlay, preserves unmentioned fields
39
- * - agent-protection: keyed merge by `name`
40
- * - data-protection: field-level overlay; database-security merged by `name`
41
- * - latency: field-level overlay
42
- * - dlp-data-profiles: preserved unless overridden
43
- */
44
- export declare function mergeProfilePolicy(existing: Record<string, unknown> | undefined, overrides: Policy | undefined): Policy;
45
- //# sourceMappingURL=profile-builder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"profile-builder.d.ts","sourceRoot":"","sources":["../../../src/cli/builders/profile-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,YAAY;IAE3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IAGjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAG5B,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAyKD,mFAAmF;AACnF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,4BAA4B,CAsCrF;AAED,mFAAmF;AACnF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,MAAM,GAAG,SAAS,CAYtF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC7C,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,MAAM,CAqGR"}
@@ -1,308 +0,0 @@
1
- /** Parse comma-separated string into trimmed array. */
2
- function parseList(value) {
3
- if (!value)
4
- return undefined;
5
- return value
6
- .split(',')
7
- .map((s) => s.trim())
8
- .filter(Boolean);
9
- }
10
- /** Build model-protection items from flags. Returns undefined if none set. */
11
- function buildModelProtection(flags) {
12
- const items = [];
13
- if (flags.promptInjection) {
14
- items.push({ name: 'prompt-injection', action: flags.promptInjection });
15
- }
16
- if (flags.toxicContent) {
17
- // AIRS UI expects "high:<action>, moderate:<action>" format — expand bare values
18
- const tc = flags.toxicContent;
19
- const toxicAction = tc.includes(':') ? tc : `high:${tc}, moderate:${tc}`;
20
- items.push({ name: 'toxic-content', action: toxicAction });
21
- }
22
- if (flags.contextualGrounding) {
23
- items.push({ name: 'contextual-grounding', action: flags.contextualGrounding });
24
- }
25
- return items.length > 0 ? items : undefined;
26
- }
27
- /** Build app-protection object from flags. Returns undefined if none set. */
28
- function buildAppProtection(flags) {
29
- const ap = {};
30
- let hasAny = false;
31
- if (flags.maliciousCode) {
32
- ap['malicious-code-protection'] = {
33
- name: 'malicious-code-detection',
34
- action: flags.maliciousCode,
35
- };
36
- hasAny = true;
37
- }
38
- if (flags.urlAction) {
39
- ap['url-detected-action'] = flags.urlAction;
40
- hasAny = true;
41
- }
42
- const allowCats = parseList(flags.allowUrlCategories);
43
- if (allowCats) {
44
- ap['allow-url-category'] = { member: allowCats };
45
- hasAny = true;
46
- }
47
- const blockCats = parseList(flags.blockUrlCategories);
48
- if (blockCats) {
49
- ap['block-url-category'] = { member: blockCats };
50
- hasAny = true;
51
- }
52
- const alertCats = parseList(flags.alertUrlCategories);
53
- if (alertCats) {
54
- ap['alert-url-category'] = { member: alertCats };
55
- hasAny = true;
56
- }
57
- return hasAny ? ap : undefined;
58
- }
59
- /** Build agent-protection array from flags. Returns undefined if none set. */
60
- function buildAgentProtection(flags) {
61
- if (!flags.agentSecurity)
62
- return undefined;
63
- return [{ name: 'agent-security', action: flags.agentSecurity }];
64
- }
65
- /** Build data-protection object from flags. Returns undefined if none set. */
66
- function buildDataProtection(flags) {
67
- const dp = {};
68
- let hasAny = false;
69
- if (flags.dlpAction) {
70
- const dld = { action: flags.dlpAction };
71
- const profiles = parseList(flags.dlpProfiles);
72
- if (profiles) {
73
- dld.member = profiles.map((text) => ({ text }));
74
- }
75
- if (flags.maskDataInline != null) {
76
- dld['mask-data-inline'] = flags.maskDataInline;
77
- }
78
- dp['data-leak-detection'] = dld;
79
- hasAny = true;
80
- }
81
- const dbItems = [];
82
- if (flags.dbSecurityCreate) {
83
- dbItems.push({ name: 'database-security-create', action: flags.dbSecurityCreate });
84
- }
85
- if (flags.dbSecurityRead) {
86
- dbItems.push({ name: 'database-security-read', action: flags.dbSecurityRead });
87
- }
88
- if (flags.dbSecurityUpdate) {
89
- dbItems.push({ name: 'database-security-update', action: flags.dbSecurityUpdate });
90
- }
91
- if (flags.dbSecurityDelete) {
92
- dbItems.push({ name: 'database-security-delete', action: flags.dbSecurityDelete });
93
- }
94
- if (dbItems.length > 0) {
95
- dp['database-security'] = dbItems;
96
- hasAny = true;
97
- }
98
- return hasAny ? dp : undefined;
99
- }
100
- /** Build latency object from flags. Returns undefined if none set. */
101
- function buildLatency(flags) {
102
- if (!flags.inlineTimeoutAction && flags.maxInlineLatency == null)
103
- return undefined;
104
- const lat = {};
105
- if (flags.inlineTimeoutAction)
106
- lat['inline-timeout-action'] = flags.inlineTimeoutAction;
107
- if (flags.maxInlineLatency != null)
108
- lat['max-inline-latency'] = flags.maxInlineLatency;
109
- return lat;
110
- }
111
- /** Check if any protection/config flag is set. */
112
- function hasAnyProtectionFlag(flags) {
113
- return !!(flags.promptInjection ||
114
- flags.toxicContent ||
115
- flags.contextualGrounding ||
116
- flags.maliciousCode ||
117
- flags.urlAction ||
118
- flags.allowUrlCategories ||
119
- flags.blockUrlCategories ||
120
- flags.alertUrlCategories ||
121
- flags.agentSecurity ||
122
- flags.dlpAction ||
123
- flags.dbSecurityCreate ||
124
- flags.dbSecurityRead ||
125
- flags.dbSecurityUpdate ||
126
- flags.dbSecurityDelete ||
127
- flags.inlineTimeoutAction ||
128
- flags.maxInlineLatency != null ||
129
- flags.maskDataInStorage != null);
130
- }
131
- /** Assemble model-configuration from flags, only including non-empty sections. */
132
- function buildModelConfiguration(flags) {
133
- const config = {};
134
- const mp = buildModelProtection(flags);
135
- if (mp)
136
- config['model-protection'] = mp;
137
- const ap = buildAppProtection(flags);
138
- if (ap)
139
- config['app-protection'] = ap;
140
- const agp = buildAgentProtection(flags);
141
- if (agp)
142
- config['agent-protection'] = agp;
143
- const dp = buildDataProtection(flags);
144
- if (dp)
145
- config['data-protection'] = dp;
146
- const lat = buildLatency(flags);
147
- if (lat)
148
- config.latency = lat;
149
- if (flags.maskDataInStorage != null) {
150
- config['mask-data-in-storage'] = flags.maskDataInStorage;
151
- }
152
- return config;
153
- }
154
- /** Build a full CreateSecurityProfileRequest from CLI flags (used by `create`). */
155
- export function buildProfileRequest(flags) {
156
- const request = {
157
- profile_name: flags.name,
158
- active: flags.active ?? true,
159
- };
160
- if (hasAnyProtectionFlag(flags)) {
161
- const modelConfig = buildModelConfiguration(flags);
162
- // AIRS UI requires these sections to exist — crashes with "is not iterable" otherwise
163
- if (!modelConfig['app-protection']) {
164
- modelConfig['app-protection'] = {
165
- 'default-url-category': { member: ['malicious'] },
166
- 'url-detected-action': 'block',
167
- };
168
- }
169
- if (!modelConfig['data-protection']) {
170
- modelConfig['data-protection'] = {
171
- 'data-leak-detection': { action: '', 'mask-data-inline': false, member: null },
172
- 'database-security': null,
173
- };
174
- }
175
- if (!modelConfig.latency) {
176
- modelConfig.latency = { 'inline-timeout-action': 'block', 'max-inline-latency': 5 };
177
- }
178
- if (modelConfig['mask-data-in-storage'] == null) {
179
- modelConfig['mask-data-in-storage'] = false;
180
- }
181
- request.policy = {
182
- 'ai-security-profiles': [
183
- {
184
- 'model-type': 'default',
185
- 'model-configuration': modelConfig,
186
- },
187
- ],
188
- };
189
- }
190
- return request;
191
- }
192
- /** Build a partial Policy from flags (used by `update` — merged into existing). */
193
- export function buildProfileOverrides(flags) {
194
- if (!hasAnyProtectionFlag(flags))
195
- return undefined;
196
- const modelConfig = buildModelConfiguration(flags);
197
- return {
198
- 'ai-security-profiles': [
199
- {
200
- 'model-type': 'default',
201
- 'model-configuration': modelConfig,
202
- },
203
- ],
204
- };
205
- }
206
- /**
207
- * Deep-merge overrides INTO the existing policy.
208
- *
209
- * Merge rules:
210
- * - model-protection: keyed merge by `name`, preserves unmentioned items
211
- * - topic-guardrails: NEVER modified by flags — always preserved from existing
212
- * - app-protection: field-level overlay, preserves unmentioned fields
213
- * - agent-protection: keyed merge by `name`
214
- * - data-protection: field-level overlay; database-security merged by `name`
215
- * - latency: field-level overlay
216
- * - dlp-data-profiles: preserved unless overridden
217
- */
218
- export function mergeProfilePolicy(existing, overrides) {
219
- const base = structuredClone(existing ?? {});
220
- if (!overrides)
221
- return base;
222
- const overrideProfiles = overrides['ai-security-profiles'];
223
- if (!overrideProfiles?.length)
224
- return base;
225
- // Ensure base has ai-security-profiles structure
226
- if (!base['ai-security-profiles']) {
227
- base['ai-security-profiles'] = [{ 'model-type': 'default', 'model-configuration': {} }];
228
- }
229
- const baseProfiles = base['ai-security-profiles'];
230
- const baseConfig = (baseProfiles[0]['model-configuration'] ?? {});
231
- const overConfig = (overrideProfiles[0]['model-configuration'] ?? {});
232
- // Merge model-protection (keyed by name, topic-guardrails preserved)
233
- if (overConfig['model-protection']) {
234
- const baseMp = (baseConfig['model-protection'] ?? []);
235
- const overMp = overConfig['model-protection'];
236
- for (const overItem of overMp) {
237
- const existing = baseMp.find((b) => b.name === overItem.name);
238
- if (existing) {
239
- Object.assign(existing, overItem);
240
- }
241
- else {
242
- baseMp.push(overItem);
243
- }
244
- }
245
- baseConfig['model-protection'] = baseMp;
246
- }
247
- // Merge app-protection (field-level overlay)
248
- if (overConfig['app-protection']) {
249
- const baseAp = (baseConfig['app-protection'] ?? {});
250
- const overAp = overConfig['app-protection'];
251
- Object.assign(baseAp, overAp);
252
- baseConfig['app-protection'] = baseAp;
253
- }
254
- // Merge agent-protection (keyed by name)
255
- if (overConfig['agent-protection']) {
256
- const baseAgp = (baseConfig['agent-protection'] ?? []);
257
- const overAgp = overConfig['agent-protection'];
258
- for (const overItem of overAgp) {
259
- const existing = baseAgp.find((b) => b.name === overItem.name);
260
- if (existing) {
261
- Object.assign(existing, overItem);
262
- }
263
- else {
264
- baseAgp.push(overItem);
265
- }
266
- }
267
- baseConfig['agent-protection'] = baseAgp;
268
- }
269
- // Merge data-protection (field-level overlay, database-security by name)
270
- if (overConfig['data-protection']) {
271
- const baseDp = (baseConfig['data-protection'] ?? {});
272
- const overDp = overConfig['data-protection'];
273
- // data-leak-detection: overlay
274
- if (overDp['data-leak-detection']) {
275
- baseDp['data-leak-detection'] = overDp['data-leak-detection'];
276
- }
277
- // database-security: merge by name
278
- if (overDp['database-security']) {
279
- const baseDb = (baseDp['database-security'] ?? []);
280
- const overDb = overDp['database-security'];
281
- for (const overItem of overDb) {
282
- const existing = baseDb.find((b) => b.name === overItem.name);
283
- if (existing) {
284
- Object.assign(existing, overItem);
285
- }
286
- else {
287
- baseDb.push(overItem);
288
- }
289
- }
290
- baseDp['database-security'] = baseDb;
291
- }
292
- baseConfig['data-protection'] = baseDp;
293
- }
294
- // Merge latency (field-level overlay)
295
- if (overConfig.latency) {
296
- const baseLat = (baseConfig.latency ?? {});
297
- const overLat = overConfig.latency;
298
- Object.assign(baseLat, overLat);
299
- baseConfig.latency = baseLat;
300
- }
301
- // Merge mask-data-in-storage
302
- if (overConfig['mask-data-in-storage'] != null) {
303
- baseConfig['mask-data-in-storage'] = overConfig['mask-data-in-storage'];
304
- }
305
- baseProfiles[0]['model-configuration'] = baseConfig;
306
- return base;
307
- }
308
- //# sourceMappingURL=profile-builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"profile-builder.js","sourceRoot":"","sources":["../../../src/cli/builders/profile-builder.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- export interface BulkScanState {
2
- scanIds: string[];
3
- profile: string;
4
- promptCount: number;
5
- sessionId?: string;
6
- timestamp?: string;
7
- }
8
- /**
9
- * Persist bulk scan IDs to a JSON file so polling can be resumed
10
- * if the process crashes or hits a rate limit.
11
- */
12
- export declare function saveBulkScanState(state: BulkScanState, dir: string): Promise<string>;
13
- /** Load a previously saved bulk scan state file. */
14
- export declare function loadBulkScanState(filePath: string): Promise<BulkScanState>;
15
- //# sourceMappingURL=bulk-scan-state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bulk-scan-state.d.ts","sourceRoot":"","sources":["../../src/cli/bulk-scan-state.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO1F;AAED,oDAAoD;AACpD,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAGhF"}
@@ -1,20 +0,0 @@
1
- import * as fs from 'node:fs/promises';
2
- import * as path from 'node:path';
3
- /**
4
- * Persist bulk scan IDs to a JSON file so polling can be resumed
5
- * if the process crashes or hits a rate limit.
6
- */
7
- export async function saveBulkScanState(state, dir) {
8
- await fs.mkdir(dir, { recursive: true });
9
- const ts = new Date().toISOString().replace(/[:.]/g, '-');
10
- const filePath = path.join(dir, `${ts}.bulk-scan.json`);
11
- const payload = { ...state, timestamp: new Date().toISOString() };
12
- await fs.writeFile(filePath, JSON.stringify(payload, null, 2), 'utf-8');
13
- return filePath;
14
- }
15
- /** Load a previously saved bulk scan state file. */
16
- export async function loadBulkScanState(filePath) {
17
- const raw = await fs.readFile(filePath, 'utf-8');
18
- return JSON.parse(raw);
19
- }
20
- //# sourceMappingURL=bulk-scan-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bulk-scan-state.js","sourceRoot":"","sources":["../../src/cli/bulk-scan-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAUlC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,KAAoB,EAAE,GAAW;IACvE,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;IAClE,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACxE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,oDAAoD;AACpD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,QAAgB;IACtD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAC;AAC1C,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { Command } from 'commander';
2
- /** Register the `audit` command — evaluate all topics in a profile. */
3
- export declare function registerAuditCommand(parent: Command): void;
4
- //# sourceMappingURL=audit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/audit.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBzC,uEAAuE;AACvE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CA6G1D"}
@@ -1,113 +0,0 @@
1
- import { writeFile } from 'node:fs/promises';
2
- import chalk from 'chalk';
3
- import { SdkManagementService } from '../../airs/management.js';
4
- import { AirsScanService } from '../../airs/scanner.js';
5
- import { buildAuditReportHtml, buildAuditReportJson } from '../../audit/report.js';
6
- import { runAudit } from '../../audit/runner.js';
7
- import { loadConfig } from '../../config/loader.js';
8
- import { createLlmProvider } from '../../llm/provider.js';
9
- import { LangChainLlmService } from '../../llm/service.js';
10
- import { renderAuditComplete, renderAuditTopics, renderConflicts, renderError, renderMetrics, } from '../renderer/index.js';
11
- /** Register the `audit` command — evaluate all topics in a profile. */
12
- export function registerAuditCommand(parent) {
13
- parent
14
- .command('audit <profileName>')
15
- .description('Evaluate all topics in a security profile')
16
- .option('--max-tests-per-topic <n>', 'Max tests per topic', '20')
17
- .option('--format <format>', 'Output format: terminal, json, html', 'terminal')
18
- .option('--output <path>', 'Output file path (json/html)')
19
- .option('--provider <provider>', 'LLM provider override')
20
- .option('--model <model>', 'LLM model override')
21
- .action(async (profileName, opts) => {
22
- try {
23
- const config = await loadConfig({
24
- llmProvider: opts.provider,
25
- llmModel: opts.model,
26
- });
27
- const model = await createLlmProvider({
28
- provider: config.llmProvider,
29
- model: config.llmModel,
30
- anthropicApiKey: config.anthropicApiKey,
31
- googleApiKey: config.googleApiKey,
32
- googleCloudProject: config.googleCloudProject,
33
- googleCloudLocation: config.googleCloudLocation,
34
- awsRegion: config.awsRegion,
35
- awsAccessKeyId: config.awsAccessKeyId,
36
- awsSecretAccessKey: config.awsSecretAccessKey,
37
- });
38
- const llm = new LangChainLlmService(model);
39
- const management = new SdkManagementService({
40
- clientId: config.mgmtClientId,
41
- clientSecret: config.mgmtClientSecret,
42
- tsgId: config.mgmtTsgId,
43
- tokenEndpoint: config.mgmtTokenEndpoint,
44
- });
45
- if (!config.airsApiKey) {
46
- renderError('PANW_AI_SEC_API_KEY is required');
47
- process.exit(1);
48
- }
49
- const scanner = new AirsScanService(config.airsApiKey);
50
- const format = opts.format;
51
- console.log(chalk.bold.cyan('\n Prisma AIRS Profile Audit'));
52
- console.log(chalk.dim(` Evaluating all topics in "${profileName}"\n`));
53
- for await (const event of runAudit({
54
- profileName,
55
- maxTestsPerTopic: Number.parseInt(opts.maxTestsPerTopic, 10),
56
- scanConcurrency: config.scanConcurrency,
57
- }, { llm, management, scanner })) {
58
- switch (event.type) {
59
- case 'topics:loaded':
60
- console.log(chalk.dim(` Found ${event.topics.length} topic(s) in profile\n`));
61
- renderAuditTopics(event.topics);
62
- break;
63
- case 'tests:generated':
64
- console.log(chalk.dim(` Generated ${event.count} tests for "${event.topicName}"`));
65
- break;
66
- case 'scan:progress':
67
- console.log(chalk.dim(`\n Scanned ${event.completed}/${event.total} prompts`));
68
- break;
69
- case 'evaluate:complete':
70
- break;
71
- case 'audit:complete': {
72
- const { result } = event;
73
- if (format === 'json') {
74
- const report = buildAuditReportJson(result);
75
- const output = JSON.stringify(report, null, 2);
76
- if (opts.output) {
77
- await writeFile(opts.output, output, 'utf-8');
78
- console.log(chalk.green(`\n Report written to ${opts.output}`));
79
- }
80
- else {
81
- console.log(output);
82
- }
83
- return;
84
- }
85
- if (format === 'html') {
86
- const html = buildAuditReportHtml(result);
87
- const outputPath = opts.output ?? `audit-${profileName.replace(/\s+/g, '-')}.html`;
88
- await writeFile(outputPath, html, 'utf-8');
89
- console.log(chalk.green(`\n Report written to ${outputPath}`));
90
- return;
91
- }
92
- // Terminal format
93
- renderAuditComplete(result);
94
- console.log(chalk.bold('\n Composite Metrics:'));
95
- renderMetrics(result.compositeMetrics);
96
- if (result.conflicts.length > 0) {
97
- renderConflicts(result.conflicts);
98
- }
99
- else {
100
- console.log(chalk.green('\n No cross-topic conflicts detected.\n'));
101
- }
102
- break;
103
- }
104
- }
105
- }
106
- }
107
- catch (err) {
108
- renderError(err instanceof Error ? err.message : String(err));
109
- process.exit(1);
110
- }
111
- });
112
- }
113
- //# sourceMappingURL=audit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../../src/cli/commands/audit.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { SdkRedTeamService } from '../../airs/redteam.js';
2
- import type { BackupFormat, BackupResult } from '../../backup/types.js';
3
- export declare function createRedTeamService(): Promise<SdkRedTeamService>;
4
- /** Core backup logic — exported for testability. */
5
- export declare function backupTargets(opts: {
6
- outputDir: string;
7
- format: BackupFormat;
8
- name?: string;
9
- }): Promise<BackupResult[]>;
10
- //# sourceMappingURL=backup.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/backup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D,OAAO,KAAK,EAAkB,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGxF,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAQvE;AAqCD,oDAAoD;AACpD,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CA0C1B"}