micro-contracts 0.16.3 → 0.17.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 (183) hide show
  1. package/cli-contract.yaml +0 -32
  2. package/dist/micro-contracts.bundle.mjs +4682 -0
  3. package/dist/micro-contracts.bundle.mjs.map +7 -0
  4. package/docs/cli-reference.md +0 -28
  5. package/package.json +20 -23
  6. package/dist/agents/context-builder.d.ts +0 -5
  7. package/dist/agents/context-builder.d.ts.map +0 -1
  8. package/dist/agents/context-builder.js +0 -239
  9. package/dist/agents/context-builder.js.map +0 -1
  10. package/dist/agents/formatter.d.ts +0 -9
  11. package/dist/agents/formatter.d.ts.map +0 -1
  12. package/dist/agents/formatter.js +0 -124
  13. package/dist/agents/formatter.js.map +0 -1
  14. package/dist/agents/index.d.ts +0 -5
  15. package/dist/agents/index.d.ts.map +0 -1
  16. package/dist/agents/index.js +0 -3
  17. package/dist/agents/index.js.map +0 -1
  18. package/dist/agents/orchestrator.d.ts +0 -5
  19. package/dist/agents/orchestrator.d.ts.map +0 -1
  20. package/dist/agents/orchestrator.js +0 -105
  21. package/dist/agents/orchestrator.js.map +0 -1
  22. package/dist/agents/types.d.ts +0 -21
  23. package/dist/agents/types.d.ts.map +0 -1
  24. package/dist/agents/types.js +0 -2
  25. package/dist/agents/types.js.map +0 -1
  26. package/dist/cli/templates.d.ts +0 -22
  27. package/dist/cli/templates.d.ts.map +0 -1
  28. package/dist/cli/templates.js +0 -445
  29. package/dist/cli/templates.js.map +0 -1
  30. package/dist/cli.d.ts +0 -3
  31. package/dist/cli.d.ts.map +0 -1
  32. package/dist/cli.js +0 -1142
  33. package/dist/cli.js.map +0 -1
  34. package/dist/commands/audit-guardrails.d.ts +0 -13
  35. package/dist/commands/audit-guardrails.d.ts.map +0 -1
  36. package/dist/commands/audit-guardrails.js +0 -32
  37. package/dist/commands/audit-guardrails.js.map +0 -1
  38. package/dist/commands/audit-openapi.d.ts +0 -13
  39. package/dist/commands/audit-openapi.d.ts.map +0 -1
  40. package/dist/commands/audit-openapi.js +0 -32
  41. package/dist/commands/audit-openapi.js.map +0 -1
  42. package/dist/commands/propose-overlays.d.ts +0 -13
  43. package/dist/commands/propose-overlays.d.ts.map +0 -1
  44. package/dist/commands/propose-overlays.js +0 -32
  45. package/dist/commands/propose-overlays.js.map +0 -1
  46. package/dist/commands/review-published.d.ts +0 -13
  47. package/dist/commands/review-published.d.ts.map +0 -1
  48. package/dist/commands/review-published.js +0 -32
  49. package/dist/commands/review-published.js.map +0 -1
  50. package/dist/generated/commands.d.ts +0 -2
  51. package/dist/generated/commands.d.ts.map +0 -1
  52. package/dist/generated/commands.js +0 -2
  53. package/dist/generated/commands.js.map +0 -1
  54. package/dist/generated/dsl/agents.d.ts +0 -34
  55. package/dist/generated/dsl/agents.d.ts.map +0 -1
  56. package/dist/generated/dsl/agents.js +0 -98
  57. package/dist/generated/dsl/agents.js.map +0 -1
  58. package/dist/generated/dsl/handoffs.d.ts +0 -457
  59. package/dist/generated/dsl/handoffs.d.ts.map +0 -1
  60. package/dist/generated/dsl/handoffs.js +0 -205
  61. package/dist/generated/dsl/handoffs.js.map +0 -1
  62. package/dist/generated/dsl/index.d.ts +0 -13
  63. package/dist/generated/dsl/index.d.ts.map +0 -1
  64. package/dist/generated/dsl/index.js +0 -10
  65. package/dist/generated/dsl/index.js.map +0 -1
  66. package/dist/generated/dsl/tasks.d.ts +0 -26
  67. package/dist/generated/dsl/tasks.d.ts.map +0 -1
  68. package/dist/generated/dsl/tasks.js +0 -133
  69. package/dist/generated/dsl/tasks.js.map +0 -1
  70. package/dist/generated/dsl/workflows.d.ts +0 -34
  71. package/dist/generated/dsl/workflows.d.ts.map +0 -1
  72. package/dist/generated/dsl/workflows.js +0 -84
  73. package/dist/generated/dsl/workflows.js.map +0 -1
  74. package/dist/generated/index.d.ts +0 -7
  75. package/dist/generated/index.d.ts.map +0 -1
  76. package/dist/generated/index.js +0 -7
  77. package/dist/generated/index.js.map +0 -1
  78. package/dist/generated/policy-runtime.d.ts +0 -114
  79. package/dist/generated/policy-runtime.d.ts.map +0 -1
  80. package/dist/generated/policy-runtime.js +0 -195
  81. package/dist/generated/policy-runtime.js.map +0 -1
  82. package/dist/generated/policy.d.ts +0 -619
  83. package/dist/generated/policy.d.ts.map +0 -1
  84. package/dist/generated/policy.js +0 -802
  85. package/dist/generated/policy.js.map +0 -1
  86. package/dist/generated/program.d.ts +0 -112
  87. package/dist/generated/program.d.ts.map +0 -1
  88. package/dist/generated/program.js +0 -266
  89. package/dist/generated/program.js.map +0 -1
  90. package/dist/generated/schemas.d.ts +0 -778
  91. package/dist/generated/schemas.d.ts.map +0 -1
  92. package/dist/generated/schemas.js +0 -1005
  93. package/dist/generated/schemas.js.map +0 -1
  94. package/dist/generated/types.d.ts +0 -395
  95. package/dist/generated/types.d.ts.map +0 -1
  96. package/dist/generated/types.js +0 -3
  97. package/dist/generated/types.js.map +0 -1
  98. package/dist/generator/dependencyGenerator.d.ts +0 -43
  99. package/dist/generator/dependencyGenerator.d.ts.map +0 -1
  100. package/dist/generator/dependencyGenerator.js +0 -159
  101. package/dist/generator/dependencyGenerator.js.map +0 -1
  102. package/dist/generator/index.d.ts +0 -39
  103. package/dist/generator/index.d.ts.map +0 -1
  104. package/dist/generator/index.js +0 -720
  105. package/dist/generator/index.js.map +0 -1
  106. package/dist/generator/inputHash.d.ts +0 -23
  107. package/dist/generator/inputHash.d.ts.map +0 -1
  108. package/dist/generator/inputHash.js +0 -145
  109. package/dist/generator/inputHash.js.map +0 -1
  110. package/dist/generator/linter.d.ts +0 -26
  111. package/dist/generator/linter.d.ts.map +0 -1
  112. package/dist/generator/linter.js +0 -352
  113. package/dist/generator/linter.js.map +0 -1
  114. package/dist/generator/overlayProcessor.d.ts +0 -90
  115. package/dist/generator/overlayProcessor.d.ts.map +0 -1
  116. package/dist/generator/overlayProcessor.js +0 -541
  117. package/dist/generator/overlayProcessor.js.map +0 -1
  118. package/dist/generator/schemaGenerator.d.ts +0 -10
  119. package/dist/generator/schemaGenerator.d.ts.map +0 -1
  120. package/dist/generator/schemaGenerator.js +0 -299
  121. package/dist/generator/schemaGenerator.js.map +0 -1
  122. package/dist/generator/serviceGenerator.d.ts +0 -41
  123. package/dist/generator/serviceGenerator.d.ts.map +0 -1
  124. package/dist/generator/serviceGenerator.js +0 -296
  125. package/dist/generator/serviceGenerator.js.map +0 -1
  126. package/dist/generator/templateProcessor.d.ts +0 -245
  127. package/dist/generator/templateProcessor.d.ts.map +0 -1
  128. package/dist/generator/templateProcessor.js +0 -821
  129. package/dist/generator/templateProcessor.js.map +0 -1
  130. package/dist/generator/typeGenerator.d.ts +0 -9
  131. package/dist/generator/typeGenerator.d.ts.map +0 -1
  132. package/dist/generator/typeGenerator.js +0 -424
  133. package/dist/generator/typeGenerator.js.map +0 -1
  134. package/dist/generator/typeGenerator.test.d.ts +0 -2
  135. package/dist/generator/typeGenerator.test.d.ts.map +0 -1
  136. package/dist/generator/typeGenerator.test.js +0 -122
  137. package/dist/generator/typeGenerator.test.js.map +0 -1
  138. package/dist/guardrails/allowlist.d.ts +0 -45
  139. package/dist/guardrails/allowlist.d.ts.map +0 -1
  140. package/dist/guardrails/allowlist.js +0 -261
  141. package/dist/guardrails/allowlist.js.map +0 -1
  142. package/dist/guardrails/config.d.ts +0 -40
  143. package/dist/guardrails/config.d.ts.map +0 -1
  144. package/dist/guardrails/config.js +0 -174
  145. package/dist/guardrails/config.js.map +0 -1
  146. package/dist/guardrails/docs.d.ts +0 -24
  147. package/dist/guardrails/docs.d.ts.map +0 -1
  148. package/dist/guardrails/docs.js +0 -138
  149. package/dist/guardrails/docs.js.map +0 -1
  150. package/dist/guardrails/drift.d.ts +0 -23
  151. package/dist/guardrails/drift.d.ts.map +0 -1
  152. package/dist/guardrails/drift.js +0 -127
  153. package/dist/guardrails/drift.js.map +0 -1
  154. package/dist/guardrails/index.d.ts +0 -19
  155. package/dist/guardrails/index.d.ts.map +0 -1
  156. package/dist/guardrails/index.js +0 -23
  157. package/dist/guardrails/index.js.map +0 -1
  158. package/dist/guardrails/lint.d.ts +0 -20
  159. package/dist/guardrails/lint.d.ts.map +0 -1
  160. package/dist/guardrails/lint.js +0 -274
  161. package/dist/guardrails/lint.js.map +0 -1
  162. package/dist/guardrails/manifest.d.ts +0 -63
  163. package/dist/guardrails/manifest.d.ts.map +0 -1
  164. package/dist/guardrails/manifest.js +0 -299
  165. package/dist/guardrails/manifest.js.map +0 -1
  166. package/dist/guardrails/runner.d.ts +0 -43
  167. package/dist/guardrails/runner.d.ts.map +0 -1
  168. package/dist/guardrails/runner.js +0 -365
  169. package/dist/guardrails/runner.js.map +0 -1
  170. package/dist/guardrails/typecheck.d.ts +0 -15
  171. package/dist/guardrails/typecheck.d.ts.map +0 -1
  172. package/dist/guardrails/typecheck.js +0 -104
  173. package/dist/guardrails/typecheck.js.map +0 -1
  174. package/dist/guardrails/types.d.ts +0 -202
  175. package/dist/guardrails/types.d.ts.map +0 -1
  176. package/dist/guardrails/types.js +0 -8
  177. package/dist/guardrails/types.js.map +0 -1
  178. package/dist/index.d.ts.map +0 -1
  179. package/dist/index.js.map +0 -1
  180. package/dist/types.d.ts +0 -583
  181. package/dist/types.d.ts.map +0 -1
  182. package/dist/types.js +0 -305
  183. package/dist/types.js.map +0 -1
