@intutic/gate 2.2.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.
Files changed (74) hide show
  1. package/README.md +29 -12
  2. package/dist/actions.d.ts.map +1 -1
  3. package/dist/actions.js +20 -6
  4. package/dist/actions.js.map +1 -1
  5. package/dist/client.d.ts +19 -1
  6. package/dist/client.d.ts.map +1 -1
  7. package/dist/client.js +48 -4
  8. package/dist/client.js.map +1 -1
  9. package/dist/dsh.d.ts +1 -1
  10. package/dist/dsh.js +1 -1
  11. package/dist/errors.d.ts +25 -2
  12. package/dist/errors.d.ts.map +1 -1
  13. package/dist/errors.js +53 -0
  14. package/dist/errors.js.map +1 -1
  15. package/dist/eve.d.ts +11 -11
  16. package/dist/eve.d.ts.map +1 -1
  17. package/dist/eve.js +10 -10
  18. package/dist/eve.js.map +1 -1
  19. package/dist/gate.d.ts +33 -1
  20. package/dist/gate.d.ts.map +1 -1
  21. package/dist/gate.js +118 -9
  22. package/dist/gate.js.map +1 -1
  23. package/dist/harness.d.ts +28 -20
  24. package/dist/harness.d.ts.map +1 -1
  25. package/dist/harness.js +165 -26
  26. package/dist/harness.js.map +1 -1
  27. package/dist/hold.d.ts +69 -0
  28. package/dist/hold.d.ts.map +1 -0
  29. package/dist/hold.js +127 -0
  30. package/dist/hold.js.map +1 -0
  31. package/dist/imagecheck.d.ts +14 -7
  32. package/dist/imagecheck.d.ts.map +1 -1
  33. package/dist/imagecheck.js +3 -3
  34. package/dist/imagecheck.js.map +1 -1
  35. package/dist/index.d.ts +7 -3
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +4 -2
  38. package/dist/index.js.map +1 -1
  39. package/dist/limits.d.ts +26 -0
  40. package/dist/limits.d.ts.map +1 -0
  41. package/dist/limits.js +45 -0
  42. package/dist/limits.js.map +1 -0
  43. package/dist/managedAgents.d.ts +3 -3
  44. package/dist/managedAgents.d.ts.map +1 -1
  45. package/dist/managedAgents.js +2 -2
  46. package/dist/mcpRegistryRecord.d.ts +143 -0
  47. package/dist/mcpRegistryRecord.d.ts.map +1 -0
  48. package/dist/mcpRegistryRecord.js +217 -0
  49. package/dist/mcpRegistryRecord.js.map +1 -0
  50. package/dist/openai.d.ts +3 -3
  51. package/dist/openai.d.ts.map +1 -1
  52. package/dist/openai.js +9 -8
  53. package/dist/openai.js.map +1 -1
  54. package/dist/phrases.d.ts +87 -0
  55. package/dist/phrases.d.ts.map +1 -0
  56. package/dist/phrases.js +236 -0
  57. package/dist/phrases.js.map +1 -0
  58. package/dist/sequence.d.ts +52 -0
  59. package/dist/sequence.d.ts.map +1 -0
  60. package/dist/sequence.js +121 -0
  61. package/dist/sequence.js.map +1 -0
  62. package/dist/snapshot.d.ts +50 -36
  63. package/dist/snapshot.d.ts.map +1 -1
  64. package/dist/snapshot.js +90 -48
  65. package/dist/snapshot.js.map +1 -1
  66. package/dist/ssoGroups.d.ts +6 -0
  67. package/dist/ssoGroups.d.ts.map +1 -1
  68. package/dist/ssoGroups.js +27 -7
  69. package/dist/ssoGroups.js.map +1 -1
  70. package/dist/workflow.d.ts +5 -3
  71. package/dist/workflow.d.ts.map +1 -1
  72. package/dist/workflow.js +8 -4
  73. package/dist/workflow.js.map +1 -1
  74. package/package.json +1 -1
package/dist/openai.d.ts CHANGED
@@ -109,7 +109,7 @@
109
109
  * guardrail injected by this module also gates voice-agent tool calls.
110
110
  * `__tests__/openai.test.ts` drives a real `RealtimeSession` (0.16.1) with a
111
111
  * stand-in transport emitting `function_call`: a refused call never executes
112
- * and the BLOCKED message goes back via `sendFunctionCallOutput` (TD-408).
112
+ * and the BLOCKED message goes back via `sendFunctionCallOutput`.
113
113
  *
114
114
  * ## LLM egress and the tracing DLP leak
115
115
  *
