Skip to content

HerdrUpdateDeps

Defined in: src/herdr-update.ts:106

optional fetchLatest?: () => Promise<{ notes?: string; version: string; }>

Defined in: src/herdr-update.ts:110

inject point for tests; defaults to fetching herdr.dev/latest.json

Promise<{ notes?: string; version: string; }>


optional maintenance?: object

Defined in: src/herdr-update.ts:124

maintenance gate; defaults to the shared process singleton

begin(): void

void

end(): void

void


optional onDone?: (result) => void

Defined in: src/herdr-update.ts:122

the terminal result, emitted exactly once per apply(); default: no-op

HerdrUpdateResult

void


optional onLog?: (line) => void

Defined in: src/herdr-update.ts:118

each log line streamed from the running update; default: no-op

string

void


optional onStatus?: (status) => void

Defined in: src/herdr-update.ts:120

the recomputed status after the update settles; default: no-op

HerdrUpdateStatus

void


optional runUpdate?: (onLine, signal) => Promise<void>

Defined in: src/herdr-update.ts:116

Run the update child, streaming each output line to onLine, resolving when it exits. The AbortSignal fires on watchdog timeout — the default kills the child. Default: spawn bash -lc <buildUpdateScript>.

(line) => void

AbortSignal

Promise<void>


optional versionRunner?: () => string

Defined in: src/herdr-update.ts:108

inject point for tests; defaults to running the herdr binary’s —version

string


optional watchdogMs?: number

Defined in: src/herdr-update.ts:126

watchdog ceiling before a hung herdr update is force-killed (default 5min)