@intutic/mcp-governance-proxy 2.3.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +1 -1
  2. package/dist/agentTools.d.ts +15 -0
  3. package/dist/agentTools.d.ts.map +1 -1
  4. package/dist/agentTools.js +21 -1
  5. package/dist/agentTools.js.map +1 -1
  6. package/dist/chaos.d.ts +90 -0
  7. package/dist/chaos.d.ts.map +1 -0
  8. package/dist/chaos.js +174 -0
  9. package/dist/chaos.js.map +1 -0
  10. package/dist/daemon/policyCache.d.ts +7 -0
  11. package/dist/daemon/policyCache.d.ts.map +1 -1
  12. package/dist/daemon/policyCache.js +2 -0
  13. package/dist/daemon/policyCache.js.map +1 -1
  14. package/dist/emitter.d.ts +40 -2
  15. package/dist/emitter.d.ts.map +1 -1
  16. package/dist/emitter.js +7 -1
  17. package/dist/emitter.js.map +1 -1
  18. package/dist/httpJson.d.ts +7 -0
  19. package/dist/httpJson.d.ts.map +1 -1
  20. package/dist/httpJson.js +39 -0
  21. package/dist/httpJson.js.map +1 -1
  22. package/dist/index.js +15 -2
  23. package/dist/index.js.map +1 -1
  24. package/dist/interceptor.d.ts +24 -0
  25. package/dist/interceptor.d.ts.map +1 -1
  26. package/dist/interceptor.js +58 -11
  27. package/dist/interceptor.js.map +1 -1
  28. package/dist/policy.d.ts +26 -1
  29. package/dist/policy.d.ts.map +1 -1
  30. package/dist/policy.js +49 -3
  31. package/dist/policy.js.map +1 -1
  32. package/dist/proxy.d.ts +32 -6
  33. package/dist/proxy.d.ts.map +1 -1
  34. package/dist/proxy.js +107 -55
  35. package/dist/proxy.js.map +1 -1
  36. package/dist/refusals.d.ts +25 -0
  37. package/dist/refusals.d.ts.map +1 -1
  38. package/dist/refusals.js +50 -0
  39. package/dist/refusals.js.map +1 -1
  40. package/dist/remoteBridge.d.ts +2 -1
  41. package/dist/remoteBridge.d.ts.map +1 -1
  42. package/dist/remoteBridge.js +4 -3
  43. package/dist/remoteBridge.js.map +1 -1
  44. package/dist/wasm/cloudRules.d.ts +138 -0
  45. package/dist/wasm/cloudRules.d.ts.map +1 -0
  46. package/dist/wasm/cloudRules.js +242 -0
  47. package/dist/wasm/cloudRules.js.map +1 -0
  48. package/dist/wasm/loader.d.ts +3 -1
  49. package/dist/wasm/loader.d.ts.map +1 -1
  50. package/dist/wasm/loader.js.map +1 -1
  51. package/dist/wasm/runner.d.ts +63 -9
  52. package/dist/wasm/runner.d.ts.map +1 -1
  53. package/dist/wasm/runner.js +107 -12
  54. package/dist/wasm/runner.js.map +1 -1
  55. package/package.json +4 -4
package/README.md CHANGED
@@ -22,7 +22,7 @@ The proxy spawns the real MCP server as a child process and relays JSON-RPC mess
22
22
 
23
23
  ### Standalone Mode
24
24
 
25
- With no server to wrap (no `--` command, no `--remote-url`), `intutic-mcp-proxy` is itself an MCP server named `intutic`, exposing three read-only tools: `intutic_governance_status`, `intutic_list_sops` and `intutic_list_incidents`. The two list tools take a `limit` (1–50, default 10). The control plane lists incidents only for the OWNER, ADMIN or EM role; any other role gets a message saying so instead.
25
+ With no server to wrap (no `--` command, no `--remote-url`), `intutic-mcp-proxy` is itself an MCP server named `intutic`, exposing three read-only tools: `intutic_governance_status`, `intutic_list_sops` and `intutic_list_incidents`. The two list tools take a `limit` (1–50, default 10), and `intutic_list_incidents` an optional incident `type`, such as `SCOPE_VIOLATION`, `WASM_RULE_REFUSED` or `SYSTEM_ANOMALY`. The control plane lists incidents only for the OWNER, ADMIN or EM role; any other role gets a message saying so instead.
26
26
 
