import type { SolutionFrontmatter, SolutionStatus } from './solution-format.js'; import type { AdaptiveLifecycleThresholds } from './meta-learning/types.js'; export interface LifecycleResult { promoted: string[]; demoted: string[]; retired: string[]; contradictions: string[]; } /** Get the next promotion status */ export declare function nextStatus(current: SolutionStatus): SolutionStatus | null; /** Get confidence for a status level. * Spacing: 0.25 between levels for meaningful differentiation in matching scores. * Previous: 0.3/0.6/0.8/0.85 had only 0.05 gap between verified and mature. */ export declare function statusConfidence(status: SolutionStatus): number; /** Check promotion eligibility (with optional adaptive thresholds) */ export declare function checkPromotion(fm: SolutionFrontmatter, thresholds?: AdaptiveLifecycleThresholds | null): boolean; /** Check if solution should be demoted due to confidence-status mismatch */ export declare function checkConfidenceDemotion(fm: SolutionFrontmatter): SolutionStatus | null; /** Check if solution identifiers still exist in codebase (staleness detection) */ export declare function checkIdentifierStaleness(fm: SolutionFrontmatter, cwd: string): boolean; /** Check if solution is stale (status-specific inactivity threshold) */ export declare function isStale(fm: SolutionFrontmatter): boolean; /** * Update a solution file with new frontmatter. * PR2b: solution-writer.mutateSolutionFile로 통합. lock + fresh re-read + atomic write. */ export declare function updateSolutionFile(filePath: string, updates: Partial): boolean; /** Run lifecycle check on all solutions */ export declare function runLifecycleCheck(_sessionId?: string): LifecycleResult; /** Detect contradictions between solutions */ export declare function detectContradictions(dirs: string[]): string[]; /** Manual verify command: immediately promote to verified */ export declare function verifySolution(solutionName: string): boolean;