/** * Read-only project-level health checks (check* functions) used by * `cleo doctor` and CLI startup diagnostics. */ import type { CheckResult } from '@cleocode/contracts/scaffold-diagnostics'; /** * Verify all required .cleo/ subdirectories exist. * * @param projectRoot - Absolute path to the project root directory * @returns Check result with status and list of any missing subdirectories */ export declare function checkCleoStructure(projectRoot: string): CheckResult; /** * Verify .cleo/.gitignore exists and matches template. * * @param projectRoot - Absolute path to the project root directory * @returns Check result indicating whether the gitignore matches the template */ export declare function checkGitignore(projectRoot: string): CheckResult; /** * Verify the worktree-include file exists and matches the shipped template. * * Resolution order (T9983): * 1. Canonical `/.worktreeinclude` — matches Claude Code Desktop * + worktrunk-core convention. * 2. Legacy `/.cleo/worktree-include` — read for one * deprecation cycle. When only the legacy file exists, the check * reports `warning` with a fix hint that points at * `cleo doctor --migrate-worktree-include`. * * @param projectRoot - Absolute path to the project root directory (defaults to cwd) * @returns Check result indicating whether the worktree-include matches the template * * @task T9983 */ export declare function checkWorktreeInclude(projectRoot?: string): CheckResult; /** * Verify config.json exists and is valid JSON. * * @param projectRoot - Absolute path to the project root directory * @returns Check result indicating whether config.json is present and valid */ export declare function checkConfig(projectRoot: string): CheckResult; /** * Verify project-info.json exists with required fields. * * @param projectRoot - Absolute path to the project root directory * @returns Check result indicating whether project-info.json is valid */ export declare function checkProjectInfo(projectRoot: string): CheckResult; /** * Verify project-context.json exists and is not stale (default: 30 days). * * @param projectRoot - Absolute path to the project root directory * @param staleDays - Age threshold in days before reporting as stale (default: 30) * @returns Check result with freshness assessment */ export declare function checkProjectContext(projectRoot: string, staleDays?: number): CheckResult; /** * Verify .cleo/.git checkpoint repository exists. * * @param projectRoot - Absolute path to the project root directory * @returns Check result indicating whether the checkpoint repo is present */ export declare function checkCleoGitRepo(projectRoot: string): CheckResult; /** * Verify .cleo/tasks.db exists and is non-empty. * * @param projectRoot - Absolute path to the project root directory * @returns Check result with database existence and size information */ export declare function checkSqliteDb(projectRoot: string): CheckResult; /** * Verify the brain domain database exists and is non-empty. * * E6-L2 (T11522): the brain domain consolidated into the project `cleo.db` * (`getBrainDb` → `openDualScopeDb('project')`), so this probe targets `cleo.db` * rather than a standalone `brain.db`. * * @param projectRoot - Absolute path to the project root directory * @returns Check result with database existence and size information */ export declare function checkBrainDb(projectRoot: string): CheckResult; /** * Verify .cleo/memory-bridge.md exists. * * @param projectRoot - Absolute path to the project root directory * @returns Check result indicating presence of the memory bridge file */ export declare function checkMemoryBridge(projectRoot: string): CheckResult; /** * Verify .cleo/nexus-bridge.md exists. * * @param projectRoot - Absolute path to the project root directory * @returns Check result indicating presence of the nexus bridge file */ export declare function checkNexusBridge(projectRoot: string): CheckResult; /** * Check that the project log directory exists. * * @param projectRoot - Absolute path to the project root directory * @returns Check result indicating whether .cleo/logs/ is present */ export declare function checkLogDir(projectRoot: string): CheckResult; //# sourceMappingURL=project-detection.d.ts.map