from __future__ import annotations


class RagLayer:
    DOCS_DOC_CHUNKS = "D0_DOC_CHUNKS"
    DOCS_DOCUMENT_CATALOG = "D1_DOCUMENT_CATALOG"
    DOCS_FACT_INDEX = "D2_FACT_INDEX"
    DOCS_ENTITY_CATALOG = "D3_ENTITY_CATALOG"
    DOCS_WORKFLOW_INDEX = "D4_WORKFLOW_INDEX"
    DOCS_RELATION_GRAPH = "D5_RELATION_GRAPH"
    DOCS_INTEGRATION_INDEX = "D6_INTEGRATION_INDEX"
    CODE_SOURCE_CHUNKS = "C0_SOURCE_CHUNKS"
    CODE_SYMBOL_CATALOG = "C1_SYMBOL_CATALOG"
    CODE_DEPENDENCY_GRAPH = "C2_DEPENDENCY_GRAPH"
    CODE_ENTRYPOINTS = "C3_ENTRYPOINTS"
    CODE_SEMANTIC_ROLES = "C4_SEMANTIC_ROLES"


class RetrievalMode:
    DOCS = "docs"
    CODE = "code"


class DocKind:
    SPEC = "spec"
    RUNBOOK = "runbook"
    README = "readme"
    MISC = "misc"


class EvidenceType:
    CODE_SPAN = "code_span"
    SYMBOL = "symbol"
    EDGE = "edge"
    DOC_SECTION = "doc_section"
    DOC_FACT = "doc_fact"
