@behavproof/cli 0.0.0-stage → 0.1.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 (67) hide show
  1. package/README.md +14 -2
  2. package/dist/api.d.ts +6 -0
  3. package/dist/api.d.ts.map +1 -0
  4. package/dist/api.js +5 -0
  5. package/dist/api.js.map +1 -0
  6. package/dist/check.d.ts +272 -0
  7. package/dist/check.d.ts.map +1 -0
  8. package/dist/check.js +220 -0
  9. package/dist/check.js.map +1 -0
  10. package/dist/formal-evaluation.d.ts +108 -0
  11. package/dist/formal-evaluation.d.ts.map +1 -0
  12. package/dist/formal-evaluation.js +78 -0
  13. package/dist/formal-evaluation.js.map +1 -0
  14. package/dist/formal-worker.d.ts +2 -0
  15. package/dist/formal-worker.d.ts.map +1 -0
  16. package/dist/formal-worker.js +32 -0
  17. package/dist/formal-worker.js.map +1 -0
  18. package/dist/formal.d.ts +148 -0
  19. package/dist/formal.d.ts.map +1 -0
  20. package/dist/formal.js +99 -0
  21. package/dist/formal.js.map +1 -0
  22. package/dist/impact.d.ts +20 -0
  23. package/dist/impact.d.ts.map +1 -0
  24. package/dist/impact.js +23 -0
  25. package/dist/impact.js.map +1 -0
  26. package/dist/index.d.ts +3 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +151 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/pipeline.d.ts +38 -0
  31. package/dist/pipeline.d.ts.map +1 -0
  32. package/dist/pipeline.js +46 -0
  33. package/dist/pipeline.js.map +1 -0
  34. package/dist/project.d.ts +97 -0
  35. package/dist/project.d.ts.map +1 -0
  36. package/dist/project.js +101 -0
  37. package/dist/project.js.map +1 -0
  38. package/dist/registration.d.ts +595 -0
  39. package/dist/registration.d.ts.map +1 -0
  40. package/dist/registration.js +112 -0
  41. package/dist/registration.js.map +1 -0
  42. package/dist/report.d.ts +23 -0
  43. package/dist/report.d.ts.map +1 -0
  44. package/dist/report.js +34 -0
  45. package/dist/report.js.map +1 -0
  46. package/dist/scopes.d.ts +48 -0
  47. package/dist/scopes.d.ts.map +1 -0
  48. package/dist/scopes.js +60 -0
  49. package/dist/scopes.js.map +1 -0
  50. package/dist/trust.d.ts +533 -0
  51. package/dist/trust.d.ts.map +1 -0
  52. package/dist/trust.js +130 -0
  53. package/dist/trust.js.map +1 -0
  54. package/package.json +51 -4
  55. package/presets/basic-v1.json +21 -0
  56. package/presets/critical-v1.json +39 -0
  57. package/presets/standard-v1.json +21 -0
  58. package/schemas/config.schema.json +492 -0
  59. package/schemas/evidence.schema.json +3612 -0
  60. package/schemas/manifest.schema.json +225 -0
  61. package/schemas/policy.schema.json +21 -0
  62. package/schemas/registration.schema.json +1065 -0
  63. package/schemas/registry.schema.json +307 -0
  64. package/schemas/trust-root.schema.json +1445 -0
  65. package/templates/audit.yml +28 -0
  66. package/templates/protected-github-producer.yml +58 -0
  67. package/templates/protected-github-publisher.yml +111 -0
