"""Unified Search plugin contract — public interface for cross-plugin access.""" from __future__ import annotations from app.plugins.builtins.unified_search.embedding import generate_embedding from app.plugins.builtins.unified_search.search_engine import hybrid_search class UnifiedSearchContract: """Public contract for the unified_search plugin.""" generate_embedding = staticmethod(generate_embedding) hybrid_search = staticmethod(hybrid_search) _contract_instance: UnifiedSearchContract | None = None def get_contract() -> UnifiedSearchContract: global _contract_instance if _contract_instance is None: _contract_instance = UnifiedSearchContract() return _contract_instance