feat(translation): acceptance gate on Interpreter detection confidence (#1376) #208
Reference in New Issue
Block a user
Delete Branch "dev"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ships the translation accept/reject gate to production.
Interpreter now returns a real per-detection confidence (source stays
"auto"), so curator can reject the mis-detections it was previously storing blindly — e.g. a short English title mis-labelled as German and rewritten into the archive.The gate consumes only Interpreter's own reported detection — curator does no language detection of its own (Scribe rule 133). A field is stored when the engine actually translated it and either the detected language is CJK (script-detected, trusted outright — ja/ko/zh incl. pure-kanji Japanese that lands as zh ~0.75) or the reported confidence clears the latin-script floor
_MIN_LATIN_CONFIDENCE = 0.80. A latin detection below the floor keeps the original and marks the post handled; a missing confidence fails open.Floor calibrated 2026-07-09 against fresh probes once Interpreter emitted real langdetect: genuine German at 1.0, a correctly-detected-but-ambiguous latin string at 0.86 → floor set to 0.80 (below that band). Real langdetect also fixed the original mis-flag at the source, so this floor is a safety net, not the primary fix.
Commits:
7ddf942feat(translation): accept/reject gate on Interpreter's detection confidence6ab7fd5tune(translation): set latin acceptance floor to 0.80Tests: pinned interpreter-client test asserts
sourcestays"auto"; new pure-unit gate tests (CJK trusted / latin floor / case-insensitive / fail-open) in the fast lane; end-to-end reject-low-latin, accept-high-latin, accept-low-cjk sweeps. CI green on dev tip (run 2089).Post-merge ops: curator
:latestredeploy activates the gate; then press "Translate now" once to drain the untranslated backlog.🤖 Generated with Claude Code
https://claude.ai/code/session_01CgZP9v2otxVJymiYsnVuMy