frankensearch-core 0.2.2

Core traits, types, and error types for frankensearch
//! Core traits, types, and error types for the frankensearch hybrid search library.
//!
//! This crate defines the shared interfaces (`Embedder`, `Reranker`,
//! `LexicalRead`/`LexicalWrite`),
//! result types (`ScoredResult`, `VectorHit`, `FusedHit`), error types (`SearchError`),
//! text canonicalization, and query classification used across all frankensearch crates.
//!
//! It has minimal external dependencies and is intended to be depended on by every
//! other crate in the workspace.

pub mod activation;
#[cfg(feature = "bench-internals")]
pub mod bench_support;
pub mod cache;
pub mod canonicalize;
pub mod collectors;
pub mod commit_replay;
pub mod config;
pub mod contract_sanity;
pub mod daemon;
pub mod decision_plane;
pub mod distributed_observability;
pub mod e2e_artifact;
pub mod error;
pub mod explanation;
pub mod filter;
pub mod fingerprint;
pub mod generation;
pub mod graph;
pub mod host_adapter;
pub mod metrics_eval;
pub mod observability_lint;
pub mod parsed_query;
pub mod platform_dirs;
pub mod query_class;
pub mod recovery_plan;
pub mod repair;
pub mod rfc3339;
pub mod shadow;
pub mod simd;
pub mod time_travel;
pub mod tracing_config;
pub mod traits;
pub mod types;

