Context
The nodes/test suite has accumulated significant technical debt. Tests are brittle, mocks are inconsistent, and a growing number of nodes have been silently excluded from CI rather than fixed. This needs a focused refactoring pass before the problem compounds further.
Current state
In 6d39b26, 14 nodes were temporarily excluded from the test suite in nodes/test/conftest.py due to failing unit tests:
- accessibility_describe
- astra_db
- chroma
- index_search
- llm_bedrock
- llm_deepseek
- llm_gmi_cloud
- llm_openai_api
- llm_qwen
- llm_vision_ollama
- llm_xai
- vectordb_postgres
- weaviate
Goals
Audit all excluded nodes and understand why each test is failing
Fix or rewrite failing tests, with proper mocking (see 1b0c27c for the milvus mock pattern)
Re-enable nodes in the test run — remove entries from skip_nodes as they are fixed
Ensure newly added nodes ship with passing tests so the exclusion list does not grow again
Acceptance criteria
All 14 recently excluded nodes are re-enabled in conftest.py
Each re-enabled node has at least one passing unit test
No new entries added to skip_nodes without a linked follow-up ticket
Context
The nodes/test suite has accumulated significant technical debt. Tests are brittle, mocks are inconsistent, and a growing number of nodes have been silently excluded from CI rather than fixed. This needs a focused refactoring pass before the problem compounds further.
Current state
In 6d39b26, 14 nodes were temporarily excluded from the test suite in nodes/test/conftest.py due to failing unit tests:
Goals
Audit all excluded nodes and understand why each test is failing
Fix or rewrite failing tests, with proper mocking (see 1b0c27c for the milvus mock pattern)
Re-enable nodes in the test run — remove entries from skip_nodes as they are fixed
Ensure newly added nodes ship with passing tests so the exclusion list does not grow again
Acceptance criteria
All 14 recently excluded nodes are re-enabled in conftest.py
Each re-enabled node has at least one passing unit test
No new entries added to skip_nodes without a linked follow-up ticket