{
  "id": "internal_rag",
  "label": "Internal RAG Canonical",
  "phase": "phase-03",
  "category": "cognitive_flow",
  "status": "ACTIVE_DH_MIRROR",
  "purpose": "Define the internal evidence retrieval layer that DEVON-DEV must use before model interpretation, planning, patch drafting, validation reasoning or recovery analysis.",
  "function": "Force interpretation to be grounded in internal material evidence by retrieving DH, canon, JSON mirrors, project files, logs, backups, patches, runtime snapshots, policies and memory before any LLM output is treated as usable context.",
  "service_target": {
    "technology": "Python Internal RAG Service",
    "suggested_container": "devon-rag-service",
    "components": [
      "retrieval_pipeline",
      "context_builder",
      "evidence_resolver"
    ],
    "material_status": "MISSING",
    "decision_authority": "NONE_FSM_DECIDES"
  },
  "technology_requirements": [
    {
      "technology": "Python Internal RAG Service",
      "required_for": "Retrieve internal DEVON-DEV evidence before interpretation, planning, patch drafting, validation reasoning or recovery analysis.",
      "required_by_phase": "phase-03",
      "required_by_category": "internal_rag",
      "required_by_buckets": [
        "Prerequisites",
        "Installation",
        "Configuration",
        "Validation",
        "Observable Evidence",
        "Failure Modes & Recovery",
        "Completion & Promotion"
      ],
      "expected_version": "MISSING until service implementation and benchmark",
      "validation_command": "MISSING until devon-rag-service exists with retrieval pipeline, context builder and evidence resolver",
      "evidence_path": "/home/yeff/public_html/devon/canon/execution/state/dh_sources/internal_rag_canonical.json",
      "status_source": "Documentation Hub + future devon-rag-service health check + Evidence Store",
      "blocking_if_missing": true,
      "failure_impact": "Without Internal RAG, DEVON-DEV interpretation can fall back to memory, prompt inference or stale assumptions instead of current project evidence."
    }
  ],
  "depends_on": [
    "cfc",
    "local_llm_runtime",
    "qwen_coder_model",
    "qwen_data_interpreter",
    "architecture_source_registry",
    "artifact_registry",
    "validation_matrix",
    "fsm_absolute_decision"
  ],
  "used_by": [
    "retrieval_engine",
    "embeddings_engine",
    "vector_index",
    "evidence_store",
    "knowledge_conflict_resolver",
    "prompt_governance",
    "prompt_instruction_assembly",
    "observability_core"
  ]
}
