Member Junction
    Preparing search index...

    TaskGraph.Submit — validate and durably persist a graph, returning immediately.

    Returning before execution is the point: the caller is freed the moment the work is safe, and the dispatcher owns it from there. That is what lets an agent submit a graph over MCP without holding anything open.

    REMAINING LIMITATION (C5/D1): a remote submission does not bind to an agent run. TaskGraphSubmitContext carries AgentRunID, and this input deliberately has no field for it — whether a remote caller's graph should BIND to an agent run (cost rollup, reinvoke routing) is the D1 execution-identity design question, to be decided rather than defaulted. Until then a remote submission records submittedByAgentRunID: null: no cost rollup, and reinvoke degrades to a message. The other two fields the in-process path carries DO ride this operation now — reinvokeDepth (clamped; see below) so the runaway-loop cap counts remote hops, and the R3-3 invocation envelope so data.*/context.* conditions evaluate against the invocation instead of nothing.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    ExecutionMode: "Sync"

    Whether this operation is a plain Sync request/response or a LongRunning run.

    OperationKey: "TaskGraph.Submit"

    Stable registry key and wire token for this operation (e.g. RecordProcess.RunNow).

    RequiredScope: "taskgraph:execute"

    Optional API-key scope string (e.g. recordprocess:execute) enforced for API-key / MCP callers by the server resolver. undefined means no scope gate; interactive users remain bounded by their entity permissions. Informational here — the server applies it.

    RequiresSystemUser: false

    When true, the server only permits the system user to invoke this operation.

    Methods

    • Per-operation authorization hook, composed with (and applied after) the framework gates that the server resolver runs. Returns true by default. Override to enforce operation-specific rules against the input and acting user.

      Parameters

      Returns Promise<boolean>

      True if the operation may proceed.