feat: translate AgenticReadinessTab and add translation infrastructure

Translate AgenticReadinessTab from Spanish to English with i18next support:
- Replaced ~150 hardcoded Spanish strings with translation keys
- Added comprehensive translation keys to en.json and es.json
- Organized translations under agenticReadiness.* namespace
- Includes: methodology, tier explanations, factor descriptions, UI labels

Translation structure:
- agenticReadiness.methodology: Index definition and categories
- agenticReadiness.tiers: AUTOMATE, ASSIST, AUGMENT, HUMAN-ONLY
- agenticReadiness.factors: Predictability, simplicity, volume, ROI
- agenticReadiness.redFlags: CV, transfer, volume, data quality
- agenticReadiness.table: Headers, filters, sorting
- agenticReadiness.summary: Volume metrics and interpretations

All UI strings now support EN/ES language switching.
Frontend compiles successfully with no errors.

https://claude.ai/code/session_01GNbnkFoESkRcnPr3bLCYDg
This commit is contained in:
Claude
2026-02-07 17:31:40 +00:00
parent a3a645008c
commit 76ed597e47
3 changed files with 654 additions and 40 deletions

View File

@@ -532,7 +532,254 @@
"hideDetail": "Ocultar detalle",
"viewDetail": "Ver detalle",
"collapseAll": "Colapsar todas",
"expandAll": "Expandir todas"
"expandAll": "Expandir todas",
"tierLabels": {
"automate": "Automatizar",
"assist": "Asistir",
"augment": "Optimizar",
"human": "Humano"
},
"payback": {
"seeWave34": "Ver Wave 3-4",
"notRecoverable": "No recuperable",
"immediate": "Inmediato",
"recoversWithAutomation": "Esta inversión se recupera con las waves de automatización (W3-W4). El payback se calcula sobre el roadmap completo, no sobre waves habilitadoras aisladas.",
"savingsDoNotCoverRecurring": "El ahorro anual no supera los costes recurrentes.",
"moderateRecoveryPeriod": "Periodo de recuperación moderado.",
"longRecoveryPeriod": "Periodo de recuperación largo. Considerar escenario menos ambicioso."
},
"waves": {
"wave1Name": "Wave 1",
"wave1Title": "FOUNDATION",
"wave1Quarter": "Q1-Q2 2026",
"wave1Condition": "",
"wave1Provider": "Beyond Consulting o tercero especializado",
"wave1RiskDescription": "Consultoría con entregables tangibles. No requiere tecnología.",
"wave2Name": "Wave 2",
"wave2Title": "AUGMENT",
"wave2Quarter": "Q3 2026",
"wave2Condition": "Requiere CV ≤75% post-Wave 1 en colas target",
"wave2Provider": "BEYOND (KB + Scripts IA)",
"wave2RiskDescription": "Herramientas de soporte, bajo riesgo de integración.",
"wave3Name": "Wave 3",
"wave3Title": "ASSIST",
"wave3Quarter": "Q4 2026",
"wave3Condition": "Requiere Score ≥5.5 Y CV ≤90% Y Transfer ≤30%",
"wave3Provider": "BEYOND (Copilot + Routing IA)",
"wave3RiskDescription": "Integración con plataforma contact center. Piloto 4 semanas mitiga.",
"wave4Name": "Wave 4",
"wave4Title": "AUTOMATE",
"wave4Quarter": "Q1-Q2 2027",
"wave4Condition": "Requiere Score ≥7.5 Y CV ≤75% Y Transfer ≤20% Y FCR ≥50%",
"wave4Provider": "BEYOND (Voicebot + IVR + Chatbot)",
"wave4RiskDescription": "Muy condicional. Requiere éxito demostrado en Waves 1-3."
},
"initiatives": {
"wave1Init1": "Análisis de variabilidad y red flags",
"wave1Init1Kpi": "Mapear causas de CV >75% y Transfer >20%",
"wave1Init2": "Rediseño y documentación de procesos",
"wave1Init2Kpi": "Scripts estandarizados para 80% casuística",
"wave1Init3": "Training y certificación de agentes",
"wave1Init3Kpi": "Certificación 90% agentes, adherencia >85%",
"wave2Init1": "Knowledge Base contextual",
"wave2Init1Kpi": "Hold time -25%, uso KB +40%",
"wave2Init2": "Scripts dinámicos con IA",
"wave2Init2Kpi": "Adherencia scripts +30%",
"wave3Init1": "Agent Assist / Copilot IA",
"wave3Init1Kpi": "AHT -30%, sugerencias aceptadas >60%",
"wave3Init2": "Automatización parcial (FAQs, routing)",
"wave3Init2Kpi": "Deflection rate 15%",
"wave4Init1": "Voicebot/Chatbot transaccional",
"wave4Init1Kpi": "Contención 70%+, CSAT ≥4/5",
"wave4Init2": "IVR inteligente con NLU",
"wave4Init2Kpi": "Pre-calificación 80%+, transferencia warm"
},
"successCriteriaTemplates": {
"wave1Criterion1": "CV AHT ≤75% en al menos {{count}} colas de alto volumen",
"wave1Criterion2": "Transfer ≤20% global",
"wave1Criterion3": "Red flags eliminados en colas prioritarias",
"wave1Criterion4": "Al menos {{count}} colas migran de Tier 4 → Tier 3",
"wave2Criterion1": "Score promedio sube de 3.5-5.5 → ≥5.5",
"wave2Criterion2": "AHT -15% vs baseline",
"wave2Criterion3": "CV ≤90% en colas target",
"wave2Criterion4": "{{count}} colas migran de Tier 3 → Tier 2",
"wave3Criterion1": "Score promedio sube de 5.5-7.5 → ≥7.5",
"wave3Criterion2": "AHT -30% vs baseline Wave 2",
"wave3Criterion3": "CV ≤75% en colas target",
"wave3Criterion4": "Transfer ≤20%",
"wave3Criterion5": "{{count}} colas migran de Tier 2 → Tier 1",
"wave4Criterion1": "Contención ≥70% en colas automatizadas",
"wave4Criterion2": "CSAT se mantiene o mejora (≥4/5)",
"wave4Criterion3": "Escalado a humano <30%",
"wave4Criterion4": "ROI acumulado >300%"
},
"scenarios": {
"conservativeName": "Conservador",
"conservativeDesc": "FOUNDATION + AUGMENT (Wave 1-2)",
"moderateName": "Moderado",
"moderateDesc": "FOUNDATION + AUGMENT + ASSIST (Wave 1-3)",
"aggressiveName": "Agresivo",
"aggressiveDesc": "Roadmap completo (Wave 1-4)",
"recommended": "Recomendado",
"enablerRecommendation": "Recomendado como HABILITADOR",
"partialEnabler": "Habilitador parcial",
"aspirational": "Aspiracional",
"notProfitable": "No rentable con el volumen actual",
"scenariosTitle": "Escenarios de Inversión",
"scenariosSubtitle": "Comparación de opciones según nivel de compromiso",
"scenariosTooltip": "ROI basado en benchmarks de industria. El ROI ajustado considera factores de riesgo de implementación.",
"scenario": "Escenario",
"investment": "Inversión",
"recurring": "Recurrente",
"savings": "Ahorro",
"adjusted": "ajust.",
"margin": "Margen",
"payback": "Payback",
"roi3y": "ROI 3a",
"risk": "Riesgo",
"enabler": "Habilitador",
"prerequisite": "Prerrequisito",
"roiCalculatedOn": "El ROI se calcula sobre el roadmap completo",
"enablerLongDesc": "Waves habilitadoras - su valor está en desbloquear waves posteriores. Su payback se evalúa con el roadmap completo.",
"paybackNote": "Payback: Tiempo implementación + tiempo recuperación. Wave 1: 6m, W2: 3m, W3: 3m, W4: 6m. Ahorro comienza al 50% de última wave.",
"roiNote": "ROI: (Ahorro 3a - Coste Total 3a) / Coste Total 3a × 100. Ajustado aplica riesgo: W1-2: 75-90%, W3: 60%, W4: 50%.",
"enablerNote": "💡 Habilitador: Waves que desbloquean ROI de waves posteriores. Su payback se evalúa con el roadmap completo.",
"enablerValue": "💡 Valor real de esta inversión:",
"enablerUnlocks": "Desbloquea {{amount}}/año en {{waves}}. Sin esta base, las waves posteriores no son viables."
},
"decisionGates": {
"gate1Question": "¿CV ≤75% en 3+ colas?",
"gate1Criteria": "Red flags eliminados, Tier 4→3",
"gate1GoAction": "Iniciar AUGMENT",
"gate1NoGoAction": "Extender FOUNDATION",
"gate2Question": "¿Score ≥5.5 en target?",
"gate2Criteria": "CV ≤90%, Transfer ≤30%",
"gate2GoAction": "Iniciar ASSIST",
"gate2NoGoAction": "Consolidar AUGMENT",
"gate3Question": "¿Score ≥7.5 en 2+ colas?",
"gate3Criteria": "CV ≤75%, FCR ≥50%",
"gate3GoAction": "Lanzar AUTOMATE",
"gate3NoGoAction": "Expandir ASSIST",
"goNoGo": "Go/No-Go",
"criteria": "Criterio:",
"go": "✓ Go:",
"no": "✗ No:"
},
"timeline": {
"title": "Roadmap de Transformación 2026-2027",
"subtitle": "Cada wave depende del éxito de la anterior. Los puntos de decisión permiten ajustar según resultados reales.",
"setup": "Setup:",
"savings": "Ahorro:",
"conditional": "Condicional",
"low": "● Bajo",
"medium": "● Medio",
"high": "● Alto",
"legendConfirmed": "Wave confirmada",
"legendConditional": "Wave condicional",
"legendDecisionPoint": "Punto de decisión Go/No-Go",
"legendRisk": "= Riesgo"
},
"comparison": {
"investment": "Inversión",
"recurring": "Recurrente",
"savings": "Ahorro",
"margin": "Margen",
"payback": "Payback",
"roi3y": "ROI 3a",
"risk": "Riesgo",
"scenario": "Escenario",
"recommendation": "Recomendación",
"enabler": "Habilitador",
"recommended": "Recomendado"
},
"entryCriteria": {
"wave1TierFrom": "HUMAN-ONLY (4), AUGMENT (3)",
"wave1ScoreRange": "<5.5",
"wave1Metric1": "CV >75% o Transfer >20%",
"wave1Metric2": "Red Flags activos",
"wave1Metric3": "Procesos no documentados",
"wave2TierFrom": "AUGMENT (3)",
"wave2ScoreRange": "3.5-5.5",
"wave2Metric1": "CV ≤75%",
"wave2Metric2": "Transfer ≤20%",
"wave2Metric3": "Sin Red Flags",
"wave3TierFrom": "ASSIST (2)",
"wave3ScoreRange": "5.5-7.5",
"wave3Metric1": "CV ≤90%",
"wave3Metric2": "Transfer ≤30%",
"wave3Metric3": "AHT estable",
"wave4TierFrom": "AUTOMATE (1)",
"wave4ScoreRange": "≥7.5",
"wave4Metric1": "CV ≤75%",
"wave4Metric2": "Transfer ≤20%",
"wave4Metric3": "FCR ≥50%",
"wave4Metric4": "Sin Red Flags"
},
"exitCriteria": {
"wave1TierTo": "AUGMENT (3) mínimo",
"wave1ScoreTarget": "≥3.5",
"wave1Kpi1": "CV ≤75%",
"wave1Kpi2": "Transfer ≤20%",
"wave1Kpi3": "Red flags eliminados",
"wave2TierTo": "ASSIST (2)",
"wave2ScoreTarget": "≥5.5",
"wave2Kpi1": "CV ≤90%",
"wave2Kpi2": "Transfer ≤30%",
"wave2Kpi3": "AHT -15%",
"wave3TierTo": "AUTOMATE (1)",
"wave3ScoreTarget": "≥7.5",
"wave3Kpi1": "CV ≤75%",
"wave3Kpi2": "Transfer ≤20%",
"wave3Kpi3": "FCR ≥50%",
"wave3Kpi4": "AHT -30%",
"wave4TierTo": "AUTOMATIZADO",
"wave4ScoreTarget": "Contención ≥70%",
"wave4Kpi1": "Bot resolution ≥70%",
"wave4Kpi2": "CSAT ≥4/5",
"wave4Kpi3": "Escalado <30%"
},
"recommendations": {
"conservativeEnabler": "✅ Recomendado como HABILITADOR. Desbloquea {{amount}}/año en Wave 3-4. Objetivo: mover {{count}} colas de Tier 4→3.",
"conservativeNormal": "✅ Recomendado. Validar modelo con riesgo bajo. Objetivo: mover {{count}} colas de Tier 4→3.",
"moderateEnabler": "Habilitador parcial. Desbloquea {{amount}}/año en Wave 4. Decidir Go/No-Go en Q3 2026.",
"moderateNormal": "Decidir Go/No-Go en Q3 2026 basado en resultados Wave 1-2. Requiere Score ≥5.5 en colas target.",
"aggressivePositive": "⚠️ Aspiracional. Solo si Waves 1-3 exitosas y hay colas con Score ≥7.5. Decisión en Q1 2027.",
"aggressiveNegative": "❌ No rentable con el volumen actual. Requiere escala significativamente mayor."
},
"table": {
"topQueuesByVolumeImpact": "Top Colas por Volumen × Impacto",
"queue": "Cola",
"volPerMonth": "Vol/mes",
"score": "Score",
"tier": "Tier",
"redFlags": "Red Flags",
"potential": "Potencial",
"redFlagsNote": "Red Flags: CV >120% (alta variabilidad) · Transfer >50% (proceso fragmentado) · Vol <50 (muestra pequeña) · Valid <30% (datos ruidosos)",
"skills": "Skills",
"financialMetrics": "Métricas Financieras",
"setupLabel": "Setup",
"recurringPerYear": "Recurrente/año",
"savingsPerYear": "Ahorro/año",
"marginPerYear": "Margen/año",
"initiativesLabel": "Iniciativas:",
"setup": "Setup:",
"rec": "Rec:",
"kpi": "KPI:",
"successCriteriaLabel": "✅ Criterios de éxito:",
"condition": "⚠️ Condición:",
"provider": "Proveedor:"
},
"porQueNecesarioTemplates": {
"wave1": "{{count}} de {{total}} colas están en Tier 3-4 ({{pct}}% del volumen). Red flags: CV >75%, Transfer >20%. Automatizar sin estandarizar = fracaso garantizado.",
"wave2": "Implementar herramientas de soporte para colas Tier 3 (Score 3.5-5.5). Objetivo: elevar score a ≥5.5 para habilitar Wave 3. Foco en {{count}} colas con {{volume}} int/mes.",
"wave3": "Copilot IA para agentes en colas Tier 2. Sugerencias en tiempo real, autocompletado, next-best-action. Objetivo: elevar score a ≥7.5 para Wave 4. Target: {{count}} colas con {{volume}} int/mes.",
"wave4": "Automatización end-to-end para colas Tier 1. Voicebot/Chatbot transaccional con 70% contención. Solo viable con procesos maduros. Target actual: {{count}} colas con {{volume}} int/mes."
},
"fallbackSkills": {
"wave1": "Colas que alcancen Score 3.5-5.5 post Wave 1",
"wave2": "Colas que alcancen Score ≥5.5 post Wave 2",
"wave3": "Colas que alcancen Score ≥7.5 post Wave 3"
}
},
"opportunities": {
"viewCriticalActions": "Ver Acciones Críticas",
@@ -819,6 +1066,65 @@
"resolution": "Resolutividad",
"dataQuality": "Calidad Datos"
},
"factorConfigs": {
"predictability": {
"title": "Predictibilidad",
"description": "Consistencia en tiempos de gestión",
"methodology": "Score = 10 - (CV_AHT / 10). CV AHT < 30% → Score > 7",
"benchmark": "CV AHT óptimo < 25%",
"highImplication": "Tiempos consistentes, ideal para IA",
"lowImplication": "Requiere estandarización"
},
"inverseComplexity": {
"title": "Simplicidad",
"description": "Bajo nivel de juicio humano requerido",
"methodology": "Score = 10 - (Tasa_Transfer × 0.4). Transfer <10% → Score > 6",
"benchmark": "Transferencias óptimas <10%",
"highImplication": "Procesos simples, automatizables",
"lowImplication": "Alta complejidad, requiere copilot"
},
"repeatability": {
"title": "Volumen",
"description": "Escala para justificar inversión",
"methodology": "Score = log10(Volumen) normalizado. >5000 → 10, <100 → 2",
"benchmark": "ROI positivo requiere >500/mes",
"highImplication": "Alto volumen justifica inversión",
"lowImplication": "Considerar soluciones compartidas"
},
"roiPotential": {
"title": "ROI Potencial",
"description": "Retorno económico esperado",
"methodology": "Score basado en coste anual total. >€500K → 10",
"benchmark": "ROI >150% a 12 meses",
"highImplication": "Caso de negocio sólido",
"lowImplication": "ROI marginal, evaluar otros beneficios"
}
},
"scoreBreakdown": {
"predictability": "Predictibilidad (30%)",
"resolution": "Resolutividad (25%)",
"volume": "Volumen (25%)",
"dataQuality": "Calidad Datos (10%)",
"simplicity": "Simplicidad (10%)"
},
"bubbleChart": {
"quickWinsCount": "{{count}} colas · {{amount}}",
"highPotentialCount": "{{count}} colas · {{amount}}",
"developCount": "{{count}} colas · {{amount}}",
"easyImplCount": "{{count}} · {{amount}}",
"backlogCount": "{{count}} · {{amount}}",
"total": "total",
"noQueuesFilters": "No hay colas que cumplan los filtros seleccionados"
},
"modal": {
"skillLabel": "Skill:",
"transferRate": "Transfer Rate",
"annualSavings": "Ahorro Anual"
},
"volumeLabels": {
"queues": "colas",
"int": "int"
},
"subFactors": {
"repeatability": "Repetitividad",
"repeatabilityDisplayName": "Repetitividad",