Anchorage API reference
    Preparing search index...
    RunLeg:
        | { kind: "start" }
        | {
            kind: "resume";
            resumeCount?: number;
            step?: string[];
            suspendedAt?: number;
        }

    Which execution leg the provider is minting for. On resume, step is the resumed step's normalized path — taken from the caller's step selection, or resolved from the snapshot when exactly one step is suspended; undefined when the target step cannot be determined (ambiguous multi-step resume without an explicit selection). suspendedAt is the epoch-ms timestamp of that step's CURRENT suspension (from the persisted snapshot): providers bind capabilities to the specific suspension they were granted for — an approval decided before this suspension began belongs to an earlier incarnation of the gate and must not mint again (see flowsafe's approvalGrantProvider). resumeCount pairs with suspendedAt — the runtime-owned monotonic resume ordinal (undefined on a step's first suspension, 1,2,… on successive re-suspensions) — so a provider can tell two same-step suspensions apart even when their suspendedAt stamps collide within a millisecond. It replaces the payload-conditional resumedAt as the tie-breaker: the runtime increments it on every resume, so no-payload resumes cannot erase the first-vs-re-suspension distinction.