"""
core/merge — SemanticMergeInterceptor package.

Exports:
    ConflictDetector          — analyzes StateDelta patches for logical contradictions
    ConflictReport            — result dataclass from ConflictDetector.detect()
    MergePromptBuilder        — constructs the Opus conflict-resolution prompt
    SemanticMergeInterceptor  — orchestrates detection + Opus resolution
    MergeResult               — result dataclass from SemanticMergeInterceptor.merge()
    PatchReconciler           — validates and applies an Opus-resolved patch
    ReconcileResult           — result dataclass from PatchReconciler.validate_and_apply()
    MergeTelemetry            — tracks conflict rates, Opus invocation, and merge latency
    MergeRecord               — event dataclass recorded by MergeTelemetry
    CompensatingTransaction   — generates and applies inverse RFC 6902 patches for failed sagas
    CompensationResult        — result dataclass from CompensatingTransaction.compensate()
    IrreversibleOperationError — raised when a 'copy' or unknown op cannot be inverted
"""

from core.merge.conflict_detector import ConflictDetector, ConflictReport
from core.merge.merge_prompt_builder import MergePromptBuilder
from core.merge.semantic_merge_interceptor import SemanticMergeInterceptor, MergeResult
from core.merge.patch_reconciler import PatchReconciler, ReconcileResult
from core.merge.merge_telemetry import MergeTelemetry, MergeRecord
from core.merge.compensating_transaction import (
    CompensatingTransaction,
    CompensationResult,
    IrreversibleOperationError,
)

__all__ = [
    "ConflictDetector",
    "ConflictReport",
    "MergePromptBuilder",
    "SemanticMergeInterceptor",
    "MergeResult",
    "PatchReconciler",
    "ReconcileResult",
    "MergeTelemetry",
    "MergeRecord",
    "CompensatingTransaction",
    "CompensationResult",
    "IrreversibleOperationError",
]