@@ -1,802 +0,0 @@
1
- // Auto-generated by cli-contracts. Do not edit.
2
- import { derivePolicy, isOptionActive } from "./policy-runtime.js";
3
- export const commandDefinitions = {
4
- "generate": {
5
- "options": [
6
- {
7
- "name": "config",
8
- "schema": {
9
- "type": "string"
10
- },
11
- "file": {
12
- "mode": "read",
13
- "exists": false,
14
- "media_type": "application/yaml",
15
- "encoding": "utf-8"
16
- }
17
- },
18
- {
19
- "name": "module",
20
- "schema": {
21
- "type": "string"
22
- }
23
- },
24
- {
25
- "name": "contracts-only",
26
- "schema": {
27
- "type": "boolean",
28
- "default": false
29
- }
30
- },
31
- {
32
- "name": "server-only",
33
- "schema": {
34
- "type": "boolean",
35
- "default": false
36
- }
37
- },
38
- {
39
- "name": "frontend-only",
40
- "schema": {
41
- "type": "boolean",
42
- "default": false
43
- }
44
- },
45
- {
46
- "name": "docs-only",
47
- "schema": {
48
- "type": "boolean",
49
- "default": false
50
- }
51
- },
52
- {
53
- "name": "skip-lint",
54
- "schema": {
55
- "type": "boolean",
56
- "default": false
57
- }
58
- },
59
- {
60
- "name": "manifest",
61
- "schema": {
62
- "type": "boolean",
63
- "default": true
64
- }
65
- },
66
- {
67
- "name": "manifest-dir",
68
- "schema": {
69
- "type": "string",
70
- "default": "packages/"
71
- }
72
- },
73
- {
74
- "name": "force",
75
- "schema": {
76
- "type": "boolean",
77
- "default": false
78
- }
79
- },
80
- {
81
- "name": "cache",
82
- "schema": {
83
- "type": "boolean",
84
- "default": true
85
- }
86
- }
87
- ]
88
- },
89
- "lint": {
90
- "options": [
91
- {
92
- "name": "strict",
93
- "schema": {
94
- "type": "boolean",
95
- "default": false
96
- }
97
- }
98
- ]
99
- },
100
- "init": {
101
- "options": [
102
- {
103
- "name": "dir",
104
- "schema": {
105
- "type": "string",
106
- "default": "src"
107
- }
108
- },
109
- {
110
- "name": "openapi",
111
- "schema": {
112
- "type": "string"
113
- },
114
- "file": {
115
- "mode": "read",
116
- "exists": true,
117
- "media_type": "application/yaml",
118
- "encoding": "utf-8"
119
- }
120
- },
121
- {
122
- "name": "output",
123
- "schema": {
124
- "type": "string"
125
- }
126
- },
127
- {
128
- "name": "skip-templates",
129
- "schema": {
130
- "type": "boolean",
131
- "default": false
132
- }
133
- },
134
- {
135
- "name": "screens",
136
- "schema": {
137
- "type": "boolean",
138
- "default": false
139
- }
140
- }
141
- ]
142
- },
143
- "check": {
144
- "options": [
145
- {
146
- "name": "only",
147
- "schema": {
148
- "type": "string"
149
- }
150
- },
151
- {
152
- "name": "skip",
153
- "schema": {
154
- "type": "string"
155
- }
156
- },
157
- {
158
- "name": "gate",
159
- "schema": {
160
- "type": "string"
161
- }
162
- },
163
- {
164
- "name": "verbose",
165
- "schema": {
166
- "type": "boolean",
167
- "default": false
168
- }
169
- },
170
- {
171
- "name": "fix",
172
- "schema": {
173
- "type": "boolean",
174
- "default": false
175
- }
176
- },
177
- {
178
- "name": "guardrails",
179
- "schema": {
180
- "type": "string"
181
- },
182
- "file": {
183
- "mode": "read",
184
- "exists": false,
185
- "media_type": "application/yaml",
186
- "encoding": "utf-8"
187
- }
188
- },
189
- {
190
- "name": "generated-dir",
191
- "schema": {
192
- "type": "string",
193
- "default": "packages/"
194
- }
195
- },
196
- {
197
- "name": "changed-files",
198
- "schema": {
199
- "type": "string"
200
- },
201
- "file": {
202
- "mode": "read",
203
- "exists": true,
204
- "media_type": "text/plain",
205
- "encoding": "utf-8"
206
- }
207
- },
208
- {
209
- "name": "list",
210
- "schema": {
211
- "type": "boolean",
212
- "default": false
213
- }
214
- },
215
- {
216
- "name": "list-gates",
217
- "schema": {
218
- "type": "boolean",
219
- "default": false
220
- }
221
- }
222
- ]
223
- },
224
- "pipeline": {
225
- "options": [
226
- {
227
- "name": "config",
228
- "schema": {
229
- "type": "string"
230
- },
231
- "file": {
232
- "mode": "read",
233
- "exists": false,
234
- "media_type": "application/yaml",
235
- "encoding": "utf-8"
236
- }
237
- },
238
- {
239
- "name": "verbose",
240
- "schema": {
241
- "type": "boolean",
242
- "default": false
243
- }
244
- },
245
- {
246
- "name": "skip",
247
- "schema": {
248
- "type": "string"
249
- }
250
- },
251
- {
252
- "name": "continue-on-error",
253
- "schema": {
254
- "type": "boolean",
255
- "default": false
256
- }
257
- },
258
- {
259
- "name": "guardrails",
260
- "schema": {
261
- "type": "string"
262
- },
263
- "file": {
264
- "mode": "read",
265
- "exists": false,
266
- "media_type": "application/yaml",
267
- "encoding": "utf-8"
268
- }
269
- },
270
- {
271
- "name": "generated-dir",
272
- "schema": {
273
- "type": "string",
274
- "default": "packages/"
275
- }
276
- },
277
- {
278
- "name": "manifest",
279
- "schema": {
280
- "type": "boolean",
281
- "default": true
282
- }
283
- },
284
- {
285
- "name": "skip-lint",
286
- "schema": {
287
- "type": "boolean",
288
- "default": false
289
- }
290
- },
291
- {
292
- "name": "contracts-only",
293
- "schema": {
294
- "type": "boolean",
295
- "default": false
296
- }
297
- },
298
- {
299
- "name": "server-only",
300
- "schema": {
301
- "type": "boolean",
302
- "default": false
303
- }
304
- },
305
- {
306
- "name": "frontend-only",
307
- "schema": {
308
- "type": "boolean",
309
- "default": false
310
- }
311
- },
312
- {
313
- "name": "docs-only",
314
- "schema": {
315
- "type": "boolean",
316
- "default": false
317
- }
318
- },
319
- {
320
- "name": "force",
321
- "schema": {
322
- "type": "boolean",
323
- "default": false
324
- }
325
- },
326
- {
327
- "name": "cache",
328
- "schema": {
329
- "type": "boolean",
330
- "default": true
331
- }
332
- }
333
- ]
334
- },
335
- "deps": {
336
- "options": [
337
- {
338
- "name": "config",
339
- "schema": {
340
- "type": "string"
341
- },
342
- "file": {
343
- "mode": "read",
344
- "exists": false,
345
- "media_type": "application/yaml",
346
- "encoding": "utf-8"
347
- }
348
- },
349
- {
350
- "name": "module",
351
- "schema": {
352
- "type": "string"
353
- }
354
- },
355
- {
356
- "name": "graph",
357
- "schema": {
358
- "type": "boolean",
359
- "default": false
360
- }
361
- },
362
- {
363
- "name": "impact",
364
- "schema": {
365
- "type": "string"
366
- }
367
- },
368
- {
369
- "name": "who-depends-on",
370
- "schema": {
371
- "type": "string"
372
- }
373
- },
374
- {
375
- "name": "validate",
376
- "schema": {
377
- "type": "boolean",
378
- "default": false
379
- }
380
- }
381
- ]
382
- },
383
- "guardrails-init": {
384
- "options": [
385
- {
386
- "name": "output",
387
- "schema": {
388
- "type": "string",
389
- "default": "guardrails.yaml"
390
- }
391
- }
392
- ]
393
- },
394
- "manifest": {
395
- "options": [
396
- {
397
- "name": "dir",
398
- "schema": {
399
- "type": "string",
400
- "default": "packages/"
401
- }
402
- },
403
- {
404
- "name": "verify",
405
- "schema": {
406
- "type": "boolean",
407
- "default": false
408
- }
409
- },
410
- {
411
- "name": "output",
412
- "schema": {
413
- "type": "string"
414
- }
415
- }
416
- ]
417
- },
418
- "audit-openapi": {
419
- "effects": {
420
- "reads": [
421
- "openapi-specs",
422
- "config"
423
- ],
424
- "writes": [],
425
- "network": {
426
- "description": "LLM API calls when adapter is not mock",
427
- "requires_secrets": [],
428
- "idempotent": true
429
- }
430
- },
431
- "options": [
432
- {
433
- "name": "config",
434
- "schema": {
435
- "type": "string"
436
- },
437
- "file": {
438
- "mode": "read",
439
- "exists": false,
440
- "media_type": "application/yaml",
441
- "encoding": "utf-8"
442
- }
443
- },
444
- {
445
- "name": "module",
446
- "schema": {
447
- "type": "string"
448
- }
449
- },
450
- {
451
- "name": "adapter",
452
- "schema": {
453
- "type": "string",
454
- "enum": [
455
- "cursor",
456
- "claude",
457
- "openai",
458
- "gemini",
459
- "mock"
460
- ]
461
- }
462
- },
463
- {
464
- "name": "model",
465
- "schema": {
466
- "type": "string"
467
- }
468
- },
469
- {
470
- "name": "fail-on",
471
- "schema": {
472
- "type": "string",
473
- "enum": [
474
- "warning",
475
- "error",
476
- "critical"
477
- ],
478
- "default": "error"
479
- }
480
- },
481
- {
482
- "name": "output",
483
- "schema": {
484
- "type": "string"
485
- },
486
- "file": {
487
- "mode": "write",
488
- "media_type": "application/json",
489
- "encoding": "utf-8"
490
- }
491
- },
492
- {
493
- "name": "report-format",
494
- "schema": {
495
- "type": "string",
496
- "enum": [
497
- "json",
498
- "text",
499
- "yaml"
500
- ],
501
- "default": "text"
502
- }
503
- }
504
- ]
505
- },
506
- "review-published": {
507
- "effects": {
508
- "reads": [
509
- "openapi-specs",
510
- "config",
511
- "generated-packages"
512
- ],
513
- "writes": [],
514
- "network": {
515
- "description": "LLM API calls when adapter is not mock",
516
- "requires_secrets": [],
517
- "idempotent": true
518
- }
519
- },
520
- "options": [
521
- {
522
- "name": "config",
523
- "schema": {
524
- "type": "string"
525
- },
526
- "file": {
527
- "mode": "read",
528
- "exists": false,
529
- "media_type": "application/yaml",
530
- "encoding": "utf-8"
531
- }
532
- },
533
- {
534
- "name": "module",
535
- "schema": {
536
- "type": "string"
537
- }
538
- },
539
- {
540
- "name": "adapter",
541
- "schema": {
542
- "type": "string",
543
- "enum": [
544
- "cursor",
545
- "claude",
546
- "openai",
547
- "gemini",
548
- "mock"
549
- ]
550
- }
551
- },
552
- {
553
- "name": "model",
554
- "schema": {
555
- "type": "string"
556
- }
557
- },
558
- {
559
- "name": "fail-on",
560
- "schema": {
561
- "type": "string",
562
- "enum": [
563
- "warning",
564
- "error",
565
- "critical"
566
- ],
567
- "default": "error"
568
- }
569
- },
570
- {
571
- "name": "output",
572
- "schema": {
573
- "type": "string"
574
- },
575
- "file": {
576
- "mode": "write",
577
- "media_type": "application/json",
578
- "encoding": "utf-8"
579
- }
580
- },
581
- {
582
- "name": "report-format",
583
- "schema": {
584
- "type": "string",
585
- "enum": [
586
- "json",
587
- "text",
588
- "yaml"
589
- ],
590
- "default": "text"
591
- }
592
- }
593
- ]
594
- },
595
- "propose-overlays": {
596
- "effects": {
597
- "reads": [
598
- "openapi-specs",
599
- "config"
600
- ],
601
- "writes": [],
602
- "network": {
603
- "description": "LLM API calls when adapter is not mock",
604
- "requires_secrets": [],
605
- "idempotent": true
606
- }
607
- },
608
- "options": [
609
- {
610
- "name": "config",
611
- "schema": {
612
- "type": "string"
613
- },
614
- "file": {
615
- "mode": "read",
616
- "exists": false,
617
- "media_type": "application/yaml",
618
- "encoding": "utf-8"
619
- }
620
- },
621
- {
622
- "name": "module",
623
- "schema": {
624
- "type": "string"
625
- }
626
- },
627
- {
628
- "name": "adapter",
629
- "schema": {
630
- "type": "string",
631
- "enum": [
632
- "cursor",
633
- "claude",
634
- "openai",
635
- "gemini",
636
- "mock"
637
- ]
638
- }
639
- },
640
- {
641
- "name": "model",
642
- "schema": {
643
- "type": "string"
644
- }
645
- },
646
- {
647
- "name": "fail-on",
648
- "schema": {
649
- "type": "string",
650
- "enum": [
651
- "warning",
652
- "error",
653
- "critical"
654
- ],
655
- "default": "error"
656
- }
657
- },
658
- {
659
- "name": "output",
660
- "schema": {
661
- "type": "string"
662
- },
663
- "file": {
664
- "mode": "write",
665
- "media_type": "application/json",
666
- "encoding": "utf-8"
667
- }
668
- },
669
- {
670
- "name": "report-format",
671
- "schema": {
672
- "type": "string",
673
- "enum": [
674
- "json",
675
- "text",
676
- "yaml"
677
- ],
678
- "default": "json"
679
- }
680
- }
681
- ]
682
- },
683
- "audit-guardrails": {
684
- "effects": {
685
- "reads": [
686
- "guardrails-config",
687
- "config"
688
- ],
689
- "writes": [],
690
- "network": {
691
- "description": "LLM API calls when adapter is not mock",
692
- "requires_secrets": [],
693
- "idempotent": true
694
- }
695
- },
696
- "options": [
697
- {
698
- "name": "config",
699
- "schema": {
700
- "type": "string"
701
- },
702
- "file": {
703
- "mode": "read",
704
- "exists": false,
705
- "media_type": "application/yaml",
706
- "encoding": "utf-8"
707
- }
708
- },
709
- {
710
- "name": "guardrails",
711
- "schema": {
712
- "type": "string"
713
- },
714
- "file": {
715
- "mode": "read",
716
- "exists": false,
717
- "media_type": "application/yaml",
718
- "encoding": "utf-8"
719
- }
720
- },
721
- {
722
- "name": "adapter",
723
- "schema": {
724
- "type": "string",
725
- "enum": [
726
- "cursor",
727
- "claude",
728
- "openai",
729
- "gemini",
730
- "mock"
731
- ]
732
- }
733
- },
734
- {
735
- "name": "model",
736
- "schema": {
737
- "type": "string"
738
- }
739
- },
740
- {
741
- "name": "fail-on",
742
- "schema": {
743
- "type": "string",
744
- "enum": [
745
- "warning",
746
- "error",
747
- "critical"
748
- ],
749
- "default": "error"
750
- }
751
- },
752
- {
753
- "name": "output",
754
- "schema": {
755
- "type": "string"
756
- },
757
- "file": {
758
- "mode": "write",
759
- "media_type": "application/json",
760
- "encoding": "utf-8"
761
- }
762
- },
763
- {
764
- "name": "report-format",
765
- "schema": {
766
- "type": "string",
767
- "enum": [
768
- "json",
769
- "text",
770
- "yaml"
771
- ],
772
- "default": "text"
773
- }
774
- }
775
- ]
776
- },
777
- };
778
- export function deriveCommandPolicy(command_id, optionValues) {
779
- const def = commandDefinitions[command_id];
780
- if (!def)
781
- throw new Error(`Unknown command: ${command_id}`);
782
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
783
- const cmdDef = def;
784
- const options = {};
785
- const active_options = [];
786
- for (const optDef of cmdDef.options ?? []) {
787
- const value = optionValues[optDef.name];
788
- const specified = optDef.name in optionValues && value !== undefined;
789
- options[optDef.name] = { value, specified, definition: optDef };
790
- if (isOptionActive(optDef, value, specified)) {
791
- active_options.push(optDef.name);
792
- }
793
- }
794
- const policy = derivePolicy({
795
- command_id,
796
- command_effects: cmdDef.effects,
797
- options,
798
- env: cmdDef.env,
799
- });
800
- return { command: command_id, active_options, policy };
801
- }
802
- //# sourceMappingURL=policy.js.map