"""Pipeline and legacy ingestion models."""

from app.models.embedding_record import (
    EmbeddingRecord,
    EmbeddingRecordMetadata,
    embedding_record_id_for_analysis,
    embedding_record_id_for_chunk,
    validate_embedding_record,
)
from app.models.embedding_run import EmbeddingRun, build_run_dedupe_key, build_run_id
from app.models.stored_embedding_record import (
    StoredEmbeddingRecord,
    build_record_dedupe_key,
)
from app.models.enums import ChunkType, EmbedStatus, SourceType
from app.models.mongo_ref import MongoReference, parse_mongo_uri
from app.models.stream_events import (
    CommitAnalysisReadyEvent,
    GraphArtifactReadyEvent,
    STREAM_COMMIT_ANALYSIS_READY,
    STREAM_GRAPH_ARTIFACT_READY,
)
from app.models.validation import (
    parse_commit_analysis_ready,
    parse_graph_artifact_ready,
    parse_stream_payload,
)

__all__ = [
    "ChunkType",
    "CommitAnalysisReadyEvent",
    "EmbedStatus",
    "EmbeddingRecord",
    "EmbeddingRecordMetadata",
    "EmbeddingRun",
    "GraphArtifactReadyEvent",
    "MongoReference",
    "SourceType",
    "StoredEmbeddingRecord",
    "STREAM_COMMIT_ANALYSIS_READY",
    "STREAM_GRAPH_ARTIFACT_READY",
    "build_record_dedupe_key",
    "build_run_dedupe_key",
    "build_run_id",
    "embedding_record_id_for_analysis",
    "embedding_record_id_for_chunk",
    "parse_commit_analysis_ready",
    "parse_graph_artifact_ready",
    "parse_mongo_uri",
    "parse_stream_payload",
    "validate_embedding_record",
]
