haiku.rag/tests/ingester
Chris McDonough 22ab79c492 Fix shutdown-order bug: close source clients after workers stop
Workers share the same Source instances as pollers and use them for
fetch(). PollerManager.stop() was closing httpx clients before the
worker pool drained, so in-flight fetches during the shutdown grace
hit a closed client.

- Move source closing out of stop() into a separate close_sources()
- Call close_sources() after _stop_pool() in both serve() and
  run_batch()
- Promote aclose() to the Source protocol with no-op defaults for
  FS and S3, removing the hasattr duck-typing
2026-06-01 09:55:39 -04:00
..
__init__.py ingester: add source-adapter scaffolding + FS source 2026-05-26 11:41:53 +03:00
test_api.py Probe docling-serve only when converter or chunker uses it 2026-05-27 15:18:25 +03:00
test_circuit_breaker.py additional config, pollers, serve 2026-05-26 11:41:54 +03:00
test_cli.py Surface failed discovery sweeps in run-batch 2026-06-01 10:27:31 +03:00
test_config.py Collapse worker_count and max_concurrent into worker_count 2026-05-27 12:48:14 +03:00
test_fs_source.py Split snapshot APIs and resolve_fetcher by intent 2026-05-27 14:39:54 +03:00
test_http_source.py Split snapshot APIs and resolve_fetcher by intent 2026-05-27 14:39:54 +03:00
test_pipeline.py Backfill ingester test gaps and drop unneeded retry clamp 2026-05-27 14:24:22 +03:00
test_pollers.py Skip FS DELETE enqueue when the file is already back 2026-05-27 15:18:46 +03:00
test_queue.py Auto-prune dead jobs when a sibling DELETE succeeds 2026-05-27 17:17:01 +03:00
test_resolve_fetcher.py Split snapshot APIs and resolve_fetcher by intent 2026-05-27 14:39:54 +03:00
test_revision_round_trip.py record cassettes against new fixtures, fix stale assertions 2026-05-26 11:44:46 +03:00
test_run_batch.py Surface failed discovery sweeps in run-batch 2026-06-01 10:27:31 +03:00
test_s3_source.py Split snapshot APIs and resolve_fetcher by intent 2026-05-27 14:39:54 +03:00
test_serve_integration.py Collapse worker_count and max_concurrent into worker_count 2026-05-27 12:48:14 +03:00
test_sources_base.py Fix shutdown-order bug: close source clients after workers stop 2026-06-01 09:55:39 -04:00
test_webdav_source.py Split snapshot APIs and resolve_fetcher by intent 2026-05-27 14:39:54 +03:00
test_workers.py Auto-prune dead jobs when a sibling DELETE succeeds 2026-05-27 17:17:01 +03:00