UNPKG

eve

Version:

Filesystem-first framework for durable backend AI agents that run anywhere.

23 lines (22 loc) 1.18 kB
import type { HarnessSession, StepInput } from "#harness/types.js"; import type { JsonObject } from "#shared/json.js"; import type { RunMode } from "#shared/run-mode.js"; /** * Resolves the single output schema in effect for this turn, decoupling schema * enforcement from {@link RunMode}: downstream the harness reads * `session.outputSchema` unconditionally and never re-derives it from mode. * * A run-scoped (client-supplied) schema on the turn's {@link StepInput} always * wins. With no run-scoped schema, a task run adopts the agent's declared * return schema — its function-output contract, which only applies when the * agent is invoked directly as a task-mode schedule or job. Subagent * dispatch carries its declared schema as a run-scoped schema instead. * A conversation run with no run-scoped schema enforces nothing. Continuation * steps (no new `StepInput`) preserve whatever is already in effect. */ export declare function resolveEffectiveOutputSchema(input: { readonly agentOutputSchema: JsonObject | undefined; readonly input: StepInput | undefined; readonly mode: RunMode; readonly session: HarnessSession; }): HarnessSession;