/** * `aidlc autopilot review` — the morning walk through an unattended run's decisions * (unattended-decision-diary/AC-13..AC-20), in three forms: one instance, every instance with * an unreviewed entry (`--pending`), or an agent's proposal accepted in one step (`--from`) * (review-from-agent-proposal). * * It reads the checkout it runs in, not the primary one every other subcommand resolves: the * log sits on the item's branch, so before the merge it is in the item's worktree — where its * open questions block the merge — and after the merge it is on main. * * Only a person reviews. The check is the terminal test the person-only commands share, not an * entry in their table: the installed approval guard embeds that table (design D4). * * Design: design.md C3 * * @module */ import type { Prompter } from '../core/prompt.js'; export interface ReviewDeps { /** Project root of the checkout it runs in. */ root: string; prompter: Prompter; out: (line: string) => void; err: (line: string) => void; /** Local date, YYYY-MM-DD. */ today: () => string; /** Why no person is present, or null when one is (`absenceReason`). */ absence: string | null; } /** Which form of the review to run; exactly one is given (review-from-agent-proposal/AC-20). */ export interface ReviewForms { instance?: string; pending?: boolean; from?: string; } export declare const REVIEW_USAGE = "usage: aidlc autopilot review | --pending | --from "; /** Unchanged signature for existing callers: the person check, then one instance. */ export declare function runReview(instance: string, deps: ReviewDeps): Promise; /** Every form's entry point: the person check before any read, then the form check, then the form (AC-20, AC-21, design D7). */ export declare function runReviewCommand(forms: ReviewForms, deps: ReviewDeps): Promise; /** Today in local time, as the log's dates are written. */ export declare function localDate(now?: Date): string; //# sourceMappingURL=review.d.ts.map