fix(ingest): suppress misleading batch-fallback warn for in-cluster rung
Address claude-review round 3 on #922: - Important: _process_batch emitted "no gateway backend (provider=mistral or EMBEDDING_GATEWAY_URL unset)" for the gateway_only in-cluster rung, where the gateway IS configured — sending operators chasing a non-existent config problem. The real reason is "in-cluster GPU is synchronous-only; batch is the upstream path". Guard the warning with `if not self._gateway_only`. Extended test_gateway_only_processor_never_uses_batch_mode to drive _process_batch and assert _batch_fallback_warned stays False. - Nits: refresh stale ladder in escalation.py module docstring (fast->structured->ocr-incluster->ocr-upstream); fix "minimum='ocr'" -> "ocr-incluster" in a test docstring; rename stale tier="ocr" -> "ocr-upstream" in test_process_tier_oversize_fails_fast. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
6e32bd9561
commit
ebbf905dc5
@@ -467,6 +467,24 @@ async def test_gateway_only_processor_never_uses_batch_mode(monkeypatch):
|
||||
assert await incluster._get_batch_client() is None
|
||||
assert called["n"] == 0 # short-circuited before building anything
|
||||
|
||||
# _process_batch returns None for the gateway-only rung WITHOUT emitting the
|
||||
# misleading "no gateway backend" warning (the gateway IS configured; the rung
|
||||
# is simply synchronous-only). _batch_fallback_warned stays False to prove it.
|
||||
result = await incluster._process_batch(
|
||||
b"%PDF-1.7",
|
||||
"application/pdf",
|
||||
"x.pdf",
|
||||
dict(_IDENTITY),
|
||||
_settings(
|
||||
document_ocr_mode="batch",
|
||||
document_ocr_provider="gateway",
|
||||
embedding_gateway_url="https://gw",
|
||||
document_ocr_incluster_model="surya/surya-ocr-2",
|
||||
),
|
||||
)
|
||||
assert result is None
|
||||
assert incluster._batch_fallback_warned is False
|
||||
|
||||
upstream = ocr.OcrProcessor() # gateway_only=False
|
||||
assert await upstream._get_batch_client() is not None
|
||||
assert called["n"] == 1
|
||||
|
||||
Reference in New Issue
Block a user