haiku.rag/tests
Yiorgis Gozadinos f96a428ef1
Fix defects found reviewing the coverage work
check_source_accessible narrowed its handler to ValueError, but Path.exists
re-raises errno values outside its ignored set (EACCES, ENAMETOOLONG). Those
were swallowed before and now escaped into the rebuild sweep the guard exists
to protect. Catch OSError too.

Restore the arity guard in _common_path_prefix: without it an empty list
raises from min() and a single label yields a prefix covering the whole path.

Two tests would have hung rather than failed on regression (the vacuum skip
and the protected-wait cancellation); both are now bounded. The import
vacuum test raced against the done-callback that discards the task, and now
spies on the call instead, with a negative control.

Replace assertions that could not fail: blank-query search against an empty
corpus, a batch flush counted against an empty table, a picture description
asserting its own input state, and an FS scheme check with nothing on disk to
resolve. The get_model matrix asserted only the returned type across 26
cases and now pins the per-provider settings. The three batching tests now
count flushes, which revealed embed-only writes through chunks_table.add
rather than _flush_rebuild_batch.
2026-07-27 10:44:32 +03:00
..
capabilities Port cite partial-success feedback to capabilities 2026-07-24 15:27:19 +03:00
cassettes Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
chat Constrain the chat prompt container height 2026-07-25 14:40:40 +03:00
data Remove repliqa from test setup 2026-06-01 10:40:52 +03:00
docker Add a docker-compose for integration test services 2026-06-04 11:13:16 +03:00
ingester Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
sandbox Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
store Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
tools Reach and enforce 100% coverage 2026-07-26 20:11:02 +03:00
__init__.py Use LLM-as-a-judge to test QA 2025-06-25 18:18:28 +03:00
conftest.py Consolidate duplicated client-side tests 2026-07-26 13:30:59 +03:00
json_body_serializer.py Use cassette to record and reply llms in qa tests 2025-12-26 15:41:11 +02:00
services.py Add a docker-compose for integration test services 2026-06-04 11:13:16 +03:00
test_ask_images.py Accept images on ask/analyze 2026-07-25 10:23:55 +03:00
test_cascade_delete.py Skip embedding validation on document deletion 2026-07-22 10:48:00 +03:00
test_chunk.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_chunker.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_cli.py Accept images on CLI ask/analyze and MCP tools 2026-07-25 10:35:25 +03:00
test_client.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_client_analyze.py replace haiku.skills with native Pydantic AI capabilities 2026-07-24 15:26:17 +03:00
test_config.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_context.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_context_enhancement.py Shrink the docling-serve context-expansion cassette 2026-06-29 15:15:26 +03:00
test_converters.py Reach and enforce 100% coverage 2026-07-26 20:11:02 +03:00
test_database_autocreate.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_docling_serve_client.py Cover MCP, ingester and converter error paths 2026-07-26 19:14:26 +03:00
test_doctor.py Reach and enforce 100% coverage 2026-07-26 20:11:02 +03:00
test_document.py Consolidate duplicated client-side tests 2026-07-26 13:30:59 +03:00
test_download_models.py Reach and enforce 100% coverage 2026-07-26 20:11:02 +03:00
test_duplicate_ingestion.py Re-check URI under the write lock to prevent duplicate ingestion 2026-07-08 11:26:45 +03:00
test_embedder.py Pool HTTP clients for vLLM embedding and vLLM/Jina reranking 2026-07-09 10:32:44 +03:00
test_embedder_config.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_filter.py Rename document_meta identity column document_id to id 2026-07-08 16:32:55 +03:00
test_info.py Harden history against tag annotation failures; document tag restore 2026-07-16 13:11:34 +03:00
test_inspector.py Surface database-open errors in the TUIs 2026-07-25 11:27:29 +03:00
test_lancedb_connection.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_logging.py Additional tests 2026-02-13 18:08:46 +02:00
test_mcp.py Cover MCP, ingester and converter error paths 2026-07-26 19:14:26 +03:00
test_pdf_attachments.py compare off-loop work against actual event-loop thread, fix ty 2026-06-22 10:17:02 +03:00
test_pdf_concurrency.py Serialize all in-process pdfium access under a shared lock 2026-06-14 10:50:42 +03:00
test_pdf_split.py Cover MCP, ingester and converter error paths 2026-07-26 19:14:26 +03:00
test_picture_description.py cover picture-description provider and rebuild edge cases 2026-05-05 14:20:37 +03:00
test_picture_in_context.py Reach and enforce 100% coverage 2026-07-26 20:11:02 +03:00
test_processing.py Normalize pragma comments to the codebase's single-line form 2026-07-26 20:18:19 +03:00
test_reader.py async versions for convert_file() convert_text() 2025-11-26 17:46:25 +02:00
test_rebuild.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_reranker.py Cover MCP, ingester and converter error paths 2026-07-26 19:14:26 +03:00
test_s3_integration.py Clean up S3 test data per-test to keep SeaweedFS writable 2026-06-26 16:41:20 +03:00
test_s3_source.py canonical metadata keys: source_revision + content_type, bump to 0.50.0 2026-05-26 11:43:30 +03:00
test_search.py Cover get_model provider branches and visualize_chunk edge paths 2026-07-26 19:23:54 +03:00
test_settings.py Cover store engine and repository paths 2026-07-26 19:36:37 +03:00
test_telemetry.py Route eval scripts through the shared telemetry configure 2026-07-10 11:38:33 +03:00
test_title_generation.py Reach and enforce 100% coverage 2026-07-26 20:11:02 +03:00
test_utils.py Fix defects found reviewing the coverage work 2026-07-27 10:44:32 +03:00
test_vacuum_debounce.py Serialize tag operations, vacuum, and metadata refresh with writes 2026-07-16 12:32:57 +03:00
test_versioning.py Throttle background auto-vacuum to at most once per 5 minutes 2026-06-12 10:17:18 +03:00