gatelineAPI reference
interface DispatchRequest {
    body: string;
    branch?: string;
    cwd: string;
    resumeSession?: null | string;
    role: string;
    round?: null | number;
    slug?: string;
    task?: null | string;
    timeoutMs: number;
}

Properties

body: string

Run-specific prompt body; the adapter's template wraps it.

branch?: string
cwd: string

Working directory the harness runs in: a checkout of the run branch.

resumeSession?: null | string

A prior harness session to continue (#181), set by the engine when this is a retry of the same role+task+round and the previous attempt reported one. The seam passes it only to an adapter whose manifest declares resume_args; every other runner ignores it and starts fresh, as does a new round.

role: string
round?: null | number
slug?: string

Run identity (optional): the engine always sets these; HeadlessDispatcher ignores them.

task?: null | string

Task/round identity (optional, task-scoped roles only): the engine always sets these from the dispatch intent (null for non-task-scoped roles); HeadlessDispatcher ignores them. RemoteDispatcher (runner-dispatcher.ts) keys its pending map directly from these fields, so a parallel same-role dispatch (e.g. two implementers on distinct tasks) correlates on the request itself rather than on dispatch or poll order (ADR-7).

timeoutMs: number