/** * `aidlc roadmap assign-milestones` — the worklist an agent drafts from, and the writes it * asks for (roadmap-milestones/AC-22..AC-25). * * The drafting is a judgment, so it stays with the agent and the person who reviews the diff; * this module only lists what is Unassigned and writes `milestone:` lines it was given, after * checking every one. Nothing is committed: the diff is the review. * * @module */ import { type Milestone } from './milestones.js'; import { type RoadmapItem } from './paths.js'; /** * Set an item's `milestone:` line, editing the frontmatter as text as `setRunLine` does: a * trailing comment is kept, and with no line one is added as the last frontmatter line. * * @returns The new contents, or null when there is no frontmatter. */ export declare function setMilestoneLine(raw: string, value: string): string | null; export type Worklist = { ok: true; milestones: Milestone[]; items: { item: RoadmapItem; value: unknown; }[]; } | { ok: false; detail: string; }; /** The milestones and every Unassigned open item, with the value it carries now (AC-22). */ export declare function assignWorklist(root: string): Worklist; export type AssignPlan = { ok: true; writes: { item: RoadmapItem; value: string; contents: string; }[]; } | { ok: false; errors: string[]; }; /** Check every `=` pair; any bad pair means no write at all (AC-24, AC-25). */ export declare function planAssign(root: string, pairs: readonly string[]): AssignPlan; export declare function applyAssign(plan: Extract): void; //# sourceMappingURL=assign.d.ts.map