refactor(ai): OCR sidecar canonical naming cleanup — typhoon→np-dms, remove hardcoded keys, asyncio.to_thread, ADR-040/041
CI / CD Pipeline / build (push) Successful in 7m37s
CI / CD Pipeline / deploy (push) Failing after 20m15s

This commit is contained in:
2026-06-20 16:37:04 +07:00
parent d418d791a4
commit a80ebef285
70 changed files with 5762 additions and 452 deletions
@@ -76,7 +76,7 @@ export default function OcrEngineSelector() {
</CardHeader>
<CardContent className="space-y-4">
{engines.map((engine) => {
const isTyphoon = engine.engineType === 'typhoon_ocr';
const isAiPowered = engine.engineType === 'np_dms_ocr';
return (
<div
key={engine.engineId}
@@ -95,14 +95,14 @@ export default function OcrEngineSelector() {
</Badge>
)}
{isTyphoon && (
{isAiPowered && (
<Badge variant="secondary" className="text-[10px] h-4 bg-purple-500/10 text-purple-600 dark:text-purple-400 border-purple-500/20">
AI Powered
</Badge>
)}
</div>
<p className="text-xs text-muted-foreground leading-relaxed">
{isTyphoon
{isAiPowered
? 'สกัดภาษาไทยความแม่นยำสูง (95%+) เหมาะสำหรับภาษาไทยผสมอังกฤษ'
: 'เอนจินมาตรฐานเบสไลน์ ประมวลผลรวดเร็วและใช้ทรัพยากรต่ำ'}
</p>
@@ -111,7 +111,7 @@ export default function OcrEngineSelector() {
<Server className="h-3 w-3" />
: {engine.concurrentLimit}
</span>
{isTyphoon && (
{isAiPowered && (
<>
<span className="flex items-center gap-1 text-purple-600 dark:text-purple-400">
<Cpu className="h-3 w-3" />