@gate-forge/core 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.
- package/LICENSE +202 -0
- package/dist/baselines/adoption.d.ts +76 -0
- package/dist/baselines/adoption.d.ts.map +1 -0
- package/dist/baselines/adoption.js +163 -0
- package/dist/baselines/adoption.js.map +1 -0
- package/dist/baselines/index.d.ts +102 -0
- package/dist/baselines/index.d.ts.map +1 -0
- package/dist/baselines/index.js +186 -0
- package/dist/baselines/index.js.map +1 -0
- package/dist/canonical-json.d.ts +51 -0
- package/dist/canonical-json.d.ts.map +1 -0
- package/dist/canonical-json.js +112 -0
- package/dist/canonical-json.js.map +1 -0
- package/dist/classifier/bind.d.ts +64 -0
- package/dist/classifier/bind.d.ts.map +1 -0
- package/dist/classifier/bind.js +188 -0
- package/dist/classifier/bind.js.map +1 -0
- package/dist/classifier/classify.d.ts +154 -0
- package/dist/classifier/classify.d.ts.map +1 -0
- package/dist/classifier/classify.js +1207 -0
- package/dist/classifier/classify.js.map +1 -0
- package/dist/classifier/glob.d.ts +48 -0
- package/dist/classifier/glob.d.ts.map +1 -0
- package/dist/classifier/glob.js +104 -0
- package/dist/classifier/glob.js.map +1 -0
- package/dist/classifier/index.d.ts +10 -0
- package/dist/classifier/index.d.ts.map +1 -0
- package/dist/classifier/index.js +21 -0
- package/dist/classifier/index.js.map +1 -0
- package/dist/classifier/schema.d.ts +150 -0
- package/dist/classifier/schema.d.ts.map +1 -0
- package/dist/classifier/schema.js +139 -0
- package/dist/classifier/schema.js.map +1 -0
- package/dist/config/index.d.ts +259 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +523 -0
- package/dist/config/index.js.map +1 -0
- package/dist/fingerprints.d.ts +56 -0
- package/dist/fingerprints.d.ts.map +1 -0
- package/dist/fingerprints.js +59 -0
- package/dist/fingerprints.js.map +1 -0
- package/dist/graph/build.d.ts +16 -0
- package/dist/graph/build.d.ts.map +1 -0
- package/dist/graph/build.js +423 -0
- package/dist/graph/build.js.map +1 -0
- package/dist/graph/index.d.ts +12 -0
- package/dist/graph/index.d.ts.map +1 -0
- package/dist/graph/index.js +10 -0
- package/dist/graph/index.js.map +1 -0
- package/dist/graph/schema.d.ts +448 -0
- package/dist/graph/schema.d.ts.map +1 -0
- package/dist/graph/schema.js +237 -0
- package/dist/graph/schema.js.map +1 -0
- package/dist/graph/symbols.d.ts +129 -0
- package/dist/graph/symbols.d.ts.map +1 -0
- package/dist/graph/symbols.js +177 -0
- package/dist/graph/symbols.js.map +1 -0
- package/dist/graph/util.d.ts +40 -0
- package/dist/graph/util.d.ts.map +1 -0
- package/dist/graph/util.js +41 -0
- package/dist/graph/util.js.map +1 -0
- package/dist/index.d.ts +683 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +563 -0
- package/dist/index.js.map +1 -0
- package/dist/mapping/resolve.d.ts +177 -0
- package/dist/mapping/resolve.d.ts.map +1 -0
- package/dist/mapping/resolve.js +523 -0
- package/dist/mapping/resolve.js.map +1 -0
- package/dist/policy/coverage.d.ts +79 -0
- package/dist/policy/coverage.d.ts.map +1 -0
- package/dist/policy/coverage.js +119 -0
- package/dist/policy/coverage.js.map +1 -0
- package/dist/policy/evaluate.d.ts +275 -0
- package/dist/policy/evaluate.d.ts.map +1 -0
- package/dist/policy/evaluate.js +382 -0
- package/dist/policy/evaluate.js.map +1 -0
- package/dist/policy/index.d.ts +15 -0
- package/dist/policy/index.d.ts.map +1 -0
- package/dist/policy/index.js +14 -0
- package/dist/policy/index.js.map +1 -0
- package/dist/policy/trusted.d.ts +59 -0
- package/dist/policy/trusted.d.ts.map +1 -0
- package/dist/policy/trusted.js +96 -0
- package/dist/policy/trusted.js.map +1 -0
- package/dist/provenance.d.ts +170 -0
- package/dist/provenance.d.ts.map +1 -0
- package/dist/provenance.js +306 -0
- package/dist/provenance.js.map +1 -0
- package/dist/receipt/index.d.ts +74 -0
- package/dist/receipt/index.d.ts.map +1 -0
- package/dist/receipt/index.js +154 -0
- package/dist/receipt/index.js.map +1 -0
- package/dist/report/index.d.ts +100 -0
- package/dist/report/index.d.ts.map +1 -0
- package/dist/report/index.js +355 -0
- package/dist/report/index.js.map +1 -0
- package/dist/schemas/adoption.d.ts +40 -0
- package/dist/schemas/adoption.d.ts.map +1 -0
- package/dist/schemas/adoption.js +87 -0
- package/dist/schemas/adoption.js.map +1 -0
- package/dist/schemas/baseline.d.ts +19 -0
- package/dist/schemas/baseline.d.ts.map +1 -0
- package/dist/schemas/baseline.js +45 -0
- package/dist/schemas/baseline.js.map +1 -0
- package/dist/schemas/claim.d.ts +32 -0
- package/dist/schemas/claim.d.ts.map +1 -0
- package/dist/schemas/claim.js +34 -0
- package/dist/schemas/claim.js.map +1 -0
- package/dist/schemas/classification-policy.d.ts +84 -0
- package/dist/schemas/classification-policy.d.ts.map +1 -0
- package/dist/schemas/classification-policy.js +130 -0
- package/dist/schemas/classification-policy.js.map +1 -0
- package/dist/schemas/classification-signal.d.ts +125 -0
- package/dist/schemas/classification-signal.d.ts.map +1 -0
- package/dist/schemas/classification-signal.js +126 -0
- package/dist/schemas/classification-signal.js.map +1 -0
- package/dist/schemas/classification.d.ts +120 -0
- package/dist/schemas/classification.d.ts.map +1 -0
- package/dist/schemas/classification.js +154 -0
- package/dist/schemas/classification.js.map +1 -0
- package/dist/schemas/common.d.ts +73 -0
- package/dist/schemas/common.d.ts.map +1 -0
- package/dist/schemas/common.js +60 -0
- package/dist/schemas/common.js.map +1 -0
- package/dist/schemas/coverage-policy.d.ts +89 -0
- package/dist/schemas/coverage-policy.d.ts.map +1 -0
- package/dist/schemas/coverage-policy.js +81 -0
- package/dist/schemas/coverage-policy.js.map +1 -0
- package/dist/schemas/evidence.d.ts +65 -0
- package/dist/schemas/evidence.d.ts.map +1 -0
- package/dist/schemas/evidence.js +64 -0
- package/dist/schemas/evidence.js.map +1 -0
- package/dist/schemas/execution-result.d.ts +214 -0
- package/dist/schemas/execution-result.d.ts.map +1 -0
- package/dist/schemas/execution-result.js +240 -0
- package/dist/schemas/execution-result.js.map +1 -0
- package/dist/schemas/gate-receipt.d.ts +86 -0
- package/dist/schemas/gate-receipt.d.ts.map +1 -0
- package/dist/schemas/gate-receipt.js +193 -0
- package/dist/schemas/gate-receipt.js.map +1 -0
- package/dist/schemas/index.d.ts +22 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +22 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/obligation.d.ts +37 -0
- package/dist/schemas/obligation.d.ts.map +1 -0
- package/dist/schemas/obligation.js +46 -0
- package/dist/schemas/obligation.js.map +1 -0
- package/dist/schemas/plugin.d.ts +19 -0
- package/dist/schemas/plugin.d.ts.map +1 -0
- package/dist/schemas/plugin.js +20 -0
- package/dist/schemas/plugin.js.map +1 -0
- package/dist/schemas/policy.d.ts +73 -0
- package/dist/schemas/policy.d.ts.map +1 -0
- package/dist/schemas/policy.js +46 -0
- package/dist/schemas/policy.js.map +1 -0
- package/dist/schemas/resource.d.ts +26 -0
- package/dist/schemas/resource.d.ts.map +1 -0
- package/dist/schemas/resource.js +29 -0
- package/dist/schemas/resource.js.map +1 -0
- package/dist/schemas/run-manifest.d.ts +72 -0
- package/dist/schemas/run-manifest.d.ts.map +1 -0
- package/dist/schemas/run-manifest.js +125 -0
- package/dist/schemas/run-manifest.js.map +1 -0
- package/dist/schemas/runner-adapter.d.ts +169 -0
- package/dist/schemas/runner-adapter.d.ts.map +1 -0
- package/dist/schemas/runner-adapter.js +2 -0
- package/dist/schemas/runner-adapter.js.map +1 -0
- package/dist/schemas/test-catalog.d.ts +472 -0
- package/dist/schemas/test-catalog.d.ts.map +1 -0
- package/dist/schemas/test-catalog.js +311 -0
- package/dist/schemas/test-catalog.js.map +1 -0
- package/dist/schemas/test-map.d.ts +99 -0
- package/dist/schemas/test-map.d.ts.map +1 -0
- package/dist/schemas/test-map.js +103 -0
- package/dist/schemas/test-map.js.map +1 -0
- package/dist/schemas/verdict.d.ts +73 -0
- package/dist/schemas/verdict.d.ts.map +1 -0
- package/dist/schemas/verdict.js +92 -0
- package/dist/schemas/verdict.js.map +1 -0
- package/dist/schemas/waiver.d.ts +36 -0
- package/dist/schemas/waiver.d.ts.map +1 -0
- package/dist/schemas/waiver.js +42 -0
- package/dist/schemas/waiver.js.map +1 -0
- package/dist/supervision/index.d.ts +170 -0
- package/dist/supervision/index.d.ts.map +1 -0
- package/dist/supervision/index.js +354 -0
- package/dist/supervision/index.js.map +1 -0
- package/dist/testing/clock.d.ts +50 -0
- package/dist/testing/clock.d.ts.map +1 -0
- package/dist/testing/clock.js +75 -0
- package/dist/testing/clock.js.map +1 -0
- package/dist/testing/env.d.ts +66 -0
- package/dist/testing/env.d.ts.map +1 -0
- package/dist/testing/env.js +106 -0
- package/dist/testing/env.js.map +1 -0
- package/dist/testing/gate-runner.d.ts +141 -0
- package/dist/testing/gate-runner.d.ts.map +1 -0
- package/dist/testing/gate-runner.js +173 -0
- package/dist/testing/gate-runner.js.map +1 -0
- package/dist/testing/gf19.d.ts +106 -0
- package/dist/testing/gf19.d.ts.map +1 -0
- package/dist/testing/gf19.js +282 -0
- package/dist/testing/gf19.js.map +1 -0
- package/dist/testing/index.d.ts +20 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +14 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/red-probe.d.ts +138 -0
- package/dist/testing/red-probe.d.ts.map +1 -0
- package/dist/testing/red-probe.js +251 -0
- package/dist/testing/red-probe.js.map +1 -0
- package/dist/testing/temp-repo.d.ts +126 -0
- package/dist/testing/temp-repo.d.ts.map +1 -0
- package/dist/testing/temp-repo.js +214 -0
- package/dist/testing/temp-repo.js.map +1 -0
- package/dist/verdict/cause.d.ts +99 -0
- package/dist/verdict/cause.d.ts.map +1 -0
- package/dist/verdict/cause.js +206 -0
- package/dist/verdict/cause.js.map +1 -0
- package/dist/verdict/evaluate.d.ts +135 -0
- package/dist/verdict/evaluate.d.ts.map +1 -0
- package/dist/verdict/evaluate.js +1513 -0
- package/dist/verdict/evaluate.js.map +1 -0
- package/dist/verdict/index.d.ts +21 -0
- package/dist/verdict/index.d.ts.map +1 -0
- package/dist/verdict/index.js +20 -0
- package/dist/verdict/index.js.map +1 -0
- package/dist/verdict/pack-verifiers.d.ts +97 -0
- package/dist/verdict/pack-verifiers.d.ts.map +1 -0
- package/dist/verdict/pack-verifiers.js +763 -0
- package/dist/verdict/pack-verifiers.js.map +1 -0
- package/dist/verdict/registry.d.ts +180 -0
- package/dist/verdict/registry.d.ts.map +1 -0
- package/dist/verdict/registry.js +67 -0
- package/dist/verdict/registry.js.map +1 -0
- package/dist/waivers/index.d.ts +103 -0
- package/dist/waivers/index.d.ts.map +1 -0
- package/dist/waivers/index.js +192 -0
- package/dist/waivers/index.js.map +1 -0
- package/package.json +40 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Coverage-policy schemas (plan 2026-09-13 §3.6, Phase 0 item 7, ADR
|
|
3
|
+
* 0005 D5): a tracked, OWNER-OWNED configuration section enumerating
|
|
4
|
+
* user-facing tables, their required real-UI CRUD operations, and any
|
|
5
|
+
* owner disposition excusing a table from that coverage. Recording or
|
|
6
|
+
* approving a disposition is a trusted-policy act — an agent edit never
|
|
7
|
+
* self-approves, because the section participates in the trusted policy
|
|
8
|
+
* revision identity.
|
|
9
|
+
*/
|
|
10
|
+
import { z } from 'zod';
|
|
11
|
+
/** The four real-UI operations a table may require coverage for. */
|
|
12
|
+
export const COVERAGE_OPERATIONS = ['create', 'read', 'update', 'delete'];
|
|
13
|
+
/** The operation union a coverage policy may require. */
|
|
14
|
+
export const CoverageOperationSchema = z.enum(COVERAGE_OPERATIONS);
|
|
15
|
+
/**
|
|
16
|
+
* An OWNER disposition (plan §3.6): the recorded reason a table owes no
|
|
17
|
+
* real-UI coverage for its required operations. Kinds are closed-world;
|
|
18
|
+
* `other` requires the note to stay auditable. Approving one is a
|
|
19
|
+
* trusted-policy act, never an agent self-approval.
|
|
20
|
+
*/
|
|
21
|
+
export const CoverageDispositionSchema = z
|
|
22
|
+
.object({
|
|
23
|
+
kind: z.enum(['read-only-surface', 'admin-plane-unreachable', 'not-user-facing', 'other']),
|
|
24
|
+
/** Why the disposition applies; REQUIRED for `other` (auditability). */
|
|
25
|
+
note: z.string().min(1).optional(),
|
|
26
|
+
})
|
|
27
|
+
.strict()
|
|
28
|
+
.superRefine((disposition, ctx) => {
|
|
29
|
+
if (disposition.kind === 'other' && (disposition.note === undefined || disposition.note.length === 0)) {
|
|
30
|
+
ctx.addIssue({
|
|
31
|
+
code: 'custom',
|
|
32
|
+
path: ['note'],
|
|
33
|
+
message: "disposition kind 'other' requires 'note' (the owner's reason must be recorded)",
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
/** One policy-enumerated user-facing table. */
|
|
38
|
+
export const CoverageTableSchema = z
|
|
39
|
+
.object({
|
|
40
|
+
/** The resource inventory's bare table name (exact match). */
|
|
41
|
+
name: z.string().min(1),
|
|
42
|
+
/**
|
|
43
|
+
* Operations requiring mapped browser-e2e coverage unless a
|
|
44
|
+
* disposition excuses the table. A subset of the four real-UI
|
|
45
|
+
* operations; empty would enforce nothing and is rejected.
|
|
46
|
+
*/
|
|
47
|
+
requiredOperations: z.array(CoverageOperationSchema).min(1),
|
|
48
|
+
/** Owner disposition recorded in trusted config (when coverage is excused). */
|
|
49
|
+
disposition: CoverageDispositionSchema.optional(),
|
|
50
|
+
})
|
|
51
|
+
.strict();
|
|
52
|
+
/**
|
|
53
|
+
* The `coveragePolicy` config section (plan §3.6). Absent or empty
|
|
54
|
+
* (`tables: []`) means the feature is OFF — enabling it is an explicit,
|
|
55
|
+
* tracked owner decision. Table names must be unique (a duplicate would
|
|
56
|
+
* make the enforcement scope ambiguous); each name is validated against
|
|
57
|
+
* the current run's resource inventory on every run.
|
|
58
|
+
*/
|
|
59
|
+
export const CoveragePolicySchema = z
|
|
60
|
+
.object({
|
|
61
|
+
/** User-facing tables the policy governs. */
|
|
62
|
+
tables: z.array(CoverageTableSchema),
|
|
63
|
+
})
|
|
64
|
+
.strict()
|
|
65
|
+
.superRefine((policy, ctx) => {
|
|
66
|
+
const seen = new Set();
|
|
67
|
+
for (let index = 0; index < policy.tables.length; index += 1) {
|
|
68
|
+
const name = policy.tables[index]?.name;
|
|
69
|
+
if (name === undefined)
|
|
70
|
+
continue;
|
|
71
|
+
if (seen.has(name)) {
|
|
72
|
+
ctx.addIssue({
|
|
73
|
+
code: 'custom',
|
|
74
|
+
path: ['tables', index, 'name'],
|
|
75
|
+
message: `duplicate coverage-policy table '${name}': the enforcement scope must be unambiguous`,
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
seen.add(name);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=coverage-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coverage-policy.js","sourceRoot":"","sources":["../../src/schemas/coverage-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,oEAAoE;AACpE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAEnF,yDAAyD;AACzD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAKnE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC;KACvC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,mBAAmB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAC1F,wEAAwE;IACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACnC,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE;IAChC,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACtG,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,MAAM,CAAC;YACd,OAAO,EAAE,gFAAgF;SAC1F,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC;AAKL,+CAA+C;AAC/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC;KACjC,MAAM,CAAC;IACN,8DAA8D;IAC9D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB;;;;OAIG;IACH,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3D,+EAA+E;IAC/E,WAAW,EAAE,yBAAyB,CAAC,QAAQ,EAAE;CAClD,CAAC;KACD,MAAM,EAAE,CAAC;AAKZ;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,6CAA6C;IAC7C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC;CACrC,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;IAC3B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;QACxC,IAAI,IAAI,KAAK,SAAS;YAAE,SAAS;QACjC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC;gBAC/B,OAAO,EAAE,oCAAoC,IAAI,8CAA8C;aAChG,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EvidenceRecord schema (plan §4.7, pins #7/#11): typed records issued
|
|
3
|
+
* by the witness service. This is the only evidence shape the verifier
|
|
4
|
+
* trusts; test-side assertions never appear here.
|
|
5
|
+
*
|
|
6
|
+
* ADR 0001 / GF-23 encoded here: every record carries a service-issued
|
|
7
|
+
* `recordId` and the `runId` of its run manifest. Records whose trust
|
|
8
|
+
* tier is `claimed` (no service-issued provenance) can never produce a
|
|
9
|
+
* `satisfied` verdict — the verdict engine enforces that.
|
|
10
|
+
*/
|
|
11
|
+
import { z } from 'zod';
|
|
12
|
+
/**
|
|
13
|
+
* Optional bulk scope (pin #11): a single record may stand for `count`
|
|
14
|
+
* homogeneous items. Obligations themselves stay per-resource; bulk
|
|
15
|
+
* scope only widens what one record attests.
|
|
16
|
+
*/
|
|
17
|
+
export declare const BulkScopeSchema: z.ZodObject<{
|
|
18
|
+
kind: z.ZodLiteral<"bulk">;
|
|
19
|
+
count: z.ZodNumber;
|
|
20
|
+
}, z.core.$strict>;
|
|
21
|
+
/** Inferred bulk-scope shape. */
|
|
22
|
+
export type BulkScope = z.infer<typeof BulkScopeSchema>;
|
|
23
|
+
/**
|
|
24
|
+
* Where a record's contents came from (part of the hashed identity,
|
|
25
|
+
* pin #7). `suite-submitted` records carry the TESTED SUITE's own
|
|
26
|
+
* assertion — the witness received it but cannot verify it happened —
|
|
27
|
+
* and are stamped `trust: 'claimed'` at issuance. `engine-observed`
|
|
28
|
+
* records carry contents the witness itself produced from an
|
|
29
|
+
* engine-side observation (the adapter read behind
|
|
30
|
+
* `persistence.entity`) and are stamped `trust: 'witnessed'`.
|
|
31
|
+
*/
|
|
32
|
+
export declare const RecordOriginSchema: z.ZodEnum<{
|
|
33
|
+
"suite-submitted": "suite-submitted";
|
|
34
|
+
"engine-observed": "engine-observed";
|
|
35
|
+
}>;
|
|
36
|
+
/** Inferred record-origin shape. */
|
|
37
|
+
export type RecordOrigin = z.infer<typeof RecordOriginSchema>;
|
|
38
|
+
/**
|
|
39
|
+
* A trusted evidence record issued by the witness service.
|
|
40
|
+
*/
|
|
41
|
+
export declare const EvidenceRecordSchema: z.ZodObject<{
|
|
42
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
43
|
+
recordId: z.ZodString;
|
|
44
|
+
runId: z.ZodUUID;
|
|
45
|
+
trust: z.ZodEnum<{
|
|
46
|
+
claimed: "claimed";
|
|
47
|
+
witnessed: "witnessed";
|
|
48
|
+
}>;
|
|
49
|
+
obligationId: z.ZodString;
|
|
50
|
+
kind: z.ZodString;
|
|
51
|
+
testId: z.ZodOptional<z.ZodString>;
|
|
52
|
+
payload: z.ZodOptional<z.ZodUnknown>;
|
|
53
|
+
origin: z.ZodOptional<z.ZodEnum<{
|
|
54
|
+
"suite-submitted": "suite-submitted";
|
|
55
|
+
"engine-observed": "engine-observed";
|
|
56
|
+
}>>;
|
|
57
|
+
scope: z.ZodOptional<z.ZodObject<{
|
|
58
|
+
kind: z.ZodLiteral<"bulk">;
|
|
59
|
+
count: z.ZodNumber;
|
|
60
|
+
}, z.core.$strict>>;
|
|
61
|
+
issuedAt: z.ZodOptional<z.ZodISODateTime>;
|
|
62
|
+
}, z.core.$strict>;
|
|
63
|
+
/** Inferred evidence-record shape. */
|
|
64
|
+
export type EvidenceRecord = z.infer<typeof EvidenceRecordSchema>;
|
|
65
|
+
//# sourceMappingURL=evidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../src/schemas/evidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;kBAMjB,CAAC;AAEZ,iCAAiC;AACjC,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB;;;EAAiD,CAAC;AAEjF,oCAAoC;AACpC,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;kBAwBtB,CAAC;AAEZ,sCAAsC;AACtC,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EvidenceRecord schema (plan §4.7, pins #7/#11): typed records issued
|
|
3
|
+
* by the witness service. This is the only evidence shape the verifier
|
|
4
|
+
* trusts; test-side assertions never appear here.
|
|
5
|
+
*
|
|
6
|
+
* ADR 0001 / GF-23 encoded here: every record carries a service-issued
|
|
7
|
+
* `recordId` and the `runId` of its run manifest. Records whose trust
|
|
8
|
+
* tier is `claimed` (no service-issued provenance) can never produce a
|
|
9
|
+
* `satisfied` verdict — the verdict engine enforces that.
|
|
10
|
+
*/
|
|
11
|
+
import { z } from 'zod';
|
|
12
|
+
import { SchemaVersionField, TrustTierSchema } from './common.js';
|
|
13
|
+
import { ObligationIdSchema } from './claim.js';
|
|
14
|
+
/**
|
|
15
|
+
* Optional bulk scope (pin #11): a single record may stand for `count`
|
|
16
|
+
* homogeneous items. Obligations themselves stay per-resource; bulk
|
|
17
|
+
* scope only widens what one record attests.
|
|
18
|
+
*/
|
|
19
|
+
export const BulkScopeSchema = z
|
|
20
|
+
.object({
|
|
21
|
+
kind: z.literal('bulk'),
|
|
22
|
+
/** Number of items this record attests to (positive). */
|
|
23
|
+
count: z.number().int().min(1),
|
|
24
|
+
})
|
|
25
|
+
.strict();
|
|
26
|
+
/**
|
|
27
|
+
* Where a record's contents came from (part of the hashed identity,
|
|
28
|
+
* pin #7). `suite-submitted` records carry the TESTED SUITE's own
|
|
29
|
+
* assertion — the witness received it but cannot verify it happened —
|
|
30
|
+
* and are stamped `trust: 'claimed'` at issuance. `engine-observed`
|
|
31
|
+
* records carry contents the witness itself produced from an
|
|
32
|
+
* engine-side observation (the adapter read behind
|
|
33
|
+
* `persistence.entity`) and are stamped `trust: 'witnessed'`.
|
|
34
|
+
*/
|
|
35
|
+
export const RecordOriginSchema = z.enum(['suite-submitted', 'engine-observed']);
|
|
36
|
+
/**
|
|
37
|
+
* A trusted evidence record issued by the witness service.
|
|
38
|
+
*/
|
|
39
|
+
export const EvidenceRecordSchema = z
|
|
40
|
+
.object({
|
|
41
|
+
schemaVersion: SchemaVersionField,
|
|
42
|
+
/** Service-issued record id (sha256 hex of its canonical identity). */
|
|
43
|
+
recordId: z.string().regex(/^[0-9a-f]{64}$/, 'recordId must be a 64-char lowercase sha256 hex'),
|
|
44
|
+
/** Run manifest this record belongs to. */
|
|
45
|
+
runId: z.uuid(),
|
|
46
|
+
/** Trust tier: `witnessed` records were collected engine-side. */
|
|
47
|
+
trust: TrustTierSchema,
|
|
48
|
+
/** Obligation the evidence relates to. */
|
|
49
|
+
obligationId: ObligationIdSchema,
|
|
50
|
+
/** Evidence primitive kind, e.g. `ui.action`, `persistence.entity`. */
|
|
51
|
+
kind: z.string().min(1),
|
|
52
|
+
/** Test that produced the claim this evidence supports, when known. */
|
|
53
|
+
testId: z.string().min(1).optional(),
|
|
54
|
+
/** Evidence payload (primitive-defined, open JSON). */
|
|
55
|
+
payload: z.unknown().optional(),
|
|
56
|
+
/** Where the contents came from (drives the trust stamp at issuance). */
|
|
57
|
+
origin: RecordOriginSchema.optional(),
|
|
58
|
+
/** Bulk attestation scope, when this record covers multiple items. */
|
|
59
|
+
scope: BulkScopeSchema.optional(),
|
|
60
|
+
/** Issue timestamp from the engine-injected clock (ISO-8601). */
|
|
61
|
+
issuedAt: z.iso.datetime().optional(),
|
|
62
|
+
})
|
|
63
|
+
.strict();
|
|
64
|
+
//# sourceMappingURL=evidence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/schemas/evidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB,yDAAyD;IACzD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC;KACD,MAAM,EAAE,CAAC;AAKZ;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAKjF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,aAAa,EAAE,kBAAkB;IACjC,uEAAuE;IACvE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,iDAAiD,CAAC;IAC/F,2CAA2C;IAC3C,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE;IACf,kEAAkE;IAClE,KAAK,EAAE,eAAe;IACtB,0CAA0C;IAC1C,YAAY,EAAE,kBAAkB;IAChC,uEAAuE;IACvE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,uEAAuE;IACvE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,uDAAuD;IACvD,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,yEAAyE;IACzE,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACrC,sEAAsE;IACtE,KAAK,EAAE,eAAe,CAAC,QAAQ,EAAE;IACjC,iEAAiE;IACjE,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Execution-result record (plan 2026-09-13 §5.1 row "Execution result",
|
|
3
|
+
* Phase 4 work item 3, ADR 0005 D2): the trusted supervisor's OWN account
|
|
4
|
+
* of a run — planned versus executed instances, per-instance outcomes and
|
|
5
|
+
* attempts, runner exit, fixture/teardown outcome, shard completeness,
|
|
6
|
+
* selection + catalog digests, trusted policy digest, engine versions,
|
|
7
|
+
* and environment identity.
|
|
8
|
+
*
|
|
9
|
+
* Trust boundary (ADR 0005 D2): the suite reporter is INPUT, never
|
|
10
|
+
* signature authority. This record is written by trusted supervision
|
|
11
|
+
* under the excluded run-state directory; its digest (see
|
|
12
|
+
* {@link executionResultDigestOf}) is what the gate receipt binds —
|
|
13
|
+
* never a reporter aggregate. `outcomes` rows are supervision-normalized
|
|
14
|
+
* data, not the reporter's own summary.
|
|
15
|
+
*/
|
|
16
|
+
import { z } from 'zod';
|
|
17
|
+
/** Domain tag separating execution-result digests from every other hash. */
|
|
18
|
+
export declare const EXECUTION_RESULT_DOMAIN = "gateforge.execution-result.v1";
|
|
19
|
+
/** Domain tag separating selection digests from every other hash. */
|
|
20
|
+
export declare const SELECTION_DOMAIN = "gateforge.selection.v1";
|
|
21
|
+
/** One planned instance (fixed BEFORE the run; ADR 0005 D2). */
|
|
22
|
+
export declare const PlannedInstanceSchema: z.ZodObject<{
|
|
23
|
+
logicalKey: z.ZodString;
|
|
24
|
+
project: z.ZodNullable<z.ZodString>;
|
|
25
|
+
file: z.ZodString;
|
|
26
|
+
titlePath: z.ZodArray<z.ZodString>;
|
|
27
|
+
frameworkId: z.ZodNullable<z.ZodString>;
|
|
28
|
+
}, z.core.$strict>;
|
|
29
|
+
/** Inferred planned-instance shape. */
|
|
30
|
+
export type PlannedInstance = z.infer<typeof PlannedInstanceSchema>;
|
|
31
|
+
/** Per-instance execution status the supervisor accepts from the runner. */
|
|
32
|
+
export declare const InstanceStatusSchema: z.ZodEnum<{
|
|
33
|
+
fixme: "fixme";
|
|
34
|
+
passed: "passed";
|
|
35
|
+
failed: "failed";
|
|
36
|
+
skipped: "skipped";
|
|
37
|
+
"not-run": "not-run";
|
|
38
|
+
}>;
|
|
39
|
+
/** Inferred instance-status shape. */
|
|
40
|
+
export type InstanceStatus = z.infer<typeof InstanceStatusSchema>;
|
|
41
|
+
/** One executed instance outcome (supervision-normalized; input only). */
|
|
42
|
+
export declare const ExecutedOutcomeSchema: z.ZodObject<{
|
|
43
|
+
logicalKey: z.ZodString;
|
|
44
|
+
project: z.ZodNullable<z.ZodString>;
|
|
45
|
+
file: z.ZodString;
|
|
46
|
+
titlePath: z.ZodArray<z.ZodString>;
|
|
47
|
+
status: z.ZodEnum<{
|
|
48
|
+
fixme: "fixme";
|
|
49
|
+
passed: "passed";
|
|
50
|
+
failed: "failed";
|
|
51
|
+
skipped: "skipped";
|
|
52
|
+
"not-run": "not-run";
|
|
53
|
+
}>;
|
|
54
|
+
attempt: z.ZodNumber;
|
|
55
|
+
expectedFailure: z.ZodBoolean;
|
|
56
|
+
}, z.core.$strict>;
|
|
57
|
+
/** Inferred executed-outcome shape. */
|
|
58
|
+
export type ExecutedOutcome = z.infer<typeof ExecutedOutcomeSchema>;
|
|
59
|
+
/** One typed supervision finding (plan §5.4 run rows). */
|
|
60
|
+
export declare const SupervisionFindingSchema: z.ZodObject<{
|
|
61
|
+
cause: z.ZodEnum<{
|
|
62
|
+
TEST_NOT_EXECUTED: "TEST_NOT_EXECUTED";
|
|
63
|
+
TEST_FAILED: "TEST_FAILED";
|
|
64
|
+
RUN_INCOMPLETE: "RUN_INCOMPLETE";
|
|
65
|
+
}>;
|
|
66
|
+
detail: z.ZodString;
|
|
67
|
+
logicalKey: z.ZodNullable<z.ZodString>;
|
|
68
|
+
}, z.core.$strict>;
|
|
69
|
+
/** Inferred supervision-finding shape. */
|
|
70
|
+
export type SupervisionFinding = z.infer<typeof SupervisionFindingSchema>;
|
|
71
|
+
/** One witness-recorded session of an expected test (execution authority). */
|
|
72
|
+
export declare const TracedSessionSchema: z.ZodObject<{
|
|
73
|
+
sessionId: z.ZodString;
|
|
74
|
+
openedTick: z.ZodNumber;
|
|
75
|
+
sealedTick: z.ZodNullable<z.ZodNumber>;
|
|
76
|
+
outcome: z.ZodNullable<z.ZodString>;
|
|
77
|
+
activity: z.ZodNumber;
|
|
78
|
+
}, z.core.$strict>;
|
|
79
|
+
/** Inferred traced-session shape. */
|
|
80
|
+
export type TracedSession = z.infer<typeof TracedSessionSchema>;
|
|
81
|
+
/** The witness-side session trace for ONE expected test. */
|
|
82
|
+
export declare const TracedTestSchema: z.ZodObject<{
|
|
83
|
+
testId: z.ZodNullable<z.ZodString>;
|
|
84
|
+
project: z.ZodNullable<z.ZodString>;
|
|
85
|
+
file: z.ZodString;
|
|
86
|
+
titlePath: z.ZodArray<z.ZodString>;
|
|
87
|
+
sessions: z.ZodArray<z.ZodObject<{
|
|
88
|
+
sessionId: z.ZodString;
|
|
89
|
+
openedTick: z.ZodNumber;
|
|
90
|
+
sealedTick: z.ZodNullable<z.ZodNumber>;
|
|
91
|
+
outcome: z.ZodNullable<z.ZodString>;
|
|
92
|
+
activity: z.ZodNumber;
|
|
93
|
+
}, z.core.$strict>>;
|
|
94
|
+
}, z.core.$strict>;
|
|
95
|
+
/** Inferred traced-test shape. */
|
|
96
|
+
export type TracedTest = z.infer<typeof TracedTestSchema>;
|
|
97
|
+
/**
|
|
98
|
+
* The sealed execution result. Strict: unknown keys are rejected so a
|
|
99
|
+
* hostile run-state edit cannot smuggle extra authority in.
|
|
100
|
+
*/
|
|
101
|
+
export declare const ExecutionResultSchema: z.ZodObject<{
|
|
102
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
103
|
+
runId: z.ZodString;
|
|
104
|
+
invocationId: z.ZodString;
|
|
105
|
+
inputDigest: z.ZodString;
|
|
106
|
+
trustedPolicyDigest: z.ZodString;
|
|
107
|
+
selection: z.ZodObject<{
|
|
108
|
+
runner: z.ZodString;
|
|
109
|
+
mode: z.ZodEnum<{
|
|
110
|
+
"full-relevant-suite": "full-relevant-suite";
|
|
111
|
+
"mapped-selection": "mapped-selection";
|
|
112
|
+
}>;
|
|
113
|
+
logicalKeys: z.ZodArray<z.ZodString>;
|
|
114
|
+
}, z.core.$strict>;
|
|
115
|
+
selectionDigest: z.ZodString;
|
|
116
|
+
catalogDigest: z.ZodString;
|
|
117
|
+
planned: z.ZodArray<z.ZodObject<{
|
|
118
|
+
logicalKey: z.ZodString;
|
|
119
|
+
project: z.ZodNullable<z.ZodString>;
|
|
120
|
+
file: z.ZodString;
|
|
121
|
+
titlePath: z.ZodArray<z.ZodString>;
|
|
122
|
+
frameworkId: z.ZodNullable<z.ZodString>;
|
|
123
|
+
}, z.core.$strict>>;
|
|
124
|
+
outcomes: z.ZodArray<z.ZodObject<{
|
|
125
|
+
logicalKey: z.ZodString;
|
|
126
|
+
project: z.ZodNullable<z.ZodString>;
|
|
127
|
+
file: z.ZodString;
|
|
128
|
+
titlePath: z.ZodArray<z.ZodString>;
|
|
129
|
+
status: z.ZodEnum<{
|
|
130
|
+
fixme: "fixme";
|
|
131
|
+
passed: "passed";
|
|
132
|
+
failed: "failed";
|
|
133
|
+
skipped: "skipped";
|
|
134
|
+
"not-run": "not-run";
|
|
135
|
+
}>;
|
|
136
|
+
attempt: z.ZodNumber;
|
|
137
|
+
expectedFailure: z.ZodBoolean;
|
|
138
|
+
}, z.core.$strict>>;
|
|
139
|
+
enumerationDigest: z.ZodOptional<z.ZodString>;
|
|
140
|
+
sessionTrace: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
141
|
+
testId: z.ZodNullable<z.ZodString>;
|
|
142
|
+
project: z.ZodNullable<z.ZodString>;
|
|
143
|
+
file: z.ZodString;
|
|
144
|
+
titlePath: z.ZodArray<z.ZodString>;
|
|
145
|
+
sessions: z.ZodArray<z.ZodObject<{
|
|
146
|
+
sessionId: z.ZodString;
|
|
147
|
+
openedTick: z.ZodNumber;
|
|
148
|
+
sealedTick: z.ZodNullable<z.ZodNumber>;
|
|
149
|
+
outcome: z.ZodNullable<z.ZodString>;
|
|
150
|
+
activity: z.ZodNumber;
|
|
151
|
+
}, z.core.$strict>>;
|
|
152
|
+
}, z.core.$strict>>>;
|
|
153
|
+
runnerExit: z.ZodNullable<z.ZodNumber>;
|
|
154
|
+
complete: z.ZodBoolean;
|
|
155
|
+
causes: z.ZodArray<z.ZodObject<{
|
|
156
|
+
cause: z.ZodEnum<{
|
|
157
|
+
TEST_NOT_EXECUTED: "TEST_NOT_EXECUTED";
|
|
158
|
+
TEST_FAILED: "TEST_FAILED";
|
|
159
|
+
RUN_INCOMPLETE: "RUN_INCOMPLETE";
|
|
160
|
+
}>;
|
|
161
|
+
detail: z.ZodString;
|
|
162
|
+
logicalKey: z.ZodNullable<z.ZodString>;
|
|
163
|
+
}, z.core.$strict>>;
|
|
164
|
+
fixtureOutcome: z.ZodEnum<{
|
|
165
|
+
unknown: "unknown";
|
|
166
|
+
passed: "passed";
|
|
167
|
+
failed: "failed";
|
|
168
|
+
}>;
|
|
169
|
+
shardCompleteness: z.ZodObject<{
|
|
170
|
+
complete: z.ZodBoolean;
|
|
171
|
+
detail: z.ZodString;
|
|
172
|
+
}, z.core.$strict>;
|
|
173
|
+
maxAttemptObserved: z.ZodNumber;
|
|
174
|
+
engines: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
175
|
+
browsers: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
176
|
+
environmentIdentity: z.ZodString;
|
|
177
|
+
startedAt: z.ZodString;
|
|
178
|
+
finishedAt: z.ZodString;
|
|
179
|
+
}, z.core.$strict>;
|
|
180
|
+
/** Inferred execution-result shape. */
|
|
181
|
+
export type ExecutionResult = z.infer<typeof ExecutionResultSchema>;
|
|
182
|
+
/**
|
|
183
|
+
* Computes the domain-separated digest of an execution result (plan §5.1:
|
|
184
|
+
* the receipt binds THIS digest, never a reporter aggregate). The digest
|
|
185
|
+
* covers every field except the `causes`-vs-`complete` consistency check
|
|
186
|
+
* (which is structural, not content).
|
|
187
|
+
*
|
|
188
|
+
* Args:
|
|
189
|
+
* result: a validated execution result.
|
|
190
|
+
*
|
|
191
|
+
* Returns:
|
|
192
|
+
* string: 64-char lowercase hex digest.
|
|
193
|
+
*
|
|
194
|
+
* Throws:
|
|
195
|
+
* TypeError: when the result contains non-JSON-representable values.
|
|
196
|
+
*/
|
|
197
|
+
export declare function executionResultDigestOf(result: ExecutionResult): string;
|
|
198
|
+
/**
|
|
199
|
+
* Computes the domain-separated selection digest (plan Phase 4 item 3:
|
|
200
|
+
* the expected test set is hashed BEFORE the run so a receipt binds the
|
|
201
|
+
* exact selection, and any selection change forces a fresh run).
|
|
202
|
+
*
|
|
203
|
+
* Args:
|
|
204
|
+
* selection: the runner, mode, and logical keys selected.
|
|
205
|
+
*
|
|
206
|
+
* Returns:
|
|
207
|
+
* string: 64-char lowercase hex digest.
|
|
208
|
+
*/
|
|
209
|
+
export declare function selectionDigestOf(selection: {
|
|
210
|
+
runner: string;
|
|
211
|
+
mode: 'full-relevant-suite' | 'mapped-selection';
|
|
212
|
+
logicalKeys: readonly string[];
|
|
213
|
+
}): string;
|
|
214
|
+
//# sourceMappingURL=execution-result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution-result.d.ts","sourceRoot":"","sources":["../../src/schemas/execution-result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB,kCAAkC,CAAC;AAEvE,qEAAqE;AACrE,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AAKzD,gEAAgE;AAChE,eAAO,MAAM,qBAAqB;;;;;;kBAavB,CAAC;AAEZ,uCAAuC;AACvC,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,4EAA4E;AAC5E,eAAO,MAAM,oBAAoB;;;;;;EAA8D,CAAC;AAEhG,sCAAsC;AACtC,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;kBAiBvB,CAAC;AAEZ,uCAAuC;AACvC,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,0DAA0D;AAC1D,eAAO,MAAM,wBAAwB;;;;;;;;kBAS1B,CAAC;AAEZ,0CAA0C;AAC1C,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB;;;;;;kBAkBrB,CAAC;AAEZ,qCAAqC;AACrC,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;kBAalB,CAAC;AAEZ,kCAAkC;AAClC,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA2F9B,CAAC;AAEL,uCAAuC;AACvC,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAEvE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,qBAAqB,GAAG,kBAAkB,CAAC;IACjD,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,GAAG,MAAM,CAOT"}
|