Use route-owned formatter style choices

This commit is contained in:
2026-06-27 14:04:00 +02:00
parent 4fdef3875b
commit c34886b362
4 changed files with 31 additions and 5 deletions
+14 -1
View File
@@ -11,6 +11,19 @@ except ImportError: # pragma: no cover - plain-script smoke tests
import formatter_target as target_policy
STYLE_MODES = ("preserve", "photographic", "minimal")
DEFAULT_STYLE_MODE = "preserve"
def style_mode_choices() -> list[str]:
return list(STYLE_MODES)
def normalize_style_mode(value: Any) -> str:
mode = str(value or "").strip().lower().replace("-", "_").replace(" ", "_")
return mode if mode in STYLE_MODES else DEFAULT_STYLE_MODE
@dataclass(frozen=True)
class KreaFormatRequest:
source_text: str
@@ -51,7 +64,7 @@ class KreaFormatDependencies:
def format_krea2_prompt_result(request: KreaFormatRequest, deps: KreaFormatDependencies) -> KreaFormatRoute:
detail_level = detail_policy.normalize_detail_level(request.detail_level)
style_mode = request.style_mode if request.style_mode in ("preserve", "photographic", "minimal") else "preserve"
style_mode = normalize_style_mode(request.style_mode)
target = target_policy.normalize_target(request.target)
row, method = deps.row_from_inputs(request.source_text, request.metadata_json, request.input_hint)