pub use activation::{
    ActiveGeneration, ArtifactVerification, ArtifactVerifier, GenerationController, InvariantCheck,
    check_invariants,
};
pub use cache::{CachePolicy, NoCache, S3FifoCache, S3FifoConfig};
pub use canonicalize::{Canonicalizer, DefaultCanonicalizer};
pub use collectors::{
    CollectorConfig, CollectorSnapshot, DEFAULT_COLLECTION_INTERVAL_MS,
    DEFAULT_SEARCH_STREAM_CAPACITY, EmbedderTier, EmbeddingCollectorSample, EmbeddingStage,
    EmbeddingStatus, IndexCollectorSample, IndexInventory, IndexOperation, IndexStatus,
    LifecycleSeverity, LifecycleState, LiveSearchFrame, LiveSearchStreamEmitter,
    MIN_COLLECTION_INTERVAL_MS, PressureProfile, QuantizationMode, ResourceCollectorSample,
    RuntimeMetricsCollector, SearchCollectorSample, SearchEventPhase, SearchStreamConfig,
    SearchStreamHealth, SearchStreamMode, SearchStreamPublishOutcome, TELEMETRY_SCHEMA_VERSION,
    TelemetryCorrelation, TelemetryEmbedderInfo, TelemetryEmbeddingJob, TelemetryEnvelope,
    TelemetryEvent, TelemetryInstance, TelemetryQueryClass, TelemetryResourceSample,
    TelemetrySearchMetrics, TelemetrySearchQuery, TelemetrySearchResults,
};
pub use commit_replay::{
    CommitEntry, CommitOutcome, CommitReplayEngine, DocumentOp, ReplayConsumer, ReplayPolicy,
    ReplayWatermark, SkipReason,
};
pub use config::{
    FusionStrategy, TwoTierConfig, TwoTierMetrics, ZERO_SIGNAL_SCHEMA_VERSION, ZeroSignalReason,
    ZeroSignalState,
};
pub use contract_sanity::{
    AdapterContractResult, CompatibilityStatus, ContractSanityChecker, ContractSanityReport,
    ContractViolationDiagnostic, MAX_SCHEMA_VERSION_LAG, ViolationSeverity, classify_version,
    classify_version_against, replay_command_for_reason,
};
pub use daemon::{
    AttestedDaemonEmbeddingResponseV1, DAEMON_ATTESTATION_SCHEMA_V1, DAEMON_CHALLENGE_SCHEMA_V1,
    DAEMON_CONNECTION_IDENTITY_SCHEMA_V1, DaemonChallengeV1, DaemonClient,
    DaemonConnectionIdentityV1, DaemonEmbeddingAttestationV1, DaemonError, DaemonOperationV1,
    DaemonRetryConfig, MIN_DAEMON_ATTESTATION_KEY_BYTES, apply_jitter,
    daemon_embedding_payload_sha256, daemon_endpoint_fingerprint, daemon_executable_fingerprint,
    daemon_ordered_request_sha256, next_request_id,
};
pub use decision_plane::{
    CalibrationFallbackReason, CalibrationStatus, CalibrationThresholds, DecisionContext,
    DecisionOutcome, EvidenceEventType, EvidenceRecord, ExhaustionPolicy, LossVector, LossWeights,
    PipelineAction, PipelineState, ReasonCode, ResourceBudget, ResourceUsage, Severity,
};
pub use distributed_observability::{
    DistributedEvent, DistributedMetrics, emit_event, service_state_label,
};
pub use e2e_artifact::{
    ArtifactEmissionInput, ArtifactEntry, ClockMode, Correlation, DeterminismTier, DiffEntry,
    E2E_ARTIFACT_ARTIFACTS_INDEX_JSON, E2E_ARTIFACT_ENV_JSON, E2E_ARTIFACT_MANIFEST_JSON,
    E2E_ARTIFACT_REPLAY_COMMAND_TXT, E2E_ARTIFACT_REPLAY_JSONL, E2E_ARTIFACT_REPRO_LOCK,
    E2E_ARTIFACT_STRUCTURED_EVENTS_JSONL, E2E_ARTIFACT_TERMINAL_TRANSCRIPT_TXT, E2E_SCHEMA_EVENT,
    E2E_SCHEMA_MANIFEST, E2E_SCHEMA_ORACLE_REPORT, E2E_SCHEMA_REPLAY, E2E_SCHEMA_SNAPSHOT_DIFF,
    E2E_SCHEMA_VERSION, E2eArtifactEmitterError, E2eArtifactValidationError, E2eEnvelope,
    E2eEventType, E2eOutcome, E2eSeverity, EventBody, ExitStatus, LaneReport, ManifestBody,
    ModelVersion, OracleReportBody, OracleVerdictRecord, Platform, ReplayBody, ReplayEventType,
    ReportTotals, SnapshotDiffBody, Suite, build_artifact_entries, build_core_manifest_artifacts,
    normalize_artifact_file_name, normalize_replay_command, render_artifacts_index,
    sha256_checksum, validate_envelope, validate_event_body, validate_event_envelope,
    validate_manifest_body, validate_manifest_envelope,
};
pub use error::{SearchError, SearchResult};
pub use explanation::{
    ExplainedSource, ExplanationPhase, HitExplanation, RankMovement, ScoreComponent,
};
pub use filter::{
    BitsetFilter, DateRangeFilter, DocTypeFilter, FilterChain, FilterMode, PredicateFilter,
    SearchFilter, fnv1a_hash,
};
pub use fingerprint::{
    DEFAULT_SEMANTIC_CHANGE_THRESHOLD, DocumentFingerprint, SIGNIFICANT_CHAR_COUNT_CHANGE_THRESHOLD,
};
pub use generation::{
    ANTI_ROLLBACK_FLOOR_SCHEMA_V1, ActivationInvariant, ActivationManifestV1,
    AntiRollbackFloorRecordV1, ArtifactGenerationIdentityV1, AuthorityFloorV1, AuthorityRefV1,
    AuthoritySlotV1, CommitRange, EMBEDDING_INPUT_CONTRACT_SCHEMA_V1,
    EMBEDDING_PRODUCER_ATTESTATION_SCHEMA_V1, EMBEDDING_SPACE_IDENTITY_SCHEMA_V1, EmbedderRevision,
    EmbedderTierTag, EmbeddingArtifactIdentityV1, EmbeddingIdentityBundleV1,
    EmbeddingInputContractV1, EmbeddingProducerAttestationV1, EmbeddingProjectionV1,
    EmbeddingSpaceIdentityV1, EmbeddingSpaceKindV1,
    FOREIGN_PRODUCER_CONFORMANCE_CERTIFICATE_SCHEMA_V1, ForeignProducerConformanceCertificateV1,
    FrozenEmbeddingIdentityBundleV1, GENERATION_ACTIVATION_MANIFEST_MAX_BYTES_V1,
    GENERATION_AUTHORITY_SCHEMA_V1, GENERATION_AUTHORITY_SLOT_BYTES_V1,
    GENERATION_LOCK_FRAME_BYTES_V1, GenerationAuthorityActionV1, GenerationAuthorityErrorV1,
    GenerationComponentReceiptV1, GenerationComponentReceiptsV1, GenerationLockFrameKindV1,
    GenerationLockFrameV1, GenerationManifest, GenerationRootSecurityProfileV1,
    GoldenVectorCertificateV1, HashControlProfileV1, InMemoryAntiRollbackFloorStoreV1,
    InvariantKind, LexicalArtifact, MANIFEST_SCHEMA_VERSION, ProducerCompatibilityErrorV1,
    ProducerCompatibilityKindV1, ProducerCompatibilityWitnessV1, QuantizationFormat,
    RepairDescriptor, TrustedProducerConformanceContextV1, VECTOR_STORAGE_IDENTITY_SCHEMA_V1,
    ValidationFinding, ValidationResult, VectorArtifact, VectorStorageIdentityV1,
    VerifiedGoldenConformanceManifestV1, compute_manifest_hash, require_valid,
    resolve_authority_slot_frames_v1, resolve_authority_slots_at_floor_v1,
    resolve_authority_slots_v1, resolve_authority_slots_with_locks_v1,
    resolve_authority_slots_with_profile_v1, validate_manifest,
    verify_authority_manifest_reference_v1,
};
pub use graph::{DocumentGraph, EdgeType, GraphDocId, GraphEdge};
pub use host_adapter::{
    AdapterIdentity, AdapterLifecycleEvent, AdapterSink, CanonicalHostProject, ConformanceConfig,
    ConformanceHarness, ConformanceReport, ConformanceViolation,
    DEFAULT_REDACTION_FORBIDDEN_PATTERNS, ForwardingHostAdapter, HostAdapter, NoopAdapterSink,
};
pub use metrics_eval::{
    BootstrapCi, BootstrapComparison, QualityComparison, QualityMetric, QualityMetricComparison,
    QualityMetricSamples, RunStabilityVerdict, bootstrap_ci, bootstrap_compare,
    coefficient_of_variation, detect_outliers_iqr, map_at_k, mrr, ndcg_at_k, quality_comparison,
    recall_at_k, trim_outliers, verify_run_stability,
};
pub use observability_lint::{
    LintFinding, LintReport, LintRuleId, LintSeverity, lint_component_coverage, lint_record,
    lint_stream,
};
pub use parsed_query::ParsedQuery;
pub use recovery_plan::{
    ARG_INDEX_DIR, ARG_MODEL_BUNDLE, ARG_SOURCE_DIR, COMPLETE_COVERAGE_PPM, InteractionPolicy,
    MAX_MODEL_ACQUISITION_AUTHORIZATION_LIFETIME_SECONDS,
    MODEL_ACQUISITION_AUTHORIZATION_SCHEMA_VERSION, ModelAcquisitionAuthorization,
    ModelAcquisitionAuthorizationSchemaVersion, ModelAcquisitionSource, ModelAcquisitionTarget,
    ModelDestinationClass, NetworkPolicy, RECOVERY_PLAN_SCHEMA_VERSION, RecoveryAction,
    RecoveryContractError, RecoveryPlan, RecoveryPlanSchemaVersion, RecoveryPolicy,
    RecoveryRequest, RequestMode, Retryability, SemanticProvenance, SemanticReadiness,
    SemanticResponseContract, TrustedRecoveryContext, UntrustedRecoveryPlan,
    VerifiedSemanticProvenance, plan,
};
pub use repair::{
    CorruptionEvent, CorruptionPolicy, DegradedReason, DetectionMethod, RepairAttempt,
    RepairOrchestrator, RepairOutcome, RepairProvider, ServiceState,
};
pub use shadow::{
    AlwaysAdmitShadowLoad, AtomicShadowLoadProbe, SHADOW_ARTIFACT_DIRECTORY,
    SHADOW_DEGRADATION_SCHEMA_VERSION, SHADOW_DEGRADATIONS_FILE, SHADOW_DIVERGENCE_SCHEMA_VERSION,
    SHADOW_DIVERGENCES_FILE, SHADOW_OBSERVATION_SCHEMA_VERSION, SHADOW_OBSERVATIONS_FILE,
    SHADOW_SAMPLE_DENOMINATOR, ShadowArtifactSummary, ShadowDegradationKind,
    ShadowDegradationRecord, ShadowDivergenceClass, ShadowDivergenceRecord, ShadowDocument,
    ShadowLexical, ShadowLexicalConfig, ShadowLexicalObserver, ShadowLoadProbe,
    ShadowObservationRecord, ShadowQuery, ShadowRankedHit, ShadowShedReason, ShadowStatus,
    append_shadow_degradation, compute_shadow_corpus_hash,
};
pub use simd::scale_f32_in_place;
pub use time_travel::{GenerationHistory, RetainedGeneration, RetentionPolicy, TimeTravelResult};

