/**
 * 适配器 Prompt 契约 — 问题三十一实现。
 *
 * 负责验证适配器 Prompt 的合规性、检查清单一致性、以及同步逻辑。
 */
import type { AdapterPromptContract, AdapterPromptManifest, AdapterComplianceStatus } from "./knowledge/knowledge_template_contracts.js";
/** 适配器 Prompt 验证结果 */
export interface AdapterPromptValidation {
    adapter_id: string;
    compliant: boolean;
    compliance_status: AdapterComplianceStatus;
    missing_sections: string[];
    detected_forbidden_claims: string[];
    has_next_allowed_tools: boolean;
    findings: AdapterPromptFinding[];
}
/** 适配器 Prompt 发现 */
export interface AdapterPromptFinding {
    severity: "critical" | "warning" | "info";
    rule: string;
    message_zh: string;
    section?: string;
}
/** 同步选项 */
export interface AdapterSyncOptions {
    dry_run: boolean;
    apply: boolean;
    confirm?: boolean;
}
/** 所有必须包含的章节 */
export declare const REQUIRED_ADAPTER_SECTIONS: readonly ["when_to_use_soloforge", "when_not_to_use_soloforge", "tool_invocation_policy", "strict_controlled_tools", "language_policy", "status_feedback_policy", "dangerous_action_policy", "trace_policy", "fallback_policy"];
/** 禁止出现的声明 */
export declare const FORBIDDEN_ADAPTER_CLAIMS: readonly ["可以自由选择任意 sf_* 工具", "验证通过后自动 deliver", "sf_deliver 默认会 push/PR", "跳过 SoloForge 直接修改即可", "advisory warning 必须 hard block", "experimental 能力已稳定可用", "输出英文更专业", "缺少知识时按通用经验补全", "delivery readiness 就是已交付"];
/**
 * 验证适配器 Prompt 合规性。
 *
 * 检查项：
 * - 必须章节是否齐全（缺失为 warning）
 * - 是否包含禁止声明（为 critical）
 * - next_allowed_tools 是否非空（空为 critical）
 */
export declare function validateAdapterPrompt(contract: AdapterPromptContract): AdapterPromptValidation;
/**
 * 验证适配器 Prompt 清单与契约的一致性。
 *
 * 检查 contract_ids 是否匹配、host_type 是否一致。
 */
export declare function validateAdapterPromptManifest(manifest: AdapterPromptManifest, contract: AdapterPromptContract): {
    consistent: boolean;
    findings: string[];
};
/**
 * 同步适配器 Prompt 集合。
 *
 * - dry_run: 仅验证，不写入
 * - apply: 仅当合规时才执行同步（无禁止声明且所有必须章节齐全）
 * - 永不覆盖用户修改过的 Prompt
 */
export declare function syncAdapterPrompts(contracts: AdapterPromptContract[], options: AdapterSyncOptions): AdapterPromptValidation[];
//# sourceMappingURL=adapter_prompt_contract.d.ts.map