fix(ingest): address review round 1 (Literal kind + log tidy)
- escalation: EscalationDecision.kind is now Literal["hop","suppressed"] so ty catches a bad kind statically (and the processor branch is exhaustive). - processor: simplify the suppressed-escalation log line (no longer repeats to_tier / tier). - registry: clarify _tier_available's ignore_enabled drops the OCR-enabled gate specifically (a future per-tier gate would extend the condition). Deck #324. 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
a27ddb2d5a
commit
f8e8645fc2
@@ -22,6 +22,7 @@ mapping lives in the queue layer, which imports :class:`EscalateError` from here
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass
|
||||
from typing import Literal
|
||||
|
||||
# Cheapest-first. ``llm`` is reserved (see base.DocumentProcessor.tier) and not
|
||||
# wired yet, so it is intentionally absent from the live ladder.
|
||||
@@ -46,7 +47,7 @@ class EscalationDecision:
|
||||
exists at all (no processor registered for it).
|
||||
"""
|
||||
|
||||
kind: str # "hop" | "suppressed"
|
||||
kind: Literal["hop", "suppressed"]
|
||||
to_tier: str
|
||||
reason: str # empty_text | low_confidence
|
||||
|
||||
|
||||
@@ -400,10 +400,11 @@ class ProcessorRegistry:
|
||||
(so OCR stays opt-in and a misconfigured tenant never escalates to a
|
||||
backend it hasn't turned on).
|
||||
|
||||
``ignore_enabled`` drops only the *enabled* gate (not the registered-
|
||||
processor requirement): it answers "would this tier run if it were turned
|
||||
on?" — used to compute the *ideal* escalation target for the
|
||||
what-if-OCR suppressed-escalation signal.
|
||||
``ignore_enabled`` drops only the OCR-enabled gate (not the registered-
|
||||
processor requirement): it answers "would this tier run if OCR were turned
|
||||
on?" — used to compute the *ideal* escalation target for the what-if-OCR
|
||||
suppressed-escalation signal. (Today only ``ocr`` has an enabled gate; a
|
||||
future per-tier gate would extend the condition below.)
|
||||
"""
|
||||
if self._pdf_processor_for_tier(tier) is None:
|
||||
return False
|
||||
|
||||
Reference in New Issue
Block a user