@intutic/shared-types 2.9.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/decide.d.ts +269 -0
- package/dist/decide.d.ts.map +1 -0
- package/dist/decide.js +781 -0
- package/dist/decide.js.map +1 -0
- package/dist/decideEngine.d.ts +195 -0
- package/dist/decideEngine.d.ts.map +1 -0
- package/dist/decideEngine.js +720 -0
- package/dist/decideEngine.js.map +1 -0
- package/dist/decideEvaluate.d.ts +250 -0
- package/dist/decideEvaluate.d.ts.map +1 -0
- package/dist/decideEvaluate.js +518 -0
- package/dist/decideEvaluate.js.map +1 -0
- package/dist/decideHostGuard.d.ts +56 -0
- package/dist/decideHostGuard.d.ts.map +1 -0
- package/dist/decideHostGuard.js +200 -0
- package/dist/decideHostGuard.js.map +1 -0
- package/dist/decideLog.d.ts +287 -0
- package/dist/decideLog.d.ts.map +1 -0
- package/dist/decideLog.js +543 -0
- package/dist/decideLog.js.map +1 -0
- package/dist/decideLogRedaction.d.ts +12 -0
- package/dist/decideLogRedaction.d.ts.map +1 -0
- package/dist/decideLogRedaction.js +19 -0
- package/dist/decideLogRedaction.js.map +1 -0
- package/dist/decideRecord.d.ts +128 -0
- package/dist/decideRecord.d.ts.map +1 -0
- package/dist/decideRecord.js +266 -0
- package/dist/decideRecord.js.map +1 -0
- package/dist/decideSdk.d.ts +86 -0
- package/dist/decideSdk.d.ts.map +1 -0
- package/dist/decideSdk.js +151 -0
- package/dist/decideSdk.js.map +1 -0
- package/dist/errors.d.ts +11 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +12 -1
- package/dist/errors.js.map +1 -1
- package/dist/gateLimits.d.ts +27 -0
- package/dist/gateLimits.d.ts.map +1 -1
- package/dist/gateLimits.js +29 -1
- package/dist/gateLimits.js.map +1 -1
- package/dist/gateRuleRecord.d.ts +244 -0
- package/dist/gateRuleRecord.d.ts.map +1 -0
- package/dist/gateRuleRecord.js +474 -0
- package/dist/gateRuleRecord.js.map +1 -0
- package/dist/guardrailIr.d.ts +301 -10
- package/dist/guardrailIr.d.ts.map +1 -1
- package/dist/guardrailIr.js +86 -7
- package/dist/guardrailIr.js.map +1 -1
- package/dist/guardrailRender.d.ts +38 -4
- package/dist/guardrailRender.d.ts.map +1 -1
- package/dist/guardrailRender.js +155 -14
- package/dist/guardrailRender.js.map +1 -1
- package/dist/index.d.ts +28 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +162 -8
- package/dist/index.js.map +1 -1
- package/dist/lanes.d.ts +94 -0
- package/dist/lanes.d.ts.map +1 -0
- package/dist/lanes.js +160 -0
- package/dist/lanes.js.map +1 -0
- package/dist/loopVerify.d.ts +49 -0
- package/dist/loopVerify.d.ts.map +1 -0
- package/dist/loopVerify.js +77 -0
- package/dist/loopVerify.js.map +1 -0
- package/dist/mcpBudgets.d.ts +8 -8
- package/dist/notifications.d.ts +1 -1
- package/dist/notifications.d.ts.map +1 -1
- package/dist/notifications.js +14 -0
- package/dist/notifications.js.map +1 -1
- package/dist/providers.d.ts +13 -0
- package/dist/providers.d.ts.map +1 -1
- package/dist/providers.js +31 -0
- package/dist/providers.js.map +1 -1
- package/dist/refusalDetail.d.ts +58 -0
- package/dist/refusalDetail.d.ts.map +1 -0
- package/dist/refusalDetail.js +128 -0
- package/dist/refusalDetail.js.map +1 -0
- package/dist/responses/decide.d.ts +1858 -0
- package/dist/responses/decide.d.ts.map +1 -0
- package/dist/responses/decide.js +166 -0
- package/dist/responses/decide.js.map +1 -0
- package/dist/responses/gateways.d.ts +745 -101
- package/dist/responses/gateways.d.ts.map +1 -1
- package/dist/responses/gateways.js +34 -2
- package/dist/responses/gateways.js.map +1 -1
- package/dist/responses/guardrails.d.ts +1434 -144
- package/dist/responses/guardrails.d.ts.map +1 -1
- package/dist/responses/identity.d.ts +6 -6
- package/dist/responses/index.d.ts +1 -0
- package/dist/responses/index.d.ts.map +1 -1
- package/dist/responses/index.js +1 -0
- package/dist/responses/index.js.map +1 -1
- package/dist/responses/integrations.d.ts +84 -84
- package/dist/responses/observability.d.ts +272 -92
- package/dist/responses/observability.d.ts.map +1 -1
- package/dist/responses/observability.js +31 -1
- package/dist/responses/observability.js.map +1 -1
- package/dist/responses/rules.d.ts +1026 -187
- package/dist/responses/rules.d.ts.map +1 -1
- package/dist/responses/rules.js +47 -1
- package/dist/responses/rules.js.map +1 -1
- package/dist/scopeMatch.d.ts +156 -0
- package/dist/scopeMatch.d.ts.map +1 -0
- package/dist/scopeMatch.js +451 -0
- package/dist/scopeMatch.js.map +1 -0
- package/dist/sopKeySince.d.ts +41 -0
- package/dist/sopKeySince.d.ts.map +1 -0
- package/dist/sopKeySince.js +81 -0
- package/dist/sopKeySince.js.map +1 -0
- package/dist/testOutcome.d.ts +164 -0
- package/dist/testOutcome.d.ts.map +1 -0
- package/dist/testOutcome.js +454 -0
- package/dist/testOutcome.js.map +1 -0
- package/dist/upstreamRetry.d.ts +2 -2
- package/dist/workspaceSettings.d.ts +91 -0
- package/dist/workspaceSettings.d.ts.map +1 -1
- package/dist/workspaceSettings.js +48 -2
- package/dist/workspaceSettings.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decideSdk.js","sourceRoot":"","sources":["../src/decideSdk.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -125,6 +125,16 @@ export declare const E_ATTENUATION_CAP_VIOLATION: "ATTENUATION_CAP_VIOLATION";
|
|
|
125
125
|
* Proxy returns this when budget:hard_block:{wid} Valkey key is set.
|
|
126
126
|
*/
|
|
127
127
|
export declare const E_OVERAGE_HARD_CAP_EXCEEDED: "OVERAGE_HARD_CAP_EXCEEDED";
|
|
128
|
+
/**
|
|
129
|
+
* `POST /loops/:id/complete` with `SUCCEEDED`, under
|
|
130
|
+
* `loop_review.requireVerifiedCompletion`, on a run with no verification or
|
|
131
|
+
* whose latest verification failed (409; the body carries its findings).
|
|
132
|
+
*/
|
|
133
|
+
export declare const E_LOOP_NOT_VERIFIED: "E_LOOP_NOT_VERIFIED";
|
|
134
|
+
/** The run's latest verification checked nothing (every check not applicable or unavailable): 409, naming what is missing. */
|
|
135
|
+
export declare const E_LOOP_UNVERIFIABLE: "E_LOOP_UNVERIFIABLE";
|
|
136
|
+
/** The run has traces newer than its latest verification's watermark: verify again (409). */
|
|
137
|
+
export declare const E_LOOP_VERIFY_STALE: "E_LOOP_VERIFY_STALE";
|
|
128
138
|
/**
|
|
129
139
|
* Union of all Intutic error code constants.
|
|
130
140
|
*
|
|
@@ -133,7 +143,7 @@ export declare const E_OVERAGE_HARD_CAP_EXCEEDED: "OVERAGE_HARD_CAP_EXCEEDED";
|
|
|
133
143
|
* function handle(code: IntuticErrorCode) { ... }
|
|
134
144
|
* ```
|
|
135
145
|
*/
|
|
136
|
-
export type IntuticErrorCode = typeof E_NOT_FOUND | typeof E_CACHE_UNAVAILABLE | typeof E_UNAUTHORIZED | typeof E_SCIM_AUTH_FAILED | typeof E_SCIM_DUPLICATE | typeof E_FORBIDDEN | typeof E_INSUFFICIENT_SCOPE | typeof E_BUDGET_EXCEEDED | typeof E_RATE_LIMITED | typeof E_APPEND_ONLY_VIOLATION | typeof E_APPROVAL_RATIONALE_REQUIRED | typeof E_VALIDATION_FAILED | typeof E_CHECKOUT_DISABLED | typeof E_CHECKOUT_UNAVAILABLE | typeof E_SIGNUP_DISABLED | typeof E_DOMAIN_NOT_VERIFIED | typeof E_ALREADY_ON_TIER | typeof E_STRIPE_ERROR | typeof E_PLAN_CHANGE_UNSUPPORTED | typeof E_PLAN_FROM_ORG | typeof E_SIGNATURE_INVALID | typeof E_TRIAL_EXPIRED | typeof E_EMAIL_ALREADY_EXISTS | typeof E_TERMS_NOT_ACCEPTED | typeof E_OAUTH_FAILED | typeof E_TOKEN_INVALID | typeof E_TOKEN_EXPIRED | typeof E_ALREADY_VERIFIED | typeof E_VALIDATION | typeof E_SSO_DISABLED | typeof E_SSO_NO_MEMBERSHIP | typeof E_OIDC_INVALID_STATE | typeof E_OIDC_TOKEN_EXCHANGE_FAILED | typeof E_OIDC_CLAIMS_MISSING | typeof E_PROVIDER_DISABLED | typeof E_PROVIDER_IN_USE | typeof E_OFFBOARDING_IN_PROGRESS | typeof E_FEATURE_NOT_AVAILABLE | typeof E_SSL_NOT_ENFORCED | typeof E_ATTENUATION_CAP_VIOLATION | typeof E_OVERAGE_HARD_CAP_EXCEEDED;
|
|
146
|
+
export type IntuticErrorCode = typeof E_NOT_FOUND | typeof E_CACHE_UNAVAILABLE | typeof E_UNAUTHORIZED | typeof E_SCIM_AUTH_FAILED | typeof E_SCIM_DUPLICATE | typeof E_FORBIDDEN | typeof E_INSUFFICIENT_SCOPE | typeof E_BUDGET_EXCEEDED | typeof E_RATE_LIMITED | typeof E_APPEND_ONLY_VIOLATION | typeof E_APPROVAL_RATIONALE_REQUIRED | typeof E_VALIDATION_FAILED | typeof E_CHECKOUT_DISABLED | typeof E_CHECKOUT_UNAVAILABLE | typeof E_SIGNUP_DISABLED | typeof E_DOMAIN_NOT_VERIFIED | typeof E_ALREADY_ON_TIER | typeof E_STRIPE_ERROR | typeof E_PLAN_CHANGE_UNSUPPORTED | typeof E_PLAN_FROM_ORG | typeof E_SIGNATURE_INVALID | typeof E_TRIAL_EXPIRED | typeof E_EMAIL_ALREADY_EXISTS | typeof E_TERMS_NOT_ACCEPTED | typeof E_OAUTH_FAILED | typeof E_TOKEN_INVALID | typeof E_TOKEN_EXPIRED | typeof E_ALREADY_VERIFIED | typeof E_VALIDATION | typeof E_SSO_DISABLED | typeof E_SSO_NO_MEMBERSHIP | typeof E_OIDC_INVALID_STATE | typeof E_OIDC_TOKEN_EXCHANGE_FAILED | typeof E_OIDC_CLAIMS_MISSING | typeof E_PROVIDER_DISABLED | typeof E_PROVIDER_IN_USE | typeof E_OFFBOARDING_IN_PROGRESS | typeof E_FEATURE_NOT_AVAILABLE | typeof E_SSL_NOT_ENFORCED | typeof E_ATTENUATION_CAP_VIOLATION | typeof E_OVERAGE_HARD_CAP_EXCEEDED | typeof E_LOOP_NOT_VERIFIED | typeof E_LOOP_UNVERIFIABLE | typeof E_LOOP_VERIFY_STALE;
|
|
137
147
|
/**
|
|
138
148
|
* Structured error class used across all Intutic services.
|
|
139
149
|
*
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.IntuticError = exports.E_OVERAGE_HARD_CAP_EXCEEDED = exports.E_ATTENUATION_CAP_VIOLATION = exports.E_SSL_NOT_ENFORCED = exports.E_FEATURE_NOT_AVAILABLE = exports.E_OFFBOARDING_IN_PROGRESS = exports.E_PROVIDER_IN_USE = exports.E_PROVIDER_DISABLED = exports.E_OIDC_CLAIMS_MISSING = exports.E_OIDC_TOKEN_EXCHANGE_FAILED = exports.E_OIDC_INVALID_STATE = exports.E_SSO_NO_MEMBERSHIP = exports.E_SSO_DISABLED = exports.E_VALIDATION = exports.E_DOMAIN_NOT_VERIFIED = exports.E_ALREADY_VERIFIED = exports.E_TOKEN_EXPIRED = exports.E_TOKEN_INVALID = exports.E_OAUTH_FAILED = exports.E_TERMS_NOT_ACCEPTED = exports.E_EMAIL_ALREADY_EXISTS = exports.E_TRIAL_EXPIRED = exports.E_SIGNATURE_INVALID = exports.E_PLAN_FROM_ORG = exports.E_PLAN_CHANGE_UNSUPPORTED = exports.E_STRIPE_ERROR = exports.E_ALREADY_ON_TIER = exports.E_SIGNUP_DISABLED = exports.E_CHECKOUT_UNAVAILABLE = exports.E_CHECKOUT_DISABLED = exports.E_VALIDATION_FAILED = exports.E_APPROVAL_RATIONALE_REQUIRED = exports.E_APPEND_ONLY_VIOLATION = exports.E_RATE_LIMITED = exports.E_BUDGET_EXCEEDED = exports.E_INSUFFICIENT_SCOPE = exports.E_FORBIDDEN = exports.E_SCIM_DUPLICATE = exports.E_SCIM_AUTH_FAILED = exports.E_UNAUTHORIZED = exports.E_CACHE_UNAVAILABLE = exports.E_NOT_FOUND = void 0;
|
|
12
|
+
exports.IntuticError = exports.E_LOOP_VERIFY_STALE = exports.E_LOOP_UNVERIFIABLE = exports.E_LOOP_NOT_VERIFIED = exports.E_OVERAGE_HARD_CAP_EXCEEDED = exports.E_ATTENUATION_CAP_VIOLATION = exports.E_SSL_NOT_ENFORCED = exports.E_FEATURE_NOT_AVAILABLE = exports.E_OFFBOARDING_IN_PROGRESS = exports.E_PROVIDER_IN_USE = exports.E_PROVIDER_DISABLED = exports.E_OIDC_CLAIMS_MISSING = exports.E_OIDC_TOKEN_EXCHANGE_FAILED = exports.E_OIDC_INVALID_STATE = exports.E_SSO_NO_MEMBERSHIP = exports.E_SSO_DISABLED = exports.E_VALIDATION = exports.E_DOMAIN_NOT_VERIFIED = exports.E_ALREADY_VERIFIED = exports.E_TOKEN_EXPIRED = exports.E_TOKEN_INVALID = exports.E_OAUTH_FAILED = exports.E_TERMS_NOT_ACCEPTED = exports.E_EMAIL_ALREADY_EXISTS = exports.E_TRIAL_EXPIRED = exports.E_SIGNATURE_INVALID = exports.E_PLAN_FROM_ORG = exports.E_PLAN_CHANGE_UNSUPPORTED = exports.E_STRIPE_ERROR = exports.E_ALREADY_ON_TIER = exports.E_SIGNUP_DISABLED = exports.E_CHECKOUT_UNAVAILABLE = exports.E_CHECKOUT_DISABLED = exports.E_VALIDATION_FAILED = exports.E_APPROVAL_RATIONALE_REQUIRED = exports.E_APPEND_ONLY_VIOLATION = exports.E_RATE_LIMITED = exports.E_BUDGET_EXCEEDED = exports.E_INSUFFICIENT_SCOPE = exports.E_FORBIDDEN = exports.E_SCIM_DUPLICATE = exports.E_SCIM_AUTH_FAILED = exports.E_UNAUTHORIZED = exports.E_CACHE_UNAVAILABLE = exports.E_NOT_FOUND = void 0;
|
|
13
13
|
exports.isIntuticError = isIntuticError;
|
|
14
14
|
// ─── Error Code Constants ────────────────────────────────────────────
|
|
15
15
|
/** Resource not found. */
|
|
@@ -133,6 +133,17 @@ exports.E_ATTENUATION_CAP_VIOLATION = 'ATTENUATION_CAP_VIOLATION';
|
|
|
133
133
|
* Proxy returns this when budget:hard_block:{wid} Valkey key is set.
|
|
134
134
|
*/
|
|
135
135
|
exports.E_OVERAGE_HARD_CAP_EXCEEDED = 'OVERAGE_HARD_CAP_EXCEEDED';
|
|
136
|
+
// ─── Loop verification ────────────────────────────────
|
|
137
|
+
/**
|
|
138
|
+
* `POST /loops/:id/complete` with `SUCCEEDED`, under
|
|
139
|
+
* `loop_review.requireVerifiedCompletion`, on a run with no verification or
|
|
140
|
+
* whose latest verification failed (409; the body carries its findings).
|
|
141
|
+
*/
|
|
142
|
+
exports.E_LOOP_NOT_VERIFIED = 'E_LOOP_NOT_VERIFIED';
|
|
143
|
+
/** The run's latest verification checked nothing (every check not applicable or unavailable): 409, naming what is missing. */
|
|
144
|
+
exports.E_LOOP_UNVERIFIABLE = 'E_LOOP_UNVERIFIABLE';
|
|
145
|
+
/** The run has traces newer than its latest verification's watermark: verify again (409). */
|
|
146
|
+
exports.E_LOOP_VERIFY_STALE = 'E_LOOP_VERIFY_STALE';
|
|
136
147
|
// ─── Error Class ─────────────────────────────────────────────────────
|
|
137
148
|
/**
|
|
138
149
|
* Structured error class used across all Intutic services.
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/gateLimits.d.ts
CHANGED
|
@@ -167,4 +167,31 @@ export type HookGateHarness = keyof typeof HOOK_GATE_TIMEOUTS;
|
|
|
167
167
|
* Only a workspace's own pathological WHERE pattern runs this long.
|
|
168
168
|
*/
|
|
169
169
|
export declare function gateDeadlineMs(harness: HookGateHarness): number;
|
|
170
|
+
/**
|
|
171
|
+
* The deterministic tiers' worst case, by gate family: a call at the size
|
|
172
|
+
* limits on the loaded machine above ({@link gateDeadlineMs}).
|
|
173
|
+
*/
|
|
174
|
+
export declare const DETERMINISTIC_WORST_CASE_MS: {
|
|
175
|
+
readonly bash: 4600;
|
|
176
|
+
readonly js: 1200;
|
|
177
|
+
};
|
|
178
|
+
/** What a gate keeps back from its decide budget to write its decision and exit. */
|
|
179
|
+
export declare const DECIDE_BUDGET_MARGIN_MS = 500;
|
|
180
|
+
/**
|
|
181
|
+
* The decide budget of an SDK gate (`Gate.guard`) when
|
|
182
|
+
* `INTUTIC_DECIDE_BUDGET_MS` does not set one: a JavaScript hook gate's under
|
|
183
|
+
* a 10 s timeout.
|
|
184
|
+
*/
|
|
185
|
+
export declare const DECIDE_SDK_BUDGET_MS = 7300;
|
|
186
|
+
/**
|
|
187
|
+
* How long the decide tier of a hook gate may spend, at most, on one call:
|
|
188
|
+
* the gate's deadline less the deterministic tiers' worst case for its family
|
|
189
|
+
* and {@link DECIDE_BUDGET_MARGIN_MS}. `harness` null is a gate the host
|
|
190
|
+
* waits on without a limit and whose deadline is not a hook's (the n8n
|
|
191
|
+
* workflow gate), treated as {@link HOOK_TIMEOUT_SECONDS}. A gate also caps
|
|
192
|
+
* the budget at runtime by what is left of its deadline, less the margin.
|
|
193
|
+
* The bash gates and the n8n gate spend it through `intutic decide check`,
|
|
194
|
+
* whose cold start comes out of it.
|
|
195
|
+
*/
|
|
196
|
+
export declare function decideBudgetMs(family: keyof typeof DETERMINISTIC_WORST_CASE_MS, harness: HookGateHarness | null): number;
|
|
170
197
|
//# sourceMappingURL=gateLimits.d.ts.map
|
package/dist/gateLimits.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateLimits.d.ts","sourceRoot":"","sources":["../src/gateLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,QAAa,CAAA;AAE5C,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,QAAc,CAAA;AAE/C;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAA;AAE3C,6DAA6D;AAC7D,MAAM,MAAM,gBAAgB;AAC1B,uDAAuD;AACrD,SAAS;AACX,yDAAyD;GACvD,SAAS;AACX,8JAA8J;GAC5J,cAAc;AAChB,kFAAkF;GAChF,MAAM,CAAA;AAEV,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAA;IAChC,kCAAkC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAMD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBqB,CAAA;AAEpD,uCAAuC;AACvC,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAA;AAE7D;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAG/D"}
|
|
1
|
+
{"version":3,"file":"gateLimits.d.ts","sourceRoot":"","sources":["../src/gateLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,QAAa,CAAA;AAE5C,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,QAAc,CAAA;AAE/C;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAA;AAE3C,6DAA6D;AAC7D,MAAM,MAAM,gBAAgB;AAC1B,uDAAuD;AACrD,SAAS;AACX,yDAAyD;GACvD,SAAS;AACX,8JAA8J;GAC5J,cAAc;AAChB,kFAAkF;GAChF,MAAM,CAAA;AAEV,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAA;IAChC,kCAAkC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAMD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBqB,CAAA;AAEpD,uCAAuC;AACvC,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAA;AAE7D;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAG/D;AAED;;;GAGG;AACH,eAAO,MAAM,2BAA2B;;;CAAoC,CAAA;AAE5E,oFAAoF;AACpF,eAAO,MAAM,uBAAuB,MAAM,CAAA;AAE1C;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAA;AAExC;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,OAAO,2BAA2B,EAAE,OAAO,EAAE,eAAe,GAAG,IAAI,GAAG,MAAM,CAGxH"}
|
package/dist/gateLimits.js
CHANGED
|
@@ -26,8 +26,9 @@
|
|
|
26
26
|
* @module
|
|
27
27
|
*/
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.HOOK_GATE_TIMEOUTS = exports.GATE_DEADLINE_MARGIN_MS = exports.HOOK_TIMEOUT_SECONDS = exports.ARGUMENTS_SIZE_LIMIT = exports.COMMAND_SIZE_LIMIT = void 0;
|
|
29
|
+
exports.DECIDE_SDK_BUDGET_MS = exports.DECIDE_BUDGET_MARGIN_MS = exports.DETERMINISTIC_WORST_CASE_MS = exports.HOOK_GATE_TIMEOUTS = exports.GATE_DEADLINE_MARGIN_MS = exports.HOOK_TIMEOUT_SECONDS = exports.ARGUMENTS_SIZE_LIMIT = exports.COMMAND_SIZE_LIMIT = void 0;
|
|
30
30
|
exports.gateDeadlineMs = gateDeadlineMs;
|
|
31
|
+
exports.decideBudgetMs = decideBudgetMs;
|
|
31
32
|
/** The largest shell command, in UTF-8 bytes, a gate evaluates. */
|
|
32
33
|
exports.COMMAND_SIZE_LIMIT = 256 * 1024;
|
|
33
34
|
/** The largest tool arguments, in UTF-8 bytes of compact JSON, a gate evaluates. */
|
|
@@ -93,4 +94,31 @@ function gateDeadlineMs(harness) {
|
|
|
93
94
|
const timeoutMs = exports.HOOK_GATE_TIMEOUTS[harness].timeoutMs;
|
|
94
95
|
return Math.min(timeoutMs ?? CONNECT_MS, CONNECT_MS) - exports.GATE_DEADLINE_MARGIN_MS;
|
|
95
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* The deterministic tiers' worst case, by gate family: a call at the size
|
|
99
|
+
* limits on the loaded machine above ({@link gateDeadlineMs}).
|
|
100
|
+
*/
|
|
101
|
+
exports.DETERMINISTIC_WORST_CASE_MS = { bash: 4600, js: 1200 };
|
|
102
|
+
/** What a gate keeps back from its decide budget to write its decision and exit. */
|
|
103
|
+
exports.DECIDE_BUDGET_MARGIN_MS = 500;
|
|
104
|
+
/**
|
|
105
|
+
* The decide budget of an SDK gate (`Gate.guard`) when
|
|
106
|
+
* `INTUTIC_DECIDE_BUDGET_MS` does not set one: a JavaScript hook gate's under
|
|
107
|
+
* a 10 s timeout.
|
|
108
|
+
*/
|
|
109
|
+
exports.DECIDE_SDK_BUDGET_MS = 7300;
|
|
110
|
+
/**
|
|
111
|
+
* How long the decide tier of a hook gate may spend, at most, on one call:
|
|
112
|
+
* the gate's deadline less the deterministic tiers' worst case for its family
|
|
113
|
+
* and {@link DECIDE_BUDGET_MARGIN_MS}. `harness` null is a gate the host
|
|
114
|
+
* waits on without a limit and whose deadline is not a hook's (the n8n
|
|
115
|
+
* workflow gate), treated as {@link HOOK_TIMEOUT_SECONDS}. A gate also caps
|
|
116
|
+
* the budget at runtime by what is left of its deadline, less the margin.
|
|
117
|
+
* The bash gates and the n8n gate spend it through `intutic decide check`,
|
|
118
|
+
* whose cold start comes out of it.
|
|
119
|
+
*/
|
|
120
|
+
function decideBudgetMs(family, harness) {
|
|
121
|
+
const deadline = harness === null ? CONNECT_MS - exports.GATE_DEADLINE_MARGIN_MS : gateDeadlineMs(harness);
|
|
122
|
+
return deadline - exports.DETERMINISTIC_WORST_CASE_MS[family] - exports.DECIDE_BUDGET_MARGIN_MS;
|
|
123
|
+
}
|
|
96
124
|
//# sourceMappingURL=gateLimits.js.map
|
package/dist/gateLimits.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateLimits.js","sourceRoot":"","sources":["../src/gateLimits.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AA4FH,wCAGC;
|
|
1
|
+
{"version":3,"file":"gateLimits.js","sourceRoot":"","sources":["../src/gateLimits.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rule records in the policy snapshot: the `@rule` record, its
|
|
3
|
+
* fallback line, and how a gate that reads it decides a call (Tier R).
|
|
4
|
+
*
|
|
5
|
+
* A gate that cannot evaluate a rule must refuse what the rule covers, never
|
|
6
|
+
* skip it. So for each rule a gate is to enforce, the snapshot writer emits
|
|
7
|
+
* two lines inside the digest, as the decide records do:
|
|
8
|
+
*
|
|
9
|
+
* - an `@rule` record of five tab-separated columns: the tag, the fallback
|
|
10
|
+
* line's id or `-`, the kind, the rollout (`shadow` or `enforce`), and
|
|
11
|
+
* base64 of the canonical JSON of its payload, `{v, ref, sopTitle, …kind
|
|
12
|
+
* fields}`. Every reader up to v22 needs six
|
|
13
|
+
* columns for a rule, so it skips the record;
|
|
14
|
+
* - for an enforcing record, a fallback line: an ordinary `block` rule whose
|
|
15
|
+
* id is `<kind>-fallback:<n>@<sha256(sopId)[:12]>`
|
|
16
|
+
* ({@link gateRuleFallbackId}), on what the rule covers
|
|
17
|
+
* ({@link gateRuleFallback}). A gate that reads `@rule` records skips a
|
|
18
|
+
* fallback line only when a record that decodes names it.
|
|
19
|
+
*
|
|
20
|
+
* A snapshot with any `@rule` record is written in format 3
|
|
21
|
+
* ({@link RULE_SNAPSHOT_FORMAT}). Kinds in this batch:
|
|
22
|
+
*
|
|
23
|
+
* | Kind | From | Gate decision |
|
|
24
|
+
* |---|---|---|
|
|
25
|
+
* | `requires_outcome` | `requires_before: action:run_tests[ok] -> X` | X refused `PREREQUISITE_UNMET` unless the latest test run in the session passed |
|
|
26
|
+
* | `scope_paths` | `scope_paths:` with `scope_paths_mode: enforce` | a file change outside the scope refused `OUT_OF_SCOPE` |
|
|
27
|
+
* | `plan_approval` | `plan_approval: required\|strict` | refused `PLAN_NOT_APPROVED` until the session's plan is approved; under `strict`, a tool not in the plan refused `OFF_PLAN` |
|
|
28
|
+
*
|
|
29
|
+
* Only SOPs with no `roles:` compile: a gate knows no agent role.
|
|
30
|
+
*
|
|
31
|
+
* Self-contained but for `./testOutcome.ts`, `./scopeMatch.ts`, `./lanes.ts`
|
|
32
|
+
* and `./phrases.ts` (all carried by `@intutic/gate` as byte-identical
|
|
33
|
+
* copies), so `@intutic/gate` keeps a byte-identical copy of this file too.
|
|
34
|
+
* The Python port is `intutic_clawde/gate/rule_record.py`; both run
|
|
35
|
+
* `fixtures/rule-record-vectors.json`.
|
|
36
|
+
*
|
|
37
|
+
* @module
|
|
38
|
+
*/
|
|
39
|
+
import { type OutcomeState } from './testOutcome.js';
|
|
40
|
+
import type { RefusalScope } from './refusalDetail.js';
|
|
41
|
+
/** First column of a rule record. */
|
|
42
|
+
export declare const RULE_RECORD_TAG = "@rule";
|
|
43
|
+
/** The snapshot format a snapshot carrying any rule record is written in. */
|
|
44
|
+
export declare const RULE_SNAPSHOT_FORMAT = 3;
|
|
45
|
+
/** The longest SOP title a record carries, in code points. */
|
|
46
|
+
export declare const RULE_SOP_TITLE_MAX_CHARS = 80;
|
|
47
|
+
/** The most scope paths one record carries, and the longest of them in code points. */
|
|
48
|
+
export declare const RULE_SCOPE_PATHS_MAX = 64;
|
|
49
|
+
export declare const RULE_SCOPE_PATH_MAX_CHARS = 512;
|
|
50
|
+
export type GateRuleKind = 'requires_outcome' | 'scope_paths' | 'plan_approval';
|
|
51
|
+
export declare const GATE_RULE_KINDS: readonly GateRuleKind[];
|
|
52
|
+
/** The four action tokens a v22 hook gate's classifier knows: a fallback on one of them can use the `action` subject. */
|
|
53
|
+
export declare const V22_ACTION_TOKENS: readonly string[];
|
|
54
|
+
interface GateRuleRecordBase {
|
|
55
|
+
v: 1;
|
|
56
|
+
/** `<sopId>#<kind>:<n>`. */
|
|
57
|
+
ref: string;
|
|
58
|
+
sopTitle: string;
|
|
59
|
+
/** The paired fallback line's id; null when the record is shadow and has none. */
|
|
60
|
+
fallbackId: string | null;
|
|
61
|
+
rollout: 'shadow' | 'enforce';
|
|
62
|
+
}
|
|
63
|
+
export interface RequiresOutcomeRecord extends GateRuleRecordBase {
|
|
64
|
+
kind: 'requires_outcome';
|
|
65
|
+
first: 'action:run_tests';
|
|
66
|
+
qualifier: 'ok';
|
|
67
|
+
/** The gated token or tool. */
|
|
68
|
+
then: string;
|
|
69
|
+
/** `~>`: the run must be the call right before. */
|
|
70
|
+
adjacent: boolean;
|
|
71
|
+
}
|
|
72
|
+
export interface ScopePathsRecord extends GateRuleRecordBase {
|
|
73
|
+
kind: 'scope_paths';
|
|
74
|
+
scopePaths: string[];
|
|
75
|
+
}
|
|
76
|
+
export interface PlanApprovalRecord extends GateRuleRecordBase {
|
|
77
|
+
kind: 'plan_approval';
|
|
78
|
+
mode: 'required' | 'strict';
|
|
79
|
+
}
|
|
80
|
+
export type GateRuleRecord = RequiresOutcomeRecord | ScopePathsRecord | PlanApprovalRecord;
|
|
81
|
+
/** `ref`: `<sopId>#<kind>:<n>`. */
|
|
82
|
+
export declare function gateRuleRef(sopId: string, kind: GateRuleKind, n: number): string;
|
|
83
|
+
/** `fallbackId`: `<kind>-fallback:<n>@<first 12 hex of sha256(sopId)>`. */
|
|
84
|
+
export declare function gateRuleFallbackId(kind: GateRuleKind, n: number, sopId: string, sha256Hex: (text: string) => string): string;
|
|
85
|
+
/** What an older gate says when a rule's fallback line refuses. The writer scrubs and bounds it like any reason. */
|
|
86
|
+
export declare function gateRuleFallbackReason(kind: GateRuleKind, sopTitle: string): string;
|
|
87
|
+
/** The record's payload: everything but the kind, the fallback id and the rollout, which are columns. */
|
|
88
|
+
export declare function gateRulePayload(record: GateRuleRecord): {
|
|
89
|
+
v: 1;
|
|
90
|
+
ref: string;
|
|
91
|
+
sopTitle: string;
|
|
92
|
+
} & Record<string, unknown>;
|
|
93
|
+
/** The record as one `.rules` line. */
|
|
94
|
+
export declare function encodeGateRuleRecord(record: GateRuleRecord): string;
|
|
95
|
+
/**
|
|
96
|
+
* Reads an `@rule` line back, its kind, fallback id and rollout from the
|
|
97
|
+
* columns and the rest from the payload. Null, and so the fallback line stays
|
|
98
|
+
* in force, for any other line or when: it does not have five columns; the
|
|
99
|
+
* base64 or JSON is damaged; the kind (column 3) is unknown; the payload has
|
|
100
|
+
* a field its kind does not have or lacks one; the rollout (column 4) is not
|
|
101
|
+
* `shadow` or `enforce`; a field is out of its bounds; the ref does not end
|
|
102
|
+
* `#<kind>:<n>`; an enforcing record's fallback id (column 2) is not
|
|
103
|
+
* `<kind>-fallback:<n>@<12 hex>` for the same n, or a shadow record's is
|
|
104
|
+
* not `-`.
|
|
105
|
+
*/
|
|
106
|
+
export declare function decodeGateRuleRecord(line: string): GateRuleRecord | null;
|
|
107
|
+
/**
|
|
108
|
+
* A record as the control plane serves it from policy resolve
|
|
109
|
+
* (`ResolvedPolicy.gateRecords`): which SOP it came from, its kind, rollout
|
|
110
|
+
* and fallback id, and the payload the `@rule` line carries.
|
|
111
|
+
*/
|
|
112
|
+
export interface ServedGateRecord {
|
|
113
|
+
sopId: string;
|
|
114
|
+
kind: GateRuleKind;
|
|
115
|
+
rollout: 'shadow' | 'enforce';
|
|
116
|
+
fallbackId: string | null;
|
|
117
|
+
payload: {
|
|
118
|
+
v: 1;
|
|
119
|
+
ref: string;
|
|
120
|
+
sopTitle: string;
|
|
121
|
+
} & Record<string, unknown>;
|
|
122
|
+
}
|
|
123
|
+
/** A record in the served shape. */
|
|
124
|
+
export declare function toServedGateRecord(record: GateRuleRecord, sopId: string): ServedGateRecord;
|
|
125
|
+
/**
|
|
126
|
+
* A served record as a gate record, or null when it does not hold together:
|
|
127
|
+
* checked by encoding it and reading the line back, so a writer never emits
|
|
128
|
+
* a record no gate can decode (its fallback line would refuse instead).
|
|
129
|
+
*/
|
|
130
|
+
export declare function fromServedGateRecord(served: ServedGateRecord): GateRuleRecord | null;
|
|
131
|
+
/** The parts of a parsed SOP (`ParsedFrontMatter`, guardrailRender.ts) the records are compiled from. */
|
|
132
|
+
export interface GateRuleFrontMatter {
|
|
133
|
+
roles: readonly string[];
|
|
134
|
+
mode: 'shadow' | 'enforce';
|
|
135
|
+
requiresBefore: ReadonlyArray<readonly [string, string, boolean]>;
|
|
136
|
+
scopePaths: readonly string[];
|
|
137
|
+
scopePathsMode: 'advise' | 'enforce';
|
|
138
|
+
planApproval: 'required' | 'strict' | null;
|
|
139
|
+
}
|
|
140
|
+
/** One fallback line, in the shape the snapshot writer's `GuardPattern` takes (it adds the rationale). */
|
|
141
|
+
export interface GateRuleFallback {
|
|
142
|
+
id: string;
|
|
143
|
+
severity: 'block';
|
|
144
|
+
subject: 'tool' | 'action' | 'phrase';
|
|
145
|
+
source: string;
|
|
146
|
+
ignoreCase: boolean;
|
|
147
|
+
reason: string;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* The fallback line for an enforcing record: what an older gate refuses in
|
|
151
|
+
* its place. `requires_outcome`: the gated call (by the action subject for
|
|
152
|
+
* the four tokens a v22 classifier knows, by the token's phrases for a newer
|
|
153
|
+
* token, by the shell tools for a token with no phrases, by the tool subject
|
|
154
|
+
* for a tool); `scope_paths`: every mutation tool; `plan_approval`: every call.
|
|
155
|
+
*/
|
|
156
|
+
export declare function gateRuleFallback(record: GateRuleRecord): GateRuleFallback | null;
|
|
157
|
+
/**
|
|
158
|
+
* The records (and, for each enforcing one, its fallback line) one SOP
|
|
159
|
+
* compiles to: each qualified `requires_before`, then its `scope_paths` when
|
|
160
|
+
* `scope_paths_mode: enforce`, then its `plan_approval:`. Nothing for a SOP
|
|
161
|
+
* with `roles:` (a gate knows no role). A shadow SOP (`mode: shadow`, or
|
|
162
|
+
* `entry.shadow`, which the writer sets for SILENT_LOG) gets shadow records
|
|
163
|
+
* and no fallback lines.
|
|
164
|
+
*/
|
|
165
|
+
export declare function compileSopGateRecords(entry: {
|
|
166
|
+
sopId: string;
|
|
167
|
+
sopTitle: string;
|
|
168
|
+
shadow?: boolean;
|
|
169
|
+
}, fm: GateRuleFrontMatter, sha256Hex: (text: string) => string): {
|
|
170
|
+
records: GateRuleRecord[];
|
|
171
|
+
fallbacks: GateRuleFallback[];
|
|
172
|
+
};
|
|
173
|
+
/** The refusal codes Tier R gives. */
|
|
174
|
+
export type GateRuleCode = 'PREREQUISITE_UNMET' | 'OUT_OF_SCOPE' | 'OFF_PLAN' | 'PLAN_NOT_APPROVED';
|
|
175
|
+
/** The session's plan as a gate reads it: approved (APPROVED or EXECUTING) with its tools, none, or not readable. */
|
|
176
|
+
export type GateRulePlan = {
|
|
177
|
+
status: 'approved';
|
|
178
|
+
tools: readonly string[];
|
|
179
|
+
} | {
|
|
180
|
+
status: 'none';
|
|
181
|
+
} | {
|
|
182
|
+
status: 'unavailable';
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
* The session's plan from `GET /api/v1/plans/session/:sessionId`: `status`
|
|
186
|
+
* is the HTTP status, or null when the control plane could not be reached.
|
|
187
|
+
* 200 with `lifecycleState` APPROVED or EXECUTING is approved, its tools the
|
|
188
|
+
* steps' `tool` (or `toolName`) names; 200 in any other state, and 404, are
|
|
189
|
+
* none; anything else is unavailable, which refuses as none does.
|
|
190
|
+
*/
|
|
191
|
+
export declare function gateRulePlanFromResponse(status: number | null, body: unknown): GateRulePlan;
|
|
192
|
+
/** One call, and what the gate knows of its session, for {@link evaluateGateRuleRecords}. */
|
|
193
|
+
export interface GateRuleCall {
|
|
194
|
+
tool: string;
|
|
195
|
+
input: unknown;
|
|
196
|
+
/** The action tokens the call classifies to. */
|
|
197
|
+
actions: readonly string[];
|
|
198
|
+
/** The gate's working directory and the workspace root (the nearest `.git` above it, else the directory itself). */
|
|
199
|
+
cwd: string;
|
|
200
|
+
root: string;
|
|
201
|
+
/** The session id; empty when the harness sent none. */
|
|
202
|
+
sessionId: string;
|
|
203
|
+
/** The harness's name, for the reasons. */
|
|
204
|
+
harness: string;
|
|
205
|
+
/** The session's outcome state, or null when there is none or it does not read. */
|
|
206
|
+
outcomes: OutcomeState | null;
|
|
207
|
+
/** The harness reports tool results the gate can read (its post event is confirmed). */
|
|
208
|
+
observable: boolean;
|
|
209
|
+
/** The session's plan; only read when a `plan_approval` record applies. */
|
|
210
|
+
plan: GateRulePlan;
|
|
211
|
+
nowMs: number;
|
|
212
|
+
}
|
|
213
|
+
export interface GateRuleFinding {
|
|
214
|
+
code: GateRuleCode;
|
|
215
|
+
/** The rule id the refusal and its events name. */
|
|
216
|
+
ruleId: string;
|
|
217
|
+
reason: string;
|
|
218
|
+
scope: RefusalScope;
|
|
219
|
+
/** The record's ref, or the first record's when several decided together. */
|
|
220
|
+
ref: string;
|
|
221
|
+
}
|
|
222
|
+
export interface GateRuleEvaluation {
|
|
223
|
+
/** The first enforcing record that refuses, or null to let the call on. */
|
|
224
|
+
refusal: GateRuleFinding | null;
|
|
225
|
+
/** What the shadow records would have refused, recorded and not acted on. */
|
|
226
|
+
shadow: GateRuleFinding[];
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Tier R: the snapshot's rule records against one call. The enforcing
|
|
230
|
+
* records' first finding refuses; the shadow records' findings are reported
|
|
231
|
+
* and change nothing. A rule failure (an unreadable plan feed, an unreadable
|
|
232
|
+
* outcome state) is a finding, so it refuses whatever the client's
|
|
233
|
+
* `failClosed` says.
|
|
234
|
+
*/
|
|
235
|
+
export declare function evaluateGateRuleRecords(records: readonly GateRuleRecord[], call: GateRuleCall): GateRuleEvaluation;
|
|
236
|
+
/**
|
|
237
|
+
* The decoder and Tier R as JavaScript source, for the hook gates to embed
|
|
238
|
+
* after `PHRASES_JS_SOURCE`, `TEST_OUTCOME_JS_SOURCE` and
|
|
239
|
+
* `SCOPE_MATCH_JS_SOURCE`, whose functions these call. The constants the
|
|
240
|
+
* functions read are written into the source.
|
|
241
|
+
*/
|
|
242
|
+
export declare const RULE_RECORD_JS_SOURCE: string;
|
|
243
|
+
export {};
|
|
244
|
+
//# sourceMappingURL=gateRuleRecord.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateRuleRecord.d.ts","sourceRoot":"","sources":["../src/gateRuleRecord.ts"],"names":[],"mappings":"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"}
|