@intutic/shared-types 2.1.0 → 2.3.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/anomaly.d.ts +6 -10
- package/dist/anomaly.d.ts.map +1 -1
- package/dist/anomaly.js +0 -2
- package/dist/anomaly.js.map +1 -1
- package/dist/api-contracts.d.ts +1 -1
- package/dist/api-contracts.js +1 -1
- package/dist/attenuation.d.ts +1 -1
- package/dist/attenuation.js +1 -1
- package/dist/auth.d.ts +10 -9
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +3 -4
- package/dist/auth.js.map +1 -1
- package/dist/billing.d.ts +1 -1
- package/dist/billing.js +1 -1
- package/dist/destructiveSql.d.ts +48 -0
- package/dist/destructiveSql.d.ts.map +1 -0
- package/dist/destructiveSql.js +43 -0
- package/dist/destructiveSql.js.map +1 -0
- package/dist/devInventory.d.ts +120 -0
- package/dist/devInventory.d.ts.map +1 -0
- package/dist/devInventory.js +80 -0
- package/dist/devInventory.js.map +1 -0
- package/dist/enums.d.ts +18 -21
- package/dist/enums.d.ts.map +1 -1
- package/dist/enums.js +24 -28
- package/dist/enums.js.map +1 -1
- package/dist/errors.js +3 -3
- package/dist/errors.js.map +1 -1
- package/dist/finops.d.ts +14 -2
- package/dist/finops.d.ts.map +1 -1
- package/dist/finops.js +15 -1
- package/dist/finops.js.map +1 -1
- package/dist/gateDecisions.d.ts +18 -0
- package/dist/gateDecisions.d.ts.map +1 -0
- package/dist/gateDecisions.js +20 -0
- package/dist/gateDecisions.js.map +1 -0
- package/dist/gateIdentity.d.ts +23 -0
- package/dist/gateIdentity.d.ts.map +1 -0
- package/dist/gateIdentity.js +32 -0
- package/dist/gateIdentity.js.map +1 -0
- package/dist/gateKind.d.ts +172 -0
- package/dist/gateKind.d.ts.map +1 -0
- package/dist/gateKind.js +160 -0
- package/dist/gateKind.js.map +1 -0
- package/dist/gateLimits.d.ts +170 -0
- package/dist/gateLimits.d.ts.map +1 -0
- package/dist/gateLimits.js +96 -0
- package/dist/gateLimits.js.map +1 -0
- package/dist/gitRemote.d.ts +17 -0
- package/dist/gitRemote.d.ts.map +1 -0
- package/dist/gitRemote.js +71 -0
- package/dist/gitRemote.js.map +1 -0
- package/dist/governanceCoverage.d.ts +3 -3
- package/dist/governanceCoverage.js +3 -3
- package/dist/guardrailIr.d.ts +3 -3
- package/dist/guardrailIr.d.ts.map +1 -1
- package/dist/guardrailIr.js +3 -3
- package/dist/guardrailIr.js.map +1 -1
- package/dist/guardrailRender.d.ts +1 -1
- package/dist/guardrailRender.js +1 -1
- package/dist/harnessRules.d.ts +74 -0
- package/dist/harnessRules.d.ts.map +1 -0
- package/dist/harnessRules.js +142 -0
- package/dist/harnessRules.js.map +1 -0
- package/dist/holdMessages.d.ts +25 -0
- package/dist/holdMessages.d.ts.map +1 -0
- package/dist/holdMessages.js +34 -0
- package/dist/holdMessages.js.map +1 -0
- package/dist/identity.d.ts +1 -1
- package/dist/identity.js +2 -2
- package/dist/identity.js.map +1 -1
- package/dist/index.d.ts +36 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +141 -10
- package/dist/index.js.map +1 -1
- package/dist/intelligence.d.ts +1 -2
- package/dist/intelligence.d.ts.map +1 -1
- package/dist/intelligence.js.map +1 -1
- package/dist/mcpBudgets.d.ts +191 -0
- package/dist/mcpBudgets.d.ts.map +1 -0
- package/dist/mcpBudgets.js +144 -0
- package/dist/mcpBudgets.js.map +1 -0
- package/dist/mcpRegistryRecord.d.ts +143 -0
- package/dist/mcpRegistryRecord.d.ts.map +1 -0
- package/dist/mcpRegistryRecord.js +229 -0
- package/dist/mcpRegistryRecord.js.map +1 -0
- package/dist/mcpToolRisk.d.ts +82 -0
- package/dist/mcpToolRisk.d.ts.map +1 -0
- package/dist/mcpToolRisk.js +334 -0
- package/dist/mcpToolRisk.js.map +1 -0
- package/dist/modelCatalog.d.ts +2 -2
- package/dist/modelCatalog.generated.js +1 -1
- package/dist/modelCatalog.generated.js.map +1 -1
- package/dist/modelCatalog.js +2 -2
- package/dist/notifications.d.ts +20 -130
- package/dist/notifications.d.ts.map +1 -1
- package/dist/notifications.js +241 -1
- package/dist/notifications.js.map +1 -1
- package/dist/phrases.d.ts +87 -0
- package/dist/phrases.d.ts.map +1 -0
- package/dist/phrases.js +241 -0
- package/dist/phrases.js.map +1 -0
- package/dist/piiDetectors.d.ts +97 -0
- package/dist/piiDetectors.d.ts.map +1 -0
- package/dist/piiDetectors.js +96 -0
- package/dist/piiDetectors.js.map +1 -0
- package/dist/piiDetectors.json +71 -0
- package/dist/policy.d.ts +1 -1
- package/dist/policy.js +1 -1
- package/dist/policyGuardrails.d.ts +127 -10
- package/dist/policyGuardrails.d.ts.map +1 -1
- package/dist/policyGuardrails.js +59 -6
- package/dist/policyGuardrails.js.map +1 -1
- package/dist/posturePresets.js +1 -1
- package/dist/posturePresets.js.map +1 -1
- package/dist/providerVerification.d.ts +2 -2
- package/dist/providerVerification.js +2 -2
- package/dist/providers.d.ts +4 -4
- package/dist/providers.d.ts.map +1 -1
- package/dist/providers.js +11 -6
- package/dist/providers.js.map +1 -1
- package/dist/regoBuiltins.d.ts +42 -0
- package/dist/regoBuiltins.d.ts.map +1 -0
- package/dist/regoBuiltins.js +732 -0
- package/dist/regoBuiltins.js.map +1 -0
- package/dist/regoRules.d.ts +105 -0
- package/dist/regoRules.d.ts.map +1 -0
- package/dist/regoRules.js +407 -0
- package/dist/regoRules.js.map +1 -0
- package/dist/ruleLoadFailures.d.ts +15 -0
- package/dist/ruleLoadFailures.d.ts.map +1 -0
- package/dist/ruleLoadFailures.js +26 -0
- package/dist/ruleLoadFailures.js.map +1 -0
- package/dist/scriptScan.d.ts +5 -5
- package/dist/scriptScan.js +3 -3
- package/dist/sequence.d.ts +52 -0
- package/dist/sequence.d.ts.map +1 -0
- package/dist/sequence.js +127 -0
- package/dist/sequence.js.map +1 -0
- package/dist/session.d.ts +1 -1
- package/dist/session.js +1 -1
- package/dist/skillScan.d.ts +3 -3
- package/dist/skillScan.d.ts.map +1 -1
- package/dist/skillScan.js +26 -4
- package/dist/skillScan.js.map +1 -1
- package/dist/sop.d.ts +24 -11
- package/dist/sop.d.ts.map +1 -1
- package/dist/sop.js +10 -9
- package/dist/sop.js.map +1 -1
- package/dist/sourceProviders.d.ts +1 -8
- package/dist/sourceProviders.d.ts.map +1 -1
- package/dist/sourceProviders.js +2 -9
- package/dist/sourceProviders.js.map +1 -1
- package/dist/ssoGroupClearance.d.ts +119 -0
- package/dist/ssoGroupClearance.d.ts.map +1 -0
- package/dist/ssoGroupClearance.js +196 -0
- package/dist/ssoGroupClearance.js.map +1 -0
- package/dist/sync.d.ts +42 -14
- package/dist/sync.d.ts.map +1 -1
- package/dist/sync.js +3 -3
- package/dist/sync.js.map +1 -1
- package/dist/taskManagement.d.ts +0 -2
- package/dist/taskManagement.d.ts.map +1 -1
- package/dist/taskManagement.js +0 -2
- package/dist/taskManagement.js.map +1 -1
- package/dist/toolPoison.d.ts +33 -0
- package/dist/toolPoison.d.ts.map +1 -0
- package/dist/toolPoison.js +85 -0
- package/dist/toolPoison.js.map +1 -0
- package/dist/usage.d.ts +186 -0
- package/dist/usage.d.ts.map +1 -1
- package/dist/wasmBinary.d.ts +25 -0
- package/dist/wasmBinary.d.ts.map +1 -0
- package/dist/wasmBinary.js +111 -0
- package/dist/wasmBinary.js.map +1 -0
- package/dist/wasmFuel.d.ts +52 -0
- package/dist/wasmFuel.d.ts.map +1 -0
- package/dist/wasmFuel.js +320 -0
- package/dist/wasmFuel.js.map +1 -0
- package/dist/wasmMemoryCap.d.ts +21 -0
- package/dist/wasmMemoryCap.d.ts.map +1 -0
- package/dist/wasmMemoryCap.js +58 -0
- package/dist/wasmMemoryCap.js.map +1 -0
- package/dist/workspaceSettings.d.ts +126 -17
- package/dist/workspaceSettings.d.ts.map +1 -1
- package/dist/workspaceSettings.js +21 -2
- package/dist/workspaceSettings.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"regoBuiltins.js","sourceRoot":"","sources":["../src/regoBuiltins.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rego policies compiled by OPA (`opa build -t wasm`), run as Intutic rules —
|
|
3
|
+
* the TypeScript host, mirroring `packages/proxy/src/wasm/opa.rs`.
|
|
4
|
+
*
|
|
5
|
+
* Used by every TypeScript surface that loads or runs a Rego rule: the MCP
|
|
6
|
+
* governance proxy evaluates with it, `intutic rules build|test` and
|
|
7
|
+
* `intutic policy install` validate and run with it, and the control plane
|
|
8
|
+
* checks an upload with it. One host, so a rule one of them accepts the others
|
|
9
|
+
* do not refuse.
|
|
10
|
+
*
|
|
11
|
+
* Browser-safe: no Node imports. The two hash builtins take the host's digest
|
|
12
|
+
* function through {@link RegoHostOptions}; without one, a policy using them
|
|
13
|
+
* is refused at load.
|
|
14
|
+
*
|
|
15
|
+
* The contract a policy is written against — the input document, the result
|
|
16
|
+
* shapes and the packaging — is documented once, on the guide page
|
|
17
|
+
* "Rego policies", and in `opa.rs`.
|
|
18
|
+
*
|
|
19
|
+
* @module
|
|
20
|
+
*/
|
|
21
|
+
import { type RegoBuiltin, type RegoDigest } from './regoBuiltins.js';
|
|
22
|
+
/** The custom section `intutic rules build` writes a rule's metadata into. */
|
|
23
|
+
export declare const REGO_METADATA_SECTION = "intutic.rule";
|
|
24
|
+
/** `input.v`: bumped only for a change a policy could observe. */
|
|
25
|
+
export declare const REGO_INPUT_VERSION = 1;
|
|
26
|
+
/** Largest policy input, in bytes; long strings in `args` are cut to fit. */
|
|
27
|
+
export declare const REGO_MAX_INPUT_BYTES: number;
|
|
28
|
+
/** Set to `1` to refuse Rego rules on a host. */
|
|
29
|
+
export declare const REGO_DISABLE_ENV = "INTUTIC_DISABLE_REGO_RULES";
|
|
30
|
+
export type RegoRiskTier = 'low' | 'medium' | 'high' | 'critical';
|
|
31
|
+
export interface RegoRuleMetadata {
|
|
32
|
+
v: number;
|
|
33
|
+
abi: string;
|
|
34
|
+
entrypoint?: string;
|
|
35
|
+
risk_tier?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface RegoHostOptions {
|
|
38
|
+
digest?: RegoDigest;
|
|
39
|
+
/** Called with each new instance's exports, before evaluation (the MCP proxy reads its fuel counter). */
|
|
40
|
+
onInstance?: (exports: Record<string, unknown>) => void;
|
|
41
|
+
}
|
|
42
|
+
/** A loaded Rego rule: what evaluation needs, resolved once. */
|
|
43
|
+
export interface RegoRule {
|
|
44
|
+
module: WebAssembly.Module;
|
|
45
|
+
/** Pages of memory the module's import asks for at least. */
|
|
46
|
+
memoryPages: number;
|
|
47
|
+
entrypoint: string;
|
|
48
|
+
entrypointId: number;
|
|
49
|
+
/** By the module's own builtin ids. */
|
|
50
|
+
builtins: ReadonlyMap<number, RegoBuiltin>;
|
|
51
|
+
/** Applied to a decision that does not name its own. */
|
|
52
|
+
riskTier?: RegoRiskTier;
|
|
53
|
+
}
|
|
54
|
+
export type RegoDecision = {
|
|
55
|
+
decision: 'allow';
|
|
56
|
+
riskTier?: RegoRiskTier;
|
|
57
|
+
} | {
|
|
58
|
+
decision: 'deny' | 'hold' | 'reask';
|
|
59
|
+
reason: string;
|
|
60
|
+
riskTier?: RegoRiskTier;
|
|
61
|
+
};
|
|
62
|
+
/** Whether `module` was produced by `opa build -t wasm`. */
|
|
63
|
+
export declare function isOpaModule(module: WebAssembly.Module): boolean;
|
|
64
|
+
/** The rule's metadata, or null without one. Throws for a section that does not parse. */
|
|
65
|
+
export declare function readRegoMetadata(module: WebAssembly.Module): RegoRuleMetadata | null;
|
|
66
|
+
/** `bytes` with a metadata custom section appended (custom sections may go anywhere). */
|
|
67
|
+
export declare function withRegoMetadata(bytes: Uint8Array, meta: RegoRuleMetadata): Uint8Array;
|
|
68
|
+
/**
|
|
69
|
+
* The minimum pages of the module's imported memory. `WebAssembly.Module`
|
|
70
|
+
* does not expose import limits, so this reads the import section.
|
|
71
|
+
*/
|
|
72
|
+
export declare function importedMemoryPages(bytes: Uint8Array): number;
|
|
73
|
+
/**
|
|
74
|
+
* Load a module as a Rego rule: null for a native rule, an Error for an OPA
|
|
75
|
+
* build this host cannot run, naming what is missing.
|
|
76
|
+
*
|
|
77
|
+
* `module` is `bytes` compiled; a caller that rewrites a module before running
|
|
78
|
+
* it (the MCP proxy meters fuel) passes the rewritten one.
|
|
79
|
+
*/
|
|
80
|
+
export declare function loadRegoRule(bytes: Uint8Array, module?: WebAssembly.Module, options?: RegoHostOptions): RegoRule | null;
|
|
81
|
+
/**
|
|
82
|
+
* Evaluate `rule` once against an input document (JSON text), returning the
|
|
83
|
+
* raw `opa_eval` result: `[{"result": …}]`, or `[]` when undefined.
|
|
84
|
+
*/
|
|
85
|
+
export declare function evaluateRegoRule(rule: RegoRule, input: string, options?: RegoHostOptions): unknown;
|
|
86
|
+
/**
|
|
87
|
+
* Thrown by {@link regoDecision} for a result in none of the documented
|
|
88
|
+
* shapes: the rule reached no decision, and the host refuses the call, as for
|
|
89
|
+
* a rule that ran out of time.
|
|
90
|
+
*/
|
|
91
|
+
export declare class RegoResultError extends Error {
|
|
92
|
+
name: string;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Map an `opa_eval` result to a decision. Undefined allows; a result in none
|
|
96
|
+
* of the documented shapes throws {@link RegoResultError}.
|
|
97
|
+
*/
|
|
98
|
+
export declare function regoDecision(result: unknown, entrypoint: string): RegoDecision;
|
|
99
|
+
/**
|
|
100
|
+
* Serialise a policy input, cutting long strings in `args` until it fits in
|
|
101
|
+
* {@link REGO_MAX_INPUT_BYTES} — the same steps as the Rust host, so both
|
|
102
|
+
* hosts hand a policy the same document.
|
|
103
|
+
*/
|
|
104
|
+
export declare function boundedRegoInput(input: Record<string, unknown>): string;
|
|
105
|
+
//# sourceMappingURL=regoRules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"regoRules.d.ts","sourceRoot":"","sources":["../src/regoRules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAsB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAEzF,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,iBAAiB,CAAA;AAEnD,kEAAkE;AAClE,eAAO,MAAM,kBAAkB,IAAI,CAAA;AAEnC,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB,QAAY,CAAA;AAE7C,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,+BAA+B,CAAA;AAM5D,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAA;AAGjE,MAAM,WAAW,gBAAgB;IAC/B,CAAC,EAAE,MAAM,CAAA;IACT,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,yGAAyG;IACzG,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;CACxD;AAED,gEAAgE;AAChE,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAA;IAC1B,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,uCAAuC;IACvC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC1C,wDAAwD;IACxD,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB;AAED,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,YAAY,CAAA;CAAE,GAC9C;IAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,YAAY,CAAA;CAAE,CAAA;AAEpF,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,GAAG,OAAO,CAI/D;AAED,0FAA0F;AAC1F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAWpF;AAaD,yFAAyF;AACzF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,GAAG,UAAU,CAQtF;AAiDD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CA0B7D;AAoDD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,MAAM,GAAE,WAAW,CAAC,MAAiE,EACrF,OAAO,GAAE,eAAoB,GAC5B,QAAQ,GAAG,IAAI,CAoEjB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAoBtG;AAkBD;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IAC/B,IAAI,SAAoB;CAClC;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,YAAY,CAyB9E;AA2BD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAWvE"}
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Rego policies compiled by OPA (`opa build -t wasm`), run as Intutic rules —
|
|
4
|
+
* the TypeScript host, mirroring `packages/proxy/src/wasm/opa.rs`.
|
|
5
|
+
*
|
|
6
|
+
* Used by every TypeScript surface that loads or runs a Rego rule: the MCP
|
|
7
|
+
* governance proxy evaluates with it, `intutic rules build|test` and
|
|
8
|
+
* `intutic policy install` validate and run with it, and the control plane
|
|
9
|
+
* checks an upload with it. One host, so a rule one of them accepts the others
|
|
10
|
+
* do not refuse.
|
|
11
|
+
*
|
|
12
|
+
* Browser-safe: no Node imports. The two hash builtins take the host's digest
|
|
13
|
+
* function through {@link RegoHostOptions}; without one, a policy using them
|
|
14
|
+
* is refused at load.
|
|
15
|
+
*
|
|
16
|
+
* The contract a policy is written against — the input document, the result
|
|
17
|
+
* shapes and the packaging — is documented once, on the guide page
|
|
18
|
+
* "Rego policies", and in `opa.rs`.
|
|
19
|
+
*
|
|
20
|
+
* @module
|
|
21
|
+
*/
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.RegoResultError = exports.REGO_DISABLE_ENV = exports.REGO_MAX_INPUT_BYTES = exports.REGO_INPUT_VERSION = exports.REGO_METADATA_SECTION = void 0;
|
|
24
|
+
exports.isOpaModule = isOpaModule;
|
|
25
|
+
exports.readRegoMetadata = readRegoMetadata;
|
|
26
|
+
exports.withRegoMetadata = withRegoMetadata;
|
|
27
|
+
exports.importedMemoryPages = importedMemoryPages;
|
|
28
|
+
exports.loadRegoRule = loadRegoRule;
|
|
29
|
+
exports.evaluateRegoRule = evaluateRegoRule;
|
|
30
|
+
exports.regoDecision = regoDecision;
|
|
31
|
+
exports.boundedRegoInput = boundedRegoInput;
|
|
32
|
+
const regoBuiltins_js_1 = require("./regoBuiltins.js");
|
|
33
|
+
/** The custom section `intutic rules build` writes a rule's metadata into. */
|
|
34
|
+
exports.REGO_METADATA_SECTION = 'intutic.rule';
|
|
35
|
+
/** `input.v`: bumped only for a change a policy could observe. */
|
|
36
|
+
exports.REGO_INPUT_VERSION = 1;
|
|
37
|
+
/** Largest policy input, in bytes; long strings in `args` are cut to fit. */
|
|
38
|
+
exports.REGO_MAX_INPUT_BYTES = 64 * 1024;
|
|
39
|
+
/** Set to `1` to refuse Rego rules on a host. */
|
|
40
|
+
exports.REGO_DISABLE_ENV = 'INTUTIC_DISABLE_REGO_RULES';
|
|
41
|
+
const TRUNCATION_STEPS = [16 * 1024, 4 * 1024, 1024, 256];
|
|
42
|
+
const MAX_MEMORY_PAGES = 256;
|
|
43
|
+
const MAX_BUILTIN_RESULT_BYTES = 1024 * 1024;
|
|
44
|
+
const RISK_TIERS = ['low', 'medium', 'high', 'critical'];
|
|
45
|
+
/** Whether `module` was produced by `opa build -t wasm`. */
|
|
46
|
+
function isOpaModule(module) {
|
|
47
|
+
const importsMemory = WebAssembly.Module.imports(module).some((i) => i.module === 'env' && i.name === 'memory');
|
|
48
|
+
const exports = new Set(WebAssembly.Module.exports(module).map((e) => e.name));
|
|
49
|
+
return importsMemory && exports.has('opa_eval') && exports.has('opa_wasm_abi_version');
|
|
50
|
+
}
|
|
51
|
+
/** The rule's metadata, or null without one. Throws for a section that does not parse. */
|
|
52
|
+
function readRegoMetadata(module) {
|
|
53
|
+
const sections = WebAssembly.Module.customSections(module, exports.REGO_METADATA_SECTION);
|
|
54
|
+
if (sections.length === 0)
|
|
55
|
+
return null;
|
|
56
|
+
let meta;
|
|
57
|
+
try {
|
|
58
|
+
meta = JSON.parse(new TextDecoder().decode(sections[0]));
|
|
59
|
+
}
|
|
60
|
+
catch (err) {
|
|
61
|
+
throw new Error(`unreadable \`${exports.REGO_METADATA_SECTION}\` section: ${err.message}`, { cause: err });
|
|
62
|
+
}
|
|
63
|
+
if (meta.v !== 1)
|
|
64
|
+
throw new Error(`\`${exports.REGO_METADATA_SECTION}\` version ${String(meta.v)} is not supported (1 is)`);
|
|
65
|
+
return meta;
|
|
66
|
+
}
|
|
67
|
+
function leb128(n) {
|
|
68
|
+
const out = [];
|
|
69
|
+
do {
|
|
70
|
+
let byte = n & 0x7f;
|
|
71
|
+
n >>>= 7;
|
|
72
|
+
if (n !== 0)
|
|
73
|
+
byte |= 0x80;
|
|
74
|
+
out.push(byte);
|
|
75
|
+
} while (n !== 0);
|
|
76
|
+
return out;
|
|
77
|
+
}
|
|
78
|
+
/** `bytes` with a metadata custom section appended (custom sections may go anywhere). */
|
|
79
|
+
function withRegoMetadata(bytes, meta) {
|
|
80
|
+
const name = new TextEncoder().encode(exports.REGO_METADATA_SECTION);
|
|
81
|
+
const payload = new TextEncoder().encode(JSON.stringify(meta));
|
|
82
|
+
const body = [...leb128(name.length), ...name, ...payload];
|
|
83
|
+
const out = new Uint8Array(bytes.length + 1 + leb128(body.length).length + body.length);
|
|
84
|
+
out.set(bytes, 0);
|
|
85
|
+
out.set([0, ...leb128(body.length), ...body], bytes.length);
|
|
86
|
+
return out;
|
|
87
|
+
}
|
|
88
|
+
function parseRiskTier(tier) {
|
|
89
|
+
const t = tier.toLowerCase();
|
|
90
|
+
return RISK_TIERS.includes(t) ? t : undefined;
|
|
91
|
+
}
|
|
92
|
+
function fn(exports, name) {
|
|
93
|
+
const f = exports[name];
|
|
94
|
+
if (typeof f !== 'function')
|
|
95
|
+
throw new Error(`the OPA module does not export \`${name}\``);
|
|
96
|
+
return f;
|
|
97
|
+
}
|
|
98
|
+
function readCString(memory, addr) {
|
|
99
|
+
const bytes = new Uint8Array(memory.buffer);
|
|
100
|
+
if (addr < 0 || addr >= bytes.length)
|
|
101
|
+
throw new Error(`string address ${addr} is outside memory`);
|
|
102
|
+
const end = bytes.indexOf(0, addr);
|
|
103
|
+
if (end < 0)
|
|
104
|
+
throw new Error(`unterminated string at ${addr}`);
|
|
105
|
+
return new TextDecoder().decode(bytes.subarray(addr, end));
|
|
106
|
+
}
|
|
107
|
+
function dumpValue(inst, addr) {
|
|
108
|
+
return JSON.parse(readCString(inst.memory, fn(inst.exports, 'opa_json_dump')(addr)));
|
|
109
|
+
}
|
|
110
|
+
/** Write JSON text into the module and parse it into an OPA value. */
|
|
111
|
+
function loadValue(inst, json) {
|
|
112
|
+
const bytes = new TextEncoder().encode(json);
|
|
113
|
+
const addr = fn(inst.exports, 'opa_malloc')(bytes.length);
|
|
114
|
+
new Uint8Array(inst.memory.buffer).set(bytes, addr);
|
|
115
|
+
return fn(inst.exports, 'opa_json_parse')(addr, bytes.length);
|
|
116
|
+
}
|
|
117
|
+
function leb(bytes, p) {
|
|
118
|
+
let value = 0;
|
|
119
|
+
for (let shift = 0; shift < 35; shift += 7) {
|
|
120
|
+
const b = bytes[p++];
|
|
121
|
+
if (b === undefined)
|
|
122
|
+
break;
|
|
123
|
+
value += (b & 0x7f) * 2 ** shift;
|
|
124
|
+
if ((b & 0x80) === 0)
|
|
125
|
+
return { value, next: p };
|
|
126
|
+
}
|
|
127
|
+
throw new Error('malformed WASM binary');
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* The minimum pages of the module's imported memory. `WebAssembly.Module`
|
|
131
|
+
* does not expose import limits, so this reads the import section.
|
|
132
|
+
*/
|
|
133
|
+
function importedMemoryPages(bytes) {
|
|
134
|
+
let p = 8;
|
|
135
|
+
while (p < bytes.length) {
|
|
136
|
+
const id = bytes[p];
|
|
137
|
+
const size = leb(bytes, p + 1);
|
|
138
|
+
const end = size.next + size.value;
|
|
139
|
+
if (id === 2) {
|
|
140
|
+
let q = size.next;
|
|
141
|
+
const count = leb(bytes, q);
|
|
142
|
+
q = count.next;
|
|
143
|
+
for (let i = 0; i < count.value; i++) {
|
|
144
|
+
for (let n = 0; n < 2; n++) {
|
|
145
|
+
const len = leb(bytes, q);
|
|
146
|
+
q = len.next + len.value;
|
|
147
|
+
}
|
|
148
|
+
const kind = bytes[q++];
|
|
149
|
+
if (kind === 0)
|
|
150
|
+
q = leb(bytes, q).next;
|
|
151
|
+
else if (kind === 1)
|
|
152
|
+
q = skipLimits(bytes, q + 1);
|
|
153
|
+
else if (kind === 2)
|
|
154
|
+
return leb(bytes, q + 1).value;
|
|
155
|
+
else if (kind === 3)
|
|
156
|
+
q += 2;
|
|
157
|
+
else
|
|
158
|
+
throw new Error(`unknown import kind ${String(kind)}`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
p = end;
|
|
162
|
+
}
|
|
163
|
+
throw new Error('not an OPA module: no env.memory import');
|
|
164
|
+
}
|
|
165
|
+
function skipLimits(bytes, p) {
|
|
166
|
+
const flags = bytes[p];
|
|
167
|
+
let q = leb(bytes, p + 1).next;
|
|
168
|
+
if (flags & 1)
|
|
169
|
+
q = leb(bytes, q).next;
|
|
170
|
+
return q;
|
|
171
|
+
}
|
|
172
|
+
function instantiate(rule, builtins, options) {
|
|
173
|
+
const memory = new WebAssembly.Memory({ initial: rule.memoryPages, maximum: MAX_MEMORY_PAGES });
|
|
174
|
+
const holder = {};
|
|
175
|
+
const ctx = { nowNs: BigInt(Date.now()) * 1000000n, digest: options.digest };
|
|
176
|
+
const call = (id, args) => {
|
|
177
|
+
const builtin = builtins.get(id);
|
|
178
|
+
const inst = holder.inst;
|
|
179
|
+
if (!builtin || !inst)
|
|
180
|
+
throw new Error(`the policy called builtin ${id}, which was not provided`);
|
|
181
|
+
let json;
|
|
182
|
+
try {
|
|
183
|
+
const result = builtin(ctx, args.map((a) => dumpValue(inst, a)));
|
|
184
|
+
json = typeof result === 'bigint' ? result.toString() : JSON.stringify(result);
|
|
185
|
+
if (json === undefined)
|
|
186
|
+
return 0;
|
|
187
|
+
if (json.length > MAX_BUILTIN_RESULT_BYTES)
|
|
188
|
+
return 0;
|
|
189
|
+
}
|
|
190
|
+
catch {
|
|
191
|
+
// OPA's "undefined": the expression fails, as `opa eval` does with a
|
|
192
|
+
// builtin error outside strict mode.
|
|
193
|
+
return 0;
|
|
194
|
+
}
|
|
195
|
+
return loadValue(inst, json);
|
|
196
|
+
};
|
|
197
|
+
const env = {
|
|
198
|
+
memory,
|
|
199
|
+
opa_abort: () => {
|
|
200
|
+
throw new Error('the OPA policy aborted');
|
|
201
|
+
},
|
|
202
|
+
opa_println: () => { },
|
|
203
|
+
opa_builtin0: (id) => call(id, []),
|
|
204
|
+
opa_builtin1: (id, _ctx, a) => call(id, [a]),
|
|
205
|
+
opa_builtin2: (id, _ctx, a, b) => call(id, [a, b]),
|
|
206
|
+
opa_builtin3: (id, _ctx, a, b, c) => call(id, [a, b, c]),
|
|
207
|
+
opa_builtin4: (id, _ctx, a, b, c, d) => call(id, [a, b, c, d]),
|
|
208
|
+
};
|
|
209
|
+
const instance = new WebAssembly.Instance(rule.module, { env });
|
|
210
|
+
holder.inst = { exports: instance.exports, memory };
|
|
211
|
+
options.onInstance?.(holder.inst.exports);
|
|
212
|
+
return holder.inst;
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Load a module as a Rego rule: null for a native rule, an Error for an OPA
|
|
216
|
+
* build this host cannot run, naming what is missing.
|
|
217
|
+
*
|
|
218
|
+
* `module` is `bytes` compiled; a caller that rewrites a module before running
|
|
219
|
+
* it (the MCP proxy meters fuel) passes the rewritten one.
|
|
220
|
+
*/
|
|
221
|
+
function loadRegoRule(bytes, module = new WebAssembly.Module(bytes), options = {}) {
|
|
222
|
+
const meta = readRegoMetadata(module);
|
|
223
|
+
if (!isOpaModule(module)) {
|
|
224
|
+
if (meta?.abi === 'opa')
|
|
225
|
+
throw new Error('the metadata says abi `opa`, but the module is not an OPA build');
|
|
226
|
+
return null;
|
|
227
|
+
}
|
|
228
|
+
if (meta && meta.abi !== 'opa')
|
|
229
|
+
throw new Error(`an OPA build whose metadata says abi \`${meta.abi}\``);
|
|
230
|
+
for (const i of WebAssembly.Module.imports(module)) {
|
|
231
|
+
const ok = i.module === 'env' &&
|
|
232
|
+
(i.name === 'memory' || i.name === 'opa_abort' || i.name === 'opa_println' || i.name.startsWith('opa_builtin'));
|
|
233
|
+
if (!ok)
|
|
234
|
+
throw new Error(`the OPA module imports \`${i.module}.${i.name}\`, which the host does not provide`);
|
|
235
|
+
}
|
|
236
|
+
const memoryPages = importedMemoryPages(bytes);
|
|
237
|
+
if (memoryPages > MAX_MEMORY_PAGES) {
|
|
238
|
+
throw new Error(`the module asks for ${memoryPages} pages of memory; the cap is ${MAX_MEMORY_PAGES}`);
|
|
239
|
+
}
|
|
240
|
+
const inst = instantiate({ module, memoryPages }, new Map(), options);
|
|
241
|
+
const abi = (name) => {
|
|
242
|
+
const g = inst.exports[name];
|
|
243
|
+
if (!(g instanceof WebAssembly.Global))
|
|
244
|
+
throw new Error(`missing ABI global \`${name}\``);
|
|
245
|
+
return g.value;
|
|
246
|
+
};
|
|
247
|
+
const [major, minor] = [abi('opa_wasm_abi_version'), abi('opa_wasm_abi_minor_version')];
|
|
248
|
+
if (major !== 1 || minor < 2)
|
|
249
|
+
throw new Error(`OPA WASM ABI ${major}.${minor}; the host needs 1.2 or later (opa_eval)`);
|
|
250
|
+
const wanted = dumpValue(inst, fn(inst.exports, 'builtins')());
|
|
251
|
+
const builtins = new Map();
|
|
252
|
+
const missing = [];
|
|
253
|
+
for (const [name, id] of Object.entries(wanted)) {
|
|
254
|
+
const builtin = regoBuiltins_js_1.REGO_HOST_BUILTINS[name];
|
|
255
|
+
const needsDigest = name === 'crypto.sha1' || name === 'crypto.sha256';
|
|
256
|
+
if (builtin && (!needsDigest || options.digest))
|
|
257
|
+
builtins.set(id, builtin);
|
|
258
|
+
else
|
|
259
|
+
missing.push(name);
|
|
260
|
+
}
|
|
261
|
+
if (missing.length > 0) {
|
|
262
|
+
throw new Error(`the policy uses builtins this host does not provide: ${missing.sort().join(', ')}. Host-provided builtins: ` +
|
|
263
|
+
`${Object.keys(regoBuiltins_js_1.REGO_HOST_BUILTINS).sort().join(', ')}; most others are compiled into the module by OPA`);
|
|
264
|
+
}
|
|
265
|
+
const entrypoints = dumpValue(inst, fn(inst.exports, 'entrypoints')());
|
|
266
|
+
const names = Object.keys(entrypoints);
|
|
267
|
+
let entrypoint;
|
|
268
|
+
if (meta?.entrypoint)
|
|
269
|
+
entrypoint = meta.entrypoint;
|
|
270
|
+
else if (names.length === 1)
|
|
271
|
+
entrypoint = names[0];
|
|
272
|
+
else {
|
|
273
|
+
throw new Error(`the module has ${names.length} entrypoints and no metadata naming one; build it with ` +
|
|
274
|
+
'`intutic rules build --rego <path> --entrypoint <package/rule>`');
|
|
275
|
+
}
|
|
276
|
+
const entrypointId = entrypoints[entrypoint];
|
|
277
|
+
if (typeof entrypointId !== 'number') {
|
|
278
|
+
throw new Error(`no \`${entrypoint}\` entrypoint in the module (it has ${names.join(', ')}); build with ` +
|
|
279
|
+
`\`opa build -t wasm -e ${entrypoint}\``);
|
|
280
|
+
}
|
|
281
|
+
let riskTier;
|
|
282
|
+
if (meta?.risk_tier !== undefined) {
|
|
283
|
+
riskTier = parseRiskTier(meta.risk_tier);
|
|
284
|
+
if (!riskTier)
|
|
285
|
+
throw new Error(`unknown risk tier \`${meta.risk_tier}\` in the metadata`);
|
|
286
|
+
}
|
|
287
|
+
return { module, memoryPages, entrypoint, entrypointId, builtins, ...(riskTier ? { riskTier } : {}) };
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Evaluate `rule` once against an input document (JSON text), returning the
|
|
291
|
+
* raw `opa_eval` result: `[{"result": …}]`, or `[]` when undefined.
|
|
292
|
+
*/
|
|
293
|
+
function evaluateRegoRule(rule, input, options = {}) {
|
|
294
|
+
const inst = instantiate(rule, rule.builtins, options);
|
|
295
|
+
const data = loadValue(inst, '{}');
|
|
296
|
+
const bytes = new TextEncoder().encode(input);
|
|
297
|
+
const heap = fn(inst.exports, 'opa_heap_ptr_get')();
|
|
298
|
+
const end = heap + bytes.length;
|
|
299
|
+
if (end > inst.memory.buffer.byteLength) {
|
|
300
|
+
inst.memory.grow(Math.ceil((end - inst.memory.buffer.byteLength) / 65536));
|
|
301
|
+
}
|
|
302
|
+
new Uint8Array(inst.memory.buffer).set(bytes, heap);
|
|
303
|
+
const result = fn(inst.exports, 'opa_eval')(0, rule.entrypointId, data, heap, bytes.length, end, 0);
|
|
304
|
+
return JSON.parse(readCString(inst.memory, result));
|
|
305
|
+
}
|
|
306
|
+
/** Rust's `char::is_control`: C0, DEL and C1. */
|
|
307
|
+
const isControl = (ch) => {
|
|
308
|
+
const cp = ch.codePointAt(0) ?? 0;
|
|
309
|
+
return cp <= 0x1f || (cp >= 0x7f && cp <= 0x9f);
|
|
310
|
+
};
|
|
311
|
+
/** A policy-supplied reason made safe to show, as the Rust host's `sanitize_reason`. */
|
|
312
|
+
function sanitize(text) {
|
|
313
|
+
if (typeof text !== 'string')
|
|
314
|
+
return undefined;
|
|
315
|
+
const trimmed = [...text.trim()]
|
|
316
|
+
.slice(0, 480)
|
|
317
|
+
.filter((ch) => !isControl(ch))
|
|
318
|
+
.join('');
|
|
319
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* Thrown by {@link regoDecision} for a result in none of the documented
|
|
323
|
+
* shapes: the rule reached no decision, and the host refuses the call, as for
|
|
324
|
+
* a rule that ran out of time.
|
|
325
|
+
*/
|
|
326
|
+
class RegoResultError extends Error {
|
|
327
|
+
name = 'RegoResultError';
|
|
328
|
+
}
|
|
329
|
+
exports.RegoResultError = RegoResultError;
|
|
330
|
+
/**
|
|
331
|
+
* Map an `opa_eval` result to a decision. Undefined allows; a result in none
|
|
332
|
+
* of the documented shapes throws {@link RegoResultError}.
|
|
333
|
+
*/
|
|
334
|
+
function regoDecision(result, entrypoint) {
|
|
335
|
+
const value = Array.isArray(result) ? result[0]?.result : undefined;
|
|
336
|
+
const fallback = (verb) => `${verb} by Rego policy ${entrypoint}`;
|
|
337
|
+
if (value === undefined || value === false)
|
|
338
|
+
return { decision: 'allow' };
|
|
339
|
+
if (value === true)
|
|
340
|
+
return { decision: 'deny', reason: fallback('Denied') };
|
|
341
|
+
if (Array.isArray(value)) {
|
|
342
|
+
return value.length === 0 ? { decision: 'allow' } : { decision: 'deny', reason: sanitize(value[0]) ?? fallback('Denied') };
|
|
343
|
+
}
|
|
344
|
+
if (value !== null && typeof value === 'object') {
|
|
345
|
+
const obj = value;
|
|
346
|
+
const riskTier = typeof obj['risk_tier'] === 'string' ? parseRiskTier(obj['risk_tier']) : undefined;
|
|
347
|
+
const tier = riskTier ? { riskTier } : {};
|
|
348
|
+
switch (obj['decision']) {
|
|
349
|
+
case 'allow':
|
|
350
|
+
return { decision: 'allow', ...tier };
|
|
351
|
+
case 'deny':
|
|
352
|
+
return { decision: 'deny', reason: sanitize(obj['reason']) ?? fallback('Denied'), ...tier };
|
|
353
|
+
case 'hold':
|
|
354
|
+
return { decision: 'hold', reason: sanitize(obj['reason']) ?? fallback('Held for approval'), ...tier };
|
|
355
|
+
case 'reask':
|
|
356
|
+
return { decision: 'reask', reason: sanitize(obj['reason']) ?? fallback('Refused'), ...tier };
|
|
357
|
+
}
|
|
358
|
+
throw new RegoResultError('it returned an object without a known `decision` (allow, deny, hold, reask)');
|
|
359
|
+
}
|
|
360
|
+
throw new RegoResultError('it returned neither a boolean, a set of messages nor a decision object');
|
|
361
|
+
}
|
|
362
|
+
const utf8Length = (s) => new TextEncoder().encode(s).length;
|
|
363
|
+
/** Cut a string to at most `limit` UTF-8 bytes, at a character boundary. */
|
|
364
|
+
function cut(s, limit) {
|
|
365
|
+
if (utf8Length(s) <= limit)
|
|
366
|
+
return s;
|
|
367
|
+
let out = '';
|
|
368
|
+
let used = 0;
|
|
369
|
+
for (const ch of s) {
|
|
370
|
+
const n = utf8Length(ch);
|
|
371
|
+
if (used + n > limit)
|
|
372
|
+
break;
|
|
373
|
+
out += ch;
|
|
374
|
+
used += n;
|
|
375
|
+
}
|
|
376
|
+
return out;
|
|
377
|
+
}
|
|
378
|
+
function truncateStrings(v, limit) {
|
|
379
|
+
if (typeof v === 'string')
|
|
380
|
+
return cut(v, limit);
|
|
381
|
+
if (Array.isArray(v))
|
|
382
|
+
return v.map((x) => truncateStrings(x, limit));
|
|
383
|
+
if (v !== null && typeof v === 'object') {
|
|
384
|
+
return Object.fromEntries(Object.entries(v).map(([k, x]) => [k, truncateStrings(x, limit)]));
|
|
385
|
+
}
|
|
386
|
+
return v;
|
|
387
|
+
}
|
|
388
|
+
/**
|
|
389
|
+
* Serialise a policy input, cutting long strings in `args` until it fits in
|
|
390
|
+
* {@link REGO_MAX_INPUT_BYTES} — the same steps as the Rust host, so both
|
|
391
|
+
* hosts hand a policy the same document.
|
|
392
|
+
*/
|
|
393
|
+
function boundedRegoInput(input) {
|
|
394
|
+
let doc = { ...input, truncated: false };
|
|
395
|
+
let text = JSON.stringify(doc);
|
|
396
|
+
if (utf8Length(text) <= exports.REGO_MAX_INPUT_BYTES)
|
|
397
|
+
return text;
|
|
398
|
+
doc = { ...doc, truncated: true };
|
|
399
|
+
for (const limit of TRUNCATION_STEPS) {
|
|
400
|
+
doc = { ...doc, args: truncateStrings(doc['args'], limit) };
|
|
401
|
+
text = JSON.stringify(doc);
|
|
402
|
+
if (utf8Length(text) <= exports.REGO_MAX_INPUT_BYTES)
|
|
403
|
+
return text;
|
|
404
|
+
}
|
|
405
|
+
return JSON.stringify({ ...doc, args: null });
|
|
406
|
+
}
|
|
407
|
+
//# sourceMappingURL=regoRules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"regoRules.js","sourceRoot":"","sources":["../src/regoRules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Why a proxy refused to load a custom (WASM or Rego) rule version. The Rust
|
|
3
|
+
* proxy files a control-plane rule it refuses under one of these, and the
|
|
4
|
+
* control plane opens the incident with it; the MCP proxy, which loads only
|
|
5
|
+
* local rule files, logs the same names. One list, so a reason means the same
|
|
6
|
+
* thing wherever it is read.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
export declare const RULE_LOAD_FAILURE_REASONS: readonly ["missing", "hash_mismatch", "compile_error", "unsupported_import", "load_error"];
|
|
11
|
+
export type RuleLoadFailureReason = (typeof RULE_LOAD_FAILURE_REASONS)[number];
|
|
12
|
+
/** What each reason means, as an incident or a log states it. */
|
|
13
|
+
export declare const RULE_LOAD_FAILURE_TEXT: Record<RuleLoadFailureReason, string>;
|
|
14
|
+
export declare function isRuleLoadFailureReason(value: unknown): value is RuleLoadFailureReason;
|
|
15
|
+
//# sourceMappingURL=ruleLoadFailures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ruleLoadFailures.d.ts","sourceRoot":"","sources":["../src/ruleLoadFailures.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,yBAAyB,4FAA6F,CAAA;AAEnI,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE9E,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAMxE,CAAA;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,qBAAqB,CAEtF"}
|