/**
 * 生命周期 + 项目知识 + 证据消费统一合同。
 *
 * 这是 next、sf_expand、sf_review、sf_verify、sf_deliver、审计和发布门禁共享的决策包。
 * 任何入口不得绕过本合同临时新增生命周期文件、知识选择规则或交付阻断口径。
 */
import type { ProjectConfig } from "../../types/index.js";
import { type GenerationTrace } from "./control_plane_contract.js";
import { type DesignArtifactVerificationResult } from "./design_artifact_pack.js";
import { getDesignLifecycleArtifactPaths, getDesignLifecycleStageContract, type DesignLifecycleStageId } from "./design_lifecycle_contract.js";
import { type ProjectKnowledgeAuditReport, type ProjectKnowledgeSelectionResult } from "./project_knowledge_contract.js";
import { type DesignImplementationTraceabilityReport } from "./traceability.js";
export type LifecycleKnowledgeConsumer = "soloforge_next" | "sf_expand" | "sf_review" | "sf_verify" | "sf_deliver" | "audit" | "release_gate" | "hook";
export interface LifecycleKnowledgeDecisionInput {
    projectPath: string;
    consumer: LifecycleKnowledgeConsumer;
    intent: string;
    route?: string;
    lifecycle_stage?: DesignLifecycleStageId;
    changed_files?: string[];
    verified_files?: string[];
    traceability_ids?: string[];
    business_domains?: string[];
    tech_stack?: string[];
    task_id?: string;
    delivery_status?: "delivered" | "blocked" | "manual_required";
    generation_traces?: GenerationTrace[];
    enforce_control_plane?: boolean;
    config?: ProjectConfig;
    selection_limit?: number;
    require_design_audit?: boolean;
    record_trace?: boolean;
}
export interface LifecycleKnowledgeFinding {
    severity: "hard_fail" | "warning" | "advisory";
    code: string;
    message_zh: string;
    recovery_command?: string;
    source: "lifecycle" | "traceability" | "design_artifact_pack" | "project_knowledge" | "control_plane";
}
export interface LifecycleKnowledgeDecisionBundle {
    contract_id: "lifecycle_knowledge_contract/v1";
    consumer: LifecycleKnowledgeConsumer;
    lifecycle_stage?: DesignLifecycleStageId;
    lifecycle_stage_contract?: ReturnType<typeof getDesignLifecycleStageContract>;
    authoritative_paths: ReturnType<typeof getDesignLifecycleArtifactPaths>;
    project_knowledge: ProjectKnowledgeAuditReport;
    knowledge_selection: ProjectKnowledgeSelectionResult;
    traceability: DesignImplementationTraceabilityReport;
    design_artifact_pack?: DesignArtifactVerificationResult;
    findings: LifecycleKnowledgeFinding[];
    hard_fail_count: number;
    warning_count: number;
    decision_summary_zh: string;
    recovery_commands: string[];
}
export declare function evaluateLifecycleKnowledgeDecision(input: LifecycleKnowledgeDecisionInput): LifecycleKnowledgeDecisionBundle;
export declare function summarizeLifecycleKnowledgeDecision(bundle: LifecycleKnowledgeDecisionBundle): string;
//# sourceMappingURL=lifecycle_knowledge_contract.d.ts.map