@coderifts/agent-guard 14.1.0 → 15.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.
- package/dist/cjs/atomic-profile.d.ts +16 -7
- package/dist/cjs/atomic-profile.d.ts.map +1 -1
- package/dist/cjs/atomic-profile.js +18 -7
- package/dist/cjs/atomic-profile.js.map +1 -1
- package/dist/cjs/deny-remedy.d.ts +74 -0
- package/dist/cjs/deny-remedy.d.ts.map +1 -0
- package/dist/cjs/deny-remedy.js +127 -0
- package/dist/cjs/deny-remedy.js.map +1 -0
- package/dist/cjs/deploy-gate.d.ts +14 -1
- package/dist/cjs/deploy-gate.d.ts.map +1 -1
- package/dist/cjs/deploy-gate.js.map +1 -1
- package/dist/cjs/deploy-receipt-token.d.ts +2 -2
- package/dist/cjs/deploy-receipt-token.d.ts.map +1 -1
- package/dist/cjs/deploy-receipt-token.js +64 -1
- package/dist/cjs/deploy-receipt-token.js.map +1 -1
- package/dist/cjs/execution-grant.d.ts +100 -0
- package/dist/cjs/execution-grant.d.ts.map +1 -1
- package/dist/cjs/execution-grant.js +101 -0
- package/dist/cjs/execution-grant.js.map +1 -1
- package/dist/cjs/guard.d.ts.map +1 -1
- package/dist/cjs/guard.js +56 -8
- package/dist/cjs/guard.js.map +1 -1
- package/dist/cjs/policy.d.ts.map +1 -1
- package/dist/cjs/policy.js +1 -1
- package/dist/cjs/policy.js.map +1 -1
- package/dist/cjs/posture-receipt.d.ts +39 -0
- package/dist/cjs/posture-receipt.d.ts.map +1 -1
- package/dist/cjs/posture-receipt.js +39 -0
- package/dist/cjs/posture-receipt.js.map +1 -1
- package/dist/cjs/types.d.ts +23 -0
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/cjs/with-coderifts.d.ts +15 -0
- package/dist/cjs/with-coderifts.d.ts.map +1 -1
- package/dist/cjs/with-coderifts.js +18 -3
- package/dist/cjs/with-coderifts.js.map +1 -1
- package/dist/esm/atomic-profile.d.ts +16 -7
- package/dist/esm/atomic-profile.d.ts.map +1 -1
- package/dist/esm/atomic-profile.js +18 -7
- package/dist/esm/atomic-profile.js.map +1 -1
- package/dist/esm/deny-remedy.d.ts +74 -0
- package/dist/esm/deny-remedy.d.ts.map +1 -0
- package/dist/esm/deny-remedy.js +122 -0
- package/dist/esm/deny-remedy.js.map +1 -0
- package/dist/esm/deploy-gate.d.ts +14 -1
- package/dist/esm/deploy-gate.d.ts.map +1 -1
- package/dist/esm/deploy-gate.js.map +1 -1
- package/dist/esm/deploy-receipt-token.d.ts +2 -2
- package/dist/esm/deploy-receipt-token.d.ts.map +1 -1
- package/dist/esm/deploy-receipt-token.js +64 -1
- package/dist/esm/deploy-receipt-token.js.map +1 -1
- package/dist/esm/execution-grant.d.ts +100 -0
- package/dist/esm/execution-grant.d.ts.map +1 -1
- package/dist/esm/execution-grant.js +98 -0
- package/dist/esm/execution-grant.js.map +1 -1
- package/dist/esm/guard.d.ts.map +1 -1
- package/dist/esm/guard.js +57 -9
- package/dist/esm/guard.js.map +1 -1
- package/dist/esm/policy.d.ts.map +1 -1
- package/dist/esm/policy.js +1 -1
- package/dist/esm/policy.js.map +1 -1
- package/dist/esm/posture-receipt.d.ts +39 -0
- package/dist/esm/posture-receipt.d.ts.map +1 -1
- package/dist/esm/posture-receipt.js +39 -0
- package/dist/esm/posture-receipt.js.map +1 -1
- package/dist/esm/types.d.ts +23 -0
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/with-coderifts.d.ts +15 -0
- package/dist/esm/with-coderifts.d.ts.map +1 -1
- package/dist/esm/with-coderifts.js +18 -3
- package/dist/esm/with-coderifts.js.map +1 -1
- package/package.json +1 -1
|
@@ -13,10 +13,110 @@ export type ExecutionGrantConfig = {
|
|
|
13
13
|
}) => string | Promise<string>;
|
|
14
14
|
/** Default 'v1' this wave. ATOMIC construction requires 'v2'. */
|
|
15
15
|
grantVersion?: 'v1' | 'v2';
|
|
16
|
+
/**
|
|
17
|
+
* The V2 binding a grant request should carry (AUDIT P1 / RES-1).
|
|
18
|
+
*
|
|
19
|
+
* MEASURED before adding: the guard's authorize request sent only
|
|
20
|
+
* `include_execution_grant` and `state_nonce`, and the SDK's
|
|
21
|
+
* PreflightChangeSetRequest declares NEITHER these fields NOR `state_nonce` —
|
|
22
|
+
* the guard builds its own request literal and posts it as `unknown`, so the
|
|
23
|
+
* wire shape is guard-local. Adding them here is therefore a guard-side
|
|
24
|
+
* config surface, not a claim that the SDK type endorses them.
|
|
25
|
+
*
|
|
26
|
+
* Every one is OPTIONAL and every one is sent only when set. A deployment
|
|
27
|
+
* that does not configure a field gets it NAMED in the observation's
|
|
28
|
+
* `v2_fields_absent`, never a placeholder on the wire.
|
|
29
|
+
*
|
|
30
|
+
* ── DEPRECATED ALIASES (1198) ────────────────────────────────────────────
|
|
31
|
+
* The canonical home is the TOP LEVEL of the withCodeRifts input, where
|
|
32
|
+
* executorId/adapterId/targetUri already lived before this config existed
|
|
33
|
+
* (with-coderifts.ts:394-396) and where the ATOMIC construction check reads
|
|
34
|
+
* them. Setting them here still works and still reaches the wire — but a
|
|
35
|
+
* value here that DISAGREES with the top level is an initialization error,
|
|
36
|
+
* because the two used to feed different halves of the system with nothing
|
|
37
|
+
* reconciling them. See resolveV2Fields.
|
|
38
|
+
*
|
|
39
|
+
* Unreleased when this was written — added after the 14.1.0 release and never
|
|
40
|
+
* published — so no adopter depends on the nested spelling.
|
|
41
|
+
*/
|
|
42
|
+
executorId?: string;
|
|
43
|
+
adapterId?: string;
|
|
44
|
+
targetUri?: string;
|
|
45
|
+
tenantId?: string;
|
|
46
|
+
policyHash?: string;
|
|
47
|
+
audienceHash?: string;
|
|
16
48
|
};
|
|
49
|
+
/**
|
|
50
|
+
* THE CANONICAL V2 FIELD SET (roadmap 1198).
|
|
51
|
+
*
|
|
52
|
+
* MEASURED SPLIT-BRAIN, which is what this exists to end:
|
|
53
|
+
* · executorId / adapterId / targetUri lived in BOTH the top-level input
|
|
54
|
+
* (with-coderifts.ts:394-396 → the ATOMIC construction check and the
|
|
55
|
+
* posture tuple) and the nested executionGrant config (→ the authorize
|
|
56
|
+
* request). Nothing compared them, so a configuration could bind the
|
|
57
|
+
* profile to one executor and put another — or none — on the wire.
|
|
58
|
+
* · policyHash had a READER and no writer: atomic-profile.ts:247 passes
|
|
59
|
+
* `input.policyHash` to the posture verifier and with-coderifts.ts:911-915
|
|
60
|
+
* never forwarded it, so that binding was permanently undefined.
|
|
61
|
+
* · tenantId / audienceHash existed on the wire side only.
|
|
62
|
+
*
|
|
63
|
+
* This reads both spellings, REFUSES a disagreement, and returns one set that
|
|
64
|
+
* the wire and the profile both use. A field neither side supplies stays
|
|
65
|
+
* genuinely absent — the case 6bca531's named-absent was written for, and now
|
|
66
|
+
* the only case it covers.
|
|
67
|
+
*/
|
|
68
|
+
export declare const V2_FIELD_KEYS: readonly ["executorId", "adapterId", "targetUri", "tenantId", "policyHash", "audienceHash"];
|
|
69
|
+
export type V2FieldKey = typeof V2_FIELD_KEYS[number];
|
|
70
|
+
export type V2Fields = Partial<Record<V2FieldKey, string>>;
|
|
71
|
+
/**
|
|
72
|
+
* Resolve the canonical set from an input carrying either spelling.
|
|
73
|
+
*
|
|
74
|
+
* THROWS on disagreement. Preferring one silently is what produced the split:
|
|
75
|
+
* a caller who set both would have one quietly ignored, with no way to see
|
|
76
|
+
* which one survived.
|
|
77
|
+
*/
|
|
78
|
+
export declare function resolveV2Fields(input?: {
|
|
79
|
+
executorId?: unknown;
|
|
80
|
+
adapterId?: unknown;
|
|
81
|
+
targetUri?: unknown;
|
|
82
|
+
tenantId?: unknown;
|
|
83
|
+
policyHash?: unknown;
|
|
84
|
+
audienceHash?: unknown;
|
|
85
|
+
executionGrant?: ExecutionGrantConfig | null;
|
|
86
|
+
} | null): V2Fields;
|
|
87
|
+
/** The V2 request fields, in the wire spelling. One list, used to send and to report. */
|
|
88
|
+
export declare const V2_WIRE_FIELDS: readonly [readonly ["executor_id", "executorId"], readonly ["adapter_id", "adapterId"], readonly ["target_uri", "targetUri"], readonly ["tenant_id", "tenantId"], readonly ["policy_hash", "policyHash"], readonly ["audience_hash", "audienceHash"]];
|
|
89
|
+
export type V2WireResult = {
|
|
90
|
+
/** Wire-name -> value, for the fields this deployment actually configured. */
|
|
91
|
+
fields: Record<string, string>;
|
|
92
|
+
/** Wire-names this deployment did NOT configure. Named, never placeheld. */
|
|
93
|
+
absent: string[];
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Build the V2 field set for an authorize request.
|
|
97
|
+
*
|
|
98
|
+
* V1 sends nothing here: the fields describe a v2 binding, and attaching them
|
|
99
|
+
* to a v1 request would assert a shape the grant does not have.
|
|
100
|
+
*
|
|
101
|
+
* A value that is not a non-empty string is ABSENT, not empty-string-sent. An
|
|
102
|
+
* empty executor_id on the wire is indistinguishable from a real one that
|
|
103
|
+
* happens to be blank, and the server would bind it.
|
|
104
|
+
*/
|
|
105
|
+
export declare function v2WireFields(config: {
|
|
106
|
+
executionGrant?: ExecutionGrantConfig;
|
|
107
|
+
} | null | undefined): V2WireResult;
|
|
17
108
|
export type ExecutionGrantObservation = {
|
|
18
109
|
requested: boolean;
|
|
19
110
|
arrived: boolean;
|
|
111
|
+
/** Which grant shape was requested. */
|
|
112
|
+
grant_version?: 'v1' | 'v2';
|
|
113
|
+
/**
|
|
114
|
+
* The V2 binding this request actually carried, and what it could not.
|
|
115
|
+
* `v2_fields_absent` is the honest half: a field the deployment never
|
|
116
|
+
* configured is reported here rather than sent as an empty placeholder.
|
|
117
|
+
*/
|
|
118
|
+
v2_fields_sent?: string[];
|
|
119
|
+
v2_fields_absent?: string[];
|
|
20
120
|
};
|
|
21
121
|
export type ExecutionGrantCallContext = {
|
|
22
122
|
execution_grant: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-grant.d.ts","sourceRoot":"","sources":["../../src/execution-grant.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,IAAI,CAAC;IACd,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE;QACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,OAAO,CAAC;KACf,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,iEAAiE;IACjE,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-grant.d.ts","sourceRoot":"","sources":["../../src/execution-grant.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,112 @@
|
|
|
6
6
|
* a verdict input and is not folded into any fingerprint preimage.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.V2_WIRE_FIELDS = exports.V2_FIELD_KEYS = void 0;
|
|
10
|
+
exports.resolveV2Fields = resolveV2Fields;
|
|
11
|
+
exports.v2WireFields = v2WireFields;
|
|
9
12
|
exports.isExecutionGrantEnabled = isExecutionGrantEnabled;
|
|
10
13
|
exports.readExecutionGrantToken = readExecutionGrantToken;
|
|
11
14
|
exports.firstArtifactId = firstArtifactId;
|
|
12
15
|
exports.isSignerUnavailableError = isSignerUnavailableError;
|
|
13
16
|
exports.resolveStateNonceForCall = resolveStateNonceForCall;
|
|
17
|
+
/**
|
|
18
|
+
* THE CANONICAL V2 FIELD SET (roadmap 1198).
|
|
19
|
+
*
|
|
20
|
+
* MEASURED SPLIT-BRAIN, which is what this exists to end:
|
|
21
|
+
* · executorId / adapterId / targetUri lived in BOTH the top-level input
|
|
22
|
+
* (with-coderifts.ts:394-396 → the ATOMIC construction check and the
|
|
23
|
+
* posture tuple) and the nested executionGrant config (→ the authorize
|
|
24
|
+
* request). Nothing compared them, so a configuration could bind the
|
|
25
|
+
* profile to one executor and put another — or none — on the wire.
|
|
26
|
+
* · policyHash had a READER and no writer: atomic-profile.ts:247 passes
|
|
27
|
+
* `input.policyHash` to the posture verifier and with-coderifts.ts:911-915
|
|
28
|
+
* never forwarded it, so that binding was permanently undefined.
|
|
29
|
+
* · tenantId / audienceHash existed on the wire side only.
|
|
30
|
+
*
|
|
31
|
+
* This reads both spellings, REFUSES a disagreement, and returns one set that
|
|
32
|
+
* the wire and the profile both use. A field neither side supplies stays
|
|
33
|
+
* genuinely absent — the case 6bca531's named-absent was written for, and now
|
|
34
|
+
* the only case it covers.
|
|
35
|
+
*/
|
|
36
|
+
exports.V2_FIELD_KEYS = Object.freeze([
|
|
37
|
+
'executorId', 'adapterId', 'targetUri', 'tenantId', 'policyHash', 'audienceHash',
|
|
38
|
+
]);
|
|
39
|
+
/**
|
|
40
|
+
* Resolve the canonical set from an input carrying either spelling.
|
|
41
|
+
*
|
|
42
|
+
* THROWS on disagreement. Preferring one silently is what produced the split:
|
|
43
|
+
* a caller who set both would have one quietly ignored, with no way to see
|
|
44
|
+
* which one survived.
|
|
45
|
+
*/
|
|
46
|
+
function resolveV2Fields(input) {
|
|
47
|
+
const top = (input || {});
|
|
48
|
+
const nested = ((input && input.executionGrant) || {});
|
|
49
|
+
const out = {};
|
|
50
|
+
const conflicts = [];
|
|
51
|
+
for (const key of exports.V2_FIELD_KEYS) {
|
|
52
|
+
const t = typeof top[key] === 'string' && top[key].length > 0
|
|
53
|
+
? top[key] : undefined;
|
|
54
|
+
const n = typeof nested[key] === 'string' && nested[key].length > 0
|
|
55
|
+
? nested[key] : undefined;
|
|
56
|
+
if (t !== undefined && n !== undefined && t !== n) {
|
|
57
|
+
conflicts.push(` ${key}: top-level ${JSON.stringify(t)} vs executionGrant.${key} ${JSON.stringify(n)}`);
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
const v = t !== undefined ? t : n;
|
|
61
|
+
if (v !== undefined)
|
|
62
|
+
out[key] = v;
|
|
63
|
+
}
|
|
64
|
+
if (conflicts.length > 0) {
|
|
65
|
+
const err = new Error('withCodeRifts: the V2 identity fields are configured in two places and they disagree.\n'
|
|
66
|
+
+ `${conflicts.join('\n')}\n\n`
|
|
67
|
+
+ 'These feed DIFFERENT halves of the system — the top level binds the ATOMIC construction '
|
|
68
|
+
+ 'check and the posture receipt, the executionGrant copy goes on the authorize request — so '
|
|
69
|
+
+ 'a disagreement builds a grant against one identity and verifies against another. Set each '
|
|
70
|
+
+ 'field ONCE, at the top level; the executionGrant spelling is a deprecated alias.');
|
|
71
|
+
err.code = 'V2_FIELDS_CONFLICT';
|
|
72
|
+
throw err;
|
|
73
|
+
}
|
|
74
|
+
return out;
|
|
75
|
+
}
|
|
76
|
+
/** The V2 request fields, in the wire spelling. One list, used to send and to report. */
|
|
77
|
+
exports.V2_WIRE_FIELDS = Object.freeze([
|
|
78
|
+
['executor_id', 'executorId'],
|
|
79
|
+
['adapter_id', 'adapterId'],
|
|
80
|
+
['target_uri', 'targetUri'],
|
|
81
|
+
['tenant_id', 'tenantId'],
|
|
82
|
+
['policy_hash', 'policyHash'],
|
|
83
|
+
['audience_hash', 'audienceHash'],
|
|
84
|
+
]);
|
|
85
|
+
/**
|
|
86
|
+
* Build the V2 field set for an authorize request.
|
|
87
|
+
*
|
|
88
|
+
* V1 sends nothing here: the fields describe a v2 binding, and attaching them
|
|
89
|
+
* to a v1 request would assert a shape the grant does not have.
|
|
90
|
+
*
|
|
91
|
+
* A value that is not a non-empty string is ABSENT, not empty-string-sent. An
|
|
92
|
+
* empty executor_id on the wire is indistinguishable from a real one that
|
|
93
|
+
* happens to be blank, and the server would bind it.
|
|
94
|
+
*/
|
|
95
|
+
function v2WireFields(config) {
|
|
96
|
+
const g = config && config.executionGrant;
|
|
97
|
+
const fields = {};
|
|
98
|
+
const absent = [];
|
|
99
|
+
if (!g || g.grantVersion !== 'v2') {
|
|
100
|
+
return { fields, absent: exports.V2_WIRE_FIELDS.map(([wire]) => wire) };
|
|
101
|
+
}
|
|
102
|
+
// ONE SOURCE. Reading `config.executionGrant` directly here was half of the
|
|
103
|
+
// 1198 split: the profile read the top level and the wire read the nested
|
|
104
|
+
// copy, and a value set only at the top level never left the process.
|
|
105
|
+
const resolved = resolveV2Fields(config);
|
|
106
|
+
for (const [wire, key] of exports.V2_WIRE_FIELDS) {
|
|
107
|
+
const v = resolved[key];
|
|
108
|
+
if (typeof v === 'string' && v.length > 0)
|
|
109
|
+
fields[wire] = v;
|
|
110
|
+
else
|
|
111
|
+
absent.push(wire);
|
|
112
|
+
}
|
|
113
|
+
return { fields, absent };
|
|
114
|
+
}
|
|
14
115
|
function isExecutionGrantEnabled(config) {
|
|
15
116
|
return !!(config && config.executionGrant && config.executionGrant.enabled === true);
|
|
16
117
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-grant.js","sourceRoot":"","sources":["../../src/execution-grant.ts"],"names":[],"mappings":";AAAA;;;;;GAKG
|
|
1
|
+
{"version":3,"file":"execution-grant.js","sourceRoot":"","sources":["../../src/execution-grant.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/guard.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../src/guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,WAAW,EAAE,YAAY,EACT,kBAAkB,EAAE,cAAc,EAEnD,MAAM,YAAY,CAAC;AAYpB,OAAO,EAKL,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,KAAK,2BAA2B,EACjC,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../src/guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,WAAW,EAAE,YAAY,EACT,kBAAkB,EAAE,cAAc,EAEnD,MAAM,YAAY,CAAC;AAYpB,OAAO,EAKL,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,KAAK,2BAA2B,EACjC,MAAM,wBAAwB,CAAC;AA4fhC;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,CAAC,EACnC,IAAI,EAAE,kBAAkB,EACxB,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,EACjC,MAAM,EAAE,WAAW,EACnB,WAAW,CAAC,EAAE,oBAAoB,GAAG,2BAA2B,GAC/D,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAwe1B"}
|
package/dist/cjs/guard.js
CHANGED
|
@@ -25,6 +25,7 @@ const cas_attestation_js_1 = require("./cas-attestation.js");
|
|
|
25
25
|
const monitoring_delivery_js_1 = require("./monitoring-delivery.js");
|
|
26
26
|
const monitoring_attestation_js_1 = require("./monitoring-attestation.js");
|
|
27
27
|
const policy_js_1 = require("./policy.js");
|
|
28
|
+
const deny_remedy_js_1 = require("./deny-remedy.js");
|
|
28
29
|
const execution_grant_js_1 = require("./execution-grant.js");
|
|
29
30
|
// Per-config breaker state (time-window; not consecutive).
|
|
30
31
|
const breakers = new WeakMap();
|
|
@@ -222,12 +223,34 @@ function coverageSnap(config) {
|
|
|
222
223
|
function coverageOutcomeFieldsFrom(s) {
|
|
223
224
|
return s.coverageObserved ? { coverage_observed: s.coverageObserved } : {};
|
|
224
225
|
}
|
|
225
|
-
|
|
226
|
+
/**
|
|
227
|
+
* Every refusal the guard reaches before the factory runs. `call` is optional so
|
|
228
|
+
* the refusal does not depend on it: without it the outcome is exactly what it
|
|
229
|
+
* was before the remedy existed; with it the outcome additionally names the
|
|
230
|
+
* next step.
|
|
231
|
+
*
|
|
232
|
+
* The remedy is attached AFTER the verdict. No branch below reads it, and none
|
|
233
|
+
* can turn executed:false into anything else.
|
|
234
|
+
*/
|
|
235
|
+
function blocked(config, verdict, preflighted, freshness, conditional_write, monitoring_delivery, monitoring_attestation, grantObs, call) {
|
|
226
236
|
const commit_observation = {
|
|
227
237
|
status: 'not_observed', observed_at: iso(), host_attestation: 'absent',
|
|
228
238
|
};
|
|
229
239
|
const base = { executionAttempted: false, executed: false, enforced: false, verdict, preflighted };
|
|
230
240
|
const cov = coverageSnap(config);
|
|
241
|
+
// Only an UNAVAILABLE verdict carries a cause. A BLOCK or REQUEST_APPROVAL is a
|
|
242
|
+
// policy decision on a grant that verified fine — obtaining another grant is not
|
|
243
|
+
// the next step there, so those refusals carry no remedy.
|
|
244
|
+
const cause = 'cause' in verdict ? verdict.cause : null;
|
|
245
|
+
const remedy = call
|
|
246
|
+
? (0, deny_remedy_js_1.buildDenyRemedy)({
|
|
247
|
+
error: (0, deny_remedy_js_1.denyErrorForReason)(cause),
|
|
248
|
+
target: call.toolName || null,
|
|
249
|
+
// The guard's own input fingerprint, already sha256:<hex>.
|
|
250
|
+
fingerprint: fingerprint(call),
|
|
251
|
+
observed: { cause, resolution: 'resolution' in verdict ? verdict.resolution : null },
|
|
252
|
+
})
|
|
253
|
+
: null;
|
|
231
254
|
const out = {
|
|
232
255
|
...base,
|
|
233
256
|
proof: (0, execution_proof_js_1.buildExecutionProof)({
|
|
@@ -245,6 +268,7 @@ function blocked(config, verdict, preflighted, freshness, conditional_write, mon
|
|
|
245
268
|
...(monitoring_attestation ? { monitoring_attestation } : {}),
|
|
246
269
|
...coverageOutcomeFieldsFrom(cov),
|
|
247
270
|
...(grantObs ? { execution_grant: grantObs } : {}),
|
|
271
|
+
...(remedy ? { remedy } : {}),
|
|
248
272
|
};
|
|
249
273
|
return attachPolicyPresence(out, config);
|
|
250
274
|
}
|
|
@@ -498,7 +522,7 @@ async function guardToolCall(call, executeFactory, config, callContext) {
|
|
|
498
522
|
const v = unavailableVerdict({ cause: 'MISSING_ARTIFACT_CONTENT', failPolicy, resolution: 'CLOSED', action: 'STOP' }, count);
|
|
499
523
|
const { basis } = freshnessFor(config, redacted, fctx, detection.artifacts);
|
|
500
524
|
const { basis: cw } = conditionalWriteFor(config, redacted, cwctx, detection.artifacts);
|
|
501
|
-
return blocked(config, v, false, basis, cw);
|
|
525
|
+
return blocked(config, v, false, basis, cw, undefined, undefined, undefined, redacted);
|
|
502
526
|
}
|
|
503
527
|
// config validation: lkg policy requires an LkgStore.
|
|
504
528
|
if (failPolicy === 'lkg' && !config.lkg) {
|
|
@@ -530,6 +554,30 @@ async function guardToolCall(call, executeFactory, config, callContext) {
|
|
|
530
554
|
request.include_execution_grant = true;
|
|
531
555
|
if (nonceRes.nonce)
|
|
532
556
|
request.state_nonce = nonceRes.nonce;
|
|
557
|
+
// ── V2 WIRE FIELDS (AUDIT P1 / RES-1) ────────────────────────────────────
|
|
558
|
+
// The builder used to send include_execution_grant and state_nonce and
|
|
559
|
+
// nothing else, so the V2 binding the config demanded never reached the
|
|
560
|
+
// wire. Each configured field is attached; each unconfigured one is NAMED
|
|
561
|
+
// in the observation rather than sent as an empty placeholder, which the
|
|
562
|
+
// server would otherwise bind as a real value.
|
|
563
|
+
const wire = (0, execution_grant_js_1.v2WireFields)(config);
|
|
564
|
+
if (config.executionGrant?.grantVersion === 'v2') {
|
|
565
|
+
request.grant_version = 'v2';
|
|
566
|
+
for (const [k, v] of Object.entries(wire.fields))
|
|
567
|
+
request[k] = v;
|
|
568
|
+
}
|
|
569
|
+
// Recorded ONLY for v2. On v1 these fields are not "absent" — they are not
|
|
570
|
+
// part of that grant shape at all, and stamping six absences onto every v1
|
|
571
|
+
// observation would report a gap where there is no field. It also keeps the
|
|
572
|
+
// v1 observation byte-identical for the callers already pinning it.
|
|
573
|
+
if (config.executionGrant?.grantVersion === 'v2') {
|
|
574
|
+
grantObs = {
|
|
575
|
+
...grantObs,
|
|
576
|
+
grant_version: 'v2',
|
|
577
|
+
v2_fields_sent: Object.keys(wire.fields),
|
|
578
|
+
v2_fields_absent: wire.absent,
|
|
579
|
+
};
|
|
580
|
+
}
|
|
533
581
|
}
|
|
534
582
|
// request-attributable payload cap => PAYLOAD_TOO_LARGE (integrity) => closed.
|
|
535
583
|
const cap = config.maxPayloadBytes ?? 1_000_000;
|
|
@@ -548,7 +596,7 @@ async function guardToolCall(call, executeFactory, config, callContext) {
|
|
|
548
596
|
if (pf.integrity) {
|
|
549
597
|
emit(config, { type: 'breaker_tripped', at: iso(), cause: pf.cause });
|
|
550
598
|
const v = unavailableVerdict({ cause: pf.cause, failPolicy, resolution: 'CLOSED', action: 'STOP' }, count);
|
|
551
|
-
return blocked(config, v, false, basis, cw, undefined, undefined, grantObs);
|
|
599
|
+
return blocked(config, v, false, basis, cw, undefined, undefined, grantObs, redacted);
|
|
552
600
|
}
|
|
553
601
|
// availability
|
|
554
602
|
const availCause = pf.cause;
|
|
@@ -558,7 +606,7 @@ async function guardToolCall(call, executeFactory, config, callContext) {
|
|
|
558
606
|
if (breakerTripped(config))
|
|
559
607
|
emit(config, { type: 'breaker_tripped', at: iso(), cause: availCause });
|
|
560
608
|
const v = unavailableVerdict({ cause: availCause, failPolicy, resolution: 'CLOSED', action: 'STOP' }, count);
|
|
561
|
-
return blocked(config, v, false, basis, cw, undefined, undefined, grantObs);
|
|
609
|
+
return blocked(config, v, false, basis, cw, undefined, undefined, grantObs, redacted);
|
|
562
610
|
}
|
|
563
611
|
if (failPolicy === 'open' && !breakerTripped(config)) {
|
|
564
612
|
emit(config, { type: 'preflight_unavailable', at: iso(), cause: availCause, action: 'CONTINUE' });
|
|
@@ -577,7 +625,7 @@ async function guardToolCall(call, executeFactory, config, callContext) {
|
|
|
577
625
|
if (breakerTripped(config))
|
|
578
626
|
emit(config, { type: 'breaker_tripped', at: iso(), cause: availCause });
|
|
579
627
|
const v = unavailableVerdict({ cause: availCause, failPolicy, resolution: 'CLOSED', action: 'STOP' }, count);
|
|
580
|
-
return blocked(config, v, false, basis, cw, undefined, undefined, grantObs);
|
|
628
|
+
return blocked(config, v, false, basis, cw, undefined, undefined, grantObs, redacted);
|
|
581
629
|
}
|
|
582
630
|
// We have a response. Read the decision (envelope-first) and verify the receipt.
|
|
583
631
|
const rd = (0, read_decision_js_1.readDecision)(pf.response);
|
|
@@ -638,8 +686,8 @@ async function guardToolCall(call, executeFactory, config, callContext) {
|
|
|
638
686
|
const { basis } = freshnessFor(config, redacted, fctx, detection.artifacts);
|
|
639
687
|
const { basis: cw } = conditionalWriteFor(config, redacted, cwctx, detection.artifacts);
|
|
640
688
|
return gate.decision === 'BLOCK'
|
|
641
|
-
? blocked(config, { kind: 'BLOCK', action: 'STOP', envelope, receiptVerified }, true, basis, cw, undefined, undefined, grantObs)
|
|
642
|
-
: blocked(config, { kind: 'APPROVAL', action: 'REQUEST_APPROVAL', envelope, receiptVerified }, true, basis, cw, undefined, undefined, grantObs);
|
|
689
|
+
? blocked(config, { kind: 'BLOCK', action: 'STOP', envelope, receiptVerified }, true, basis, cw, undefined, undefined, grantObs, redacted)
|
|
690
|
+
: blocked(config, { kind: 'APPROVAL', action: 'REQUEST_APPROVAL', envelope, receiptVerified }, true, basis, cw, undefined, undefined, grantObs, redacted);
|
|
643
691
|
}
|
|
644
692
|
const kind = gate.kind; // 'ALLOW' | 'MONITOR' — allow-class, safe, non-degraded, artifact-bound.
|
|
645
693
|
// Native grant: allow-class authorize that requested a grant must RECEIVE one.
|
|
@@ -827,7 +875,7 @@ function closedIntegrity(config, cause, failPolicy, fctx, cwctx, redacted, arts,
|
|
|
827
875
|
const v = unavailableVerdict({ cause, failPolicy, resolution: 'CLOSED', action: 'STOP' }, count);
|
|
828
876
|
const { basis } = freshnessFor(config, redacted, fctx, arts);
|
|
829
877
|
const { basis: cw } = conditionalWriteFor(config, redacted, cwctx, arts);
|
|
830
|
-
return blocked(config, v, false, basis, cw, monitoring_delivery, monitoring_attestation, grantObs);
|
|
878
|
+
return blocked(config, v, false, basis, cw, monitoring_delivery, monitoring_attestation, grantObs, redacted);
|
|
831
879
|
}
|
|
832
880
|
function isExpired(envelope) {
|
|
833
881
|
const exp = envelope.expires_at;
|
package/dist/cjs/guard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guard.js","sourceRoot":"","sources":["../../src/guard.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;AAsgBH,sCA0cC;AA98BD,6CAAyC;AACzC,yDAAkE;AAMlE,+CAAgD;AAChD,6DAA6D;AAE7D,+DAAyD;AACzD,mFAIyC;AACzC,6DAA2D;AAC3D,iEAAuF;AACvF,iDAMwB;AACxB,iEAIgC;AAChC,mEAAgF;AAChF,6DAM8B;AAE9B,qEAIkC;AAClC,2EAA4E;AAC5E,2CAAoD;AAEpD,6DAO8B;AAE9B,2DAA2D;AAC3D,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAoC,CAAC;AAEjE,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;AAC/B,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAE3C,SAAS,IAAI,CAAC,MAAmB,EAAE,CAAa;IAC9C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAAC,IAAI,CAAC;YAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,8BAA8B,CAAC,CAAC;IAAC,CAAC;AAC7F,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,MAAmB;IACjD,MAAM,EAAE,GAAG,MAAM,CAAC,eAAe,CAAC;IAClC,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACtD,IAAI,GAAY,CAAC;IACjB,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC;YAAC,GAAG,GAAG,EAAE,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,SAAS,CAAC;QAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,EAAE,CAAC;IACX,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9C,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtC,CAAC;AAED,SAAS,WAAW,CAAC,IAAwB;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAClK,OAAO,SAAS,GAAG,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,aAAa,CAAC,MAAmB;IACxC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAAC,CAAC;IACrF,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACxB,CAAC;AACD,SAAS,cAAc,CAAC,MAAmB;IACzC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,IAAI,KAAK,CAAC;IAC5C,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IAC7C,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,uBAAuB,IAAI,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAgB;IAC3C,OAAO,CAAC,CAAC,CACP,OAAO;WACJ,OAAO,OAAO,KAAK,QAAQ;WAC1B,OAAiD,CAAC,uBAAuB,KAAK,IAAI,CACvF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,GAAY,EAAE,MAAmB,EAAE,cAAc,GAAG,KAAK;IAC9E,MAAM,CAAC,GAAG,GAAkH,CAAC;IAC7H,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC;IACrB,MAAM,MAAM,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC;IAC5C,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,YAAY,IAAI,CAAC,EAAE,IAAI,KAAK,WAAW;QAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC/H,IAAI,MAAM,KAAK,GAAG,IAAI,IAAI,KAAK,gBAAgB;QAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACpG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC3E,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC1E,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC9G,6FAA6F;IAC7F,4FAA4F;IAC5F,IAAI,cAAc,IAAI,CAAC,IAAA,6CAAwB,EAAC,GAAG,CAAC,IAAI,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;QACxE,OAAO,EAAE,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC1D,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACpG,IAAI,IAAI,KAAK,WAAW,IAAI,wDAAwD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC7J,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC5E,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,sCAAsC;AAC/F,CAAC;AAED,SAAS,WAAW,CAAI,CAAa,EAAE,EAAU;IAC/C,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjJ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,MAAmB,EAAE,OAAgB;IACrE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC;IAC5C,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC;IACtB,IAAI,IAAI,GAAoD,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACnG,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;QACpD,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC;QAC7C,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAC7E,IAAI,CAAC;YACH,6EAA6E;YAC7E,4FAA4F;YAC5F,6FAA6F;YAC7F,4FAA4F;YAC5F,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAE,MAAM,CAAC,MAA0E,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;YACnL,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAChC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;YAChE,IAAI,IAAI,CAAC,SAAS;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,yBAAyB;QAC9E,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC;AAChC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,cAAc,CAC3B,MAAmB,EACnB,QAAuC;IAEvC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACzC,IAAI,MAAM,CAAC,cAAc,KAAK,KAAK;QAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,0DAA0D;IAC1H,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IACtC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAO,MAAM,CAAC,MAEtB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,IAAA,0CAAqB,EAChC,QAA8C,EAC9C,CAAC,EACD,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAC5F,CAAC;QACF,IAAI,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,QAAQ,EAAE,QAAmC,EAAE,CAAC;QACtE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9G,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;QACxE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IACzD,CAAC;AACH,CAAC;AAED,oFAAoF;AACpF,yFAAyF;AACzF,KAAK,UAAU,WAAW,CACxB,MAAmB,EACnB,OAA0B,EAC1B,QAAyB,EACzB,QAA4B,EAC5B,SAAyB,EACzB,iBAAwC,EACxC,mBAAwC,EACxC,sBAA+B,EAC/B,QAAoC,EACpC,QAAoC;IAEpC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3H,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ;YACrB,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YACtD,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,EAAE,kBAAkB,EAAE,IAAa,EAAE,QAAQ,EAAE,IAAa,EAAE,QAAQ,EAAE,IAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAa,EAAE,CAAC;QAC5J,OAAO,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAC7I,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5E,MAAM,IAAI,GAAG,EAAE,kBAAkB,EAAE,IAAa,EAAE,QAAQ,EAAE,KAAc,EAAE,QAAQ,EAAE,IAAa,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAa,EAAE,CAAC;QAC5J,OAAO,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAChJ,CAAC;AACH,CAAC;AACD,KAAK,UAAU,aAAa,CAC1B,MAAmB,EACnB,OAA0B,EAC1B,QAAuC,EACvC,OAAqB,EACrB,WAAoB,EACpB,QAA4B,EAC5B,SAAyB,EACzB,iBAAwC,EACxC,mBAAwC,EACxC,sBAA+B,EAC/B,QAAoC,EACpC,QAAoC;IAEpC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ;YACrB,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YAC7C,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,EAAE,kBAAkB,EAAE,IAAa,EAAE,QAAQ,EAAE,IAAa,EAAE,QAAQ,EAAE,KAAc,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QACpI,OAAO,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAC7I,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,EAAE,kBAAkB,EAAE,IAAa,EAAE,QAAQ,EAAE,KAAc,EAAE,QAAQ,EAAE,KAAc,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QACpI,OAAO,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAChJ,CAAC;AACH,CAAC;AACD,SAAS,oBAAoB,CAAI,OAAwB,EAAE,MAAmB;IAC5E,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI;QAAE,OAAO,OAAO,CAAC;IAChD,MAAM,eAAe,GAAmB,IAAA,iCAAqB,EAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACnF,OAAO,EAAE,GAAG,OAAO,EAAE,eAAe,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,YAAY,CAAC,MAAmB;IACvC,IAAI,CAAC,MAAM,CAAC,gBAAgB;QAAE,OAAO,EAAE,CAAC;IACxC,OAAO,EAAE,gBAAgB,EAAE,IAAA,6CAAsB,EAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED,SAAS,yBAAyB,CAAC,CAA0C;IAC3E,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7E,CAAC;AAED,SAAS,OAAO,CACd,MAAmB,EACnB,OAAqB,EACrB,WAAoB,EACpB,SAAyB,EACzB,iBAAwC,EACxC,mBAAwC,EACxC,sBAA+B,EAC/B,QAAoC;IAEpC,MAAM,kBAAkB,GAAsB;QAC5C,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,gBAAgB,EAAE,QAAQ;KACvE,CAAC;IACF,MAAM,IAAI,GAAG,EAAE,kBAAkB,EAAE,KAAc,EAAE,QAAQ,EAAE,KAAc,EAAE,QAAQ,EAAE,KAAc,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAC9H,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,GAAG,GAAG;QACV,GAAG,IAAI;QACP,KAAK,EAAE,IAAA,wCAAmB,EAAC;YACzB,GAAG,IAAI;YACP,qBAAqB,EAAE,iBAAiB;YACxC,iBAAiB,EAAE,kBAAkB;YACrC,kBAAkB,EAAE,mBAAmB;YACvC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,GAAG,GAAG;SACP,CAAC;QACF,SAAS;QACT,iBAAiB;QACjB,kBAAkB;QAClB,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,yBAAyB,CAAC,GAAG,CAAC;QACjC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC;IACrB,OAAO,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,MAAmB,EACnB,IAAkJ,EAClJ,SAAyB,EACzB,iBAAwC,EACxC,QAA4B,EAC5B,MAAe,EACf,mBAAwC,EACxC,sBAA+B,EAC/B,QAAoC;IAEpC,MAAM,OAAO,GAAG,MAAM,CAAC,wBAAwB,KAAK,KAAK,CAAC;IAC1D,MAAM,kBAAkB,GAAG,MAAM,IAAA,qCAAa,EAAC;QAC7C,OAAO;QACP,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,GAAG,EAAE,GAAG,EAAE;QACV,mBAAmB,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE;YAC7D,SAAS;YACT,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;YACnH,gBAAgB,EAAE,sBAAsB,CAAC,MAAM,CAAC;SACjD,CAAC;KACH,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,EAAE,mCAAmC;YACzC,EAAE,EAAE,GAAG,EAAE;YACT,KAAK,EAAE,gCAAgC;SACxC,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,kBAAkB,CAAC,MAAM,KAAK,gBAAgB,EAAE,CAAC;QAC1D,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,EAAE,uBAAuB;YAC7B,EAAE,EAAE,GAAG,EAAE;YACT,WAAW,EAAE,kBAAkB,CAAC,WAAW;YAC3C,WAAW,EAAE,kBAAkB,CAAC,WAAW;YAC3C,KAAK,EAAE,kBAAkB,CAAC,KAAK;SAChC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,OAAO,GAAG;QACd,QAAQ,EAAE,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,mBAAmB,CAAC,QAAQ;QAC3E,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,kBAAkB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,kBAA2B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,kBAAkB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,kBAA2B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3F,CAAC;IACF,MAAM,YAAY,GAAG,MAAM,KAAK,SAAS;QACvC,CAAC,CAAC,IAAA,wCAAmB,EAAC,MAAM,EAAE,OAAO,CAAC;QACtC,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,KAAK,kBAAkB;QACrD,CAAC,CAAC,IAAA,4CAAuB,EAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC;QACxD,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG;QACjB,GAAG,IAAI;QACP,qBAAqB,EAAE,iBAAiB;QACxC,iBAAiB,EAAE,kBAAkB;QACrC,kBAAkB,EAAE,mBAAmB;QACvC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;YACd,WAAW,EAAE,SAAS,CAAC,YAAY;YACnC,oBAAoB,EAAE,SAAS,CAAC,sBAAsB;SACvD,CAAC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,GAAG;KACP,CAAC;IACF,IAAI,KAAK,GAAG,IAAA,wCAAmB,EAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,WAAW,GAAkG,IAAI,CAAC;IACtH,IAAI,MAAM,KAAK,SAAS,IAAI,IAAA,gDAA2B,EAAC,MAAM,CAAC,EAAE,CAAC;QAChE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAA,wCAAmB,EAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,MAAM,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;gBAC1C,IAAI,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC;oBACzC,WAAW,GAAG,EAAE,YAAY,EAAE,0BAA0B,EAAE,CAAC;gBAC7D,CAAC;qBAAM,IAAI,GAAG,CAAC,OAAO,CAAC,sCAAsC,EAAE,CAAC;oBAC9D,WAAW,GAAG,EAAE,YAAY,EAAE,wCAAwC,EAAE,CAAC;gBAC3E,CAAC;qBAAM,CAAC;oBACN,WAAW,GAAG;wBACZ,YAAY,EAAE,0BAA0B;wBACxC,sBAAsB,EAAE,4CAAuB;qBAChD,CAAC;gBACJ,CAAC;gBACD,KAAK,GAAG,IAAA,wCAAmB,EAAC;oBAC1B,GAAG,UAAU;oBACb,WAAW,EAAE,WAAW,CAAC,YAAY;oBACrC,oBAAoB,EAAE,WAAW,CAAC,sBAAsB;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,oCAAoC,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,SAAS,GAAG,WAAW,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5C,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,GAAG,CAAC,SAAS,CAAC,sBAAsB;YAClC,CAAC,CAAC,EAAE,sBAAsB,EAAE,SAAS,CAAC,sBAAsB,EAAE;YAC9D,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACV,MAAM,GAAG,GAAG;QACV,GAAG,IAAI;QACP,KAAK;QACL,SAAS;QACT,iBAAiB;QACjB,kBAAkB;QAClB,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;YACd,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,GAAG,CAAC,wBAAwB,IAAI,SAAS,IAAI,SAAS,CAAC,sBAAsB;gBAC3E,CAAC,CAAC,EAAE,sBAAsB,EAAE,SAAS,CAAC,sBAAsB,EAAE;gBAC9D,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,yBAAyB,CAAC,GAAG,CAAC;QACjC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC;IACrB,OAAO,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,uBAAuB,CAAC,IAA4B;IAC3D,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,EAAE,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1E,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CACnB,MAAmB,EACnB,QAA4B,EAC5B,GAAyB,EACzB,aAA0B;IAE1B,OAAO,IAAA,kCAAmB,EAAC;QACzB,UAAU,EAAE,IAAA,+BAAgB,EAAC,QAAQ,CAAC;QACtC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,KAAK,IAAI;QAClD,GAAG;QACH,mBAAmB,EAAE,uBAAuB,CAAC,aAAa,IAAI,QAAQ,CAAC,SAAS,CAAC;QACjF,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;KAC5C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAmB,EACnB,QAA4B,EAC5B,GAAgC,EAChC,YAAyB;IAEzB,gGAAgG;IAChG,gGAAgG;IAChG,MAAM,QAAQ,GAAG,IAAA,6BAAc,EAAC,QAAQ,CAAC;WACpC,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,IAAA,6BAAc,EAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;IAClF,OAAO,IAAA,iDAA0B,EAAC;QAChC,UAAU,EAAE,IAAA,+BAAgB,EAAC,QAAQ,CAAC;QACtC,QAAQ;QACR,uBAAuB,EAAE,MAAM,CAAC,uBAAuB,KAAK,IAAI;QAChE,GAAG;KACJ,CAAC,CAAC;AACL,CAAC;AAED,oGAAoG;AACpG,SAAS,gBAAgB,CAAC,WAAgE;IAIxF,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3D,CAAC;IACD,MAAM,EACJ,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,MAAM,EACN,aAAa,EACb,OAAO,GACR,GAAG,WAAiE,CAAC;IACtE,MAAM,IAAI,GAAyB;QACjC,MAAM,EAAE,MAAM,IAAI,gBAAgB;QAClC,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;IACF,MAAM,KAAK,GAAgC;QACzC,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAC;IACF,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,SAAiC;IAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACtE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1B,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC9C,MAAM,MAAM,GAAI,CAA0B,CAAC,MAAM,CAAC;QAClD,MAAM,KAAK,GAAI,CAAyB,CAAC,KAAK,CAAC;QAC/C,OAAO,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9G,CAAC,CAAC,CAAC;AACL,CAAC;AAQD,SAAS,kBAAkB,CAAC,KAAY,EAAE,KAAa;IACrD,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC;AAC3F,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,aAAa,CACjC,IAAwB,EACxB,cAAiC,EACjC,MAAmB,EACnB,WAAgE;IAEhE,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC;IACjD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAEtD,+EAA+E;IAC/E,IAAI,QAA4B,CAAC;IACjC,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACP,4DAA4D;QAC5D,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,sCAAsC;IAE7E,oFAAoF;IACpF,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,6BAAe,CAAC;IACpD,IAAI,SAAS,CAAC;IACd,IAAI,CAAC;QACH,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACtF,CAAC;IAED,kGAAkG;IAClG,MAAM,kBAAkB,GAAG,MAAM,CAAC,wBAAwB,KAAK,IAAI,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI;WAC/F,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAE7G,uFAAuF;IACvF,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,kBAAkB,EAAE,CAAC;QAC7C,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACnH,MAAM,OAAO,GAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChJ,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACxE,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/F,CAAC;IAED,sGAAsG;IACtG,CAAC;QACC,MAAM,IAAI,GAAG,CAAC,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;YAClE,CAAC,CAAC,SAAS,CAAC,SAAS;YACrB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QACvB,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAClE,IAAI,UAAU,KAAK,oBAAoB,IAAI,UAAU,KAAK,kBAAkB,EAAE,CAAC;YAC7E,aAAa,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,oGAAoG;IACpG,CAAC;QACC,MAAM,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACzF,IAAI,UAAU,KAAK,4BAA4B,EAAE,CAAC;YAChD,aAAa,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACrG,CAAC;IACH,CAAC;IAED,qGAAqG;IACrG,qGAAqG;IACrG,wFAAwF;IACxF,sGAAsG;IACtG,sGAAsG;IACtG,iGAAiG;IACjG,oGAAoG;IACpG,qGAAqG;IACrG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,0BAA0B,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7H,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7H,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5E,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACxF,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,sDAAsD;IACtD,IAAI,UAAU,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QACxC,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACzG,CAAC;IAED,2DAA2D;IAC3D,gGAAgG;IAChG,iGAAiG;IACjG,uFAAuF;IACvF,EAAE;IACF,6FAA6F;IAC7F,gGAAgG;IAChG,MAAM,OAAO,GAOT;QACF,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;QACnH,gBAAgB,EAAE,sBAAsB,CAAC,MAAM,CAAC;QAChD,eAAe,EAAE,SAA+B;KACjD,CAAC;IAEF,IAAI,QAA+C,CAAC;IACpD,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,IAAI,IAAA,4CAAuB,EAAC,MAAM,CAAC,EAAE,CAAC;QACpC,QAAQ,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAA,6CAAwB,EAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACvF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,aAAa,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,eAAe,CACpB,MAAM,EAAE,oCAAoC,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EACpG,SAAS,EAAE,SAAS,EAAE,QAAQ,CAC/B,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACvC,IAAI,QAAQ,CAAC,KAAK;YAAE,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC3D,CAAC;IAED,+EAA+E;IAC/E,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,IAAI,SAAS,CAAC;IAChD,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC;QAC7D,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC9I,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErD,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACX,iFAAiF;QACjF,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5E,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACxF,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;YACtE,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAuB,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;YAC7H,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9E,CAAC;QACD,eAAe;QACf,MAAM,UAAU,GAAG,EAAE,CAAC,KAA0B,CAAC;QACjD,6FAA6F;QAC7F,8EAA8E;QAC9E,IAAI,QAAQ,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACnC,IAAI,cAAc,CAAC,MAAM,CAAC;gBAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YACpG,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;YAC7G,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,UAAU,KAAK,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAClG,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;YACnI,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/H,CAAC;QACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC1C,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;gBAClG,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC7J,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB;YAClH,CAAC;YACD,iEAAiE;QACnE,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACpG,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7G,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC9E,CAAC;IAED,iFAAiF;IACjF,MAAM,EAAE,GAAG,IAAA,+BAAY,EAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IACrC,iGAAiG;IACjG,IAAI,EAAE,CAAC,MAAM,KAAK,+BAA+B,EAAE,CAAC;QAClD,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,+BAA+B,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1J,CAAC;IACD,iGAAiG;IACjG,uEAAuE;IACvE,IAAI,EAAE,CAAC,MAAM,KAAK,qBAAqB,EAAE,CAAC;QACxC,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,qBAAqB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChJ,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;QACjB,uDAAuD;QACvD,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3I,CAAC;IACD,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;IAC7B,4GAA4G;IAC5G,IAAI,CAAC,IAAA,iCAAc,EAAC,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,+BAA+B,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1J,CAAC;IACD,MAAM,YAAY,GAAoB,EAAE,CAAC,eAAe,CAAC;IAEzD,gDAAgD;IAChD,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEpC,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IACrC,MAAM,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC;IACnC,IAAI,CAAC,eAAe;QAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAChH,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAE9G,qGAAqG;IACrG,iGAAiG;IACjG,mGAAmG;IACnG,+FAA+F;IAC/F,IAAI,MAAM,CAAC,cAAc,KAAK,KAAK,IAAI,CAAC,eAAe,IAAI,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QACnF,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,IAAI,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnK,CAAC;IAED,mGAAmG;IACnG,uFAAuF;IACvF,4FAA4F;IAC5F,4FAA4F;IAC5F,+FAA+F;IAC/F,2FAA2F;IAC3F,6FAA6F;IAC7F,gGAAgG;IAChG,MAAM,IAAI,GAAG,IAAA,sCAAgB,EAAC,EAAE,CAAC,QAAQ,EAAE,QAA8C,EAAE,YAAY,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC9H,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;QACnC,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrI,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;QACpC,kGAAkG;QAClG,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5E,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC,QAAQ,KAAK,OAAO;YAC9B,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC;YAChI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACpJ,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,yEAAyE;IAEjG,+EAA+E;IAC/E,oFAAoF;IACpF,IAAI,QAAQ,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QACnC,YAAY,GAAG,IAAA,4CAAuB,EAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QACpD,QAAQ,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC;QACxD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,aAAa,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,eAAe,CACpB,MAAM,EAAE,yBAAyB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EACzF,SAAS,EAAE,SAAS,EAAE,QAAQ,CAC/B,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAA0C,QAAQ;QAC9D,CAAC,CAAC,EAAE,eAAe,EAAE,YAAY,EAAE;QACnC,CAAC,CAAC,SAAS,CAAC;IAEd,uFAAuF;IACvF,IAAI,OAAO,EAAE,CAAC;QACZ,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3I,CAAC;IAED,+FAA+F;IAC/F,gGAAgG;IAChG,+FAA+F;IAC/F,oGAAoG;IACpG,yEAAyE;IACzE,MAAM,SAAS,GAAG,MAAM,CAAC,mBAAmB,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,CAAC;IAC9F,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,SAAS;YAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;;YACrG,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IACjG,CAAC;IAED,IAAI,kBAAkD,CAAC;IACvD,IAAI,qBAAyC,CAAC;IAC9C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,kBAAkB,GAAG;gBACnB,MAAM,EAAE,eAAe;gBACvB,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;gBAC9C,MAAM,EAAE,gBAAgB;aACzB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,kBAAkB,GAAG,MAAM,IAAA,0CAAiB,EAAC;gBAC3C,IAAI,EAAE,MAAM,CAAC,cAAc;gBAC3B,SAAS,EAAE,MAAM,CAAC,uBAAuB;gBACzC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,OAAO,EAAE;oBACP,EAAE,EAAE,GAAG,EAAE;oBACT,WAAW,EAAE,OAAO,QAAQ,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;oBACxF,MAAM,EAAE,0BAA0B;oBAClC,IAAI,EAAE,SAAS;iBAChB;gBACD,GAAG,EAAE,GAAG,EAAE;aACX,CAAC,CAAC;YACH,IAAI,kBAAkB,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;gBAClD,IAAI,CAAC,MAAM,EAAE;oBACX,IAAI,EAAE,0BAA0B;oBAChC,EAAE,EAAE,GAAG,EAAE;oBACT,UAAU,EAAE,QAAQ,CAAC,WAAW;oBAChC,KAAK,EAAE,kBAAkB,CAAC,MAAM;iBACjC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,qBAAqB,GAAG,MAAM,IAAA,yDAA6B,EAAC;YAC1D,MAAM,EAAE,MAAM,CAAC,qBAAqB;YACpC,QAAQ,EAAE,kBAAkB;YAC5B,QAAQ;YACR,GAAG,EAAE,GAAG,EAAE;SACX,CAAC,CAAC;QACH,IAAI,SAAS,IAAI,kBAAkB,CAAC,MAAM,KAAK,eAAe,IAAI,IAAA,qDAA4B,EAAC,MAAM,CAAC,EAAE,CAAC;YACvG,aAAa,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,eAAe,CACpB,MAAM,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EACpF,kBAAkB,EAAE,qBAAqB,EAAE,QAAQ,CACpD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,kGAAkG;IAClG,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,YAAY,CAChE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAC5C,CAAC;IACF,IAAI,UAAU,KAAK,oBAAoB,IAAI,UAAU,KAAK,kBAAkB,EAAE,CAAC;QAC7E,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrI,CAAC;IAED,uGAAuG;IACvG,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClH,IAAI,OAAO,KAAK,4BAA4B,EAAE,CAAC;QAC7C,aAAa,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAClI,CAAC;IAED,+FAA+F;IAC/F,sGAAsG;IACtG,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;QACpF,MAAM,OAAO,GAAiB,IAAI,KAAK,OAAO;YAC5C,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;YAClE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,0BAA0B,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;QACvF,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACtK,CAAC;IAED,+FAA+F;IAC/F,qFAAqF;IACrF,2FAA2F;IAC3F,IAAI,IAAI,KAAK,SAAS,IAAI,SAAS,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;QAC3G,MAAM,QAAQ,GAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,0BAA0B,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;QAClH,OAAO,aAAa,CAClB,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,CAC/I,CAAC;IACJ,CAAC;IAED,oGAAoG;IACpG,kGAAkG;IAClG,0FAA0F;IAC1F,6FAA6F;IAC7F,wFAAwF;IACxF,+FAA+F;IAC/F,MAAM,WAAW,GAAG,eAAe,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,SAAS,CAAC,CAAC;IACvE,IAAI,WAAW,EAAE,CAAC;QAChB,yFAAyF;QACzF,uFAAuF;QACvF,4FAA4F;QAC5F,gFAAgF;QAChF,MAAM,aAAa,GAAG,MAAM,CAAC,0BAA0B,KAAK,SAAS;YACnE,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,MAAM,CAAC,0BAA0B,CAAC;QACtC,kFAAkF;QAClF,wFAAwF;QACxF,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE;gBACX,IAAI,EAAE,gCAAgC;gBACtC,EAAE,EAAE,GAAG,EAAE;gBACT,UAAU,EAAE,QAAQ,CAAC,WAAW;gBAChC,KAAK,EAAE,kCAAkC;aAC1C,CAAC,CAAC;YACH,MAAM,UAAU,GAAiB,IAAI,KAAK,OAAO;gBAC/C,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;gBAClE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,0BAA0B,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;YACvF,OAAO,aAAa,CAClB,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,CACjJ,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAG,IAAA,6DAA6B,EAAC;YACvC,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,OAAO,EAAE;gBACP,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,WAAW;gBAC1C,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC;YACD,QAAQ,EAAE,QAA8C;SACzD,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,YAAY,GAAG,IAAA,kEAAkC,EAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACnE,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;gBAC3B,aAAa,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,eAAe,CACpB,MAAM,EACN,YAAY,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,uBAAuB,EACvE,UAAU,EACV,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,SAAS,CAAC,SAAS,EACnB,SAAS,EACT,SAAS,EACT,QAAQ,CACT,CAAC;YACJ,CAAC;YACD,yFAAyF;YACzF,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,EAAE;oBACX,IAAI,EAAE,8BAA8B;oBACpC,EAAE,EAAE,GAAG,EAAE;oBACT,UAAU,EAAE,QAAQ,CAAC,WAAW;oBAChC,mBAAmB,EAAE,EAAE,CAAC,mBAAmB;oBAC3C,sBAAsB,EAAE,EAAE,CAAC,sBAAsB;oBACjD,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,IAAI,EAAE,iEAAiC;iBACxC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,EAAE;oBACX,IAAI,EAAE,gCAAgC;oBACtC,EAAE,EAAE,GAAG,EAAE;oBACT,UAAU,EAAE,QAAQ,CAAC,WAAW;oBAChC,mBAAmB,EAAE,EAAE,CAAC,mBAAmB;oBAC3C,sBAAsB,EAAE,EAAE,CAAC,sBAAsB;oBACjD,MAAM,EAAE,EAAE,CAAC,MAAM;iBAClB,CAAC,CAAC;YACL,CAAC;YACD,MAAM,WAAW,GAAiB,IAAI,KAAK,OAAO;gBAChD,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;gBAClE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,0BAA0B,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;YACvF,OAAO,aAAa,CAClB,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,CAClJ,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAoB,IAAI,KAAK,OAAO;YAChD,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE;YACxE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,0BAA0B,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;QAC7F,OAAO,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACrJ,CAAC;IACD,aAAa,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,eAAe,CACpB,MAAM,EACN,eAAe,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,iBAAiB,EAC1D,UAAU,EACV,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,SAAS,CAAC,SAAS,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,QAAQ,CACT,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,MAAmB,EACnB,KAAqB,EACrB,UAAqC,EACrC,IAA0B,EAC1B,KAAkC,EAClC,QAA4B,EAC5B,IAAiB,EACjB,mBAAwC,EACxC,sBAA+B,EAC/B,QAAoC;IAEpC,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;IACjG,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7D,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACzE,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,QAAQ,CAAC,CAAC;AACrG,CAAC;AAED,SAAS,SAAS,CAAC,QAAgC;IACjD,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC;IAChC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAC9C,CAAC;AAED;wGACwG;AACxG,KAAK,UAAU,MAAM,CAAC,MAAmB,EAAE,OAAe;IACxD,IAAI,CAAC,MAAM,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAC7B,IAAI,MAAqC,CAAC;IAC1C,IAAI,CAAC;QAAC,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IACtE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,mGAAmG;IACnG,gGAAgG;IAChG,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,qGAAqG;IACrG,oGAAoG;IACpG,MAAM,GAAG,GAAI,MAAM,CAAC,QAAmB,IAAI,EAAE,CAAC;IAC9C,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,SAAS,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC/C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,MAAM;QAAE,OAAO,IAAI,CAAC;IACzE,mGAAmG;IACnG,MAAM,QAAQ,GAAmB;QAC9B,MAA6C,CAAC,YAAY;QAC1D,MAA6C,CAAC,WAAW;QACzD,MAA6C,CAAC,SAAS;QACvD,MAA6C,CAAC,QAAQ;KACxD,CAAC;IACF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,2CAA2C;IACnG,MAAM,MAAM,GAAG,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,0BAA0B,CAAC;IACzE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACxC,CAAC"}
|
|
1
|
+
{"version":3,"file":"guard.js","sourceRoot":"","sources":["../../src/guard.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/policy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,kMAAkM;AAClM,eAAO,MAAM,aAAa,qFAC0D,CAAC;AAErF,gEAAgE;AAChE,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,kMAAkM;AAClM,eAAO,MAAM,aAAa,qFAC0D,CAAC;AAErF,gEAAgE;AAChE,eAAO,MAAM,gBAAgB,EAAE,MAAqkJ,CAAC;AAErmJ,sFAAsF;AACtF,eAAO,MAAM,kBAAkB,sPACsN,CAAC;AAEtP,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/D,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,4FAA4F;AAC5F,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAiBF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,cAAc,CAGhF;AAED,4EAA4E;AAC5E,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,cAAc,CAEpF;AAQD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC;AAC5E,wBAAgB,UAAU,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,iBAAiB,GAAG,CAAC,EAAE,CAAC;AAgCxG,uEAAuE;AACvE,wBAAgB,oBAAoB,IAAI,IAAI,CAI3C;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,cAAc,CAIrF;AAED,oDAAoD;AACpD,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C"}
|
package/dist/cjs/policy.js
CHANGED
|
@@ -20,7 +20,7 @@ exports.resetPolicyWarnForTests = resetPolicyWarnForTests;
|
|
|
20
20
|
/** Phrase present in ALL seven generated host formats (AGENTS.md, CLAUDE.md, cursor rules, Copilot instructions, LangGraph policy, OpenAI agent instructions, skills/api-governance/SKILL.md). */
|
|
21
21
|
exports.POLICY_MARKER = "A receipt authorizes ONE operation: a merge receipt does not authorize a deploy.";
|
|
22
22
|
/** Canonical policy body (paragraphs joined by blank lines). */
|
|
23
|
-
exports.CODERIFTS_POLICY = "Call `preflight_change_set` before merge, deploy, publish, or tool registration when a contract artifact changed (OpenAPI/Swagger, GraphQL, gRPC/protobuf, AsyncAPI, MCP manifest, or agent tool schemas).\n\nSend the complete base-to-head change set: every changed contract artifact with full before and after content. Do not send a single-file subset when other contract files also change.\n\nBranch on `execution_action` only. Do not branch on `decision` and do not branch on `safe_for_agent` (not_for_control_flow_use_execution_action). Canonical `execution_action` values: CONTINUE, CONTINUE_WITH_MONITORING, REQUEST_APPROVAL, STOP.\n\nAn unrecognised `execution_action` is not permission: fail closed (halt or re-preflight). Well-known code: `not_permission_fail_closed`.\n\nWhen `execution_action` is REQUEST_APPROVAL or STOP, surface the detected patterns and the blast radius, and propose the safer path \u2014 deprecate-then-remove, an additive change, or a new version \u2014 rather than shipping the break.\n\n`CONTINUE_WITH_MONITORING` requires a wired monitoring sink (`monitoringSinkWired`). It is not \"proceed with caution\" without monitoring.\n\nDo not call
|
|
23
|
+
exports.CODERIFTS_POLICY = "Call `preflight_change_set` before merge, deploy, publish, or tool registration when a contract artifact changed (OpenAPI/Swagger, GraphQL, gRPC/protobuf, AsyncAPI, MCP manifest, or agent tool schemas).\n\nSend the complete base-to-head change set: every changed contract artifact with full before and after content. Do not send a single-file subset when other contract files also change.\n\nBranch on `execution_action` only. Do not branch on `decision` and do not branch on `safe_for_agent` (not_for_control_flow_use_execution_action). Canonical `execution_action` values: CONTINUE, CONTINUE_WITH_MONITORING, REQUEST_APPROVAL, STOP.\n\nAn unrecognised `execution_action` is not permission: fail closed (halt or re-preflight). Well-known code: `not_permission_fail_closed`.\n\nWhen `execution_action` is REQUEST_APPROVAL or STOP, surface the detected patterns and the blast radius, and propose the safer path \u2014 deprecate-then-remove, an additive change, or a new version \u2014 rather than shipping the break.\n\n`CONTINUE_WITH_MONITORING` requires a wired monitoring sink (`monitoringSinkWired`). It is not \"proceed with caution\" without monitoring.\n\nDo not call `preflight_change_set` for: a documentation-only change (README, guides, comments) with no contract artifact content change; a static readiness score (a different capability, not a change-set decision); or to verify a receipt you already hold (that is `verify_receipt` \u2014 see the companion-tools rule).\n\nIf you already hold a chain receipt and only need authenticity/lifecycle: `verify_receipt`. If you need a past decision by id: `get_decision_details`. Neither replaces preflight for a new change set.\n\nThe CodeRifts MCP server exposes exactly three tools \u2014 `preflight_change_set`, `verify_receipt`, `get_decision_details`. Do not invent or assume others.\n\nA receipt authorizes ONE operation: a merge receipt does not authorize a deploy. Before a different operation (deploy, publish), call `preflight_change_set` with `context.operation` set to that operation \u2014 reusing a differently-scoped receipt is not permitted and will fail at the gate.\n\nA stale or superseded receipt on a changed head requires a NEW preflight \u2014 `verify_receipt` cannot re-diff.\n\nFor mutating tools, put only the guarded version in the agent's tool table; keep the raw handler host-only and unreachable from that table. How you name tools is yours \u2014 this is a reachability property, not a product rename of host tools. CodeRifts cannot see or stop a raw call the host makes outside the table it returns; adopt this as a host convention, not as a guarantee from the package.\n\nCodeRifts reports a governance decision and `execution_action`; it does not by itself block merges. Blocking requires separate repository configuration (required status checks, enforcement) that this rule file does not set.\n\nTo act (mutate a contract, merge, deploy, or publish): call `preflight_change_set` with `preflight_mode` authorize. Analyze is informational \u2014 risk only, `may_execute` is always false \u2014 and is not permission. Read `execution_action` on the `decision_result` envelope.\n\nBefore acting under a held receipt: call `verify_receipt` with the intended `context` (operation, environment, repository, branch, pull_request) for THIS attempt. Do not act on a receipt whose scope does not match.\n\nAct only when `currently_authorized` is true (`control_envelope.receipt_view.currently_authorized`). A valid-looking token is not permission if `currently_authorized` is false or omitted.\n\nCommit / CAS evidence is a separate measurement (`commit_observation` on GuardOutcome). It is not a substitute for authorize + `currently_authorized`. Production hosts that want the fail-closed conjunction lock it with `profile: ENFORCING_STRICT` on withCodeRifts.\n\nIf the host requests an execution grant (opt-in `include_execution_grant`), the grant is bound to operation + target + after-payload (`scope_hash`) and is short-lived \u2014 never reuse it after the after-payload changes.\n\nAn ATOMIC-profile grant carries `state_nonce` and is single-use at the executor \u2014 if the executor has consumed the nonce, re-preflight; do not retry the same grant.\n\nWith a proven tenant\u2194repo binding you may request `derivation:\"server\"` instead of assembling `artifacts[]` yourself (`context.repository` + `context.base` + `context.head` required; caller-supplied artifacts are rejected on that path).\n\nA commit is only proven when an executor attestation verifies (customer-held executor key, `cas_evidence: executor_attested`); otherwise say \"authorized, commit not proven\".";
|
|
24
24
|
/** Once-per-process warning when the host supplied a prompt that lacks the marker. */
|
|
25
25
|
exports.POLICY_ABSENT_WARN = "CodeRifts policy text not detected in the system prompt. The agent will still see the tools, but measured evidence shows operation-scope misuse is markedly more likely without it. See https://github.com/coderifts/agent-guard#policy-delivery.";
|
|
26
26
|
function textHasMarker(text) {
|