/** * `/workflow status [run-id]` (progress §11.4) — the answer to "show me everything". * * This command is the reason the live panel is free to collapse at all. A widget never receives * keyboard focus in PI (`handleInput` fires only for the focused component, and a widget is not one), * so there is no expand key on the panel itself (progress §6.6); the fully expanded tree has to be * reachable some other way, and this is it. * * Printed as plain text through `ctx.ui.notify`, for the reason recorded in progress-card.ts: the entry * renderer that would draw a themed, expandable card does not exist on every harness we run in, and a * command that works everywhere beats a prettier one that takes the extension down on pi 0.80.2. * * It reads a run's log and nothing else. That is what lets it show a PAST run exactly as it showed the * live one: the projection is a pure function of the log (progress §2.4), so "rebuild it from disk" and * "watch it happen" are the same code path, and a card printed a week later cannot disagree with the * panel that was on screen at the time. * * The argument goes through the same `resolveRunRef` as `resume`/`cancel`/`delete` (progress §0), so a * user can type the full slug, the 8-hex tail, or any unique prefix, and an ambiguous one is reported * with its candidates rather than resolved by guessing. */ import type { ProgressCtx } from "../progress-sink.ts"; import type { RunStore } from "../types.ts"; import { type CommandCtx } from "./context.ts"; /** What `handleStatus` needs beyond the store. Bound in extension.ts, faked in a test. */ export interface StatusDeps { /** The run to show when no argument is given: whatever is executing right now (spec §7). */ activeRunId(): string | undefined; now?: () => Date; /** The width the tree is drawn to. A notification is plain text, so nothing else can know it. */ width?: number; } export declare function handleStatus(ctx: CommandCtx & ProgressCtx, store: RunStore, deps: StatusDeps, runRef: string | undefined): Promise; //# sourceMappingURL=status.d.ts.map