@inhuman.tools/turn 0.0.0-stage → 0.2.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/LICENSE.md +7 -0
- package/dist/agent-calls/acceptance.d.ts +12 -0
- package/dist/agent-calls/acceptance.d.ts.map +1 -0
- package/dist/agent-calls/acceptance.js +64 -0
- package/dist/agent-calls/acceptance.js.map +1 -0
- package/dist/agent-calls/callbacks.d.ts +14 -0
- package/dist/agent-calls/callbacks.d.ts.map +1 -0
- package/dist/agent-calls/callbacks.js +59 -0
- package/dist/agent-calls/callbacks.js.map +1 -0
- package/dist/agent-calls/delivery.d.ts +7 -0
- package/dist/agent-calls/delivery.d.ts.map +1 -0
- package/dist/agent-calls/delivery.js +16 -0
- package/dist/agent-calls/delivery.js.map +1 -0
- package/dist/agent-calls/index.d.ts +7 -0
- package/dist/agent-calls/index.d.ts.map +1 -0
- package/dist/agent-calls/index.js +6 -0
- package/dist/agent-calls/index.js.map +1 -0
- package/dist/agent-calls/operator.d.ts +21 -0
- package/dist/agent-calls/operator.d.ts.map +1 -0
- package/dist/agent-calls/operator.js +78 -0
- package/dist/agent-calls/operator.js.map +1 -0
- package/dist/agent-calls/runtime.d.ts +99 -0
- package/dist/agent-calls/runtime.d.ts.map +1 -0
- package/dist/agent-calls/runtime.js +245 -0
- package/dist/agent-calls/runtime.js.map +1 -0
- package/dist/agent-calls/types.d.ts +31 -0
- package/dist/agent-calls/types.d.ts.map +1 -0
- package/dist/agent-calls/types.js +2 -0
- package/dist/agent-calls/types.js.map +1 -0
- package/dist/context/compact-floors.d.ts +43 -0
- package/dist/context/compact-floors.d.ts.map +1 -0
- package/dist/context/compact-floors.js +52 -0
- package/dist/context/compact-floors.js.map +1 -0
- package/dist/context/compact.d.ts +42 -0
- package/dist/context/compact.d.ts.map +1 -0
- package/dist/context/compact.js +155 -0
- package/dist/context/compact.js.map +1 -0
- package/dist/context/delivery.d.ts +13 -0
- package/dist/context/delivery.d.ts.map +1 -0
- package/dist/context/delivery.js +6 -0
- package/dist/context/delivery.js.map +1 -0
- package/dist/context/history.d.ts +66 -0
- package/dist/context/history.d.ts.map +1 -0
- package/dist/context/history.js +573 -0
- package/dist/context/history.js.map +1 -0
- package/dist/context/index.d.ts +10 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +10 -0
- package/dist/context/index.js.map +1 -0
- package/dist/context/observations.d.ts +7 -0
- package/dist/context/observations.d.ts.map +1 -0
- package/dist/context/observations.js +11 -0
- package/dist/context/observations.js.map +1 -0
- package/dist/context/retention/defaults.d.ts +10 -0
- package/dist/context/retention/defaults.d.ts.map +1 -0
- package/dist/context/retention/defaults.js +47 -0
- package/dist/context/retention/defaults.js.map +1 -0
- package/dist/context/retention/index.d.ts +14 -0
- package/dist/context/retention/index.d.ts.map +1 -0
- package/dist/context/retention/index.js +21 -0
- package/dist/context/retention/index.js.map +1 -0
- package/dist/context/retention/narrow.d.ts +22 -0
- package/dist/context/retention/narrow.d.ts.map +1 -0
- package/dist/context/retention/narrow.js +140 -0
- package/dist/context/retention/narrow.js.map +1 -0
- package/dist/context/retention/render.d.ts +37 -0
- package/dist/context/retention/render.d.ts.map +1 -0
- package/dist/context/retention/render.js +149 -0
- package/dist/context/retention/render.js.map +1 -0
- package/dist/context/retention/resolve.d.ts +51 -0
- package/dist/context/retention/resolve.d.ts.map +1 -0
- package/dist/context/retention/resolve.js +254 -0
- package/dist/context/retention/resolve.js.map +1 -0
- package/dist/context/retention/schema.d.ts +345 -0
- package/dist/context/retention/schema.d.ts.map +1 -0
- package/dist/context/retention/schema.js +149 -0
- package/dist/context/retention/schema.js.map +1 -0
- package/dist/context/retention/stamp.d.ts +25 -0
- package/dist/context/retention/stamp.d.ts.map +1 -0
- package/dist/context/retention/stamp.js +103 -0
- package/dist/context/retention/stamp.js.map +1 -0
- package/dist/context/retention/step.d.ts +33 -0
- package/dist/context/retention/step.d.ts.map +1 -0
- package/dist/context/retention/step.js +74 -0
- package/dist/context/retention/step.js.map +1 -0
- package/dist/context/retention/view.d.ts +57 -0
- package/dist/context/retention/view.d.ts.map +1 -0
- package/dist/context/retention/view.js +121 -0
- package/dist/context/retention/view.js.map +1 -0
- package/dist/context/squeeze.d.ts +45 -0
- package/dist/context/squeeze.d.ts.map +1 -0
- package/dist/context/squeeze.js +182 -0
- package/dist/context/squeeze.js.map +1 -0
- package/dist/context/tools.d.ts +16 -0
- package/dist/context/tools.d.ts.map +1 -0
- package/dist/context/tools.js +73 -0
- package/dist/context/tools.js.map +1 -0
- package/dist/context/transcript.d.ts +151 -0
- package/dist/context/transcript.d.ts.map +1 -0
- package/dist/context/transcript.js +659 -0
- package/dist/context/transcript.js.map +1 -0
- package/dist/policy-processor/bypass.d.ts +95 -0
- package/dist/policy-processor/bypass.d.ts.map +1 -0
- package/dist/policy-processor/bypass.js +188 -0
- package/dist/policy-processor/bypass.js.map +1 -0
- package/dist/policy-processor/classifier.d.ts +47 -0
- package/dist/policy-processor/classifier.d.ts.map +1 -0
- package/dist/policy-processor/classifier.js +671 -0
- package/dist/policy-processor/classifier.js.map +1 -0
- package/dist/policy-processor/cluster.d.ts +7 -0
- package/dist/policy-processor/cluster.d.ts.map +1 -0
- package/dist/policy-processor/cluster.js +32 -0
- package/dist/policy-processor/cluster.js.map +1 -0
- package/dist/policy-processor/evidence.d.ts +26 -0
- package/dist/policy-processor/evidence.d.ts.map +1 -0
- package/dist/policy-processor/evidence.js +204 -0
- package/dist/policy-processor/evidence.js.map +1 -0
- package/dist/policy-processor/explain.d.ts +59 -0
- package/dist/policy-processor/explain.d.ts.map +1 -0
- package/dist/policy-processor/explain.js +224 -0
- package/dist/policy-processor/explain.js.map +1 -0
- package/dist/policy-processor/index.d.ts +6 -0
- package/dist/policy-processor/index.d.ts.map +1 -0
- package/dist/policy-processor/index.js +6 -0
- package/dist/policy-processor/index.js.map +1 -0
- package/dist/policy-processor/license.d.ts +23 -0
- package/dist/policy-processor/license.d.ts.map +1 -0
- package/dist/policy-processor/license.js +47 -0
- package/dist/policy-processor/license.js.map +1 -0
- package/dist/policy-processor/peel-cwd.d.ts +2 -0
- package/dist/policy-processor/peel-cwd.d.ts.map +1 -0
- package/dist/policy-processor/peel-cwd.js +2 -0
- package/dist/policy-processor/peel-cwd.js.map +1 -0
- package/dist/policy-processor/real-path.d.ts +7 -0
- package/dist/policy-processor/real-path.d.ts.map +1 -0
- package/dist/policy-processor/real-path.js +42 -0
- package/dist/policy-processor/real-path.js.map +1 -0
- package/dist/policy-processor/scope.d.ts +111 -0
- package/dist/policy-processor/scope.d.ts.map +1 -0
- package/dist/policy-processor/scope.js +629 -0
- package/dist/policy-processor/scope.js.map +1 -0
- package/dist/policy-processor/self-protect.d.ts +10 -0
- package/dist/policy-processor/self-protect.d.ts.map +1 -0
- package/dist/policy-processor/self-protect.js +48 -0
- package/dist/policy-processor/self-protect.js.map +1 -0
- package/dist/policy-processor/soft-deny.d.ts +75 -0
- package/dist/policy-processor/soft-deny.d.ts.map +1 -0
- package/dist/policy-processor/soft-deny.js +185 -0
- package/dist/policy-processor/soft-deny.js.map +1 -0
- package/dist/policy-processor/unattended-guard.d.ts +28 -0
- package/dist/policy-processor/unattended-guard.d.ts.map +1 -0
- package/dist/policy-processor/unattended-guard.js +145 -0
- package/dist/policy-processor/unattended-guard.js.map +1 -0
- package/dist/session/cancel.d.ts +14 -0
- package/dist/session/cancel.d.ts.map +1 -0
- package/dist/session/cancel.js +32 -0
- package/dist/session/cancel.js.map +1 -0
- package/dist/session/commands.d.ts +41 -0
- package/dist/session/commands.d.ts.map +1 -0
- package/dist/session/commands.js +241 -0
- package/dist/session/commands.js.map +1 -0
- package/dist/session/compact-actor.d.ts +23 -0
- package/dist/session/compact-actor.d.ts.map +1 -0
- package/dist/session/compact-actor.js +91 -0
- package/dist/session/compact-actor.js.map +1 -0
- package/dist/session/compact-env.d.ts +54 -0
- package/dist/session/compact-env.d.ts.map +1 -0
- package/dist/session/compact-env.js +345 -0
- package/dist/session/compact-env.js.map +1 -0
- package/dist/session/compact.d.ts +42 -0
- package/dist/session/compact.d.ts.map +1 -0
- package/dist/session/compact.js +68 -0
- package/dist/session/compact.js.map +1 -0
- package/dist/session/index.d.ts +9 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +8 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/park.d.ts +16 -0
- package/dist/session/park.d.ts.map +1 -0
- package/dist/session/park.js +73 -0
- package/dist/session/park.js.map +1 -0
- package/dist/session/side-channel-reminder.d.ts +41 -0
- package/dist/session/side-channel-reminder.d.ts.map +1 -0
- package/dist/session/side-channel-reminder.js +132 -0
- package/dist/session/side-channel-reminder.js.map +1 -0
- package/dist/session/types.d.ts +44 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +2 -0
- package/dist/session/types.js.map +1 -0
- package/dist/tool-catalog/catalog.d.ts +77 -0
- package/dist/tool-catalog/catalog.d.ts.map +1 -0
- package/dist/tool-catalog/catalog.js +380 -0
- package/dist/tool-catalog/catalog.js.map +1 -0
- package/dist/tool-catalog/index.d.ts +4 -0
- package/dist/tool-catalog/index.d.ts.map +1 -0
- package/dist/tool-catalog/index.js +3 -0
- package/dist/tool-catalog/index.js.map +1 -0
- package/dist/tool-catalog/recipes.d.ts +36 -0
- package/dist/tool-catalog/recipes.d.ts.map +1 -0
- package/dist/tool-catalog/recipes.js +121 -0
- package/dist/tool-catalog/recipes.js.map +1 -0
- package/dist/tool-catalog/types.d.ts +103 -0
- package/dist/tool-catalog/types.d.ts.map +1 -0
- package/dist/tool-catalog/types.js +5 -0
- package/dist/tool-catalog/types.js.map +1 -0
- package/dist/tool-runtime/approval/approved.d.ts +13 -0
- package/dist/tool-runtime/approval/approved.d.ts.map +1 -0
- package/dist/tool-runtime/approval/approved.js +20 -0
- package/dist/tool-runtime/approval/approved.js.map +1 -0
- package/dist/tool-runtime/approval/dist.d.ts +6 -0
- package/dist/tool-runtime/approval/dist.d.ts.map +1 -0
- package/dist/tool-runtime/approval/dist.js +28 -0
- package/dist/tool-runtime/approval/dist.js.map +1 -0
- package/dist/tool-runtime/approval/inbound.d.ts +7 -0
- package/dist/tool-runtime/approval/inbound.d.ts.map +1 -0
- package/dist/tool-runtime/approval/inbound.js +48 -0
- package/dist/tool-runtime/approval/inbound.js.map +1 -0
- package/dist/tool-runtime/approval/unattended.d.ts +8 -0
- package/dist/tool-runtime/approval/unattended.d.ts.map +1 -0
- package/dist/tool-runtime/approval/unattended.js +23 -0
- package/dist/tool-runtime/approval/unattended.js.map +1 -0
- package/dist/tool-runtime/blob-port.d.ts +46 -0
- package/dist/tool-runtime/blob-port.d.ts.map +1 -0
- package/dist/tool-runtime/blob-port.js +47 -0
- package/dist/tool-runtime/blob-port.js.map +1 -0
- package/dist/tool-runtime/extra-root.d.ts +3 -0
- package/dist/tool-runtime/extra-root.d.ts.map +1 -0
- package/dist/tool-runtime/extra-root.js +14 -0
- package/dist/tool-runtime/extra-root.js.map +1 -0
- package/dist/tool-runtime/handler.d.ts +29 -0
- package/dist/tool-runtime/handler.d.ts.map +1 -0
- package/dist/tool-runtime/handler.js +460 -0
- package/dist/tool-runtime/handler.js.map +1 -0
- package/dist/tool-runtime/index.d.ts +14 -0
- package/dist/tool-runtime/index.d.ts.map +1 -0
- package/dist/tool-runtime/index.js +14 -0
- package/dist/tool-runtime/index.js.map +1 -0
- package/dist/tool-runtime/peel.d.ts +19 -0
- package/dist/tool-runtime/peel.d.ts.map +1 -0
- package/dist/tool-runtime/peel.js +74 -0
- package/dist/tool-runtime/peel.js.map +1 -0
- package/dist/tool-runtime/plugin-context.d.ts +13 -0
- package/dist/tool-runtime/plugin-context.d.ts.map +1 -0
- package/dist/tool-runtime/plugin-context.js +55 -0
- package/dist/tool-runtime/plugin-context.js.map +1 -0
- package/dist/tool-runtime/recall.d.ts +18 -0
- package/dist/tool-runtime/recall.d.ts.map +1 -0
- package/dist/tool-runtime/recall.js +100 -0
- package/dist/tool-runtime/recall.js.map +1 -0
- package/dist/tool-runtime/run-system-tool.d.ts +13 -0
- package/dist/tool-runtime/run-system-tool.d.ts.map +1 -0
- package/dist/tool-runtime/run-system-tool.js +230 -0
- package/dist/tool-runtime/run-system-tool.js.map +1 -0
- package/dist/tool-runtime/tool-error.d.ts +6 -0
- package/dist/tool-runtime/tool-error.d.ts.map +1 -0
- package/dist/tool-runtime/tool-error.js +6 -0
- package/dist/tool-runtime/tool-error.js.map +1 -0
- package/dist/tool-runtime/worker-tools.d.ts +8 -0
- package/dist/tool-runtime/worker-tools.d.ts.map +1 -0
- package/dist/tool-runtime/worker-tools.js +65 -0
- package/dist/tool-runtime/worker-tools.js.map +1 -0
- package/dist/tool-runtime/write-admit.d.ts +21 -0
- package/dist/tool-runtime/write-admit.d.ts.map +1 -0
- package/dist/tool-runtime/write-admit.js +89 -0
- package/dist/tool-runtime/write-admit.js.map +1 -0
- package/package.json +114 -3
- package/policy/auto-mode-ask.scm +201 -0
- package/policy/bypass-detect.prompt +55 -0
- package/policy/classifier-bash-incomplete.prompt +46 -0
- package/policy/classifier-bash.prompt +45 -0
- package/policy/classifier-mcp.prompt +45 -0
- package/policy/classifier-read.prompt +44 -0
- package/policy/classifier-write-outside.prompt +46 -0
- package/policy/classifier-write-risky.prompt +45 -0
- package/policy/classifier-write-workspace.prompt +46 -0
- package/policy/classifier-write.prompt +45 -0
- package/policy/soft-deny-round1.prompt +51 -0
- package/policy/soft-deny-round2.prompt +60 -0
- package/src/agent-calls/acceptance.ts +71 -0
- package/src/agent-calls/callbacks.ts +75 -0
- package/src/agent-calls/delivery.ts +15 -0
- package/src/agent-calls/index.ts +16 -0
- package/src/agent-calls/operator.ts +99 -0
- package/src/agent-calls/runtime.ts +310 -0
- package/src/agent-calls/types.ts +33 -0
- package/src/context/compact-floors.ts +76 -0
- package/src/context/compact.ts +176 -0
- package/src/context/delivery.ts +15 -0
- package/src/context/history.ts +725 -0
- package/src/context/index.ts +35 -0
- package/src/context/observations.ts +13 -0
- package/src/context/retention/defaults.ts +58 -0
- package/src/context/retention/index.ts +45 -0
- package/src/context/retention/narrow.ts +123 -0
- package/src/context/retention/render.ts +177 -0
- package/src/context/retention/resolve.ts +306 -0
- package/src/context/retention/schema.ts +173 -0
- package/src/context/retention/stamp.ts +121 -0
- package/src/context/retention/step.ts +85 -0
- package/src/context/retention/view.ts +161 -0
- package/src/context/squeeze.ts +218 -0
- package/src/context/tools.ts +92 -0
- package/src/context/transcript.ts +705 -0
- package/src/policy-processor/README.md +43 -0
- package/src/policy-processor/bypass.ts +246 -0
- package/src/policy-processor/classifier.ts +711 -0
- package/src/policy-processor/cluster.ts +31 -0
- package/src/policy-processor/evidence.ts +214 -0
- package/src/policy-processor/explain.ts +310 -0
- package/src/policy-processor/index.ts +6 -0
- package/src/policy-processor/license.ts +45 -0
- package/src/policy-processor/peel-cwd.ts +1 -0
- package/src/policy-processor/real-path.ts +41 -0
- package/src/policy-processor/scope.ts +655 -0
- package/src/policy-processor/self-protect.ts +46 -0
- package/src/policy-processor/soft-deny.ts +225 -0
- package/src/policy-processor/unattended-guard.ts +158 -0
- package/src/session/cancel.ts +34 -0
- package/src/session/commands.ts +292 -0
- package/src/session/compact-actor.ts +132 -0
- package/src/session/compact-env.ts +539 -0
- package/src/session/compact.ts +95 -0
- package/src/session/index.ts +18 -0
- package/src/session/park.ts +73 -0
- package/src/session/side-channel-reminder.ts +148 -0
- package/src/session/types.ts +50 -0
- package/src/tool-catalog/catalog.ts +282 -0
- package/src/tool-catalog/index.ts +26 -0
- package/src/tool-catalog/recipes.ts +154 -0
- package/src/tool-catalog/types.ts +110 -0
- package/src/tool-runtime/approval/approved.ts +20 -0
- package/src/tool-runtime/approval/dist.ts +29 -0
- package/src/tool-runtime/approval/inbound.ts +50 -0
- package/src/tool-runtime/approval/unattended.ts +24 -0
- package/src/tool-runtime/blob-port.ts +64 -0
- package/src/tool-runtime/extra-root.ts +16 -0
- package/src/tool-runtime/handler.ts +576 -0
- package/src/tool-runtime/index.ts +21 -0
- package/src/tool-runtime/peel.ts +91 -0
- package/src/tool-runtime/plugin-context.ts +68 -0
- package/src/tool-runtime/recall.ts +104 -0
- package/src/tool-runtime/run-system-tool.ts +273 -0
- package/src/tool-runtime/tool-error.ts +6 -0
- package/src/tool-runtime/worker-tools.ts +76 -0
- package/src/tool-runtime/write-admit.ts +90 -0
- package/README.md +0 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explain.js","sourceRoot":"","sources":["../../src/policy-processor/explain.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* YAML floor compiler and license wait. Remainder classifiers stay Scheme.
|
|
3
|
+
* Authors edit policy.json; they do not import this.
|
|
4
|
+
*/
|
|
5
|
+
export type { Disposition as Disposition, Policy as Policy } from "@inhuman.tools/policy/floor";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/policy-processor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EAAE,WAAW,IAAI,WAAW,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/policy-processor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Monadic license. Admits the leaf onto the session intern, waits until
|
|
3
|
+
* LICENSE WHEN is a boolean, returns process-or-not. Floor and residual
|
|
4
|
+
* kicks live on `LicenseScope`. Does not write `approved`,
|
|
5
|
+
* `orchestrationResult`, or `regenerateable`. Nothing is remembered from a
|
|
6
|
+
* human allow here: a stored grant is a separate, explicit answer
|
|
7
|
+
* (`ask/answer` with `store`), and a soft-deny is licensed per call.
|
|
8
|
+
* Scope close mid-wait is not-process (false), not a throw. A boolean
|
|
9
|
+
* LICENSE WHEN still wins — Allow is a durable vote and must not lose to dispose.
|
|
10
|
+
*/
|
|
11
|
+
import { type SessionRoot, type SessionTurn, type ToolCallJob } from "@inhuman.tools/harness-model";
|
|
12
|
+
/**
|
|
13
|
+
* A denial the host decided before the license wait (an already-stamped block or deny). It still
|
|
14
|
+
* counts toward the unattended run's ledger.
|
|
15
|
+
*/
|
|
16
|
+
export declare function noteDenied(job: ToolCallJob, root: SessionRoot): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* A tool's `isSideChannel` skips the floor. `triggersReactLoop: false` is
|
|
19
|
+
* loop control its author chose, not a license. `job_stop` skips too: the
|
|
20
|
+
* body only cancels jobs this session already spawned.
|
|
21
|
+
*/
|
|
22
|
+
export declare function license(job: ToolCallJob, _turn: SessionTurn | null, root: SessionRoot): Promise<boolean>;
|
|
23
|
+
//# sourceMappingURL=license.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../../src/policy-processor/license.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAsB,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAMxH;;;GAGG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnF;AAED;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAe9G"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Monadic license. Admits the leaf onto the session intern, waits until
|
|
3
|
+
* LICENSE WHEN is a boolean, returns process-or-not. Floor and residual
|
|
4
|
+
* kicks live on `LicenseScope`. Does not write `approved`,
|
|
5
|
+
* `orchestrationResult`, or `regenerateable`. Nothing is remembered from a
|
|
6
|
+
* human allow here: a stored grant is a separate, explicit answer
|
|
7
|
+
* (`ask/answer` with `store`), and a soft-deny is licensed per call.
|
|
8
|
+
* Scope close mid-wait is not-process (false), not a throw. A boolean
|
|
9
|
+
* LICENSE WHEN still wins — Allow is a durable vote and must not lose to dispose.
|
|
10
|
+
*/
|
|
11
|
+
import { JOB_STOP_TOOL_NAME } from "@inhuman.tools/harness-model";
|
|
12
|
+
import { when } from "mobx";
|
|
13
|
+
import { scopes } from "./scope.js";
|
|
14
|
+
import { noteLicense } from "./unattended-guard.js";
|
|
15
|
+
/**
|
|
16
|
+
* A denial the host decided before the license wait (an already-stamped block or deny). It still
|
|
17
|
+
* counts toward the unattended run's ledger.
|
|
18
|
+
*/
|
|
19
|
+
export async function noteDenied(job, root) {
|
|
20
|
+
await noteLicense(scopes.get(root), job, false);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* A tool's `isSideChannel` skips the floor. `triggersReactLoop: false` is
|
|
24
|
+
* loop control its author chose, not a license. `job_stop` skips too: the
|
|
25
|
+
* body only cancels jobs this session already spawned.
|
|
26
|
+
*/
|
|
27
|
+
export async function license(job, _turn, root) {
|
|
28
|
+
if (job.commFirst || job.isSideChannel || job.name === JOB_STOP_TOOL_NAME)
|
|
29
|
+
return true;
|
|
30
|
+
const scope = scopes.get(root);
|
|
31
|
+
scope.admit(job);
|
|
32
|
+
try {
|
|
33
|
+
await when(() => scope.closed || job.cancelled || job.completed || job.licenseDecision !== null);
|
|
34
|
+
if (job.cancelled || job.completed)
|
|
35
|
+
return false;
|
|
36
|
+
const decision = job.licenseDecision;
|
|
37
|
+
if (decision === null)
|
|
38
|
+
return false;
|
|
39
|
+
// The unattended watch counts the call; a denial may be the one that trips bypass detection.
|
|
40
|
+
await noteLicense(scope, job, decision);
|
|
41
|
+
return decision;
|
|
42
|
+
}
|
|
43
|
+
finally {
|
|
44
|
+
scope.release(job);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=license.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"license.js","sourceRoot":"","sources":["../../src/policy-processor/license.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,kBAAkB,EAAwD,MAAM,8BAA8B,CAAC;AACxH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAgB,EAAE,IAAiB;IAClE,MAAM,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAgB,EAAE,KAAyB,EAAE,IAAiB;IAC1F,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB;QAAE,OAAO,IAAI,CAAC;IACvF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjB,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;QACjG,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACjD,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAC;QACrC,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACpC,6FAA6F;QAC7F,MAAM,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,OAAO,QAAQ,CAAC;IAClB,CAAC;YAAS,CAAC;QACT,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"peel-cwd.d.ts","sourceRoot":"","sources":["../../src/policy-processor/peel-cwd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"peel-cwd.js","sourceRoot":"","sources":["../../src/policy-processor/peel-cwd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare function realpathDeepest(absolute: string): Promise<string>;
|
|
2
|
+
/**
|
|
3
|
+
* Workspace-relative spelling of the file the OS would open for `raw`, or undefined when it
|
|
4
|
+
* is the same as the lexical spelling (nothing to add).
|
|
5
|
+
*/
|
|
6
|
+
export declare function resolvedWorkspacePath(rootPath: string, raw: string): Promise<string | undefined>;
|
|
7
|
+
//# sourceMappingURL=real-path.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"real-path.d.ts","sourceRoot":"","sources":["../../src/policy-processor/real-path.ts"],"names":[],"mappings":"AAYA,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAcvE;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQtG"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host half of file-path policy. The floor is pure and lexical; the tool opens whatever the
|
|
3
|
+
* filesystem says. A link inside the root that points at `.env` is named `notes.txt` to the floor
|
|
4
|
+
* and opens `.env` for the tool. This resolves symlinks (the deepest existing ancestor, so a
|
|
5
|
+
* write to a not-yet-created file under a linked directory resolves too) and re-expresses the
|
|
6
|
+
* result against the real root, so both spellings can be judged and the stricter verdict kept.
|
|
7
|
+
*/
|
|
8
|
+
import { realpath } from "node:fs/promises";
|
|
9
|
+
import nodePath from "node:path";
|
|
10
|
+
import { workspacePath } from "@inhuman.tools/harness-model";
|
|
11
|
+
export async function realpathDeepest(absolute) {
|
|
12
|
+
const rest = [];
|
|
13
|
+
let current = absolute;
|
|
14
|
+
for (;;) {
|
|
15
|
+
try {
|
|
16
|
+
const real = await realpath(current);
|
|
17
|
+
return rest.length === 0 ? real : nodePath.join(real, ...rest.toReversed());
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
const parent = nodePath.dirname(current);
|
|
21
|
+
if (parent === current)
|
|
22
|
+
return absolute;
|
|
23
|
+
rest.push(nodePath.basename(current));
|
|
24
|
+
current = parent;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Workspace-relative spelling of the file the OS would open for `raw`, or undefined when it
|
|
30
|
+
* is the same as the lexical spelling (nothing to add).
|
|
31
|
+
*/
|
|
32
|
+
export async function resolvedWorkspacePath(rootPath, raw) {
|
|
33
|
+
if (rootPath.trim() === "" || !nodePath.isAbsolute(rootPath))
|
|
34
|
+
return undefined;
|
|
35
|
+
const lexical = workspacePath(rootPath, raw);
|
|
36
|
+
const absolute = nodePath.resolve(rootPath, raw.trim() === "" ? "." : raw);
|
|
37
|
+
const realRoot = await realpathDeepest(rootPath);
|
|
38
|
+
const realFile = await realpathDeepest(absolute);
|
|
39
|
+
const resolved = workspacePath(realRoot, realFile);
|
|
40
|
+
return resolved === lexical ? undefined : resolved;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=real-path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"real-path.js","sourceRoot":"","sources":["../../src/policy-processor/real-path.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,QAAQ,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,QAAgB;IACpD,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,OAAO,GAAG,QAAQ,CAAC;IACvB,SAAS,CAAC;QACR,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,MAAM,KAAK,OAAO;gBAAE,OAAO,QAAQ,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YACtC,OAAO,GAAG,MAAM,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,QAAgB,EAAE,GAAW;IACvE,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/E,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnD,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session-global license intern. Cap, compiled Policy, and handles are
|
|
3
|
+
* not per-call. Eligibility computeds name the live key sets; kick
|
|
4
|
+
* reactions `get`+`start` those handles. `license` only waits LICENSE WHEN.
|
|
5
|
+
*
|
|
6
|
+
* The floor stamps a tier, the classes that voted, and the votes. What licenses a soft-deny or an
|
|
7
|
+
* ask is the resolution table (harness-model authorization/resolve.ts), read by the job. The grant
|
|
8
|
+
* check (a stored human "yes" to an ask, by family) runs here at floor time, because it needs a
|
|
9
|
+
* clock and the floor votes. A grant never covers a soft-deny, a block, a hatch or a lifted ask.
|
|
10
|
+
*/
|
|
11
|
+
import { DefaultedWeakMap } from "@here.build/collections";
|
|
12
|
+
import type { PromptComplete } from "@inhuman.tools/env-capability-module-prompt";
|
|
13
|
+
import { type AckState, type GrantRow, type RuleStamp, type SessionRoot, type SessionTurn, type ToolCallJob } from "@inhuman.tools/harness-model";
|
|
14
|
+
import { type FloorVerdict, type Policy, type Which } from "@inhuman.tools/policy/floor";
|
|
15
|
+
import { type ShellChecker } from "@inhuman.tools/policy-tirith";
|
|
16
|
+
import type { RunLedger } from "./bypass.js";
|
|
17
|
+
import type { RunStop } from "./unattended-guard.js";
|
|
18
|
+
/**
|
|
19
|
+
* A root the human named, and the folder it really is: the floor judges both spellings of a path
|
|
20
|
+
* (a link may lead out of the workspace), so both must be roots or `/tmp/x` would never match
|
|
21
|
+
* `/private/tmp/x`.
|
|
22
|
+
*/
|
|
23
|
+
export declare function withRealRoots(roots: readonly string[]): Promise<string[]>;
|
|
24
|
+
/**
|
|
25
|
+
* The floor's verdict for one call: the compiled policy for shell and file tools, the host's own
|
|
26
|
+
* stamps for the rest (web_search approves, web_extract asks as network egress, MCP and unknown
|
|
27
|
+
* tools ask as a look-up or an action by name). The same function answers `policy/explain`.
|
|
28
|
+
*/
|
|
29
|
+
export declare function floorVerdict(policy: Policy, name: string, args: Readonly<Record<string, unknown>> | null, rootPath: string, mcpName: string, rule?: RuleStamp): Promise<FloorVerdict>;
|
|
30
|
+
export declare class LicenseScope {
|
|
31
|
+
#private;
|
|
32
|
+
readonly root: SessionRoot;
|
|
33
|
+
accessor closed: boolean;
|
|
34
|
+
accessor cap: number;
|
|
35
|
+
backoffMs: (n: number) => number;
|
|
36
|
+
/** Per-attempt classifier deadline. Attempt 0 is short — the first vote is what the
|
|
37
|
+
* human is waiting on. Retries get longer rope, but never unbounded. */
|
|
38
|
+
judgeDeadlineMs: (attempt: number) => number;
|
|
39
|
+
onPolicyError: ((text: string | null) => void) | undefined;
|
|
40
|
+
/** Session intern port. Remainder `dotprompt/run` calls this with a homed round. */
|
|
41
|
+
complete: PromptComplete | undefined;
|
|
42
|
+
/** Kernel `kv.json` last-choice. Session mint does not re-seed these. */
|
|
43
|
+
judgeFallbackKvs: Readonly<Record<string, string>>;
|
|
44
|
+
/** Connection `settings.model` for a named judge wire. */
|
|
45
|
+
judgeConfiguredModel: ((connectionId: string) => string) | undefined;
|
|
46
|
+
/** Host persist hit. May turn MCP `ask` into allow; never lifts deny/block. */
|
|
47
|
+
mcpPersistAllows: ((job: ToolCallJob) => boolean) | undefined;
|
|
48
|
+
/** Host hide hit. Turns MCP remainder into deny. Does not lift deny/block. */
|
|
49
|
+
mcpPersistDenies: ((job: ToolCallJob) => boolean) | undefined;
|
|
50
|
+
/** Stored grants of project, bot and global scope (the kernel's `grants.json`). Session rows ride the root. */
|
|
51
|
+
persistentGrants: () => readonly GrantRow[];
|
|
52
|
+
/** The bot this session is, for bot-scope grants. */
|
|
53
|
+
botName: () => string | undefined;
|
|
54
|
+
now: () => number;
|
|
55
|
+
/** Unattended-run denial ledgers, one per eval turn. */
|
|
56
|
+
readonly ledgers: WeakMap<SessionTurn, RunLedger>;
|
|
57
|
+
/** The host stops the run's UI side: notify a person. The turn is already sealed and cancelling. */
|
|
58
|
+
onRunStopped: ((stop: RunStop) => void) | undefined;
|
|
59
|
+
/** A non-stopping notice about an unattended run ("hit repeated denials"). */
|
|
60
|
+
onRunNotice: ((notice: {
|
|
61
|
+
readonly turn: SessionTurn;
|
|
62
|
+
readonly text: string;
|
|
63
|
+
}) => void) | undefined;
|
|
64
|
+
which: Which;
|
|
65
|
+
checkShell: ShellChecker;
|
|
66
|
+
/** Connection+model pairs that cannot send json_schema. Cleared only by using a different pair. */
|
|
67
|
+
readonly schemaHaltKeys: import("mobx").ObservableSet<string>;
|
|
68
|
+
readonly waiting: import("mobx").ObservableSet<ToolCallJob>;
|
|
69
|
+
readonly inFlight: import("mobx").ObservableSet<ToolCallJob>;
|
|
70
|
+
readonly blockedFloor: import("mobx").ObservableMap<ToolCallJob, string>;
|
|
71
|
+
constructor(root: SessionRoot);
|
|
72
|
+
get liveFloorKeys(): ToolCallJob[];
|
|
73
|
+
/** Leaves whose resolver names a judge and nothing has decided yet. Any mode: the table says. */
|
|
74
|
+
get pending(): ToolCallJob[];
|
|
75
|
+
distSource(): string;
|
|
76
|
+
compiledPolicy(source: string, roots?: readonly string[]): Promise<Policy>;
|
|
77
|
+
/** The grant rows this session may use right now: its own, its project's, its bot's, the global ones. */
|
|
78
|
+
visibleGrants(): GrantRow[];
|
|
79
|
+
/** The stored acknowledgements this session may use right now (same scopes and TTL as grants). */
|
|
80
|
+
visibleAcks(): GrantRow[];
|
|
81
|
+
/**
|
|
82
|
+
* Which acknowledgement flags cover this call and whether a stored ack satisfies them. The flags are
|
|
83
|
+
* a union of every layer; `block` is never acknowledged (it never runs). Nothing here licenses a call.
|
|
84
|
+
*/
|
|
85
|
+
acksFor(job: ToolCallJob, verdict: FloorVerdict): {
|
|
86
|
+
state: AckState;
|
|
87
|
+
flagsJson: string | null;
|
|
88
|
+
ackedBy: string | null;
|
|
89
|
+
};
|
|
90
|
+
/** Ids (comma-joined) of the stored grants that cover this ask, or null. Only an ask is ever covered. */
|
|
91
|
+
grantsFor(job: ToolCallJob, verdict: FloorVerdict): string | null;
|
|
92
|
+
/**
|
|
93
|
+
* Recompute which grant covers each leaf that is still waiting for a license. A revoked or expired
|
|
94
|
+
* grant stops covering an unlicensed ask; a new grant starts to. A leaf that already ran is left alone.
|
|
95
|
+
*/
|
|
96
|
+
reconcileGrants(): void;
|
|
97
|
+
remainderHit(job: ToolCallJob, identity: string): "allow" | "deny" | null;
|
|
98
|
+
/**
|
|
99
|
+
* A soft-deny allow is licensed for exactly one call and is never stored. A deny may be reused for
|
|
100
|
+
* the same payload, tier, classes and evidence within the turn (a looping agent cannot re-buy it).
|
|
101
|
+
*/
|
|
102
|
+
remainderStore(job: ToolCallJob, identity: string, decision: "allow" | "deny"): void;
|
|
103
|
+
admit(job: ToolCallJob): void;
|
|
104
|
+
release(job: ToolCallJob): void;
|
|
105
|
+
beginFloor(job: ToolCallJob): void;
|
|
106
|
+
endFloor(job: ToolCallJob): void;
|
|
107
|
+
blockFloor(job: ToolCallJob, source: string): void;
|
|
108
|
+
close(): void;
|
|
109
|
+
}
|
|
110
|
+
export declare const scopes: DefaultedWeakMap<SessionRoot, LicenseScope>;
|
|
111
|
+
//# sourceMappingURL=scope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/policy-processor/scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAgB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAEL,KAAK,QAAQ,EAQb,KAAK,QAAQ,EAOb,KAAK,SAAS,EAGd,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAIjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EASL,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,KAAK,EACX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAML,KAAK,YAAY,EAElB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAK7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAYrD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAO/E;AA8BD;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,EAC9C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,CAAC,CAsCvB;AAmKD,qBAAa,YAAY;;IAkEX,QAAQ,CAAC,IAAI,EAAE,WAAW;IAjE1B,QAAQ,CAAC,MAAM,UAAS;IACxB,QAAQ,CAAC,GAAG,SAAK;IAC7B,SAAS,GAAa,GAAG,MAAM,KAAG,MAAM,CAGtC;IACF;6EACyE;IACzE,eAAe,GAAa,SAAS,MAAM,KAAG,MAAM,CAElD;IACF,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC3D,oFAAoF;IACpF,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAC;IACrC,yEAAyE;IACzE,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAM;IACxD,0DAA0D;IAC1D,oBAAoB,EAAE,CAAC,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;IACrE,+EAA+E;IAC/E,gBAAgB,EAAE,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;IAC9D,8EAA8E;IAC9E,gBAAgB,EAAE,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;IAC9D,+GAA+G;IAC/G,gBAAgB,EAAE,MAAM,SAAS,QAAQ,EAAE,CAAY;IACvD,qDAAqD;IACrD,OAAO,EAAE,MAAM,MAAM,GAAG,SAAS,CAAmB;IACpD,GAAG,EAAE,MAAM,MAAM,CAAoB;IACrC,wDAAwD;IACxD,QAAQ,CAAC,OAAO,kCAAyC;IACzD,oGAAoG;IACpG,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACpD,8EAA8E;IAC9E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACnG,KAAK,EAAE,KAAK,CAAe;IAC3B,UAAU,EAAE,YAAY,CAAe;IAQvC,mGAAmG;IACnG,QAAQ,CAAC,cAAc,uCAA4B;IACnD,QAAQ,CAAC,OAAO,4CAAiC;IACjD,QAAQ,CAAC,QAAQ,4CAAiC;IAClD,QAAQ,CAAC,YAAY,oDAAyC;gBAmBzC,IAAI,EAAE,WAAW;IAmDtC,IACI,aAAa,IAAI,WAAW,EAAE,CAOjC;IAED,iGAAiG;IACjG,IACI,OAAO,IAAI,WAAW,EAAE,CAG3B;IAED,UAAU,IAAI,MAAM;IAIpB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,SAAS,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAa9E,yGAAyG;IACzG,aAAa,IAAI,QAAQ,EAAE;IAI3B,kGAAkG;IAClG,WAAW,IAAI,QAAQ,EAAE;IAIzB;;;OAGG;IACH,OAAO,CACL,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,YAAY,GACpB;QAAE,KAAK,EAAE,QAAQ,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;IAqBxE,yGAAyG;IACzG,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI;IAajE;;;OAGG;IAEH,eAAe,IAAI,IAAI;IA+BvB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI;IAazE;;;OAGG;IACH,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAcpF,KAAK,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAK7B,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAM/B,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAKlC,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAKhC,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKlD,KAAK,IAAI,IAAI;CAkBd;AAED,eAAO,MAAM,MAAM,6CAAoF,CAAC"}
|