pub use asupersync::Cx;
pub use query_class::QueryClass;
pub use traits::{
    Embedder, IdentityBoundEmbedding, LexicalCandidateBatch, LexicalHydrationContext, LexicalRead,
    LexicalWrite, MetricsExporter, ModelCategory, ModelInfo, ModelTier, NoOpMetricsExporter,
    RerankDocument, RerankScore, Reranker, SearchFuture, SharedMetricsExporter, SyncEmbed,
    SyncEmbedderAdapter, SyncRerank, SyncRerankerAdapter, cosine_similarity, l2_normalize,
    truncate_embedding,
};
pub use types::{
    BoundQueryEmbedding, CoverageBasisV1, CoverageCountsV1, CoverageRelationV1, CoverageScopeV1,
    CoverageTierV1, CoverageUnknownReasonV1, CoverageUnverifiedReasonV1, CoverageWitnessV1,
    CrossScopeCoverageEvidenceV1, CrossTierUniverseEvidenceV1, DerivedRetrievalTopologyV1, DocId,
    EmbeddingMetrics, FusedHit, IndexMetrics, IndexableDocument, PhaseMetrics, RankChanges,
    RealizedTierCoverageV1, RetrievalIntentV1, RetrievalTopology, ScoreSource, ScoredResult,
    SearchCoverageV1, SearchMetrics, SearchMode, SearchPhase, SpaceIdentityAdmission,
    TIER_COVERAGE_SCHEMA_VERSION_V1, TierCoveragePairV1, TierCoverageRealizationV1,
    TierCoverageRequestV1, TierCoverageV1, TierQueryCoverageV1, TieredQueryEmbeddings,
    TrustedTierCoverageContextV1, UntrustedDerivedRetrievalTopologyV1, UntrustedTierCoveragePairV1,
    UntrustedTierCoverageV1, VectorHit, is_hash_generation_id, retrieval_topology_fits_request,
};