/** * Runtime validator — topological and runtime validation for OpenCode primitives. * * Detects circular dependencies, missing dependencies, broken permission * inheritance, and misaligned pipeline positions. * * @module runtime-validator */ import type { PrimitiveMap } from "./cross-primitive-validator.js"; export interface RuntimeValidationReport { valid: boolean; loadingOrder: LoadingOrderResult; resolutionOrder: ResolutionOrderResult; inheritanceChain: InheritanceChainResult; pipelinePosition: PipelinePositionResult; warnings: string[]; } export interface LoadingOrderResult { valid: boolean; cycles: string[][]; errors: string[]; } export interface ResolutionOrderResult { valid: boolean; missing: { source: string; target: string; type: string; }[]; errors: string[]; } export interface InheritanceChainResult { valid: boolean; broken: { agent: string; permission: string; reason: string; }[]; errors: string[]; } export interface PipelinePositionResult { valid: boolean; misaligned: { agent: string; mode: string; issue: string; }[]; errors: string[]; } /** * Validates loading order by detecting cycles in the agent-command-skill * dependency graph. */ export declare function validateLoadingOrder(primitives: PrimitiveMap): LoadingOrderResult; /** * Validates that all referenced primitives exist and files are present. */ export declare function validateResolutionOrder(primitives: PrimitiveMap): ResolutionOrderResult; /** * Validates that agent and command permissions are consistent with global * config permissions. */ export declare function validateInheritanceChain(primitives: PrimitiveMap): InheritanceChainResult; /** * Validates that primary agents don't overlap in responsibilities and that * subagent modes are consistent. */ export declare function validatePipelinePosition(primitives: PrimitiveMap): PipelinePositionResult; /** * Runs all runtime validators and aggregates results. */ export declare function validateRuntime(primitives: PrimitiveMap): RuntimeValidationReport; //# sourceMappingURL=runtime-validator.d.ts.map