27
27
  ```
28
28
  Agent ↔ intutic-mcp-proxy (MCP server) ↔ Intutic control plane
@@ -11,6 +11,21 @@
11
11
  * @module
12
12
  */
13
13
  import { type McpBudgetPolicy } from '@intutic/shared-types';
14
+ import { z } from 'zod';
15
+ /**
16
+ * `intutic_list_incidents`'s arguments. `type` is checked against the same
17
+ * list `GET /api/v1/incidents` checks it against, so an agent is told the
18
+ * valid types instead of receiving the control plane's 400.
19
+ */
20
+ export declare const LIST_INCIDENTS_ARGS: {
21
+ limit: z.ZodDefault<z.ZodNumber>;
22
+ type: z.ZodOptional<z.ZodEnum<[import("@intutic/shared-types").IncidentType, ...import("@intutic/shared-types").IncidentType[]]>>;
23
+ };
24
+ /** The control-plane path `intutic_list_incidents` reads. */
25
+ export declare function incidentListPath(workspaceId: string, args: {
26
+ limit: number;
27
+ type?: string;
28
+ }): string;
14
29
  /** One control-plane read, never thrown: a failure degrades a tool's answer, it does not crash the server. */
15
30
  export type ControlPlaneResult = {
16
31
  ok: true;
@@ -1 +1 @@
1
- {"version":3,"file":"agentTools.d.ts","sourceRoot":"","sources":["../src/agentTools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAmC,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAG7F,8GAA8G;AAC9G,MAAM,MAAM,kBAAkB,GAC1B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC3B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,aAAa,CAAA;CAAE,CAAA;AAEpE,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AAED,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,aAAa,CAAA;CAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMnH;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;IAC3D,qCAAqC;IACrC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,cAAc,CAAA;IACxD,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,UAAU,CA0CxG;AASD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkCtF;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,+CAA+C;IAC/C,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EACrD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,EAC3D,KAAK,GAAE,MAAmB,GACzB,OAAO,CAAC,eAAe,EAAE,CAAC,CAoB5B"}
1
+ {"version":3,"file":"agentTools.d.ts","sourceRoot":"","sources":["../src/agentTools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAmD,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC7G,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;CAM/B,CAAA;AAED,6DAA6D;AAC7D,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAIpG;AAED,8GAA8G;AAC9G,MAAM,MAAM,kBAAkB,GAC1B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC3B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,aAAa,CAAA;CAAE,CAAA;AAEpE,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AAED,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,aAAa,CAAA;CAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMnH;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;IAC3D,qCAAqC;IACrC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,cAAc,CAAA;IACxD,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,UAAU,CA0CxG;AASD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkCtF;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,+CAA+C;IAC/C,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EACrD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,EAC3D,KAAK,GAAE,MAAmB,GACzB,OAAO,CAAC,eAAe,EAAE,CAAC,CAoB5B"}
@@ -10,8 +10,28 @@
10
10
  *
11
11
  * @module
12
12
  */
13
- import { budgetWindow, describeMcpBudget } from '@intutic/shared-types';
13
+ import { INCIDENT_TYPES, budgetWindow, describeMcpBudget } from '@intutic/shared-types';
14
+ import { z } from 'zod';
14
15
  import { budgetCounterKey } from './budget.js';
16
+ /**
17
+ * `intutic_list_incidents`'s arguments. `type` is checked against the same
18
+ * list `GET /api/v1/incidents` checks it against, so an agent is told the
19
+ * valid types instead of receiving the control plane's 400.
20
+ */
21
+ export const LIST_INCIDENTS_ARGS = {
22
+ limit: z.number().int().min(1).max(50).default(10).describe('Number of incidents to return (1–50)'),
23
+ type: z
24
+ .enum(INCIDENT_TYPES)
25
+ .optional()
26
+ .describe('Only incidents of this type: an anomaly type such as SCOPE_VIOLATION, or WASM_RULE_REFUSED or SYSTEM_ANOMALY'),
27
+ };
28
+ /** The control-plane path `intutic_list_incidents` reads. */
29
+ export function incidentListPath(workspaceId, args) {
30
+ const q = new URLSearchParams({ workspaceId, limit: String(args.limit) });
31
+ if (args.type)
32
+ q.set('type', args.type);
33
+ return `/api/v1/incidents?${q}`;
34
+ }
15
35
  export async function readControlPlane(controlPlaneUrl, apiKey, workspaceId, path) {
16
36
  try {
17
37
  const res = await fetch(`${controlPlaneUrl}${path}`, {
@@ -1 +1 @@
1
- {"version":3,"file":"agentTools.js","sourceRoot":"","sources":["../src/agentTools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentTools.js","sourceRoot":"","sources":["../src/agentTools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * chaos.ts — agent fault injection for `intutic chaos run`.
3
+ *
4
+ * The chaos runner hands this process a plan through `INTUTIC_CHAOS_PLAN`
5
+ * and an events file through `INTUTIC_CHAOS_EVENTS` (see
6
+ * `@intutic/shared-types`' chaos contract). The faults this proxy injects
7
+ * stand in for the upstream MCP server misbehaving, so they live at the
8
+ * server-response boundary and governance runs around them unchanged:
9
+ *
10
+ * - request side: a fault is considered only for a `tools/call` the
11
+ * interceptor allowed — a block or a hold is answered exactly as without a
12
+ * plan, so a fault can never turn a refusal into an allow;
13
+ * - response side: a synthesized or modified result goes through the same
14
+ * `handleServerLine` path a real one does, so DLP, the injection scanner,
15
+ * TOFU pinning and the tool-poisoning check all see the faulted response.
16
+ *
17
+ * Without a plan none of this is constructed and the proxy's paths carry no
18
+ * extra work.
19
+ *
20
+ * @module
21
+ */
22
+ import { type ChaosEvent, type ChaosPlan } from '@intutic/shared-types';
23
+ /** Distributes `Omit` over the event union, so each variant keeps its own fields. */
24
+ type EventBody = ChaosEvent extends infer E ? (E extends ChaosEvent ? Omit<E, 'ts' | 'runId' | 'component'> : never) : never;
25
+ /** What happens to one allowed `tools/call`. */
26
+ export type CallFault =
27
+ /** Do not call the server; answer with this result. */
28
+ {
29
+ kind: 'respond';
30
+ result: Record<string, unknown>;
31
+ }
32
+ /** Call the server, then append this text to its result. */
33
+ | {
34
+ kind: 'append';
35
+ payload: string;
36
+ call: number;
37
+ };
38
+ /**
39
+ * Read the plan from the environment. Null when no plan is set; throws when
40
+ * one is set but invalid, so the caller can refuse to start rather than run
41
+ * with a plan it silently ignores.
42
+ */
43
+ export declare function readChaosPlan(env: NodeJS.ProcessEnv): ChaosPlan | null;
44
+ export declare class ChaosInjector {
45
+ private readonly plan;
46
+ private readonly eventsPath;
47
+ private readonly counter;
48
+ /** Matching calls seen per fault index — the `call` an event reports. */
49
+ private readonly matched;
50
+ /** Toolset changes that have fired; every later tools/list is rewritten by them. */
51
+ private readonly toolsetChanges;
52
+ /** Emits `plan_loaded`. */
53
+ constructor(plan: ChaosPlan, eventsPath?: string | undefined);
54
+ /** Append one event line. Never throws: a lost event must not break the agent's call. */
55
+ emit(body: EventBody): void;
56
+ /** Counts this call against a fault; returns the 1-based matching-call index when it is hit. */
57
+ private hit;
58
+ /**
59
+ * Called once per `tools/call` governance allowed, before it is forwarded.
60
+ *
61
+ * Toolset changes count every such call; one that fires stays in effect for
62
+ * the rest of the run and calls `notify` once. Result faults are tried in
63
+ * plan order and the first that fires decides the call; faults after it do
64
+ * not count the call. `append` is reported when the payload is actually
65
+ * appended (see {@link faultServerLine}), the others here.
66
+ */
67
+ onAllowedCall(tool: string, notify: () => void): CallFault | null;
68
+ /**
69
+ * Apply the response-side faults to one upstream line before governance
70
+ * inspects it: append an `inject.tool_result` payload to the call it was
71
+ * chosen for, and rewrite a `tools/list` once a toolset change has fired.
72
+ * Returns the (possibly rewritten) line and, for a `tools/call` response,
73
+ * the tool it answers. `pending` is read, not consumed.
74
+ */
75
+ faultServerLine(raw: string, pending: ReadonlyMap<string | number, {
76
+ method: string;
77
+ toolName?: string;
78
+ inject?: {
79
+ payload: string;
80
+ call: number;
81
+ };
82
+ }>): {
83
+ line: string;
84
+ toolCall?: string;
85
+ };
86
+ /** Report a `tools/call` outcome; `frame` is what the agent receives. */
87
+ recordToolCall(tool: string, frame: string): void;
88
+ }
89
+ export {};
90
+ //# sourceMappingURL=chaos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chaos.d.ts","sourceRoot":"","sources":["../src/chaos.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAQL,KAAK,UAAU,EACf,KAAK,SAAS,EAEf,MAAM,uBAAuB,CAAA;AAO9B,qFAAqF;AACrF,KAAK,SAAS,GAAG,UAAU,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,UAAU,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,WAAW,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAA;AAE5H,gDAAgD;AAChD,MAAM,MAAM,SAAS;AACnB,uDAAuD;AACrD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE;AACtD,4DAA4D;GAC1D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAErD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,GAAG,IAAI,CAEtE;AAED,qBAAa,aAAa;IAStB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAT7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,oFAAoF;IACpF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD,2BAA2B;gBAER,IAAI,EAAE,SAAS,EACf,UAAU,GAAE,MAAM,GAAG,SAAyC;IASjF,yFAAyF;IACzF,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAU3B,gGAAgG;IAChG,OAAO,CAAC,GAAG;IAOX;;;;;;;;OAQG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,GAAG,SAAS,GAAG,IAAI;IA6BjE;;;;;;OAMG;IACH,eAAe,CACb,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,GACvH;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAsCtC,yEAAyE;IACzE,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAUlD"}
package/dist/chaos.js ADDED
@@ -0,0 +1,174 @@
1
+ /**
2
+ * chaos.ts — agent fault injection for `intutic chaos run`.
3
+ *
4
+ * The chaos runner hands this process a plan through `INTUTIC_CHAOS_PLAN`
5
+ * and an events file through `INTUTIC_CHAOS_EVENTS` (see
6
+ * `@intutic/shared-types`' chaos contract). The faults this proxy injects
7
+ * stand in for the upstream MCP server misbehaving, so they live at the
8
+ * server-response boundary and governance runs around them unchanged:
9
+ *
10
+ * - request side: a fault is considered only for a `tools/call` the
11
+ * interceptor allowed — a block or a hold is answered exactly as without a
12
+ * plan, so a fault can never turn a refusal into an allow;
13
+ * - response side: a synthesized or modified result goes through the same
14
+ * `handleServerLine` path a real one does, so DLP, the injection scanner,
15
+ * TOFU pinning and the tool-poisoning check all see the faulted response.
16
+ *
17
+ * Without a plan none of this is constructed and the proxy's paths carry no
18
+ * extra work.
19
+ *
20
+ * @module
21
+ */
22
+ import * as node_fs from 'node:fs';
23
+ import { CHAOS_EVENTS_ENV, CHAOS_PLAN_ENV, FAULT_CATALOG, FaultCounter, decodeChaosPlan, faultMatches, faultMessage, } from '@intutic/shared-types';
24
+ import { createStderrLogger as createLogger } from './stderrLog.js';
25
+ const log = createLogger('mcp-chaos');
26
+ /**
27
+ * Read the plan from the environment. Null when no plan is set; throws when
28
+ * one is set but invalid, so the caller can refuse to start rather than run
29
+ * with a plan it silently ignores.
30
+ */
31
+ export function readChaosPlan(env) {
32
+ return decodeChaosPlan(env[CHAOS_PLAN_ENV]);
33
+ }
34
+ export class ChaosInjector {
35
+ plan;
36
+ eventsPath;
37
+ counter = new FaultCounter();
38
+ /** Matching calls seen per fault index — the `call` an event reports. */
39
+ matched = new Map();
40
+ /** Toolset changes that have fired; every later tools/list is rewritten by them. */
41
+ toolsetChanges = [];
42
+ /** Emits `plan_loaded`. */
43
+ constructor(plan, eventsPath = process.env[CHAOS_EVENTS_ENV]) {
44
+ this.plan = plan;
45
+ this.eventsPath = eventsPath;
46
+ if (!eventsPath) {
47
+ log.warn({ action: 'chaos_events_unset' }, `${CHAOS_EVENTS_ENV} is not set: faults are injected but no events are recorded`);
48
+ }
49
+ const ours = plan.faults.filter((f) => FAULT_CATALOG[f.id].injectedBy.includes('mcp-proxy')).length;
50
+ this.emit({ type: 'plan_loaded', faults: ours });
51
+ }
52
+ /** Append one event line. Never throws: a lost event must not break the agent's call. */
53
+ emit(body) {
54
+ if (!this.eventsPath)
55
+ return;
56
+ const event = { ts: new Date().toISOString(), runId: this.plan.runId, component: 'mcp-proxy', ...body };
57
+ try {
58
+ node_fs.appendFileSync(this.eventsPath, JSON.stringify(event) + '\n');
59
+ }
60
+ catch (err) {
61
+ log.warn({ action: 'chaos_event_write_error', err: err.message, type: body.type }, 'Could not record chaos event');
62
+ }
63
+ }
64
+ /** Counts this call against a fault; returns the 1-based matching-call index when it is hit. */
65
+ hit(index, fault, tool) {
66
+ if (!faultMatches(fault, { tool }))
67
+ return null;
68
+ const call = (this.matched.get(index) ?? 0) + 1;
69
+ this.matched.set(index, call);
70
+ return this.counter.shouldInject(index, fault) ? call : null;
71
+ }
72
+ /**
73
+ * Called once per `tools/call` governance allowed, before it is forwarded.
74
+ *
75
+ * Toolset changes count every such call; one that fires stays in effect for
76
+ * the rest of the run and calls `notify` once. Result faults are tried in
77
+ * plan order and the first that fires decides the call; faults after it do
78
+ * not count the call. `append` is reported when the payload is actually
79
+ * appended (see {@link faultServerLine}), the others here.
80
+ */
81
+ onAllowedCall(tool, notify) {
82
+ let outcome = null;
83
+ for (const [index, fault] of this.plan.faults.entries()) {
84
+ if (fault.id === 'mcp.toolset_change') {
85
+ if (this.toolsetChanges.includes(fault))
86
+ continue;
87
+ const call = this.hit(index, fault, tool);
88
+ if (call === null)
89
+ continue;
90
+ this.toolsetChanges.push(fault);
91
+ this.emit({ type: 'fault_injected', faultId: fault.id, call, target: tool });
92
+ notify();
93
+ continue;
94
+ }
95
+ if (outcome)
96
+ continue;
97
+ if (fault.id !== 'tool.error' && fault.id !== 'tool.stale_data' && fault.id !== 'inject.tool_result')
98
+ continue;
99
+ const call = this.hit(index, fault, tool);
100
+ if (call === null)
101
+ continue;
102
+ if (fault.id === 'inject.tool_result') {
103
+ outcome = { kind: 'append', payload: fault.payload, call };
104
+ continue;
105
+ }
106
+ this.emit({ type: 'fault_injected', faultId: fault.id, call, target: tool });
107
+ outcome =
108
+ fault.id === 'tool.error'
109
+ ? { kind: 'respond', result: { content: [{ type: 'text', text: faultMessage(this.plan, fault.message) }], isError: true } }
110
+ : { kind: 'respond', result: { content: [{ type: 'text', text: fault.result }] } };
111
+ }
112
+ return outcome;
113
+ }
114
+ /**
115
+ * Apply the response-side faults to one upstream line before governance
116
+ * inspects it: append an `inject.tool_result` payload to the call it was
117
+ * chosen for, and rewrite a `tools/list` once a toolset change has fired.
118
+ * Returns the (possibly rewritten) line and, for a `tools/call` response,
119
+ * the tool it answers. `pending` is read, not consumed.
120
+ */
121
+ faultServerLine(raw, pending) {
122
+ let msg;
123
+ try {
124
+ msg = JSON.parse(raw);
125
+ }
126
+ catch {
127
+ return { line: raw };
128
+ }
129
+ if (msg.id === undefined || msg.id === null)
130
+ return { line: raw };
131
+ const req = pending.get(msg.id);
132
+ if (!req)
133
+ return { line: raw };
134
+ if (req.method === 'tools/call') {
135
+ const tool = req.toolName ?? '<unknown>';
136
+ const content = msg.result?.['content'];
137
+ if (!req.inject || !Array.isArray(content))
138
+ return { line: raw, toolCall: tool };
139
+ content.push({ type: 'text', text: req.inject.payload });
140
+ this.emit({ type: 'fault_injected', faultId: 'inject.tool_result', call: req.inject.call, target: tool });
141
+ return { line: JSON.stringify(msg), toolCall: tool };
142
+ }
143
+ if (req.method === 'tools/list' && this.toolsetChanges.length > 0) {
144
+ const tools = msg.result?.['tools'];
145
+ if (!msg.result || !Array.isArray(tools))
146
+ return { line: raw };
147
+ let kept = tools;
148
+ for (const change of this.toolsetChanges) {
149
+ kept = kept.filter((t) => !change.remove.includes(t['name']));
150
+ for (const t of kept) {
151
+ const description = change.redefine[t['name']];
152
+ if (description !== undefined)
153
+ t['description'] = description;
154
+ }
155
+ }
156
+ msg.result['tools'] = kept;
157
+ return { line: JSON.stringify(msg) };
158
+ }
159
+ return { line: raw };
160
+ }
161
+ /** Report a `tools/call` outcome; `frame` is what the agent receives. */
162
+ recordToolCall(tool, frame) {
163
+ let ok = false;
164
+ try {
165
+ const msg = JSON.parse(frame);
166
+ ok = msg.error === undefined && msg.result !== undefined && msg.result.isError !== true;
167
+ }
168
+ catch {
169
+ // Not JSON: the agent got nothing usable.
170
+ }
171
+ this.emit({ type: 'tool_call', tool, ok });
172
+ }
173
+ }
174
+ //# sourceMappingURL=chaos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chaos.js","sourceRoot":"","sources":["../src/chaos.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,13 @@ export interface ResolvedPolicy {
70
70
  * so the two modes cannot read one value differently.
71
71
  */
72
72
  piiDetectors?: unknown;
73
+ /**
74
+ * The workspace's custom rule descriptors (`wasmRules`), carried as sent for
75
+ * the same reason as `piiDetectors`: `PolicyClient` reads them with the
76
+ * reader the per-session mode uses. Absent from an older control plane and
77
+ * from the snapshot seed.
78
+ */
79
+ wasmRules?: unknown;
73
80
  /**
74
81
  * True on the entry `seedFromSnapshot` built from the sync daemon's local
75
82
  * snapshot, which carries only part of the policy. A proxy that already
@@ -1 +1 @@
1
- {"version":3,"file":"policyCache.d.ts","sourceRoot":"","sources":["../../src/daemon/policyCache.ts"],"names":[],"mappings":"AAaA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAoBlF,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAI,MAAM,CAAA;IACrB,QAAQ,EAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IACxC,WAAW,EAAI,MAAM,EAAE,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB;;;;;;;;OAQG;IACH,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,2EAA2E;IAC3E,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChD;sEACkE;IAClE,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB;;;;;;;;;OASG;IACH,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IACrC,mFAAmF;IACnF,oBAAoB,EAAE,MAAM,EAAE,CAAA;IAC9B;;;OAGG;IACH,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,KAAK,CAAA;IAC3C;;;;;OAKG;IACH,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,CAAA;IACvE;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,wEAAwE;IACxE,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,yDAAyD;IACzD,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IACxC,0GAA0G;IAC1G,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,EAAO,MAAM,CAAA;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AA0OD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAsB,gBAAgB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4EpF;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAkGvF;AAED,uEAAuE;AACvE,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAI1D;AAED,gCAAgC;AAChC,wBAAgB,aAAa,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAEpE"}
1
+ {"version":3,"file":"policyCache.d.ts","sourceRoot":"","sources":["../../src/daemon/policyCache.ts"],"names":[],"mappings":"AAaA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAoBlF,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAI,MAAM,CAAA;IACrB,QAAQ,EAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IACxC,WAAW,EAAI,MAAM,EAAE,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB;;;;;;;;OAQG;IACH,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,2EAA2E;IAC3E,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChD;sEACkE;IAClE,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB;;;;;;;;;OASG;IACH,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IACrC,mFAAmF;IACnF,oBAAoB,EAAE,MAAM,EAAE,CAAA;IAC9B;;;OAGG;IACH,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,KAAK,CAAA;IAC3C;;;;;OAKG;IACH,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,CAAA;IACvE;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,wEAAwE;IACxE,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,yDAAyD;IACzD,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IACxC,0GAA0G;IAC1G,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,EAAO,MAAM,CAAA;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AA6OD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAsB,gBAAgB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4EpF;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAkGvF;AAED,uEAAuE;AACvE,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAI1D;AAED,gCAAgC;AAChC,wBAAgB,aAAa,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAEpE"}
@@ -148,6 +148,7 @@ function parsePolicyResponse(raw) {
148
148
  : undefined,
149
149
  mcpBudgets: parseMcpBudgetPolicy(parsed['mcpBudgets']),
150
150
  piiDetectors: parsed['piiDetectors'],
151
+ wasmRules: parsed['wasmRules'],
151
152
  };
152
153
  }
153
154
  async function fetchFromControlPlane(workspaceId) {
@@ -207,6 +208,7 @@ async function fetchFromControlPlane(workspaceId) {
207
208
  mcpProxyFailBehavior: parsed.mcpProxyFailBehavior,
208
209
  mcpBudgets: parsed.mcpBudgets,
209
210
  piiDetectors: parsed.piiDetectors,
211
+ wasmRules: parsed.wasmRules,
210
212
  cachedAt: Date.now(),
211
213
  configVersion: versionAtFetch,
212
214
  });
@@ -1 +1 @@
1
- {"version":3,"file":"policyCache.js","sourceRoot":"","sources":["../../src/daemon/policyCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policyCache.js","sourceRoot":"","sources":["../../src/daemon/policyCache.ts"],"names":[],"mappings":"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"}
package/dist/emitter.d.ts CHANGED
@@ -11,6 +11,8 @@
11
11
  import type { CallerIdentity } from './identity.js';
12
12
  import type { AnomalyFinding } from './anomaly/index.js';
13
13
  import type { BudgetEventDetail } from './budget.js';
14
+ import type { ShadowReport } from './wasm/runner.js';
15
+ import type { RuleLoadFailureReason } from '@intutic/shared-types';
14
16
  export type EventKind = 'tool_allowed' | 'tool_blocked' | 'tool_redacted'
15
17
  /**
16
18
  * A `warn` SOP rule matched and the call was allowed: the same
@@ -61,7 +63,39 @@ export type EventKind = 'tool_allowed' | 'tool_blocked' | 'tool_redacted'
61
63
  * An MCP call budget is used up. Once per budget per period, on the first
62
64
  * refusal; every refusal also sends its own `tool_blocked`.
63
65
  */
64
- | 'mcp_budget_exceeded';
66
+ | 'mcp_budget_exceeded'
67
+ /**
68
+ * A version of one of the workspace's control-plane rules was refused
69
+ * (wasm/cloudRules.ts): its binary is missing, does not hash to what its
70
+ * descriptor names, or cannot load. Sent once per hash and reason, with
71
+ * `toolName` carrying the rule id and `wasmRule` the detail; the control
72
+ * plane files one incident per version, as for the LLM proxy's refusals.
73
+ */
74
+ | 'wasm_rule_refused'
75
+ /**
76
+ * The call was evaluated against custom rules in `SHADOW` mode: what each
77
+ * would have done, bypasses included, in `wasmShadowReports`. The same
78
+ * report the LLM proxy carries on a trace (`wasm_shadow_reports`); the
79
+ * control plane counts both toward the rule's promotion evidence.
80
+ */
81
+ | 'wasm_shadow_evaluated';
82
+ /** What a custom-rule event carries: `wasmRule` on `wasm_rule_refused`, `wasmShadowReports` on `wasm_shadow_evaluated`. */
83
+ export interface RuleEventDetail {
84
+ wasmRule?: WasmRuleRefusalDetail;
85
+ wasmShadowReports?: ShadowReport[];
86
+ }
87
+ /** Which rule version a `wasm_rule_refused` event is about, and why it was refused. */
88
+ export interface WasmRuleRefusalDetail {
89
+ ruleId: string;
90
+ name: string;
91
+ sha256: string;
92
+ /** One of `RULE_LOAD_FAILURE_REASONS`, as the Rust proxy reports it too. */
93
+ refusal: RuleLoadFailureReason;
94
+ /** What the binary hashed to, on a hash mismatch. */
95
+ actualSha256?: string;
96
+ /** Whether an earlier version of the rule stays in force on this proxy. */
97
+ previousInForce: boolean;
98
+ }
65
99
  /**
66
100
  * What a detection-style event found, so the control plane can file it as a
67
101
  * detector finding (adjudicable on the Findings page, routed as
@@ -112,6 +146,10 @@ export interface GovernanceEvent {
112
146
  * budget refused: which budget, its limit, the calls made, when it resets.
113
147
  */
114
148
  budget?: BudgetEventDetail;
149
+ /** Set on `wasm_rule_refused`. */
150
+ wasmRule?: WasmRuleRefusalDetail;
151
+ /** Set on `wasm_shadow_evaluated`. */
152
+ wasmShadowReports?: ShadowReport[];
115
153
  timestamp: string;
116
154
  }
117
155
  export declare class GovernanceEmitter {
@@ -122,7 +160,7 @@ export declare class GovernanceEmitter {
122
160
  private readonly mcpProxyMode;
123
161
  private readonly identity;
124
162
  constructor(controlPlaneUrl: string, apiKey: string, eventsFilePath: string, workspaceId: string, mcpProxyMode?: string, identity?: CallerIdentity | undefined);
125
- emit(kind: EventKind, toolName: string, toolInput: unknown, reason?: string, finding?: DetectionFinding, budget?: BudgetEventDetail): void;
163
+ emit(kind: EventKind, toolName: string, toolInput: unknown, reason?: string, finding?: DetectionFinding, budget?: BudgetEventDetail, rule?: RuleEventDetail): void;
126
164
  private runDualPath;
127
165
  private postToControlPlane;
128
166
  private appendToFile;
@@ -1 +1 @@
1
- {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAIpD,MAAM,MAAM,SAAS,GACjB,cAAc,GACd,cAAc,GACd,eAAe;AACjB;;;;;GAKG;GACD,cAAc;AAChB;;;;;;GAMG;GACD,+BAA+B;AACjC;;;;;;;GAOG;GACD,oBAAoB;AACtB;;;;;GAKG;GACD,kBAAkB;AACpB;;;;GAIG;GACD,WAAW;AACb,0EAA0E;GACxE,2BAA2B;AAC7B;;;;GAIG;GACD,sBAAsB;AACxB;;;GAGG;GACD,qBAAqB,CAAA;AAEzB;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sFAAsF;IACtF,UAAU,EAAE,MAAM,CAAA;IAClB,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAA;IACZ,kDAAkD;IAClD,WAAW,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;IACvC,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAA;IACnC,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,8FAA8F;AAC9F,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,gBAAgB,CAAC,aAAa,CAAC,EAC5C,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,GACrC,gBAAgB,CAElB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,SAAS,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBALR,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,MAAsB,EACpC,QAAQ,GAAE,cAAc,GAAG,SAAqB;IAGnE,IAAI,CACF,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,gBAAgB,EAC1B,MAAM,CAAC,EAAE,iBAAiB,GACzB,IAAI;IAgDP,OAAO,CAAC,WAAW;YAYL,kBAAkB;YAgClB,YAAY;CAM3B"}
1
+ {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"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"}
package/dist/emitter.js CHANGED
@@ -34,7 +34,7 @@ export class GovernanceEmitter {
34
34
  this.mcpProxyMode = mcpProxyMode;
35
35
  this.identity = identity;
36
36
  }
37
- emit(kind, toolName, toolInput, reason, finding, budget) {
37
+ emit(kind, toolName, toolInput, reason, finding, budget, rule) {
38
38
  const event = {
39
39
  incidentId: node_crypto.randomUUID(),
40
40
  eventId: node_crypto.randomUUID(),
@@ -48,6 +48,8 @@ export class GovernanceEmitter {
48
48
  finding,
49
49
  principal: this.identity,
50
50
  budget,
51
+ wasmRule: rule?.wasmRule,
52
+ wasmShadowReports: rule?.wasmShadowReports,
51
53
  timestamp: new Date().toISOString(),
52
54
  };
53
55
  if (this.mcpProxyMode === 'daemon') {
@@ -68,6 +70,8 @@ export class GovernanceEmitter {
68
70
  toolInput,
69
71
  principal: event.principal,
70
72
  budget,
73
+ wasmRule: event.wasmRule,
74
+ wasmShadowReports: event.wasmShadowReports,
71
75
  };
72
76
  callDaemonSocket('telemetry.enqueue', eventPayload).then(() => {
73
77
  log.debug({ action: 'telemetry_enqueued' }, 'Telemetry successfully enqueued to daemon');
@@ -106,6 +110,8 @@ export class GovernanceEmitter {
106
110
  finding: event.finding,
107
111
  principal: event.principal,
108
112
  budget: event.budget,
113
+ wasmRule: event.wasmRule,
114
+ wasmShadowReports: event.wasmShadowReports,
109
115
  timestamp: event.timestamp,
110
116
  },
111
117
  ],