fix: implement wipe_all_ai_caches, harden blank_start imports, purge root garbage
- Implement wipe_all_ai_caches() in qdrant_memory.py (was a phantom function referenced but never created, causing ERROR on every blank_start) - Move imports OUT of try/except in bot_flow.py blank_start block so that ImportError/NameError crash loudly instead of being silently swallowed - Add Production Integrity Guard (check_production_integrity) to detect MagicMock poisoning at startup - Add missing TelepathicEngine import in bot_flow.py - Fix conftest.py: move sys.modules monkeypatching into session fixture to prevent global environment poisoning on test import - Add TDD test test_wipe_all_ai_caches.py proving importability and correct wipe behavior across all 8 global Qdrant collections - Delete root garbage: patch_sae_tests.py, test_debug.py, test_mock.py, tmp_bot_flow.py, test_e2e_output*.txt
This commit is contained in:
@@ -7,16 +7,27 @@ import pytest
|
||||
|
||||
from GramAddict.core import utils
|
||||
|
||||
# Force Qdrant mocking globally across ALL E2E tests so we never
|
||||
# block on connection refused trying to hit localhost:6344
|
||||
mock_qdrant = MagicMock()
|
||||
|
||||
# Setup correct return types for dimension check warnings in qdrant_memory
|
||||
mock_collection = MagicMock()
|
||||
mock_collection.config.params.vectors.size = 768
|
||||
mock_qdrant.get_collection.return_value = mock_collection
|
||||
@pytest.fixture(scope="session", autouse=True)
|
||||
def global_qdrant_mock():
|
||||
"""
|
||||
Force Qdrant mocking globally across ALL E2E tests so we never
|
||||
block on connection refused trying to hit localhost:6344.
|
||||
Moved to a fixture to avoid poisoning the global sys.modules on import.
|
||||
"""
|
||||
mock_qdrant = MagicMock()
|
||||
|
||||
sys.modules["qdrant_client"].QdrantClient = MagicMock(return_value=mock_qdrant)
|
||||
# Setup correct return types for dimension check warnings in qdrant_memory
|
||||
mock_collection = MagicMock()
|
||||
mock_collection.config.params.vectors.size = 768
|
||||
mock_qdrant.get_collection.return_value = mock_collection
|
||||
|
||||
# We use a wrapper to ensure the mock is only active when we want it
|
||||
sys.modules["qdrant_client"].QdrantClient = MagicMock(return_value=mock_qdrant)
|
||||
|
||||
yield mock_qdrant
|
||||
|
||||
# Optional: cleanup if needed, but for E2E it's usually fine to keep it for the session
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
|
||||
Reference in New Issue
Block a user