@@ -373,8 +373,8 @@ export interface OpenAiGateConfig extends GateConfig {
373
373
  */
374
374
  /**
375
375
  * Where to point `@openai/agents`' tracing exporter so traces stay governed
376
- * (TD-405): the control plane's ingest route, authenticated with the same
377
- * API key the gate uses. Pass the result to the SDK's own exporter —
376
+ * rather than lost: the control plane's ingest route, authenticated with the
377
+ * same API key the gate uses. Pass the result to the SDK's own exporter —
378
378
  *
379
379
  * ```ts
380
380
  * import { setTraceProcessors, BatchTraceProcessor, OpenAITracingExporter } from '@openai/agents'
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
package/dist/openai.js CHANGED
@@ -109,7 +109,7 @@
109
109
  * guardrail injected by this module also gates voice-agent tool calls.
110
110
  * `__tests__/openai.test.ts` drives a real `RealtimeSession` (0.16.1) with a
111
111
  * stand-in transport emitting `function_call`: a refused call never executes
112
- * and the BLOCKED message goes back via `sendFunctionCallOutput` (TD-408).
112
+ * and the BLOCKED message goes back via `sendFunctionCallOutput`.
113
113
  *
114
114
  * ## LLM egress and the tracing DLP leak
115
115
  *
@@ -339,10 +339,11 @@ function wrapHostedMcpTool(tool, opts) {
339
339
  // The caller's original config demanded a human for this tool but gave
340
340
  // the runner no resolver. The hosted-MCP approval loop consumes
341
341
  // decisions with a truthy check (see OpenAiApprovalDecision's doc), so
342
- // there is no "leave it pending" here: per this product's own posture
343
- // (gate.ts, SOP_RULE_APPROVAL), an approval that cannot be granted is a
344
- // block. Keep your own onApproval on the hostedMcpTool — this wrapper
345
- // composes with it — to retain a human flow.
342
+ // there is no "leave it pending" here, and the demand is the caller's
343
+ // own config rather than an Intutic hold rule, so there is no hold to
344
+ // record either: an approval nobody can grant is a block. Keep your own
345
+ // onApproval on the hostedMcpTool — this wrapper composes with it — to
346
+ // retain a human flow.
346
347
  return {
347
348
  approve: false,
348
349
  reason: '[Intutic Governance] BLOCKED: this MCP tool call requires human approval ' +
@@ -361,7 +362,7 @@ function wrapHostedMcpTool(tool, opts) {
361
362
  /** Shared shell/apply_patch wrapping: force every action through the
362
363
  * approval path, gate it there, then replay the tool's original policy.
363
364
  *
364
- * Fall-through, stated because it is easy to miss (TD-406): this relies on
365
+ * Fall-through, stated because it is easy to miss: this relies on
365
366
  * `needsApproval`/`onApproval` being the SDK's veto point for these two
366
367
  * hosted tools. A future `@openai/agents` that executes a shell or
367
368
  * apply_patch action without consulting `onApproval` would bypass the gate
@@ -613,8 +614,8 @@ export function suppressAgentsTracingExport() {
613
614
  */
614
615
  /**
615
616
  * Where to point `@openai/agents`' tracing exporter so traces stay governed
616
- * (TD-405): the control plane's ingest route, authenticated with the same
617
- * API key the gate uses. Pass the result to the SDK's own exporter —
617
+ * rather than lost: the control plane's ingest route, authenticated with the
618
+ * same API key the gate uses. Pass the result to the SDK's own exporter —
618
619
  *
619
620
  * ```ts
620
621
  * import { setTraceProcessors, BatchTraceProcessor, OpenAITracingExporter } from '@openai/agents'
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmJG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEhD;;0DAE0D;AAC1D,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAA;AA2HvC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;AACzD,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAA;AAOpE,6EAA6E;AAE7E,SAAS,WAAW,CAAC,QAA0B,EAAE,IAAY;IAC3D,MAAM,CAAC,GAAG,QAAQ,IAAI,UAAU,EAAE,CAAA;IAClC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,8EAA8E;YAC5E,eAAe,IAAI,uCAAuC,CAC7D,CAAA;IACH,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAA8B;IACnE,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IACnB,IAAI,MAAe,CAAA;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,EAAE,CAAA;IAChB,CAAC;IACD,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5E,OAAO,MAAmB,CAAA;IAC5B,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;AAC1B,CAAC;AAED,SAAS,YAAY,CAAC,GAAY;IAChC,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC/D,OAAO,+CAA+C,MAAM,8DAA8D,CAAA;AAC5H,CAAC;AAED;;wEAEwE;AACxE,SAAS,eAAe,CAAC,GAAY;IACnC,IAAI,GAAG,YAAY,kBAAkB,EAAE,CAAC;QACtC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,CAAA;IAChD,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAA;AACtD,CAAC;AAED,6EAA6E;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAA0B,EAAE;IAC/D,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,cAAc;QACpB,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YAClB,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAA;YAC1D,IAAI,CAAC;gBACH,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;YACpF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,kBAAkB,EAAE,CAAC;oBACtC,OAAO;wBACL,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE;wBACzD,UAAU,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE;qBAC3D,CAAA;gBACH,CAAC;gBACD,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,CAAA;YAC5E,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAA;QACxC,CAAC;KACF,CAAA;AACH,CAAC;AAED,4EAA4E;AAE5E,SAAS,gBAAgB,CAAC,IAAuB,EAAE,IAAuB;IACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,CAAA;IAC3C,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,cAAc,CAAC;QAAE,OAAO,IAAI,CAAA;IAClE,uEAAuE;IACvE,0DAA0D;IAC1D,OAAO,EAAE,GAAG,IAAI,EAAE,eAAe,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAA;AAChF,CAAC;AAED,SAAS,WAAW,CAAC,IAAqB;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,IAAI,CAAA;IAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,YAAsD,CAAA;IACtE,OAAO,EAAE,EAAE,IAAI,KAAK,KAAK,CAAA;AAC3B,CAAC;AAED;;;;qDAIqD;AACrD,SAAS,0BAA0B,CAAC,eAAwB,EAAE,QAAgB;IAC5E,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,OAAO;QAAE,OAAO,KAAK,CAAA;IAC9E,IAAI,eAAe,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAC7C,IAAI,eAAe,KAAK,IAAI,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,eAGd,CAAA;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,IAAI,MAAM,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAA;QAC5E,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAA;QAC/C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAgC;IAChE,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiG,CAAA;IACvH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB;QAAE,OAAO,IAAI,CAAA;IAChE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAA;IACrC,MAAM,QAAQ,GACZ,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QAC/C,CAAC,CAAC,EAAE,CAAC,IAAI;QACT,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;YAC3E,CAAC,CAAC,OAAO,CAAC,IAAI;YACd,CAAC,CAAC,IAAI,CAAA;IACZ,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAClC,OAAO;QACL,QAAQ;QACR,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5E,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAqB,EAAE,IAAuB;IACvE,MAAM,MAAM,GAAG,IAAiD,CAAA;IAChE,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAEzC,MAAM,EAAE,GAA+B,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAA;IACvE,MAAM,kBAAkB,GAAG,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,UAAU,CAAA;IAC1D,MAAM,uBAAuB,GAAG,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAC,eAAe,CAAA;IAEzE,EAAE,CAAC,gBAAgB,GAAG,QAAQ,CAAA;IAC9B,EAAE,CAAC,WAAW,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACvC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QAC/C,MAAM,OAAO,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,uEAAuE;YACvE,sBAAsB;YACtB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EACJ,sFAAsF;oBACtF,qEAAqE;aACxE,CAAA;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;QAC7B,CAAC;QACD,IAAI,kBAAkB;YAAE,OAAO,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAChE,IAAI,0BAA0B,CAAC,uBAAuB,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1E,uEAAuE;YACvE,gEAAgE;YAChE,uEAAuE;YACvE,sEAAsE;YACtE,wEAAwE;YACxE,sEAAsE;YACtE,6CAA6C;YAC7C,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EACJ,2EAA2E;oBAC3E,+EAA+E;oBAC/E,oDAAoD;aACvD,CAAA;QACH,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC,CAAA;IACD,OAAO,EAAE,CAAC,eAAe,CAAA;IACzB,OAAO,EAAE,CAAC,UAAU,CAAA;IAEpB,MAAM,OAAO,GAAoB,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,EAA6B,EAAE,CAAA;IACzF,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;;;;;yDASyD;AACzD,SAAS,qBAAqB,CAC5B,IAAO,EACP,IAAuB,EACvB,OAAmG;IAEnG,MAAM,MAAM,GAAG,IAAmC,CAAA;IAClD,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAEzC,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAA;IAChD,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAA;IAE1C,MAAM,UAAU,GAAG,KAAK,EAAE,UAAmB,EAAE,IAAgC,EAAmC,EAAE;QAClH,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACtC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EACJ,uDAAuD,IAAI,CAAC,IAAI,mBAAmB;oBACnF,2EAA2E;aAC9E,CAAA;QACH,CAAC;QACD,IAAI,CAAC;YACH,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC3C,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;YACrC,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;QAC7B,CAAC;QACD,yEAAyE;QACzE,+CAA+C;QAC/C,MAAM,gBAAgB,GACpB,OAAO,qBAAqB,KAAK,UAAU;YACzC,CAAC,CAAC,MAAM,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;YACzE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;QACpC,IAAI,CAAC,gBAAgB;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC/C,IAAI,kBAAkB;YAAE,OAAO,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QACnE,yEAAyE;QACzE,uEAAuE;QACvE,gEAAgE;QAChE,uEAAuE;QACvE,OAAO,EAAE,CAAA;IACX,CAAC,CAAA;IAED,MAAM,OAAO,GAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,CAAA;IAC3E,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,OAAgB;IACpC,MAAM,GAAG,GAAG,OAA4F,CAAA;IACxG,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,IAAI,CAAA;IAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA;IACjF,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAClC,OAAO;QACL,yEAAyE;QACzE,uDAAuD;QACvD,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrE,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,GAAG,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAgB;IACzC,MAAM,GAAG,GAAG,OAIC,CAAA;IACb,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,IAAI,CAAC,GAAG,CAAC,SAAS;QAAE,OAAO,IAAI,CAAA;IAC1E,MAAM,EAAE,GAAG,GAAG,CAAC,SAAS,CAAA;IACxB,IAAI,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAC5C,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,SAAS,EAAE,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QAC5D,wEAAwE;QACxE,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE,CAAA;IACD,OAAO;QACL,UAAU,EAAE,CAAC,SAAS,CAAC;QACvB,MAAM,EAAE,EAAE;QACV,GAAG,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAKI,EAAE;IAEN,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,sBAAsB,CAAA;IACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAA;QAClE,MAAM,SAAS,GACb,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACrE,CAAC,CAAE,MAAoB;YACvB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;QACvB,IAAI,CAAC;YACH,MAAM,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;YACnE,mEAAmE;YACnE,kBAAkB;YAClB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;QAClD,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAuB,EAAE,IAAuB;IACxE,MAAM,MAAM,GAAG,IAAmD,CAAA;IAClE,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IACzC,MAAM,OAAO,GAAsB;QACjC,GAAG,IAAI;QACP,aAAa,EAAE,4BAA4B,CAAC;YAC1C,GAAG,IAAI;YACP,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,QAAQ,EAAE,OAAO,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;SACpF,CAAC;KACH,CAAA;IACD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,4EAA4E;AAE5E,SAAS,WAAW,CAAmB,IAAO,EAAE,IAAuB;IACrE,MAAM,CAAC,GAAG,IAA2C,CAAA;IACrD,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC,IAAoC,EAAE,IAAI,CAAiB,CAAA;QACrF,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,MAAM,GAAG,IAAkC,CAAA;YACjD,sEAAsE;YACtE,qEAAqE;YACrE,+DAA+D;YAC/D,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAkB,CAAC,CAAC,CAAC,IAAI,CAAA;QACvF,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,oEAAoE;YACpE,uEAAuE;YACvE,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAA;YACtC,OAAO,qBAAqB,CAAC,IAAiC,EAAE,IAAI,EAAE,YAAY,CAAiB,CAAA;QACrG,CAAC;QACD,KAAK,aAAa;YAChB,OAAO,qBAAqB,CAAC,IAAsC,EAAE,IAAI,EAAE,iBAAiB,CAAiB,CAAA;QAC/G,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC,IAAoC,EAAE,IAAI,CAAiB,CAAA;QACrF;YACE,OAAO,IAAI,CAAA;IACf,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAmB,KAAmB,EAAE,OAA0B,EAAE;IAC3F,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AAC/C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,SAAS,CAA4B,KAAQ,EAAE,OAA0B,EAAE;IACzF,MAAM,MAAM,GAAG,KAAoC,CAAA;IACnD,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAEhD,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAE1C,MAAM,mBAAmB,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAA8C,CACrG;IAAC,KAAyB,CAAC,WAAW,GAAG,KAAK,EAAE,GAAG,IAAe,EAAE,EAAE,CACrE,SAAS,CAAC,MAAM,mBAAmB,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAA;IAErD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;IAChF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,4EAA4E;AAE5E;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,2BAA2B;IACzC,OAAO,CAAC,GAAG,CAAC,6BAA6B,GAAG,GAAG,CAAA;AACjD,CAAC;AAiBD;;;;;;;;;;;;GAYG;AACH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,6BAA6B,CAAC,MAAyB,OAAO,CAAC,GAAG;IAChF,yEAAyE;IACzE,0EAA0E;IAC1E,iEAAiE;IACjE,IAAI,IAAI,GAAG,GAAG,CAAC,yBAAyB,IAAI,EAAE,CAAA;IAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,GAAG,CAAC,eAAe,IAAI,EAAE,CAAA;IACxC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,qHAAqH,CAAC,CAAA;IACxI,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,kDAAkD,EAAE,MAAM,EAAE,CAAA;AACxF,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,SAA2B,EAAE;IAC7D,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,SAAS,CAAC,KAAK,SAAS,EAAE,CAAC;QACtD,2BAA2B,EAAE,CAAA;IAC/B,CAAC;IAED,IAAI,MAAyB,CAAA;IAC7B,IAAI,CAAC;QACH,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC;YAC1B,OAAO,EAAE,eAAe;YACxB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,UAAU,EAAE;SAC9E,CAAC,CAAA;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,IAAI,CAAA;IACf,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,OAAO,CAAC,IAAI,CAAC,CAAA;IACb,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Phrase matching for shell commands and SQL in linear time.
3
+ *
4
+ * Every command classifier asks the same question: does this text contain
5
+ * `git push`, `drop table`, `curl --data`, whatever separates the words? The
6
+ * separators that count are the ones the shell or the database reads as a
7
+ * word break:
8
+ *
9
+ * - whitespace, a two-character escaped `\n`, `\t` or `\r`, and a backslash
10
+ * before whitespace (a line continuation, or an escaped space);
11
+ * - a `/* … *\/` comment;
12
+ * - a `-- …` comment that runs to a newline (real or escaped);
13
+ * - a run of options starting with `--` (`git --no-pager push`,
14
+ * `kubectl --context prod apply`), which stops at `;`, `&`, `|` or a real
15
+ * newline — the end of the shell command it is in.
16
+ *
17
+ * The proxy's Rust classifier expresses this as a regex (`SQL_GAP` in
18
+ * `actions.rs`), which is safe there: Rust's engine is linear. JavaScript's
19
+ * and Python's backtrack, and that regex took seconds on a few hundred
20
+ * kilobytes of `git -- git -- …` — text an agent can be talked into producing.
21
+ * So here the text is cut into words in one pass, and a phrase is matched over
22
+ * the words right to left with one array per phrase word: O(length × words).
23
+ * No regex runs on the input.
24
+ *
25
+ * The two functions are self-contained on purpose — no imports, no module
26
+ * state — because the hook gates emit them as source (`phraseText.toString()`)
27
+ * and run them outside this package. `packages/gate-js/src/phrases.ts` is a
28
+ * byte-identical copy and `intutic_clawde/gate/phrases.py` a transliteration;
29
+ * all of them run `action_vectors.json` beside the proxy's `actions.rs`.
30
+ *
31
+ * @module
32
+ */
33
+ /** A text cut into words, ready for any number of {@link hasPhrase} calls. */
34
+ export interface PhraseText {
35
+ /** The whole text, lower-cased: one-word phrases are plain substrings of it. */
36
+ raw: string;
37
+ /** The words, lower-cased, separated by single spaces: a cheap filter. */
38
+ joined: string;
39
+ toks: string[];
40
+ /** A separator (not a glued `--`) stands before the word. */
41
+ sep: boolean[];
42
+ /** A real newline stands before the word: the end of an option run. */
43
+ nl: boolean[];
44
+ /** A real or escaped newline stands before the word: the end of a `--` comment. */
45
+ eol: boolean[];
46
+ /** The word starts with `--`. */
47
+ dash: boolean[];
48
+ /** The word contains `;`, `&` or `|`: an option run cannot cross it. */
49
+ bar: boolean[];
50
+ /** A separator follows the last word. */
51
+ tail: boolean;
52
+ /** Per-word match arrays already computed, by mode and word. */
53
+ memo: Record<string, Uint8Array>;
54
+ /**
55
+ * Per word x: the first word at or after x containing `;&|`, with a real
56
+ * newline before it, and with any newline before it (the word count when
57
+ * none). Built by the first {@link hasPhrase} call that needs them.
58
+ */
59
+ next: {
60
+ bar: Int32Array;
61
+ nl: Int32Array;
62
+ eol: Int32Array;
63
+ } | null;
64
+ }
65
+ /**
66
+ * Cuts `input` into words in one pass. A `--` inside a word starts a new one
67
+ * (`drop--why` is `drop` and `--why`), glued rather than separated, so it can
68
+ * open a comment or an option run but cannot stand for a plain gap.
69
+ */
70
+ export declare function phraseText(input: unknown): PhraseText;
71
+ /**
72
+ * Whether `t` contains `needle`, a phrase whose words are separated by single
73
+ * spaces. A one-word needle is a plain substring. In a longer one the first
74
+ * word may end a word of the text (`digit push` contains `git push`, as a
75
+ * substring would), the last may begin one, and the words between must be
76
+ * whole; a trailing space (`'update '`) asks for a separator after the last
77
+ * word. `bounded` additionally requires a non-word character (or the edge of
78
+ * the word) before the first word and after the last, where `.` also counts
79
+ * as part of a word (`table.log` is not `table`).
80
+ */
81
+ export declare function hasPhrase(t: PhraseText, needle: string, bounded?: boolean): boolean;
82
+ /**
83
+ * Both functions as JavaScript source, for a hook gate to emit: the gates run
84
+ * this exact code, not a retyped copy.
85
+ */
86
+ export declare const PHRASES_JS_SOURCE: string;
87
+ //# sourceMappingURL=phrases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phrases.d.ts","sourceRoot":"","sources":["../src/phrases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,8EAA8E;AAC9E,MAAM,WAAW,UAAU;IACzB,gFAAgF;IAChF,GAAG,EAAE,MAAM,CAAA;IACX,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,6DAA6D;IAC7D,GAAG,EAAE,OAAO,EAAE,CAAA;IACd,uEAAuE;IACvE,EAAE,EAAE,OAAO,EAAE,CAAA;IACb,mFAAmF;IACnF,GAAG,EAAE,OAAO,EAAE,CAAA;IACd,iCAAiC;IACjC,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,wEAAwE;IACxE,GAAG,EAAE,OAAO,EAAE,CAAA;IACd,yCAAyC;IACzC,IAAI,EAAE,OAAO,CAAA;IACb,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAChC;;;;OAIG;IACH,IAAI,EAAE;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,EAAE,EAAE,UAAU,CAAC;QAAC,GAAG,EAAE,UAAU,CAAA;KAAE,GAAG,IAAI,CAAA;CAClE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CA8DrD;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CA6FnF;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,QAAsD,CAAA"}
@@ -0,0 +1,236 @@
1
+ /**
2
+ * Phrase matching for shell commands and SQL in linear time.
3
+ *
4
+ * Every command classifier asks the same question: does this text contain
5
+ * `git push`, `drop table`, `curl --data`, whatever separates the words? The
6
+ * separators that count are the ones the shell or the database reads as a
7
+ * word break:
8
+ *
9
+ * - whitespace, a two-character escaped `\n`, `\t` or `\r`, and a backslash
10
+ * before whitespace (a line continuation, or an escaped space);
11
+ * - a `/* … *\/` comment;
12
+ * - a `-- …` comment that runs to a newline (real or escaped);
13
+ * - a run of options starting with `--` (`git --no-pager push`,
14
+ * `kubectl --context prod apply`), which stops at `;`, `&`, `|` or a real
15
+ * newline — the end of the shell command it is in.
16
+ *
17
+ * The proxy's Rust classifier expresses this as a regex (`SQL_GAP` in
18
+ * `actions.rs`), which is safe there: Rust's engine is linear. JavaScript's
19
+ * and Python's backtrack, and that regex took seconds on a few hundred
20
+ * kilobytes of `git -- git -- …` — text an agent can be talked into producing.
21
+ * So here the text is cut into words in one pass, and a phrase is matched over
22
+ * the words right to left with one array per phrase word: O(length × words).
23
+ * No regex runs on the input.
24
+ *
25
+ * The two functions are self-contained on purpose — no imports, no module
26
+ * state — because the hook gates emit them as source (`phraseText.toString()`)
27
+ * and run them outside this package. `packages/gate-js/src/phrases.ts` is a
28
+ * byte-identical copy and `intutic_clawde/gate/phrases.py` a transliteration;
29
+ * all of them run `action_vectors.json` beside the proxy's `actions.rs`.
30
+ *
31
+ * @module
32
+ */
33
+ /**
34
+ * Cuts `input` into words in one pass. A `--` inside a word starts a new one
35
+ * (`drop--why` is `drop` and `--why`), glued rather than separated, so it can
36
+ * open a comment or an option run but cannot stand for a plain gap.
37
+ */
38
+ export function phraseText(input) {
39
+ const s = String(input == null ? '' : input).toLowerCase();
40
+ const n = s.length;
41
+ const isSpace = (c) => c === ' ' || c === '\t' || c === '\n' || c === '\r' || c === '\v' || c === '\f' ||
42
+ c === '\u00a0' || c === '\u1680' || (c >= '\u2000' && c <= '\u200a') ||
43
+ c === '\u2028' || c === '\u2029' || c === '\u202f' || c === '\u205f' || c === '\u3000' || c === '\ufeff';
44
+ const t = { raw: s, joined: '', toks: [], sep: [], nl: [], eol: [], dash: [], bar: [], tail: false, memo: {}, next: null };
45
+ let start = -1;
46
+ let tokBar = false;
47
+ let pendSep = false;
48
+ let pendNl = false;
49
+ let pendEol = false;
50
+ // The next `*/` at or after the last search; -1 once there is none left.
51
+ let close = -2;
52
+ const end = (at) => {
53
+ if (start < 0)
54
+ return;
55
+ t.toks.push(s.slice(start, at));
56
+ t.sep.push(pendSep);
57
+ t.nl.push(pendNl);
58
+ t.eol.push(pendEol);
59
+ t.dash.push(s.charAt(start) === '-' && s.charAt(start + 1) === '-');
60
+ t.bar.push(tokBar);
61
+ start = -1;
62
+ tokBar = false;
63
+ pendSep = false;
64
+ pendNl = false;
65
+ pendEol = false;
66
+ };
67
+ const gap = (newline, eol) => {
68
+ end(i);
69
+ pendSep = true;
70
+ if (newline)
71
+ pendNl = true;
72
+ if (eol)
73
+ pendEol = true;
74
+ };
75
+ let i = 0;
76
+ while (i < n) {
77
+ const c = s.charAt(i);
78
+ const d = i + 1 < n ? s.charAt(i + 1) : '';
79
+ if (isSpace(c)) {
80
+ gap(c === '\n', c === '\n');
81
+ i += 1;
82
+ }
83
+ else if (c === '\\' && (d === 'n' || d === 't' || d === 'r')) {
84
+ gap(false, d === 'n');
85
+ i += 2;
86
+ }
87
+ else if (c === '\\' && d !== '' && isSpace(d)) {
88
+ gap(false, false);
89
+ i += 2;
90
+ }
91
+ else if (c === '/' && d === '*' && close !== -1 && (close >= i + 2 || (close = s.indexOf('*/', i + 2)) !== -1)) {
92
+ gap(false, false);
93
+ i = close + 2;
94
+ }
95
+ else {
96
+ if (c === '-' && d === '-' && start >= 0 && s.charAt(i - 1) !== '-')
97
+ end(i);
98
+ if (start < 0)
99
+ start = i;
100
+ if (c === ';' || c === '&' || c === '|')
101
+ tokBar = true;
102
+ i += 1;
103
+ }
104
+ }
105
+ end(n);
106
+ t.tail = pendSep;
107
+ t.joined = t.toks.join(' ');
108
+ return t;
109
+ }
110
+ /**
111
+ * Whether `t` contains `needle`, a phrase whose words are separated by single
112
+ * spaces. A one-word needle is a plain substring. In a longer one the first
113
+ * word may end a word of the text (`digit push` contains `git push`, as a
114
+ * substring would), the last may begin one, and the words between must be
115
+ * whole; a trailing space (`'update '`) asks for a separator after the last
116
+ * word. `bounded` additionally requires a non-word character (or the edge of
117
+ * the word) before the first word and after the last, where `.` also counts
118
+ * as part of a word (`table.log` is not `table`).
119
+ */
120
+ export function hasPhrase(t, needle, bounded) {
121
+ const words = needle.toLowerCase().split(' ');
122
+ if (words.length === 1)
123
+ return t.raw.indexOf(words[0]) !== -1;
124
+ const trailingGap = words[words.length - 1] === '';
125
+ if (trailingGap)
126
+ words.pop();
127
+ for (const w of words)
128
+ if (w === '' || t.joined.indexOf(w) === -1)
129
+ return false;
130
+ const T = t.toks.length;
131
+ const k = words.length;
132
+ const isWord = (c) => (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9') || c === '_';
133
+ // Whether word `i` of the phrase can be the word at `q`, by its position.
134
+ // Typed arrays throughout: every array here has one entry per word of the
135
+ // text, and a classifier asks dozens of phrases of the same text.
136
+ const matches = (i) => {
137
+ const w = words[i];
138
+ const first = i === 0;
139
+ const last = i === k - 1 && !trailingGap;
140
+ const key = (first ? 'f' : '') + (last ? 'l' : '') + (bounded ? 'b' : '') + ':' + w;
141
+ const hit = t.memo[key];
142
+ if (hit)
143
+ return hit;
144
+ const out = new Uint8Array(T);
145
+ for (let q = 0; q < T; q++) {
146
+ const tok = t.toks[q];
147
+ let ok;
148
+ if (first && last)
149
+ ok = tok.indexOf(w) !== -1;
150
+ else if (first)
151
+ ok = tok.length >= w.length && tok.lastIndexOf(w) === tok.length - w.length;
152
+ else if (last)
153
+ ok = tok.lastIndexOf(w, 0) === 0;
154
+ else
155
+ ok = tok === w;
156
+ if (ok && bounded && first)
157
+ ok = tok.length === w.length || !isWord(tok.charAt(tok.length - w.length - 1));
158
+ if (ok && bounded && last)
159
+ ok = tok.length === w.length || !(isWord(tok.charAt(w.length)) || tok.charAt(w.length) === '.');
160
+ out[q] = ok ? 1 : 0;
161
+ }
162
+ t.memo[key] = out;
163
+ return out;
164
+ };
165
+ // nextBar[x]: first word at or after x containing `;&|`; nextNl[x]: first
166
+ // word at or after x with a real newline before it; nextEol likewise for any
167
+ // newline. T when there is none. Once per text, not once per phrase.
168
+ if (t.next === null) {
169
+ const bar = new Int32Array(T + 1);
170
+ const nl = new Int32Array(T + 1);
171
+ const eol = new Int32Array(T + 1);
172
+ bar[T] = T;
173
+ nl[T] = T;
174
+ eol[T] = T;
175
+ for (let x = T - 1; x >= 0; x--) {
176
+ bar[x] = t.bar[x] ? x : bar[x + 1];
177
+ nl[x] = t.nl[x] ? x : nl[x + 1];
178
+ eol[x] = t.eol[x] ? x : eol[x + 1];
179
+ }
180
+ t.next = { bar, nl, eol };
181
+ }
182
+ const nextBar = t.next.bar;
183
+ const nextNl = t.next.nl;
184
+ const nextEol = t.next.eol;
185
+ // ok[q]: the rest of the phrase, from the current word on, matches with
186
+ // that word at q. Start with the last word and walk back.
187
+ let ok = new Uint8Array(T + 1);
188
+ const lastHits = matches(k - 1);
189
+ for (let q = 0; q < T; q++) {
190
+ let v = lastHits[q] === 1;
191
+ if (v && trailingGap) {
192
+ const r = q + 1;
193
+ v = r < T ? t.sep[r] || (t.dash[r] && !t.bar[r] && (r + 1 < T || t.tail)) : t.tail;
194
+ }
195
+ ok[q] = v ? 1 : 0;
196
+ }
197
+ for (let i = k - 2; i >= 0; i--) {
198
+ // nextOk[x]: first word at or after x where the rest matches after a separator.
199
+ const nextOk = new Int32Array(T + 2);
200
+ nextOk[T] = T;
201
+ nextOk[T + 1] = T;
202
+ for (let x = T - 1; x >= 0; x--)
203
+ nextOk[x] = ok[x] === 1 && t.sep[x] ? x : nextOk[x + 1];
204
+ // reach[r]: the gap that starts at word r leads into the rest of the phrase.
205
+ const reach = new Uint8Array(T + 1);
206
+ for (let r = T - 1; r >= 0; r--) {
207
+ let v = t.sep[r] && ok[r] === 1;
208
+ if (!v && t.dash[r]) {
209
+ // A `--` comment runs to the next newline; more gap may follow it.
210
+ const after = nextEol[r + 1];
211
+ if (after < T && reach[after] === 1)
212
+ v = true;
213
+ // An option run reaches any word before a `;&|` word or a real newline.
214
+ const limit = Math.min(nextBar[r], nextNl[r + 1], T - 1);
215
+ if (!v && nextOk[r + 1] <= limit)
216
+ v = true;
217
+ }
218
+ reach[r] = v ? 1 : 0;
219
+ }
220
+ const hits = matches(i);
221
+ const prev = new Uint8Array(T + 1);
222
+ for (let p = 0; p < T; p++)
223
+ prev[p] = hits[p] & reach[p + 1];
224
+ ok = prev;
225
+ }
226
+ for (let p = 0; p < T; p++)
227
+ if (ok[p] === 1)
228
+ return true;
229
+ return false;
230
+ }
231
+ /**
232
+ * Both functions as JavaScript source, for a hook gate to emit: the gates run
233
+ * this exact code, not a retyped copy.
234
+ */
235
+ export const PHRASES_JS_SOURCE = `${phraseText.toString()}\n${hasPhrase.toString()}`;
236
+ //# sourceMappingURL=phrases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phrases.js","sourceRoot":"","sources":["../src/phrases.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Sequence rules: a gate rule `A.*B` run as "find A, then find B after it" in
3
+ * linear time.
4
+ *
5
+ * A rule like ` git .*reset +--hard` is a regex. `grep -E` runs it as an
6
+ * automaton, in time linear in the command. JavaScript's and Python's engines
7
+ * backtrack: for every ` git ` they try every end of `.*`, so 200 KB of
8
+ * ` git git git …` took 9.5 s, which is past the point where a harness that
9
+ * treats a hook timeout as "allow" runs the call. A rule marked `sequence`
10
+ * (`s` in a `.rules` line's flags column) is the same regex, read differently:
11
+ *
12
+ * - its top-level `|` alternatives are tried in turn;
13
+ * - each alternative is cut at its top-level `.*` into steps;
14
+ * - each step is searched for once, starting where the previous one ended.
15
+ *
16
+ * Each search is one pass over the text, so a rule costs at most its number of
17
+ * steps times the length of the text. It means the same as the regex provided
18
+ * the first match of every step but the last also ends first, which holds for
19
+ * every step the rule tables use: a step that starts and ends at a space with
20
+ * no space inside, or a fixed word. `.` does not match a newline and neither
21
+ * does a step search cross one in the regex, but the gates normalise every
22
+ * command subject to single spaces first, so there is none. A test fuzzes each
23
+ * sequence rule against its own regex.
24
+ *
25
+ * Self-contained on purpose — no imports, no module state — because the
26
+ * JavaScript gates emit it as source ({@link SEQUENCE_JS_SOURCE}).
27
+ * `packages/gate-js/src/sequence.ts` is a byte-identical copy and
28
+ * `intutic_clawde/gate/sequence.py` a transliteration; all of them run
29
+ * `fixtures/gate-rule-vectors.json`.
30
+ *
31
+ * @module
32
+ */
33
+ /**
34
+ * A sequence rule's source as alternatives of steps: split at every top-level
35
+ * `|`, then each alternative at every top-level `.*`. ` a .*b| c .*d` is
36
+ * `[[' a ', 'b'], [' c ', 'd']]`. Outside a group or a class only, so `(x|y)`
37
+ * stays inside its step. Empty steps are dropped.
38
+ */
39
+ export declare function sequenceAlternatives(source: string): string[][];
40
+ /**
41
+ * Compiles a sequence rule's source for {@link sequenceMatch}: each step with
42
+ * the `g` flag, which is what lets a search start at `lastIndex`.
43
+ */
44
+ export declare function compileSequence(source: string, ignoreCase: boolean): RegExp[][];
45
+ /** Whether `text` matches a compiled sequence rule: some alternative's steps occur in order. */
46
+ export declare function sequenceMatch(alternatives: RegExp[][], text: string): boolean;
47
+ /**
48
+ * The three functions as JavaScript source, for a gate to emit: the gates run
49
+ * this exact code, not a retyped copy.
50
+ */
51
+ export declare const SEQUENCE_JS_SOURCE: string;
52
+ //# sourceMappingURL=sequence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sequence.d.ts","sourceRoot":"","sources":["../src/sequence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CA6C/D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,EAAE,EAAE,CAE/E;AAED,gGAAgG;AAChG,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAgB7E;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,QAAmG,CAAA"}