gatelineAPI reference
interface RunLoopConfig {
    codeMonitor?: CodeTreeMonitor;
    debounceMs?: number;
    heartbeatMs?: number;
    log?: (line: string) => void;
    onSupersede?: (status: CodeTreeStatus) => void;
    scheduler?: Scheduler;
    staleProbe?: () => Promise<string[]>;
}

Properties

codeMonitor?: CodeTreeMonitor

Self-supersede (#141): watches the code tree (the checkout that owns this running module, not any configured run source) for a git pull out from under the process. Absent for a viewer-only/npm-installed process with no code repo to watch (resolveCodeRepo returns null) — the loop then behaves exactly as it did before #141.

debounceMs?: number
heartbeatMs?: number
log?: (line: string) => void
onSupersede?: (status: CodeTreeStatus) => void

Fired exactly once, after the heartbeat write, when the monitor confirms a clean fast-forward past startHead.

scheduler?: Scheduler

When present, every tick also reconciles orchestrator.yaml's schedules (§4.6).

staleProbe?: () => Promise<string[]>

Advisory staleness check run on heartbeat ticks; returned lines are logged (#150).