@@ -0,0 +1,595 @@
1
+ import { z } from 'zod';
2
+ import { type Approval } from '@behavproof/core';
3
+ export declare const RegistrationSchema: z.ZodObject<{
4
+ schemaVersion: z.ZodLiteral<1>;
5
+ repository: z.ZodObject<{
6
+ id: z.ZodString;
7
+ fullName: z.ZodString;
8
+ }, z.core.$strict>;
9
+ source: z.ZodObject<{
10
+ commitSha: z.ZodString;
11
+ prNumber: z.ZodNumber;
12
+ projectPath: z.ZodUnion<readonly [z.ZodLiteral<".">, z.ZodString]>;
13
+ policyRef: z.ZodString;
14
+ configRef: z.ZodOptional<z.ZodString>;
15
+ fileHashes: z.ZodRecord<z.ZodString, z.ZodString>;
16
+ }, z.core.$strict>;
17
+ policyId: z.ZodString;
18
+ policy: z.ZodObject<{
19
+ schemaVersion: z.ZodLiteral<1>;
20
+ profileVersion: z.ZodLiteral<"1">;
21
+ rules: z.ZodPipe<z.ZodUnknown, z.ZodRecord<z.ZodString, z.ZodObject<{
22
+ severity: z.ZodEnum<{
23
+ error: "error";
24
+ off: "off";
25
+ warn: "warn";
26
+ }>;
27
+ min: z.ZodOptional<z.ZodNumber>;
28
+ minMutants: z.ZodOptional<z.ZodNumber>;
29
+ allowNotApplicable: z.ZodOptional<z.ZodArray<z.ZodString>>;
30
+ }, z.core.$strict>>>;
31
+ }, z.core.$strict>;
32
+ config: z.ZodPipe<z.ZodObject<{
33
+ schemaVersion: z.ZodLiteral<1>;
34
+ formal: z.ZodOptional<z.ZodObject<{
35
+ models: z.ZodArray<z.ZodObject<{
36
+ id: z.ZodString;
37
+ contractId: z.ZodString;
38
+ model: z.ZodString;
39
+ modelSources: z.ZodDefault<z.ZodArray<z.ZodString>>;
40
+ quint: z.ZodObject<{
41
+ entry: z.ZodString;
42
+ version: z.ZodString;
43
+ apalacheVersion: z.ZodOptional<z.ZodString>;
44
+ }, z.core.$strict>;
45
+ properties: z.ZodArray<z.ZodString>;
46
+ checks: z.ZodArray<z.ZodEnum<{
47
+ parse: "parse";
48
+ typecheck: "typecheck";
49
+ test: "test";
50
+ run: "run";
51
+ verify: "verify";
52
+ }>>;
53
+ maxSteps: z.ZodNumber;
54
+ maxSamples: z.ZodDefault<z.ZodNumber>;
55
+ seed: z.ZodString;
56
+ timeoutMs: z.ZodDefault<z.ZodNumber>;
57
+ report: z.ZodString;
58
+ driver: z.ZodOptional<z.ZodString>;
59
+ driverSources: z.ZodOptional<z.ZodArray<z.ZodString>>;
60
+ implementation: z.ZodOptional<z.ZodString>;
61
+ implementationSources: z.ZodDefault<z.ZodArray<z.ZodString>>;
62
+ conformanceReport: z.ZodOptional<z.ZodString>;
63
+ traceReceipt: z.ZodOptional<z.ZodString>;
64
+ traceDirectory: z.ZodOptional<z.ZodString>;
65
+ requiredActions: z.ZodDefault<z.ZodArray<z.ZodString>>;
66
+ minTraces: z.ZodDefault<z.ZodNumber>;
67
+ minComparisons: z.ZodDefault<z.ZodNumber>;
68
+ requireCanary: z.ZodDefault<z.ZodBoolean>;
69
+ canary: z.ZodOptional<z.ZodObject<{
70
+ faultId: z.ZodString;
71
+ implementation: z.ZodString;
72
+ targetRef: z.ZodString;
73
+ }, z.core.$strict>>;
74
+ }, z.core.$strict>>;
75
+ }, z.core.$strict>>;
76
+ mode: z.ZodDefault<z.ZodEnum<{
77
+ audit: "audit";
78
+ gate: "gate";
79
+ }>>;
80
+ profile: z.ZodDefault<z.ZodEnum<{
81
+ basic: "basic";
82
+ standard: "standard";
83
+ critical: "critical";
84
+ }>>;
85
+ profileVersion: z.ZodDefault<z.ZodLiteral<"1">>;
86
+ riskOverrides: z.ZodDefault<z.ZodArray<z.ZodObject<{
87
+ selector: z.ZodDiscriminatedUnion<[z.ZodObject<{
88
+ kind: z.ZodLiteral<"path">;
89
+ value: z.ZodString;
90
+ }, z.core.$strict>, z.ZodObject<{
91
+ kind: z.ZodLiteral<"module">;
92
+ value: z.ZodString;
93
+ }, z.core.$strict>, z.ZodObject<{
94
+ kind: z.ZodLiteral<"contract-kind">;
95
+ value: z.ZodEnum<{
96
+ external: "external";
97
+ examples: "examples";
98
+ invariant: "invariant";
99
+ state_machine: "state_machine";
100
+ api_contract: "api_contract";
101
+ }>;
102
+ }, z.core.$strict>], "kind">;
103
+ profile: z.ZodEnum<{
104
+ basic: "basic";
105
+ standard: "standard";
106
+ critical: "critical";
107
+ }>;
108
+ }, z.core.$strict>>>;
109
+ git: z.ZodDefault<z.ZodObject<{
110
+ base: z.ZodDefault<z.ZodString>;
111
+ }, z.core.$strict>>;
112
+ reports: z.ZodDefault<z.ZodObject<{
113
+ vitest: z.ZodOptional<z.ZodString>;
114
+ coverage: z.ZodOptional<z.ZodString>;
115
+ mutation: z.ZodOptional<z.ZodString>;
116
+ }, z.core.$strict>>;
117
+ executionManifests: z.ZodDefault<z.ZodArray<z.ZodString>>;
118
+ rules: z.ZodDefault<z.ZodPipe<z.ZodUnknown, z.ZodRecord<z.ZodString, z.ZodObject<{
119
+ severity: z.ZodEnum<{
120
+ error: "error";
121
+ off: "off";
122
+ warn: "warn";
123
+ }>;
124
+ min: z.ZodOptional<z.ZodNumber>;
125
+ minMutants: z.ZodOptional<z.ZodNumber>;
126
+ allowNotApplicable: z.ZodOptional<z.ZodArray<z.ZodString>>;
127
+ }, z.core.$strict>>>>;
128
+ contracts: z.ZodDefault<z.ZodObject<{
129
+ enabled: z.ZodDefault<z.ZodBoolean>;
130
+ sources: z.ZodDefault<z.ZodArray<z.ZodObject<{
131
+ type: z.ZodEnum<{
132
+ external: "external";
133
+ "vitest-inline": "vitest-inline";
134
+ manifest: "manifest";
135
+ gherkin: "gherkin";
136
+ openapi: "openapi";
137
+ }>;
138
+ include: z.ZodArray<z.ZodString>;
139
+ }, z.core.$strict>>>;
140
+ requireExecutionEvidence: z.ZodDefault<z.ZodBoolean>;
141
+ approval: z.ZodDefault<z.ZodObject<{
142
+ provider: z.ZodLiteral<"github-protected-review">;
143
+ requiredForRisk: z.ZodDefault<z.ZodArray<z.ZodEnum<{
144
+ basic: "basic";
145
+ standard: "standard";
146
+ critical: "critical";
147
+ }>>>;
148
+ onUnverifiable: z.ZodDefault<z.ZodLiteral<"unknown">>;
149
+ }, z.core.$strict>>;
150
+ documents: z.ZodDefault<z.ZodObject<{
151
+ output: z.ZodDefault<z.ZodString>;
152
+ commit: z.ZodDefault<z.ZodBoolean>;
153
+ }, z.core.$strict>>;
154
+ }, z.core.$strict>>;
155
+ }, z.core.$strict>, z.ZodTransform<{
156
+ rules: Record<string, {
157
+ severity: "error" | "off" | "warn";
158
+ min?: number | undefined;
159
+ minMutants?: number | undefined;
160
+ allowNotApplicable?: string[] | undefined;
161
+ }>;
162
+ schemaVersion: 1;
163
+ mode: "audit" | "gate";
164
+ profile: "basic" | "standard" | "critical";
165
+ profileVersion: "1";
166
+ riskOverrides: {
167
+ selector: {
168
+ kind: "path";
169
+ value: string;
170
+ } | {
171
+ kind: "module";
172
+ value: string;
173
+ } | {
174
+ kind: "contract-kind";
175
+ value: "external" | "examples" | "invariant" | "state_machine" | "api_contract";
176
+ };
177
+ profile: "basic" | "standard" | "critical";
178
+ }[];
179
+ git: {
180
+ base: string;
181
+ };
182
+ reports: {
183
+ vitest?: string | undefined;
184
+ coverage?: string | undefined;
185
+ mutation?: string | undefined;
186
+ };
187
+ executionManifests: string[];
188
+ contracts: {
189
+ enabled: boolean;
190
+ sources: {
191
+ type: "external" | "vitest-inline" | "manifest" | "gherkin" | "openapi";
192
+ include: string[];
193
+ }[];
194
+ requireExecutionEvidence: boolean;
195
+ approval: {
196
+ provider: "github-protected-review";
197
+ requiredForRisk: ("basic" | "standard" | "critical")[];
198
+ onUnverifiable: "unknown";
199
+ };
200
+ documents: {
201
+ output: string;
202
+ commit: boolean;
203
+ };
204
+ };
205
+ formal?: {
206
+ models: {
207
+ id: string;
208
+ contractId: string;
209
+ model: string;
210
+ modelSources: string[];
211
+ quint: {
212
+ entry: string;
213
+ version: string;
214
+ apalacheVersion?: string | undefined;
215
+ };
216
+ properties: string[];
217
+ checks: ("parse" | "typecheck" | "test" | "run" | "verify")[];
218
+ maxSteps: number;
219
+ maxSamples: number;
220
+ seed: string;
221
+ timeoutMs: number;
222
+ report: string;
223
+ implementationSources: string[];
224
+ requiredActions: string[];
225
+ minTraces: number;
226
+ minComparisons: number;
227
+ requireCanary: boolean;
228
+ driver?: string | undefined;
229
+ driverSources?: string[] | undefined;
230
+ implementation?: string | undefined;
231
+ conformanceReport?: string | undefined;
232
+ traceReceipt?: string | undefined;
233
+ traceDirectory?: string | undefined;
234
+ canary?: {
235
+ faultId: string;
236
+ implementation: string;
237
+ targetRef: string;
238
+ } | undefined;
239
+ }[];
240
+ } | undefined;
241
+ }, {
242
+ schemaVersion: 1;
243
+ mode: "audit" | "gate";
244
+ profile: "basic" | "standard" | "critical";
245
+ profileVersion: "1";
246
+ riskOverrides: {
247
+ selector: {
248
+ kind: "path";
249
+ value: string;
250
+ } | {
251
+ kind: "module";
252
+ value: string;
253
+ } | {
254
+ kind: "contract-kind";
255
+ value: "external" | "examples" | "invariant" | "state_machine" | "api_contract";
256
+ };
257
+ profile: "basic" | "standard" | "critical";
258
+ }[];
259
+ git: {
260
+ base: string;
261
+ };
262
+ reports: {
263
+ vitest?: string | undefined;
264
+ coverage?: string | undefined;
265
+ mutation?: string | undefined;
266
+ };
267
+ executionManifests: string[];
268
+ rules: Record<string, {
269
+ severity: "error" | "off" | "warn";
270
+ min?: number | undefined;
271
+ minMutants?: number | undefined;
272
+ allowNotApplicable?: string[] | undefined;
273
+ }>;
274
+ contracts: {
275
+ enabled: boolean;
276
+ sources: {
277
+ type: "external" | "vitest-inline" | "manifest" | "gherkin" | "openapi";
278
+ include: string[];
279
+ }[];
280
+ requireExecutionEvidence: boolean;
281
+ approval: {
282
+ provider: "github-protected-review";
283
+ requiredForRisk: ("basic" | "standard" | "critical")[];
284
+ onUnverifiable: "unknown";
285
+ };
286
+ documents: {
287
+ output: string;
288
+ commit: boolean;
289
+ };
290
+ };
291
+ formal?: {
292
+ models: {
293
+ id: string;
294
+ contractId: string;
295
+ model: string;
296
+ modelSources: string[];
297
+ quint: {
298
+ entry: string;
299
+ version: string;
300
+ apalacheVersion?: string | undefined;
301
+ };
302
+ properties: string[];
303
+ checks: ("parse" | "typecheck" | "test" | "run" | "verify")[];
304
+ maxSteps: number;
305
+ maxSamples: number;
306
+ seed: string;
307
+ timeoutMs: number;
308
+ report: string;
309
+ implementationSources: string[];
310
+ requiredActions: string[];
311
+ minTraces: number;
312
+ minComparisons: number;
313
+ requireCanary: boolean;
314
+ driver?: string | undefined;
315
+ driverSources?: string[] | undefined;
316
+ implementation?: string | undefined;
317
+ conformanceReport?: string | undefined;
318
+ traceReceipt?: string | undefined;
319
+ traceDirectory?: string | undefined;
320
+ canary?: {
321
+ faultId: string;
322
+ implementation: string;
323
+ targetRef: string;
324
+ } | undefined;
325
+ }[];
326
+ } | undefined;
327
+ }>>;
328
+ baseline: z.ZodObject<{
329
+ schemaVersion: z.ZodLiteral<1>;
330
+ repositoryId: z.ZodOptional<z.ZodString>;
331
+ commitSha: z.ZodString;
332
+ contracts: z.ZodArray<z.ZodObject<{
333
+ id: z.ZodString;
334
+ formal: z.ZodOptional<z.ZodObject<{
335
+ modelId: z.ZodString;
336
+ modelHash: z.ZodString;
337
+ driverHash: z.ZodOptional<z.ZodString>;
338
+ propertyIds: z.ZodArray<z.ZodString>;
339
+ }, z.core.$strict>>;
340
+ kind: z.ZodEnum<{
341
+ external: "external";
342
+ examples: "examples";
343
+ invariant: "invariant";
344
+ state_machine: "state_machine";
345
+ api_contract: "api_contract";
346
+ }>;
347
+ intentIds: z.ZodArray<z.ZodString>;
348
+ revisionHash: z.ZodString;
349
+ sourceRef: z.ZodString;
350
+ caseIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
351
+ risk: z.ZodOptional<z.ZodEnum<{
352
+ basic: "basic";
353
+ standard: "standard";
354
+ critical: "critical";
355
+ }>>;
356
+ cases: z.ZodOptional<z.ZodArray<z.ZodObject<{
357
+ id: z.ZodString;
358
+ input: z.ZodJSONSchema;
359
+ expected: z.ZodJSONSchema;
360
+ negative: z.ZodOptional<z.ZodBoolean>;
361
+ }, z.core.$strict>>>;
362
+ }, z.core.$strict>>;
363
+ intents: z.ZodArray<z.ZodObject<{
364
+ id: z.ZodString;
365
+ statement: z.ZodString;
366
+ risk: z.ZodEnum<{
367
+ basic: "basic";
368
+ standard: "standard";
369
+ critical: "critical";
370
+ }>;
371
+ contentHash: z.ZodString;
372
+ origin: z.ZodObject<{
373
+ kind: z.ZodEnum<{
374
+ external: "external";
375
+ manifest: "manifest";
376
+ inline: "inline";
377
+ }>;
378
+ ref: z.ZodString;
379
+ }, z.core.$strict>;
380
+ }, z.core.$strict>>;
381
+ policyHash: z.ZodOptional<z.ZodString>;
382
+ extractorVersion: z.ZodOptional<z.ZodString>;
383
+ scope: z.ZodOptional<z.ZodArray<z.ZodString>>;
384
+ discoveryDiagnostics: z.ZodOptional<z.ZodArray<z.ZodObject<{
385
+ code: z.ZodString;
386
+ sourceRef: z.ZodString;
387
+ message: z.ZodString;
388
+ }, z.core.$strict>>>;
389
+ }, z.core.$strict>;
390
+ inputs: z.ZodArray<z.ZodString>;
391
+ configPaths: z.ZodArray<z.ZodString>;
392
+ claimScopes: z.ZodArray<z.ZodObject<{
393
+ contractId: z.ZodString;
394
+ caseIds: z.ZodArray<z.ZodString>;
395
+ targetRef: z.ZodString;
396
+ method: z.ZodString;
397
+ }, z.core.$strict>>;
398
+ approvals: z.ZodArray<z.ZodObject<{
399
+ schemaVersion: z.ZodLiteral<1>;
400
+ id: z.ZodString;
401
+ target: z.ZodObject<{
402
+ kind: z.ZodEnum<{
403
+ intent: "intent";
404
+ contract: "contract";
405
+ policy: "policy";
406
+ registry: "registry";
407
+ }>;
408
+ id: z.ZodString;
409
+ contentHash: z.ZodString;
410
+ }, z.core.$strict>;
411
+ status: z.ZodEnum<{
412
+ unknown: "unknown";
413
+ pass: "pass";
414
+ fail: "fail";
415
+ not_applicable: "not_applicable";
416
+ }>;
417
+ source: z.ZodObject<{
418
+ provider: z.ZodString;
419
+ ref: z.ZodString;
420
+ }, z.core.$strict>;
421
+ approvedBy: z.ZodArray<z.ZodString>;
422
+ subjectCommitSha: z.ZodOptional<z.ZodString>;
423
+ reasons: z.ZodArray<z.ZodString>;
424
+ }, z.core.$strict>>;
425
+ }, z.core.$strict>;
426
+ export type Registration = z.infer<typeof RegistrationSchema>;
427
+ export type RegistrationAuthority = {
428
+ verifySource: (registration: Registration) => boolean;
429
+ verifyApproval: (approval: Approval) => boolean;
430
+ };
431
+ export type VerifiedRegistration = {
432
+ readonly registration: Registration;
433
+ readonly digest: string;
434
+ };
435
+ export declare function createRegistration(value: unknown, authority: RegistrationAuthority): VerifiedRegistration;
436
+ export declare function persistRegistration(projectRoot: string, directory: string, handle: VerifiedRegistration): Promise<{
437
+ path: string;
438
+ digest: string;
439
+ }>;
440
+ /** expectedDigest belongs to the protected host invocation, never to candidate JSON. */
441
+ export declare function loadRegistration(projectRoot: string, path: string, expectedDigest: string): Promise<Registration>;
442
+ /** Path projection only; obtain authority separately with loadRegistration and a protected digest. */
443
+ export declare function registrationProjectData(value: Registration): {
444
+ baseline: {
445
+ scope?: string[] | undefined;
446
+ contracts: {
447
+ sourceRef: string;
448
+ id: string;
449
+ kind: "external" | "examples" | "invariant" | "state_machine" | "api_contract";
450
+ intentIds: string[];
451
+ revisionHash: string;
452
+ formal?: {
453
+ modelId: string;
454
+ modelHash: string;
455
+ propertyIds: string[];
456
+ driverHash?: string | undefined;
457
+ } | undefined;
458
+ caseIds?: string[] | undefined;
459
+ risk?: "basic" | "standard" | "critical" | undefined;
460
+ cases?: {
461
+ id: string;
462
+ input: z.core.util.JSONType;
463
+ expected: z.core.util.JSONType;
464
+ negative?: boolean | undefined;
465
+ }[] | undefined;
466
+ }[];
467
+ intents: {
468
+ origin: {
469
+ ref: string;
470
+ kind: "external" | "manifest" | "inline";
471
+ };
472
+ id: string;
473
+ statement: string;
474
+ risk: "basic" | "standard" | "critical";
475
+ contentHash: string;
476
+ }[];
477
+ schemaVersion: 1;
478
+ commitSha: string;
479
+ repositoryId?: string | undefined;
480
+ policyHash?: string | undefined;
481
+ extractorVersion?: string | undefined;
482
+ discoveryDiagnostics?: {
483
+ code: string;
484
+ sourceRef: string;
485
+ message: string;
486
+ }[] | undefined;
487
+ };
488
+ inputs: string[];
489
+ configPaths: string[];
490
+ claimScopes: {
491
+ targetRef: string;
492
+ contractId: string;
493
+ caseIds: string[];
494
+ method: string;
495
+ }[];
496
+ configRef?: string;
497
+ policy: {
498
+ schemaVersion: 1;
499
+ profileVersion: "1";
500
+ rules: Record<string, {
501
+ severity: "error" | "off" | "warn";
502
+ min?: number | undefined;
503
+ minMutants?: number | undefined;
504
+ allowNotApplicable?: string[] | undefined;
505
+ }>;
506
+ };
507
+ config: {
508
+ rules: Record<string, {
509
+ severity: "error" | "off" | "warn";
510
+ min?: number | undefined;
511
+ minMutants?: number | undefined;
512
+ allowNotApplicable?: string[] | undefined;
513
+ }>;
514
+ schemaVersion: 1;
515
+ mode: "audit" | "gate";
516
+ profile: "basic" | "standard" | "critical";
517
+ profileVersion: "1";
518
+ riskOverrides: {
519
+ selector: {
520
+ kind: "path";
521
+ value: string;
522
+ } | {
523
+ kind: "module";
524
+ value: string;
525
+ } | {
526
+ kind: "contract-kind";
527
+ value: "external" | "examples" | "invariant" | "state_machine" | "api_contract";
528
+ };
529
+ profile: "basic" | "standard" | "critical";
530
+ }[];
531
+ git: {
532
+ base: string;
533
+ };
534
+ reports: {
535
+ vitest?: string | undefined;
536
+ coverage?: string | undefined;
537
+ mutation?: string | undefined;
538
+ };
539
+ executionManifests: string[];
540
+ contracts: {
541
+ enabled: boolean;
542
+ sources: {
543
+ type: "external" | "vitest-inline" | "manifest" | "gherkin" | "openapi";
544
+ include: string[];
545
+ }[];
546
+ requireExecutionEvidence: boolean;
547
+ approval: {
548
+ provider: "github-protected-review";
549
+ requiredForRisk: ("basic" | "standard" | "critical")[];
550
+ onUnverifiable: "unknown";
551
+ };
552
+ documents: {
553
+ output: string;
554
+ commit: boolean;
555
+ };
556
+ };
557
+ formal?: {
558
+ models: {
559
+ id: string;
560
+ contractId: string;
561
+ model: string;
562
+ modelSources: string[];
563
+ quint: {
564
+ entry: string;
565
+ version: string;
566
+ apalacheVersion?: string | undefined;
567
+ };
568
+ properties: string[];
569
+ checks: ("parse" | "typecheck" | "test" | "run" | "verify")[];
570
+ maxSteps: number;
571
+ maxSamples: number;
572
+ seed: string;
573
+ timeoutMs: number;
574
+ report: string;
575
+ implementationSources: string[];
576
+ requiredActions: string[];
577
+ minTraces: number;
578
+ minComparisons: number;
579
+ requireCanary: boolean;
580
+ driver?: string | undefined;
581
+ driverSources?: string[] | undefined;
582
+ implementation?: string | undefined;
583
+ conformanceReport?: string | undefined;
584
+ traceReceipt?: string | undefined;
585
+ traceDirectory?: string | undefined;
586
+ canary?: {
587
+ faultId: string;
588
+ implementation: string;
589
+ targetRef: string;
590
+ } | undefined;
591
+ }[];
592
+ } | undefined;
593
+ };
594
+ };
595
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../src/registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB,OAAO,EAA2H,KAAK,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAIzK,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAoD4B,CAAC;sBAAwC,CAAC;8BACpE,CAAC;;;;;;;;;;;;;;;;;;;;;;;kBAQiD,CAAC;oBACnF,CAAC;oBAAsC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAGqG,CAAC;;;;;;;;;;;;;;sBAAkf,CAAC;6BAA+C,CAAC;8BAAkD,CAAC;iCAAmD,CAAC;4BAA8C,CAAC;8BAAgD,CAAC;sBAAwC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAyuB,CAAC;oBAAsC,CAAC;oBAAsC,CAAC;;;;;eAAkJ,CAAC;sBAAwC,CAAC;8BAAgD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAAizB,CAAC;;;;;;;;;;;;;;sBAAkf,CAAC;6BAA+C,CAAC;8BAAkD,CAAC;iCAAmD,CAAC;4BAA8C,CAAC;8BAAgD,CAAC;sBAAwC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA3D1gH,CAAC;AACH,MAAM,MAAM,YAAY,GAAC,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC5D,MAAM,MAAM,qBAAqB,GAAC;IAAC,YAAY,EAAC,CAAC,YAAY,EAAC,YAAY,KAAG,OAAO,CAAC;IAAA,cAAc,EAAC,CAAC,QAAQ,EAAC,QAAQ,KAAG,OAAO,CAAA;CAAC,CAAC;AAClI,MAAM,MAAM,oBAAoB,GAAC;IAAC,QAAQ,CAAC,YAAY,EAAC,YAAY,CAAC;IAAA,QAAQ,CAAC,MAAM,EAAC,MAAM,CAAA;CAAC,CAAC;AAG7F,wBAAgB,kBAAkB,CAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,qBAAqB,GAAE,oBAAoB,CAwBrG;AAQD,wBAAsB,mBAAmB,CAAC,WAAW,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,oBAAoB;;;GAKxG;AAED,wFAAwF;AACxF,wBAAsB,gBAAgB,CAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAC,cAAc,EAAC,MAAM,GAAE,OAAO,CAAC,YAAY,CAAC,CAKjH;AAED,sGAAsG;AACtG,wBAAgB,uBAAuB,CAAC,KAAK,EAAC,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eARC,CAAC;sBAAwC,CAAC;8BACpE,CAAC;;;;;;;;;;;;;;;;;;;;;;;kBAQiD,CAAC;oBACnF,CAAC;oBAAsC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAGqG,CAAC;;;;;;;;;;;;;;sBAAkf,CAAC;6BAA+C,CAAC;8BAAkD,CAAC;iCAAmD,CAAC;4BAA8C,CAAC;8BAAgD,CAAC;sBAAwC,CAAC;;;;;;;;EADj6B"}