import type { ExecutableInvocationGovernanceChange, ExecutableInvocationGovernanceDelta, ExecutableSurfaceDependencyDelta, ExecutableSurfaceDiff, ExecutableSurfaceInvocationDelta } from "./executable-surface-diff.js"; import type { ExecutableSurfaceCiPolicyMode } from "./types/configuration.js"; export declare const EXECUTABLE_SURFACE_CI_POLICY_SCHEMA_VERSION: "renma.executable-surface-ci-policy.v1"; export declare const EXECUTABLE_SURFACE_CI_MATCH_IDS: { readonly SURFACE_ADDED: "executable_surface_ci.surface_added"; readonly PROBLEMATIC_INVOCATION_ADDED: "executable_surface_ci.problematic_invocation_added"; readonly PROBLEMATIC_DEPENDENCY_ADDED: "executable_surface_ci.problematic_dependency_added"; readonly INVOCATION_POLICY_EVIDENCE_MISSING: "executable_surface_ci.invocation_policy_evidence_missing"; readonly INVOCATION_POLICY_EVIDENCE_LOST: "executable_surface_ci.invocation_policy_evidence_lost"; readonly INVOCATION_POLICY_AMBIGUOUS: "executable_surface_ci.invocation_policy_ambiguous"; readonly SKILL_LOCAL_REACHABILITY_LOST: "executable_surface_ci.skill_local_reachability_lost"; readonly STATIC_INVOCATION_REACHABILITY_LOST: "executable_surface_ci.static_invocation_reachability_lost"; readonly TRANSITIVE_REACHABILITY_ADDED: "executable_surface_ci.transitive_reachability_added"; }; export interface ExecutableSurfaceCiConfiguration { from: ExecutableSurfaceCiPolicyMode; to: ExecutableSurfaceCiPolicyMode; } interface ExecutableSurfaceCiSurfaceMatch { id: typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.SURFACE_ADDED | typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.SKILL_LOCAL_REACHABILITY_LOST | typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.STATIC_INVOCATION_REACHABILITY_LOST | typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.TRANSITIVE_REACHABILITY_ADDED; kind: "surface"; path: string; summary: string; } interface ExecutableSurfaceCiProblematicInvocationMatch extends ExecutableSurfaceInvocationDelta { id: typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.PROBLEMATIC_INVOCATION_ADDED; kind: "invocation"; summary: string; } interface ExecutableSurfaceCiProblematicDependencyMatch extends ExecutableSurfaceDependencyDelta { id: typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.PROBLEMATIC_DEPENDENCY_ADDED; kind: "dependency"; summary: string; } interface ExecutableSurfaceCiNewInvocationGovernanceMatch extends ExecutableInvocationGovernanceDelta { id: typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.INVOCATION_POLICY_EVIDENCE_MISSING | typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.INVOCATION_POLICY_AMBIGUOUS; kind: "invocation"; transition: "added"; summary: string; } interface ExecutableSurfaceCiChangedInvocationGovernanceMatch extends ExecutableInvocationGovernanceChange { id: typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.INVOCATION_POLICY_EVIDENCE_LOST | typeof EXECUTABLE_SURFACE_CI_MATCH_IDS.INVOCATION_POLICY_AMBIGUOUS; kind: "invocation"; transition: "changed"; summary: string; } export type ExecutableSurfaceCiMatch = ExecutableSurfaceCiSurfaceMatch | ExecutableSurfaceCiProblematicInvocationMatch | ExecutableSurfaceCiProblematicDependencyMatch | ExecutableSurfaceCiNewInvocationGovernanceMatch | ExecutableSurfaceCiChangedInvocationGovernanceMatch; export interface ExecutableSurfaceCiEvaluation { schemaVersion: typeof EXECUTABLE_SURFACE_CI_POLICY_SCHEMA_VERSION; configured: ExecutableSurfaceCiConfiguration & { effective: ExecutableSurfaceCiPolicyMode; }; outcome: "pass" | "warn" | "fail"; /** Counts policy reasons, so one invocation may contribute multiple matches. */ matchCount: number; matches: ExecutableSurfaceCiMatch[]; } export declare function effectiveExecutableSurfaceCiPolicy(configured: ExecutableSurfaceCiConfiguration): ExecutableSurfaceCiPolicyMode; /** Evaluate high-signal CI review events from the canonical executable diff. */ export declare function evaluateExecutableSurfaceCiPolicy(diff: ExecutableSurfaceDiff, configured: ExecutableSurfaceCiConfiguration): ExecutableSurfaceCiEvaluation; export {};