@tangle-network/agent-runtime 0.116.0 → 0.119.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/README.md +9 -1
- package/dist/{activation-DuqQhee6.js → activation-DdIpwQ0k.js} +3 -3
- package/dist/{activation-DuqQhee6.js.map → activation-DdIpwQ0k.js.map} +1 -1
- package/dist/agent.d.ts +3 -64
- package/dist/agent.js +5 -207
- package/dist/agent.js.map +1 -1
- package/dist/{analyst-loop-BoNIG2hA.js → analyst-loop-DvSciOfB.js} +2 -2
- package/dist/{analyst-loop-BoNIG2hA.js.map → analyst-loop-DvSciOfB.js.map} +1 -1
- package/dist/analyst-loop.js +1 -1
- package/dist/candidate-execution/index.d.ts +3 -3
- package/dist/candidate-execution/index.js +5 -5
- package/dist/{candidate-execution-CfpJrd3o.js → candidate-execution-DDkSRPjY.js} +4 -4
- package/dist/{candidate-execution-CfpJrd3o.js.map → candidate-execution-DDkSRPjY.js.map} +1 -1
- package/dist/{environment-provider-CWsRh6Uz.d.ts → environment-provider-Bh4nX2qt.d.ts} +306 -32
- package/dist/{environment-provider-CCaEhA-l.js → environment-provider-Cr75N-rU.js} +141 -32
- package/dist/environment-provider-Cr75N-rU.js.map +1 -0
- package/dist/environment-provider.d.ts +1 -1
- package/dist/environment-provider.js +1 -1
- package/dist/{improvement-cycle-C1cmjvPD.js → improvement-cycle-zjR-MXwK.js} +163 -22
- package/dist/improvement-cycle-zjR-MXwK.js.map +1 -0
- package/dist/{index-C-FYUuFG.d.ts → index-B3bHsVLw.d.ts} +2 -2
- package/dist/{index-CYkDeM5L.d.ts → index-BLsKcxNd.d.ts} +3 -3
- package/dist/{index-COumPQka.d.ts → index-CGADWaa_.d.ts} +864 -437
- package/dist/{index-DcLMNnG5.d.ts → index-I35151Fr.d.ts} +9 -9
- package/dist/index.d.ts +9 -9
- package/dist/index.js +13 -13
- package/dist/index.js.map +1 -1
- package/dist/intelligence.d.ts +10 -9
- package/dist/intelligence.js +15 -9
- package/dist/intelligence.js.map +1 -1
- package/dist/kernel.d.ts +4 -4
- package/dist/kernel.js +9 -8
- package/dist/{knowledge-DOzbywZT.js → knowledge-I1e9zQGj.js} +7 -7
- package/dist/knowledge-I1e9zQGj.js.map +1 -0
- package/dist/knowledge.d.ts +1 -1
- package/dist/knowledge.js +1 -1
- package/dist/{local-harness-t6cDWDQ2.d.ts → local-harness-BIajef4A.d.ts} +29 -7
- package/dist/{loop-runner-bin-BFrhPLKt.d.ts → loop-runner-bin-BeG9vTdE.d.ts} +3 -3
- package/dist/{loop-runner-bin-BuQjc5DR.js → loop-runner-bin-L996YVPS.js} +4 -4
- package/dist/{loop-runner-bin-BuQjc5DR.js.map → loop-runner-bin-L996YVPS.js.map} +1 -1
- package/dist/loop-runner-bin.d.ts +1 -1
- package/dist/loop-runner-bin.js +1 -1
- package/dist/mcp/bin.js +43 -10
- package/dist/mcp/bin.js.map +1 -1
- package/dist/mcp/index.d.ts +5 -45
- package/dist/mcp/index.js +8 -212
- package/dist/mcp/index.js.map +1 -1
- package/dist/{openai-tools-_Wyp4udO.js → openai-tools-CvFEzw6f.js} +2 -2
- package/dist/{openai-tools-_Wyp4udO.js.map → openai-tools-CvFEzw6f.js.map} +1 -1
- package/dist/{prepare-BHQBb02e.js → prepare-DpV6np9e.js} +47 -34
- package/dist/prepare-DpV6np9e.js.map +1 -0
- package/dist/primeintellect/index.d.ts +1 -1
- package/dist/{protected-model-port-BP6Z4eau.d.ts → protected-model-port-CoJOiINX.d.ts} +11 -3
- package/dist/{protected-model-port-DqAH1Z2M.js → protected-model-port-vQLBRoAQ.js} +2 -2
- package/dist/{protected-model-port-DqAH1Z2M.js.map → protected-model-port-vQLBRoAQ.js.map} +1 -1
- package/dist/{redact-BEtQtvd6.d.ts → redact-PQzmE1Jn.d.ts} +4 -4
- package/dist/run-layout-C2FGmZ3v.js +158 -0
- package/dist/run-layout-C2FGmZ3v.js.map +1 -0
- package/dist/{runtime-Ut1pkd2n.js → runtime-D4e3GP5K.js} +147 -190
- package/dist/runtime-D4e3GP5K.js.map +1 -0
- package/dist/{sandbox-events-DeI5xX8P.js → sandbox-events-Yhd1GYWl.js} +4 -2
- package/dist/sandbox-events-Yhd1GYWl.js.map +1 -0
- package/dist/spawn-journal-IeXpidO2.js +857 -0
- package/dist/spawn-journal-IeXpidO2.js.map +1 -0
- package/dist/{structural-rollout-CVY_0hJp.js → structural-rollout-DQHO3b2Y.js} +4 -4
- package/dist/structural-rollout-DQHO3b2Y.js.map +1 -0
- package/dist/{supervise-BUR9ByF7.js → supervise-Cq50UT5-.js} +2874 -1892
- package/dist/supervise-Cq50UT5-.js.map +1 -0
- package/dist/{supervisor-BBbPBXpe.js → supervisor-CpT9yAxL.js} +2896 -983
- package/dist/supervisor-CpT9yAxL.js.map +1 -0
- package/dist/testing.js +98 -76
- package/dist/testing.js.map +1 -1
- package/dist/top-app-5unxqovu.js +1088 -0
- package/dist/top-app-5unxqovu.js.map +1 -0
- package/dist/tui/bin.d.ts +1 -0
- package/dist/tui/bin.js +19 -0
- package/dist/tui/bin.js.map +1 -0
- package/dist/tui/index.d.ts +209 -0
- package/dist/tui/index.js +2 -0
- package/dist/{util-Cc9g9Y-o.js → util-MVgdwuIS.js} +2 -2
- package/dist/{util-Cc9g9Y-o.js.map → util-MVgdwuIS.js.map} +1 -1
- package/dist/{workspace-archive-DXzJq7WP.js → workspace-archive-B4SkNJjw.js} +2 -2
- package/dist/{workspace-archive-DXzJq7WP.js.map → workspace-archive-B4SkNJjw.js.map} +1 -1
- package/package.json +8 -2
- package/dist/environment-provider-CCaEhA-l.js.map +0 -1
- package/dist/improvement-cycle-C1cmjvPD.js.map +0 -1
- package/dist/knowledge-DOzbywZT.js.map +0 -1
- package/dist/prepare-BHQBb02e.js.map +0 -1
- package/dist/runtime-Ut1pkd2n.js.map +0 -1
- package/dist/sandbox-events-DeI5xX8P.js.map +0 -1
- package/dist/spawn-journal-DCPbicXB.js +0 -457
- package/dist/spawn-journal-DCPbicXB.js.map +0 -1
- package/dist/structural-rollout-CVY_0hJp.js.map +0 -1
- package/dist/supervise-BUR9ByF7.js.map +0 -1
- package/dist/supervisor-BBbPBXpe.js.map +0 -1
|
@@ -2,7 +2,7 @@ import { d as AgentTaskStatus, o as AgentRuntimeEvent, x as RuntimeStreamEvent }
|
|
|
2
2
|
import { l as RuntimeHooks } from "./runtime-hooks-sbRpjStq.js";
|
|
3
3
|
import { E as SandboxClient, v as LoopTokenUsage, y as LoopTraceEmitter } from "./types-DnNGJ5Gz.js";
|
|
4
4
|
import { ControlEvalResult, DefaultVerdict, KnowledgeReadinessReport, KnowledgeRequirement, ToolSpan } from "@tangle-network/agent-eval";
|
|
5
|
-
import { AgentProfile as AgentProfile$1, AgentProfileValidationResult } from "@tangle-network/agent-interface";
|
|
5
|
+
import { AgentProfile as AgentProfile$1, AgentProfileValidationResult, Sha256Digest } from "@tangle-network/agent-interface";
|
|
6
6
|
import { BackendType, CreateSandboxOptions, Sandbox } from "@tangle-network/sandbox";
|
|
7
7
|
import { AgentEnvironment, AgentEnvironmentCapabilities, AgentEnvironmentCapabilities as AgentEnvironmentCapabilities$1, AgentEnvironmentEvent, AgentEnvironmentProvider, AgentEnvironmentProvider as AgentEnvironmentProvider$1, AgentEnvironmentQuery, AgentEnvironmentStatus, AgentEnvironmentSummary, AgentProfileRef, AgentProfileRef as AgentProfileRef$1, AgentSession, AgentSessionRef, AgentSessionStatus, AgentTurnInput, AgentTurnInput as AgentTurnInput$1, AgentTurnResult, CheckpointRef, CheckpointRequest, CreateAgentEnvironmentInput, CreateAgentEnvironmentInput as CreateAgentEnvironmentInput$1, ExecRequest, ExecResult, ForkRequest, PlacementInfo, ResourceRequest, WorkspaceRequest } from "@tangle-network/agent-interface/environment-provider";
|
|
8
8
|
//#region src/runtime/supervise/progress.d.ts
|
|
@@ -118,6 +118,14 @@ interface ToolStepInput {
|
|
|
118
118
|
/** False when the call was observed but its original arguments were unavailable. */
|
|
119
119
|
readonly argsCaptured?: boolean;
|
|
120
120
|
readonly status?: 'ok' | 'error';
|
|
121
|
+
/**
|
|
122
|
+
* False when the source observed the call being MADE but never observed it finishing — so no
|
|
123
|
+
* outcome is knowable, not even by default. Some wires (cli-bridge's OpenAI-shaped `tool_calls`
|
|
124
|
+
* deltas) report the model's DECISION to call a tool and never report the call's result at all.
|
|
125
|
+
* Without this marker such a call would project as `status: 'ok'` and be counted as a success in
|
|
126
|
+
* every downstream error-rate read. Set it and the span carries NO status, which is the truth.
|
|
127
|
+
*/
|
|
128
|
+
readonly statusCaptured?: boolean;
|
|
121
129
|
readonly result?: unknown;
|
|
122
130
|
readonly error?: string;
|
|
123
131
|
/** Stable id of the tool call — used to de-duplicate the repeated state transitions a harness
|
|
@@ -450,6 +458,26 @@ interface OtelAttribute {
|
|
|
450
458
|
boolValue?: boolean;
|
|
451
459
|
};
|
|
452
460
|
}
|
|
461
|
+
/**
|
|
462
|
+
* Create an exporter that APPENDS spans to a local OpenInference-JSONL file, one complete span per
|
|
463
|
+
* line, instead of posting them to a collector.
|
|
464
|
+
*
|
|
465
|
+
* Why this exists beside {@link createOtelExporter}: that one needs an OTLP endpoint, so a run on a
|
|
466
|
+
* laptop, in CI, or inside a sandbox with no collector emits nothing and its per-turn shape is
|
|
467
|
+
* simply lost. The journal records the TREE (who spawned whom, what settled, what it spent); it
|
|
468
|
+
* does not record what happened inside a turn. A run whose tree is readable but whose turns are not
|
|
469
|
+
* is exactly the state that made an observability gap invisible until someone went looking.
|
|
470
|
+
*
|
|
471
|
+
* The line shape is the one `@tangle-network/traces` reads (`spans.otlp.jsonl`) and is a standard
|
|
472
|
+
* OpenInference representation, so the same file feeds any OpenInference tool with no conversion:
|
|
473
|
+
* snake_case identity fields, ISO-8601 times, `parent_span_id` empty at the root, and attributes as
|
|
474
|
+
* a plain object rather than OTLP's key/value array.
|
|
475
|
+
*
|
|
476
|
+
* Appends synchronously per span so a killed process keeps every span it had already finished —
|
|
477
|
+
* matching the spawn journal's durability posture, since a trace that only survives a clean exit is
|
|
478
|
+
* useless for the runs you most want to look at.
|
|
479
|
+
*/
|
|
480
|
+
declare function createOpenInferenceFileExporter(filePath: string): OtelExporter;
|
|
453
481
|
/**
|
|
454
482
|
* Create an OTEL exporter. Returns undefined when no endpoint is configured.
|
|
455
483
|
*/
|
|
@@ -675,6 +703,12 @@ interface WaitOpts {
|
|
|
675
703
|
interface Agent<Task, Out> {
|
|
676
704
|
readonly name: string;
|
|
677
705
|
act(task: Task, scope: Scope<Out>): Promise<Out>;
|
|
706
|
+
/**
|
|
707
|
+
* Optional manager inbox. A parent or attached `RootHandle` uses this to deliver the same raw
|
|
708
|
+
* down-message accepted by executor inboxes. Return `false` when the manager has no live receive
|
|
709
|
+
* path; returning `true` means the message was accepted for the current manager session.
|
|
710
|
+
*/
|
|
711
|
+
deliver?(msg: unknown): void | boolean;
|
|
678
712
|
}
|
|
679
713
|
/**
|
|
680
714
|
* The leaf runtime — ONE open interface, not a closed union. `execute` returns a
|
|
@@ -687,16 +721,17 @@ interface Agent<Task, Out> {
|
|
|
687
721
|
* Built-in implementations (in `runtime.ts`, NOT variants here): router/inline (a direct
|
|
688
722
|
* Router/HTTP inference call, no box), sandbox (COMPOSES `runAgentRounds` as a leaf, forwarding
|
|
689
723
|
* PR #150's optional `lineage` passthrough — does NOT reinvent checkpoint/fork), cli
|
|
690
|
-
* (Halo/RLM subprocess; `budgetExempt`,
|
|
724
|
+
* (Halo/RLM subprocess; `budgetExempt`, refused by budgeted supervision). A user's
|
|
691
725
|
* own agent (mastra/agno/raw HTTP/anything) is first-class by implementing this interface.
|
|
692
726
|
*/
|
|
693
727
|
interface Executor<Out> {
|
|
694
728
|
/** Stable runtime tag for traces + the equal-k exemption check. */
|
|
695
729
|
readonly runtime: Runtime;
|
|
696
730
|
/**
|
|
697
|
-
* When true, this executor
|
|
698
|
-
*
|
|
699
|
-
*
|
|
731
|
+
* When true, this executor cannot report the usage a conserved pool would need (for example, a
|
|
732
|
+
* subscription CLI with no token receipt). `Executor` can still be used directly, but `Scope`
|
|
733
|
+
* refuses it before `execute` so unknown compute can never appear as measured zero in a
|
|
734
|
+
* supervised or equal-resource run. A metered executor MUST report usage.
|
|
700
735
|
*/
|
|
701
736
|
readonly budgetExempt?: boolean;
|
|
702
737
|
/**
|
|
@@ -709,10 +744,10 @@ interface Executor<Out> {
|
|
|
709
744
|
* Optional inbox: receive an out-of-band message from the driver mid-run (the `send`/`steer_agent`
|
|
710
745
|
* verb). A streaming executor drains pending messages between turns and folds them into the next
|
|
711
746
|
* step (a steer / interrupt / resume). A one-shot executor that can't be steered mid-flight omits
|
|
712
|
-
* this; `Scope.send` then returns `false` for it. Never throws —
|
|
713
|
-
*
|
|
747
|
+
* this; `Scope.send` then returns `false` for it. Never throws — an inbox that rejects a malformed
|
|
748
|
+
* message returns `false`, and that refusal propagates to the caller.
|
|
714
749
|
*/
|
|
715
|
-
deliver?(msg: unknown): void;
|
|
750
|
+
deliver?(msg: unknown): void | boolean;
|
|
716
751
|
/**
|
|
717
752
|
* Optional LIVE progress: what this worker is doing RIGHT NOW, read synchronously and
|
|
718
753
|
* cheaply while `execute` is still streaming. The scope already derives activity timing,
|
|
@@ -751,6 +786,15 @@ interface Executor<Out> {
|
|
|
751
786
|
verdict?: DefaultVerdict;
|
|
752
787
|
spent: Spend;
|
|
753
788
|
};
|
|
789
|
+
/**
|
|
790
|
+
* Optional accounting split for recursive executors.
|
|
791
|
+
* `reported` is the child-work spend written on this node's settlement; `reservation` is the
|
|
792
|
+
* whole amount reconciled against this node's parent reservation.
|
|
793
|
+
* They differ when a driver owns a nested allocation: its child work and own inference consume
|
|
794
|
+
* that allocation together, while the journal keeps those two categories separate.
|
|
795
|
+
* Valid after `execute` resolves or throws; ordinary leaf executors omit it.
|
|
796
|
+
*/
|
|
797
|
+
accounting?(): ExecutorAccounting | undefined;
|
|
754
798
|
/**
|
|
755
799
|
* A driver-executor's OWN-inference subtree total (rolled up from its nested tree's `metered`
|
|
756
800
|
* events) — the parent scope journals it as a `metered` event for this node on settle, on BOTH
|
|
@@ -761,6 +805,24 @@ interface Executor<Out> {
|
|
|
761
805
|
*/
|
|
762
806
|
metered?(): Spend | undefined;
|
|
763
807
|
}
|
|
808
|
+
/** Why Runtime cannot provide structured tool-call evidence for one settled execution. */
|
|
809
|
+
type WorkerTraceUnavailableReason = 'execution-did-not-start' | 'executor-did-not-expose-trace-source' | 'trace-source-unavailable' | 'no-tool-spans-captured' | 'invalid-tool-spans' | 'trace-collection-failed' | 'trace-persistence-failed' | 'legacy-settlement-without-trace-evidence' | 'not-an-executor';
|
|
810
|
+
/** Durable proof of a worker's structured tool trace, or the exact reason it is unavailable. */
|
|
811
|
+
type WorkerTraceEvidence = {
|
|
812
|
+
readonly status: 'available';
|
|
813
|
+
/** Content-addressed pointer to a persisted `WorkerToolTraceArtifact`. */
|
|
814
|
+
readonly traceRef: string;
|
|
815
|
+
readonly spanCount: number;
|
|
816
|
+
} | {
|
|
817
|
+
readonly status: 'unavailable';
|
|
818
|
+
readonly reason: WorkerTraceUnavailableReason;
|
|
819
|
+
};
|
|
820
|
+
/** Split used by a recursive executor when journaled child work differs from the full amount
|
|
821
|
+
* reconciled against its parent reservation. */
|
|
822
|
+
interface ExecutorAccounting {
|
|
823
|
+
readonly reported: Spend;
|
|
824
|
+
readonly reservation: Spend;
|
|
825
|
+
}
|
|
764
826
|
/** Terminal artifact of a one-shot `Executor.execute`. */
|
|
765
827
|
interface ExecutorResult<Out> {
|
|
766
828
|
outRef: string;
|
|
@@ -799,11 +861,12 @@ type UsageEvent = {
|
|
|
799
861
|
* External executors can register additional runtime strings without widening this type. */
|
|
800
862
|
type Runtime = 'router' | 'inline' | 'sandbox' | 'cli' | (string & {});
|
|
801
863
|
/**
|
|
802
|
-
* `AgentProfile`
|
|
803
|
-
*
|
|
804
|
-
* executor
|
|
864
|
+
* `AgentProfile.harness` is a portable preference; this wrapper records the executor decision for
|
|
865
|
+
* one concrete run. A caller may honor the preference, override it for a comparison cell, or supply
|
|
866
|
+
* an executor directly, without changing the profile's behavioral identity.
|
|
805
867
|
*
|
|
806
868
|
* Resolution (in `runtime.ts`):
|
|
869
|
+
* - `executorFactory` present → BYO: build it after admission with the live context.
|
|
807
870
|
* - `executor` present → BYO: use it verbatim (a user's own `Executor`).
|
|
808
871
|
* - `harness === null` → router/inline: a direct Router call, no box.
|
|
809
872
|
* - `harness` is a `BackendType` → sandbox: compose `runAgentRounds` against `profile` on that backend.
|
|
@@ -813,9 +876,121 @@ interface AgentSpec {
|
|
|
813
876
|
readonly profile: AgentProfile$1;
|
|
814
877
|
/** `null` selects router/inline; a `BackendType` selects the sandboxed harness. */
|
|
815
878
|
readonly harness: BackendType | null;
|
|
879
|
+
/** Trusted candidate/campaign attribution supplied by the caller. Profile/task digests are
|
|
880
|
+
* computed by Scope from the exact values it executes and cannot be supplied here. */
|
|
881
|
+
readonly execution?: AgentExecutionRef;
|
|
882
|
+
/** Per-spawn factory carrying caller configuration. Constructed only after admission, with the
|
|
883
|
+
* real child signal and nested-scope context. */
|
|
884
|
+
readonly executorFactory?: ExecutorFactory<unknown>;
|
|
816
885
|
/** Bring-your-own executor: when set, overrides harness-based resolution entirely. */
|
|
817
886
|
readonly executor?: Executor<unknown>;
|
|
818
887
|
}
|
|
888
|
+
/** Caller-owned identity beyond the exact profile/task bytes Scope can compute itself. */
|
|
889
|
+
interface AgentExecutionRef {
|
|
890
|
+
readonly candidateDigest?: Sha256Digest;
|
|
891
|
+
readonly correlation?: Readonly<Record<string, string>>;
|
|
892
|
+
}
|
|
893
|
+
/** Durable identity of one realized node. Missing digests mean the input was not canonical JSON. */
|
|
894
|
+
interface NodeExecutionIdentity extends AgentExecutionRef {
|
|
895
|
+
readonly profileDigest?: Sha256Digest;
|
|
896
|
+
readonly taskDigest?: Sha256Digest;
|
|
897
|
+
}
|
|
898
|
+
/** A named model carried into an execution, or an explicit reason the exact model is unknowable. */
|
|
899
|
+
type MaterializedModelIdentity = {
|
|
900
|
+
readonly status: 'known';
|
|
901
|
+
readonly id: string;
|
|
902
|
+
} | {
|
|
903
|
+
readonly status: 'unknown';
|
|
904
|
+
readonly reason: string;
|
|
905
|
+
};
|
|
906
|
+
/** External execution identity that operators can use to join this node to its backend. */
|
|
907
|
+
interface MaterializedExecutionIdentity {
|
|
908
|
+
/** Backend-native identity kind, for example `request`, `session`, `run`, `process`, or `tree`. */
|
|
909
|
+
readonly kind: string;
|
|
910
|
+
readonly id: string;
|
|
911
|
+
}
|
|
912
|
+
/**
|
|
913
|
+
* Data-only declaration from trusted executor code about the exact sealed plan `execute` uses.
|
|
914
|
+
* Scope snapshots this value and computes the durable receipt; callers never provide digests.
|
|
915
|
+
*/
|
|
916
|
+
interface ExecutorMaterialization {
|
|
917
|
+
/** Complete profile after trusted runtime-owned attachments or backend overlays were applied. */
|
|
918
|
+
readonly effectiveProfile: AgentProfile$1;
|
|
919
|
+
/** Concrete backend or harness selected for this run. */
|
|
920
|
+
readonly backend: string;
|
|
921
|
+
/** Exact selected model, or an explicit unknown reason. */
|
|
922
|
+
readonly model: MaterializedModelIdentity;
|
|
923
|
+
/** Backend-native session/run/request/process identity. */
|
|
924
|
+
readonly execution: MaterializedExecutionIdentity;
|
|
925
|
+
/** Named implementation that turns the effective profile into executable backend inputs. */
|
|
926
|
+
readonly materializer: string;
|
|
927
|
+
/** Finite JSON describing the exact materialization plan. Persisted by digest only. */
|
|
928
|
+
readonly plan: unknown;
|
|
929
|
+
/** Trusted runtime-only attachments, such as the coordination MCP. Persisted by digest only. */
|
|
930
|
+
readonly platformAttachments?: unknown;
|
|
931
|
+
}
|
|
932
|
+
/** Volatile execution routing that is true for one attempt but is not profile identity. The full
|
|
933
|
+
* binding is hashed and discarded; only the safe structural descriptor is journaled. */
|
|
934
|
+
interface ExecutorExecutionBinding {
|
|
935
|
+
readonly attemptId: string;
|
|
936
|
+
readonly binding: unknown;
|
|
937
|
+
readonly descriptor: Readonly<Record<string, string | number | boolean | null>>;
|
|
938
|
+
}
|
|
939
|
+
/** Why exact materialization evidence is unavailable for a node. */
|
|
940
|
+
type UnknownMaterializationReason = 'executor-did-not-report' | 'invalid-executor-report' | 'root-agent-did-not-report';
|
|
941
|
+
/** What the kernel can prove about one node's actual execution plan. */
|
|
942
|
+
type ProfileMaterializationReceipt = {
|
|
943
|
+
readonly status: 'known';
|
|
944
|
+
readonly authoredProfileDigest: Sha256Digest;
|
|
945
|
+
readonly effectiveProfileDigest: Sha256Digest;
|
|
946
|
+
readonly materializationPlanDigest: Sha256Digest;
|
|
947
|
+
readonly platformAttachmentsDigest?: Sha256Digest;
|
|
948
|
+
readonly runtime: Runtime;
|
|
949
|
+
readonly backend: string;
|
|
950
|
+
readonly model: MaterializedModelIdentity;
|
|
951
|
+
readonly execution: MaterializedExecutionIdentity;
|
|
952
|
+
readonly materializer: string;
|
|
953
|
+
} | {
|
|
954
|
+
readonly status: 'unknown';
|
|
955
|
+
readonly authoredProfileDigest?: Sha256Digest;
|
|
956
|
+
readonly runtime: Runtime;
|
|
957
|
+
readonly reason: UnknownMaterializationReason;
|
|
958
|
+
};
|
|
959
|
+
/** One attempt's immutable link from a stable materialization plan to its actual transport. */
|
|
960
|
+
type ExecutionBindingReceipt = {
|
|
961
|
+
readonly status: 'known';
|
|
962
|
+
readonly attemptId: string;
|
|
963
|
+
readonly materializationReceiptDigest: Sha256Digest;
|
|
964
|
+
readonly bindingDigest: Sha256Digest;
|
|
965
|
+
readonly descriptor: Readonly<Record<string, string | number | boolean | null>>;
|
|
966
|
+
} | {
|
|
967
|
+
readonly status: 'unknown';
|
|
968
|
+
readonly attemptId: string;
|
|
969
|
+
readonly materializationReceiptDigest: Sha256Digest;
|
|
970
|
+
readonly reason: UnknownMaterializationReason;
|
|
971
|
+
};
|
|
972
|
+
/** Trusted root composition evidence. Generic `Agent.act` roots omit this and remain unknown. */
|
|
973
|
+
type RootMaterialization = {
|
|
974
|
+
readonly runtime: Runtime;
|
|
975
|
+
readonly declaration: ExecutorMaterialization;
|
|
976
|
+
readonly binding: Omit<ExecutorExecutionBinding, 'attemptId'>;
|
|
977
|
+
} | {
|
|
978
|
+
/** The runtime-owned external adapter will publish the exact declaration after its dynamic
|
|
979
|
+
* platform attachment (for example a coordination URL) exists and before paid work starts. */
|
|
980
|
+
readonly runtime: Runtime;
|
|
981
|
+
readonly declaration: 'deferred';
|
|
982
|
+
/** Exact admitted profile used to validate the stable effective identity at publication. */
|
|
983
|
+
readonly authoredProfile: AgentProfile$1;
|
|
984
|
+
};
|
|
985
|
+
/** Kernel-owned context for the concrete supervised node a factory is constructing. */
|
|
986
|
+
interface ExecutorNodeContext {
|
|
987
|
+
readonly rootId: NodeId;
|
|
988
|
+
readonly parentId: NodeId;
|
|
989
|
+
readonly nodeId: NodeId;
|
|
990
|
+
/** Kernel-minted identity for this concrete execution attempt. */
|
|
991
|
+
readonly attemptId: string;
|
|
992
|
+
readonly identity?: NodeExecutionIdentity;
|
|
993
|
+
}
|
|
819
994
|
/**
|
|
820
995
|
* Builds a fresh `Executor` for one spawn from the resolved spec. Per-spawn (not
|
|
821
996
|
* shared) so each child owns its own box/abort/teardown lifecycle. A BYO factory lets a
|
|
@@ -827,6 +1002,8 @@ type ExecutorFactory<Out> = (spec: AgentSpec, ctx: ExecutorContext) => Executor<
|
|
|
827
1002
|
* the factory reaching into module globals. */
|
|
828
1003
|
interface ExecutorContext {
|
|
829
1004
|
readonly signal: AbortSignal;
|
|
1005
|
+
/** Present when Scope constructs the executor for a supervised node. */
|
|
1006
|
+
readonly node?: ExecutorNodeContext;
|
|
830
1007
|
/** Opaque seams the registry threads through; a built-in narrows what it needs. */
|
|
831
1008
|
readonly seams: Readonly<Record<string, unknown>>;
|
|
832
1009
|
}
|
|
@@ -840,8 +1017,8 @@ interface ExecutorRegistry {
|
|
|
840
1017
|
/** Register a factory for a named runtime. Throws on a duplicate name (fail loud). */
|
|
841
1018
|
register<Out>(runtime: Runtime, factory: ExecutorFactory<Out>): void;
|
|
842
1019
|
/**
|
|
843
|
-
* Resolve a spec to a factory. Precedence: a BYO `spec.
|
|
844
|
-
*
|
|
1020
|
+
* Resolve a spec to a factory. Precedence: a BYO `spec.executorFactory` → `spec.executor` →
|
|
1021
|
+
* `harness === null` → the `'router'` factory; else a registered
|
|
845
1022
|
* factory for the harness-derived runtime. Returns a typed outcome — the caller
|
|
846
1023
|
* inspects `succeeded` before `value` (no silent fallback).
|
|
847
1024
|
*/
|
|
@@ -890,6 +1067,9 @@ type NodeId = string;
|
|
|
890
1067
|
interface SpawnOpts {
|
|
891
1068
|
readonly budget: Budget;
|
|
892
1069
|
readonly label: string;
|
|
1070
|
+
/** Manager-scoped semantic assignment identity. Unlike `key`, this names every spawn, including
|
|
1071
|
+
* unkeyed siblings, so product traces can join authorization, node, and backend execution. */
|
|
1072
|
+
readonly assignmentId?: string;
|
|
893
1073
|
readonly restart?: Restart;
|
|
894
1074
|
/** Teardown grace handed to the executor when this node is reaped. */
|
|
895
1075
|
readonly shutdown?: number | 'brutalKill' | 'infinity';
|
|
@@ -906,13 +1086,17 @@ interface SpawnOpts {
|
|
|
906
1086
|
readonly key?: string;
|
|
907
1087
|
}
|
|
908
1088
|
/** Fail-closed spawn rejections: an exhausted pool, a dollar request against a root that budgets
|
|
909
|
-
* no dollars, an exceeded recursion ceiling, or a `key` that
|
|
910
|
-
* same assignment may not run twice concurrently).
|
|
1089
|
+
* no dollars, an exceeded recursion ceiling, a full tree-wide worker allocation, or a `key` that
|
|
1090
|
+
* is still LIVE in this scope (the same assignment may not run twice concurrently).
|
|
911
1091
|
*
|
|
912
1092
|
* `usd-unbudgeted` is separate from `budget-exhausted` because the two call for opposite
|
|
913
1093
|
* responses: an exhausted pool may admit a smaller request, while an unbudgeted dollar channel
|
|
914
|
-
* refuses every amount until the ROOT budget names a `maxUsd`.
|
|
915
|
-
|
|
1094
|
+
* refuses every amount until the ROOT budget names a `maxUsd`.
|
|
1095
|
+
*
|
|
1096
|
+
* `below-runtime-floor` is separate for the same reason and points the opposite way from
|
|
1097
|
+
* `budget-exhausted`: the request is under what that harness spends before it reads its task, so
|
|
1098
|
+
* it is unsatisfiable at that SIZE and the fix is to RAISE it, never to retry smaller. */
|
|
1099
|
+
type SpawnRejection = 'budget-exhausted' | 'usd-unbudgeted' | 'below-runtime-floor' | 'depth-exceeded' | 'duplicate-key' | 'invalid-identity' | 'key-conflict' | 'max-live-workers' | 'scope-aborted';
|
|
916
1100
|
/**
|
|
917
1101
|
* What a KEYED spawn resolved to when the key had a prior attempt. Absent on a fresh key (and on
|
|
918
1102
|
* every unkeyed spawn). `'completed'` is the exactly-once path: NOTHING was spawned — the handle
|
|
@@ -920,8 +1104,10 @@ type SpawnRejection = 'budget-exhausted' | 'usd-unbudgeted' | 'depth-exceeded' |
|
|
|
920
1104
|
* `'lost'` DID spawn fresh: the prior attempt settled `down` (retried) or was journaled as
|
|
921
1105
|
* started but never settled — the process died with it in flight and the built-in executors
|
|
922
1106
|
* cannot re-attach to a dead process's work, so the result is explicitly in doubt (lost), never
|
|
923
|
-
* silently duplicated.
|
|
924
|
-
*
|
|
1107
|
+
* silently duplicated. On restart, an in-doubt attempt's full declared reservation is charged and
|
|
1108
|
+
* its telemetry remains unknown; a fresh retry is admitted only from safely remaining capacity.
|
|
1109
|
+
* An executor that CAN re-attach to a still-running external execution extends this union with an
|
|
1110
|
+
* adoption state; none of the built-ins can today.
|
|
925
1111
|
*/
|
|
926
1112
|
type SpawnPrior<Out = unknown> = {
|
|
927
1113
|
readonly state: 'completed';
|
|
@@ -945,6 +1131,14 @@ interface Handle<Out> {
|
|
|
945
1131
|
readonly id: NodeId;
|
|
946
1132
|
readonly label: string;
|
|
947
1133
|
readonly status: NodeStatus;
|
|
1134
|
+
/** Manager-scoped assignment identity supplied at admission. */
|
|
1135
|
+
readonly assignmentId?: string;
|
|
1136
|
+
/** Durable identity of the authorized profile/task/candidate represented by this handle. */
|
|
1137
|
+
readonly identity?: NodeExecutionIdentity;
|
|
1138
|
+
/** Stable execution plan once Runtime has committed it. */
|
|
1139
|
+
readonly materialization?: ProfileMaterializationReceipt;
|
|
1140
|
+
/** Immutable per-attempt backend bindings committed so far, oldest first. */
|
|
1141
|
+
readonly executionBindings?: ReadonlyArray<ExecutionBindingReceipt>;
|
|
948
1142
|
abort(reason?: string): void;
|
|
949
1143
|
/** Phantom: binds the handle to the child's output type so `spawn<C>` returns a
|
|
950
1144
|
* `Handle<C>` distinct from a `Handle<other>`. Type-only — never present at runtime. */
|
|
@@ -962,6 +1156,10 @@ type Settled<Out> = {
|
|
|
962
1156
|
outRef: string;
|
|
963
1157
|
verdict?: DefaultVerdict;
|
|
964
1158
|
spent: Spend;
|
|
1159
|
+
/** Structured tool evidence captured before this settlement was journaled. */
|
|
1160
|
+
trace: WorkerTraceEvidence;
|
|
1161
|
+
/** Epoch ms parsed from the durable settlement record when available. */
|
|
1162
|
+
settledAt?: number;
|
|
965
1163
|
seq: number;
|
|
966
1164
|
} | {
|
|
967
1165
|
kind: 'down';
|
|
@@ -970,6 +1168,10 @@ type Settled<Out> = {
|
|
|
970
1168
|
/** True = infrastructure failure (excluded from merge `n` / equal-k), not a bad result. */
|
|
971
1169
|
infra: boolean;
|
|
972
1170
|
restartCount: number;
|
|
1171
|
+
/** Partial structured tool evidence captured before this failure was journaled. */
|
|
1172
|
+
trace: WorkerTraceEvidence;
|
|
1173
|
+
/** Epoch ms parsed from the durable settlement/cancellation record when available. */
|
|
1174
|
+
settledAt?: number;
|
|
973
1175
|
seq: number;
|
|
974
1176
|
};
|
|
975
1177
|
/**
|
|
@@ -980,13 +1182,17 @@ type Settled<Out> = {
|
|
|
980
1182
|
*/
|
|
981
1183
|
interface Scope<Out> {
|
|
982
1184
|
/**
|
|
983
|
-
* Spawn a child.
|
|
984
|
-
*
|
|
985
|
-
*
|
|
986
|
-
*
|
|
987
|
-
*
|
|
1185
|
+
* Spawn a child. For a fresh key or an unkeyed spawn, tree-wide worker admission happens before a
|
|
1186
|
+
* lazy factory is called, so a full worker allocation creates no worker, executor, or reservation.
|
|
1187
|
+
* Reserves `opts.budget` from the conserved pool atomically; refunds the unspent remainder on
|
|
1188
|
+
* settle. Returns a typed outcome — fail-closed on an exhausted pool, an exceeded depth ceiling, a
|
|
1189
|
+
* full worker allocation, or a still-live duplicate `key` (the caller inspects `ok` before
|
|
1190
|
+
* `handle`). A KEYED spawn whose key already settled `done` invokes the factory only far enough to
|
|
1191
|
+
* prepare and authorize the exact profile/task identity, then compares that identity with the
|
|
1192
|
+
* journal. On a match it spends nothing, constructs no executor, reserves no budget, and runs no
|
|
1193
|
+
* work: it returns the committed result on `prior` (see `SpawnOpts.key`).
|
|
988
1194
|
*/
|
|
989
|
-
spawn<C extends Out>(agent: Agent<unknown, C
|
|
1195
|
+
spawn<C extends Out>(agent: Agent<unknown, C> | (() => Agent<unknown, C>), task: unknown, opts: SpawnOpts): {
|
|
990
1196
|
ok: true;
|
|
991
1197
|
handle: Handle<C>;
|
|
992
1198
|
prior?: SpawnPrior<C>;
|
|
@@ -1088,13 +1294,21 @@ interface Scope<Out> {
|
|
|
1088
1294
|
/** Conserved-pool readouts (post-reservation). */
|
|
1089
1295
|
readonly budget: Readonly<{
|
|
1090
1296
|
tokensLeft: number;
|
|
1297
|
+
/** `false` once a turn settled without reporting its tokens: `tokensLeft` is then a ceiling,
|
|
1298
|
+
* not a measurement. */
|
|
1299
|
+
tokensKnown: boolean;
|
|
1091
1300
|
usdLeft: number;
|
|
1092
1301
|
usdCapped: boolean;
|
|
1302
|
+
usdKnown: boolean;
|
|
1303
|
+
iterationsLeft: number;
|
|
1093
1304
|
deadlineMs: number;
|
|
1094
1305
|
reservedTokens: number;
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1306
|
+
}>;
|
|
1307
|
+
/** One tree-wide view of simultaneous spawned work. Every nested scope reads the same counter;
|
|
1308
|
+
* the root agent itself is not a spawned worker. `freeSlots` is `null` when no limit is set. */
|
|
1309
|
+
readonly workerCapacity: Readonly<{
|
|
1310
|
+
live: number;
|
|
1311
|
+
freeSlots: number | null;
|
|
1098
1312
|
}>;
|
|
1099
1313
|
}
|
|
1100
1314
|
/**
|
|
@@ -1136,6 +1350,8 @@ interface ResumedWork<Out> {
|
|
|
1136
1350
|
interface ResumedKeyState<Out = unknown> {
|
|
1137
1351
|
readonly id: NodeId;
|
|
1138
1352
|
readonly label: string;
|
|
1353
|
+
/** Identity recorded when this key was first admitted. Every reuse must match it exactly. */
|
|
1354
|
+
readonly identity?: NodeExecutionIdentity;
|
|
1139
1355
|
readonly state: 'completed' | 'down' | 'in-doubt';
|
|
1140
1356
|
/** The rehydrated settlement; absent exactly when `state` is `'in-doubt'`. */
|
|
1141
1357
|
readonly settled?: Settled<Out>;
|
|
@@ -1147,10 +1363,23 @@ interface NodeSnapshot {
|
|
|
1147
1363
|
readonly status: NodeStatus;
|
|
1148
1364
|
readonly runtime: Runtime;
|
|
1149
1365
|
readonly budget: Budget;
|
|
1366
|
+
/** Exact nested journal tree owned by this node, when Runtime attested recursive ownership. */
|
|
1367
|
+
readonly ownedTreeRoot?: NodeId;
|
|
1368
|
+
/** Manager-scoped assignment identity, including deterministic ids for unkeyed siblings. */
|
|
1369
|
+
readonly assignmentId?: string;
|
|
1370
|
+
readonly identity?: NodeExecutionIdentity;
|
|
1371
|
+
/** Kernel-owned execution evidence. `unknown` is distinct from a known zero/empty plan. */
|
|
1372
|
+
readonly materialization?: ProfileMaterializationReceipt;
|
|
1373
|
+
/** Immutable attempt bindings, oldest first. A retried/resumed node may have more than one. */
|
|
1374
|
+
readonly executionBindings?: ReadonlyArray<ExecutionBindingReceipt>;
|
|
1375
|
+
/** Epoch ms of the terminal journal record; absent while live or when legacy evidence lacks it. */
|
|
1376
|
+
readonly settledAt?: number;
|
|
1150
1377
|
/** Conserved spend so far for this node. */
|
|
1151
1378
|
readonly spent: Spend;
|
|
1152
1379
|
/** `outRef` once the node is `done` (the replay/result pointer). */
|
|
1153
1380
|
readonly outRef?: string;
|
|
1381
|
+
/** Present on terminal executor nodes; legacy records carry an explicit unavailable reason. */
|
|
1382
|
+
readonly trace?: WorkerTraceEvidence;
|
|
1154
1383
|
}
|
|
1155
1384
|
/** The live tree — what `scope.view` / `RootHandle.view()` materialize for a viewer. */
|
|
1156
1385
|
interface TreeView {
|
|
@@ -1173,8 +1402,31 @@ type SpawnEvent = {
|
|
|
1173
1402
|
/** The semantic spawn key (`SpawnOpts.key`), when the spawn carried one — what a resumed
|
|
1174
1403
|
* run matches to resolve the same assignment to its committed result. */
|
|
1175
1404
|
key?: string;
|
|
1405
|
+
/** Manager-scoped assignment identity used to join unkeyed and keyed work alike. */
|
|
1406
|
+
assignmentId?: string;
|
|
1176
1407
|
budget: Budget;
|
|
1177
1408
|
runtime: Runtime;
|
|
1409
|
+
/** Exact nested journal tree this node owns. Runtime writes this only after privately
|
|
1410
|
+
* attesting the executor as a recursive scope owner. Its absence means no tree is followed,
|
|
1411
|
+
* including records written before this field existed and caller leaves named `driver`. */
|
|
1412
|
+
ownedTreeRoot?: NodeId;
|
|
1413
|
+
/** Exact profile/task digests plus trusted candidate/campaign attribution when available. */
|
|
1414
|
+
identity?: NodeExecutionIdentity;
|
|
1415
|
+
seq: number;
|
|
1416
|
+
at: string;
|
|
1417
|
+
} | {
|
|
1418
|
+
/** Volatile transport/session binding for exactly one attempt. The full binding is retained
|
|
1419
|
+
* only by digest; descriptor fields are safe structural labels, never credential-bearing URLs. */
|
|
1420
|
+
kind: 'execution-bound';
|
|
1421
|
+
id: NodeId;
|
|
1422
|
+
binding: ExecutionBindingReceipt;
|
|
1423
|
+
seq: number;
|
|
1424
|
+
at: string;
|
|
1425
|
+
} | {
|
|
1426
|
+
/** Trusted runtime transformation from the authorized profile to actual wire bytes. */
|
|
1427
|
+
kind: 'materialized';
|
|
1428
|
+
id: NodeId;
|
|
1429
|
+
receipt: ProfileMaterializationReceipt;
|
|
1178
1430
|
seq: number;
|
|
1179
1431
|
at: string;
|
|
1180
1432
|
} | {
|
|
@@ -1186,6 +1438,11 @@ type SpawnEvent = {
|
|
|
1186
1438
|
verdict?: DefaultVerdict;
|
|
1187
1439
|
spent: Spend;
|
|
1188
1440
|
infra?: boolean;
|
|
1441
|
+
/** Exact child failure. Present on every new `status: 'down'` record; optional only so
|
|
1442
|
+
* journals written before this field existed remain replayable. */
|
|
1443
|
+
reason?: string;
|
|
1444
|
+
/** Structured tool evidence. Optional only for journals written before trace capture. */
|
|
1445
|
+
trace?: WorkerTraceEvidence;
|
|
1189
1446
|
seq: number;
|
|
1190
1447
|
at: string;
|
|
1191
1448
|
} | {
|
|
@@ -1261,6 +1518,11 @@ interface Supervisor<Task, Out> {
|
|
|
1261
1518
|
interface SupervisorOpts {
|
|
1262
1519
|
/** The root conserved-pool ceiling (tokens + usd + iterations + deadline). */
|
|
1263
1520
|
readonly budget: Budget;
|
|
1521
|
+
/** Exact root profile/task identity supplied by the one-call composition surface. */
|
|
1522
|
+
readonly rootIdentity?: NodeExecutionIdentity;
|
|
1523
|
+
/** Trusted composition evidence for a root whose `act` drives an external backend. A generic
|
|
1524
|
+
* root omits it and is durably marked unknown; model-facing Scope never receives this writer. */
|
|
1525
|
+
readonly rootMaterialization?: RootMaterialization;
|
|
1264
1526
|
/** Trace-correlation root + the journal/blob root key. */
|
|
1265
1527
|
readonly runId: NodeId;
|
|
1266
1528
|
/** Event source — defaults to the in-memory journal in the impl; pass JSONL/FS for durability. */
|
|
@@ -1275,6 +1537,9 @@ interface SupervisorOpts {
|
|
|
1275
1537
|
readonly probes?: WaitProbeRegistry;
|
|
1276
1538
|
/** Runtime recursion-depth ceiling (paired with the conserved pool per R3). */
|
|
1277
1539
|
readonly maxDepth?: number;
|
|
1540
|
+
/** Hard tree-wide cap on simultaneously executing spawned workers. The root is excluded; every
|
|
1541
|
+
* nested driver and leaf shares this one allocation. Omit/`<= 0` leaves worker count uncapped. */
|
|
1542
|
+
readonly maxLiveWorkers?: number;
|
|
1278
1543
|
/**
|
|
1279
1544
|
* OTP intensity breaker: more than `maxRestarts` child restarts within `withinMs`
|
|
1280
1545
|
* trips the supervisor to `no-winner` rather than restarting forever.
|
|
@@ -1373,16 +1638,23 @@ type SupervisedResult<Out> = {
|
|
|
1373
1638
|
* recoverable by the caller. A non-`Error` rejection is normalized, never dropped. */
|
|
1374
1639
|
error: NoWinnerError;
|
|
1375
1640
|
};
|
|
1376
|
-
/** Live root handle —
|
|
1377
|
-
* delivers an out-of-band message to the running root; `view()` materializes the tree. */
|
|
1641
|
+
/** Live root handle — a chat/pi-viz client uses it to inspect and control one root run. */
|
|
1378
1642
|
interface RootHandle<Out> {
|
|
1379
1643
|
view(): TreeView;
|
|
1644
|
+
/** Optional for structural compatibility with existing view/signal/abort wrappers. Handles
|
|
1645
|
+
* minted by `createRootHandle` implement the required form in `SteerableRootHandle`. */
|
|
1646
|
+
deliver?(msg: unknown): boolean;
|
|
1380
1647
|
signal(msg: RootSignal): void;
|
|
1381
1648
|
abort(reason?: string): void;
|
|
1382
1649
|
/** Phantom: binds the handle to the supervised run's output type. Type-only — never
|
|
1383
1650
|
* present at runtime; lets `attach(h: RootHandle<Out>)` stay output-typed. */
|
|
1384
1651
|
readonly __out?: Out;
|
|
1385
1652
|
}
|
|
1653
|
+
/** A Runtime-minted root handle that can deliver raw steering or answers to a live manager inbox.
|
|
1654
|
+
* Delivery returns `false` when the manager has no receive path; detached calls fail loud. */
|
|
1655
|
+
interface SteerableRootHandle<Out> extends RootHandle<Out> {
|
|
1656
|
+
deliver(msg: unknown): boolean;
|
|
1657
|
+
}
|
|
1386
1658
|
/** Out-of-band message to a running root. Open by intent — a client extends it. */
|
|
1387
1659
|
type RootSignal = {
|
|
1388
1660
|
kind: 'pause';
|
|
@@ -1452,6 +1724,8 @@ declare function resolveAgentEnvironmentProvider(provider: AgentEnvironmentProvi
|
|
|
1452
1724
|
interface ProviderAsSandboxClientOptions {
|
|
1453
1725
|
defaults?: Partial<CreateAgentEnvironmentInput>;
|
|
1454
1726
|
requireTerminalEvent?: boolean;
|
|
1727
|
+
/** Require declared live continuation plus concrete session controls. */
|
|
1728
|
+
requireSession?: boolean;
|
|
1455
1729
|
mapCreateOptions?: (options: CreateSandboxOptions | undefined) => Partial<CreateAgentEnvironmentInput>;
|
|
1456
1730
|
}
|
|
1457
1731
|
/** Adapt a neutral environment provider to the `SandboxClient` interface used by existing loop paths.
|
|
@@ -1484,5 +1758,5 @@ interface ProviderExecutorOptions {
|
|
|
1484
1758
|
* @experimental */
|
|
1485
1759
|
declare function providerAsExecutor(provider: AgentEnvironmentProvider, options?: ProviderExecutorOptions): ExecutorFactory<unknown>;
|
|
1486
1760
|
//#endregion
|
|
1487
|
-
export {
|
|
1488
|
-
//# sourceMappingURL=environment-provider-
|
|
1761
|
+
export { MaterializedModelIdentity as $, buildLoopOtelSpans as $t, providerAsSandboxClient as A, validateWaitSpec as An, WidenGate as At, DefaultVerdict as B, ActivityNote as Bn, readTraceContextFromEnv as Bt, ProviderAsSandboxClientOptions as C, WaitProbeRegistry as Cn, SupervisedResult as Ct, WorkspaceRequest as D, isWaitOutcome as Dn, UnknownMaterializationReason as Dt, SandboxClientProviderOptions as E, createWaitProbes as En, TreeView as Et, createTangleSandboxExactProcessProvider as F, TraceSource as Fn, readWorkerTraceContext as Ft, ExecutorExecutionBinding as G, createActivityLog as Gn, EvalRunsExportResult as Gt, Executor as H, ExecutorProgress as Hn, EvalRunEvent as Ht, Agent as I, createPushTraceSource as In, workerTraceEnv as It, ExecutorNodeContext as J, OtelAttribute as Jt, ExecutorFactory as K, readWorkerProgress as Kn, INTELLIGENCE_WIRE_VERSION as Kt, AgentExecutionRef as L, decodeToolPart as Ln, workerTraceSeamKey as Lt, sandboxClientAsProvider as M, SessionMessageLike as Mn, WorkerTraceUnavailableReason as Mt, CreateTangleSandboxExactProcessProviderOptions as N, SessionTraceBox as Nn, WorkerTraceResolver as Nt, createAgentEnvironmentProviderRegistry as O, pollFor as On, UsageEvent as Ot, SandboxControlClient as P, ToolStepInput as Pn, WorkerTraceSeamCarrier as Pt, MaterializedExecutionIdentity as Q, RuntimeEventOtelOptions as Qt, AgentSpec as R, sandboxSessionTraceSource as Rn, TraceContext as Rt, PlacementInfo as S, WaitProbe as Sn, SteerableRootHandle as St, ResourceRequest as T, WaitSpec as Tn, SupervisorOpts as Tt, ExecutorAccounting as U, ScopeProgressInput as Un, EvalRunGeneration as Ut, ExecutionBindingReceipt as V, DEFAULT_STALL_AFTER_MS as Vn, traceContextToEnv as Vt, ExecutorContext as W, WorkerProgress as Wn, EvalRunsExportConfig as Wt, ExecutorResult as X, OtelExporter as Xt, ExecutorRegistry as Y, OtelExportConfig as Yt, Handle as Z, OtelSpan as Zt, CheckpointRequest as _, sanitizeAgentRuntimeEvent as _n, SpawnJournal as _t, AgentEnvironmentProviderRef as a, generateSpanId as an, ProfileMaterializationReceipt as at, ExecResult as b, PendingWait as bn, SpawnRejection as bt, AgentEnvironmentStatus as c, RuntimeEventCollector as cn, ResumedKeyState as ct, AgentSession as d, RuntimeStreamEventSummary as dn, RootMaterialization as dt, buildLoopSpanNodes as en, NoWinnerError as et, AgentSessionRef as f, RuntimeTelemetryOptions as fn, RootSignal as ft, CheckpointRef as g, createRuntimeStreamEventCollector as gn, SpawnEvent as gt, AgentTurnResult as h, createRuntimeEventCollector as hn, Settled as ht, AgentEnvironmentProvider$1 as i, exportEvalRuns as in, NodeStatus as it, resolveAgentEnvironmentProvider as j, waitUntil as jn, WorkerTraceEvidence as jt, providerAsExecutor as k, timerAt as kn, WaitOpts as kt, AgentEnvironmentSummary as l, RuntimeStreamEventCollector as ln, ResumedWork as lt, AgentTurnInput$1 as m, SanitizedKnowledgeRequirement as mn, Scope as mt, AgentEnvironmentCapabilities$1 as n, createOpenInferenceFileExporter as nn, NodeId as nt, AgentEnvironmentProviderRegistry as o, loopEventToOtelSpan as on, Restart as ot, AgentSessionStatus as p, SanitizedKnowledgeReadinessReport as pn, Runtime as pt, ExecutorMaterialization as q, LoopSpanNode as qt, AgentEnvironmentEvent as r, createOtelExporter as rn, NodeSnapshot as rt, AgentEnvironmentQuery as s, toOtelAttributes as sn, ResultBlobStore as st, AgentEnvironment as t, buildRuntimeEventOtelSpans as tn, NodeExecutionIdentity as tt, AgentProfileRef$1 as u, RuntimeStreamEventSink as un, RootHandle as ut, CreateAgentEnvironmentInput$1 as v, sanitizeKnowledgeReadinessReport as vn, SpawnOpts as vt, ProviderExecutorOptions as w, WaitRejection as wn, Supervisor as wt, ForkRequest as x, WaitOutcome as xn, Spend as xt, ExecRequest as y, sanitizeRuntimeStreamEvent as yn, SpawnPrior as yt, Budget as z, ActivityLog as zn, createPropagatingTraceEmitter as zt };
|
|
1762
|
+
//# sourceMappingURL=environment-provider-Bh4nX2qt.d.ts.map
|