Skip to content

refactor(repositories): split QdrantRepository into per-collection repos

Hải Đặng Hoàng requested to merge feat/hai into main

Break the monolithic qdrant_repo into a base repository plus one class per collection (user_guide, openapi, business_knowledge) to improve readability and maintainability. QdrantRepository is kept as a thin facade that shares a single Qdrant client and delegates to the per-collection repos, preserving full backward compatibility (existing call sites and tests unchanged).

  • base_repo: create_qdrant_client() + BaseCollectionRepository (_ensure_collection / _create_text_index)
  • user_guide_repo, openapi_repo, business_knowledge_repo: per-collection logic
  • config: add BUSINESS_KNOWLEDGE_COLLECTION setting (used by the new repo)

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Merge request reports