/** * retrospective-show — load one retrospective entry by id, synthesize the * body on-demand from `artifactPaths` (concatenate with `---` separator), * apply `formatMdCompact` by default, return the JSON envelope. * * body is re-hydrated from the source PRD / RD / QA / TXT artifacts. If * a referenced artifact is missing on disk, `show` returns a * `ARTIFACT_MISSING` envelope (PRD R3) and does not crash. * * Stale policy is **not** applied to retrospective in this slice * (per PRD G7 / R3 scope). The helper exists for a future slice. */ import { loadRetrospectiveIndex, type RetrospectiveEntry, type RetrospectiveIndexResult } from './retrospective-index.js'; export type RetrospectiveFormat = 'compact' | 'pretty'; export interface RetrospectiveShowOptions { projectRoot: string; id: string; format?: RetrospectiveFormat; } export interface RetrospectiveShowSuccess { ok: true; projectRoot: string; format: RetrospectiveFormat; entry: RetrospectiveEntry; body: string; warnings: string[]; } export interface RetrospectiveShowError { ok: false; code: 'NOT_FOUND' | 'INDEX_MISSING' | 'ARTIFACT_MISSING' | 'INVALID_REQUEST'; message: string; hint?: string; projectRoot: string; missingArtifacts?: string[]; } export type RetrospectiveShowResult = RetrospectiveShowSuccess | RetrospectiveShowError; export declare function showRetrospective(options: RetrospectiveShowOptions): RetrospectiveShowResult; export { loadRetrospectiveIndex }; export type { RetrospectiveEntry, RetrospectiveIndexResult };