{ "priority": { "critical": "Crítico", "important": "Importante", "standard": "Estándar", "info": "Info" }, "type_class": { "action_needed": "Acción Requerida", "prevented_issue": "Problema Prevenido", "trend_warning": "Aviso de Tendencia", "escalation": "Escalación", "information": "Información" }, "context": { "already_addressed": "La IA ya gestionó esto", "financial_impact": "€{amount} en riesgo", "time_until": "Necesita decisión en {time}", "can_user_fix": "Puedes solucionarlo", "requires_supplier": "Requiere {supplier}", "prevented_savings": "Ahorrado €{amount}", "grouped_count": "{count} agrupadas" }, "actions": { "approve_po": "Aprobar pedido €{amount}", "reject_po": "Rechazar pedido", "modify_po": "Modificar pedido", "view_po_details": "Ver detalles", "call_supplier": "Llamar a {supplier} ({phone})", "see_reasoning": "Ver razonamiento completo", "complete_receipt": "Completar recepción de stock", "mark_received": "Marcar como recibido", "adjust_production": "Ajustar calendario de producción", "snooze": "Posponer {hours}h", "mark_read": "Marcar como leído", "dismiss": "Descartar", "navigate": "Ver detalles", "notify_customer": "Notificar a {customer}", "cancel_auto_action": "Cancelar acción automática" }, "orchestration": { "reasoning_title": "🤖 Razonamiento del Orquestador Diario", "analyzed_title": "Esta mañana, analicé:", "actions_taken": "Así que programé:", "prevented_issues": "✅ Problemas Prevenidos", "estimated_impact": "Impacto Estimado", "impact_description": "Ahorros por prevención de pedidos urgentes, faltas de stock y desperdicios", "last_run": "Última ejecución", "what_ai_did": "Lo que hizo la IA por ti", "ai_generated_po": "PO Generada por IA" }, "ai_reasoning_label": "Razonamiento de IA", "no_reasoning_available": "No hay razonamiento disponible", "metrics": { "hours": "{count, plural, =1 {# hora} other {# horas}}", "minutes": "{count, plural, =1 {# minuto} other {# minutos}}", "days": "{count, plural, =1 {# día} other {# días}}" }, "escalated": "Escalado", "hub": { "tab_list_label": "Categorías de alertas", "tabs": { "all": "Todas las Alertas", "all_description": "Todas las alertas de tu panadería", "for_me": "Para Mí", "for_me_description": "Alertas asignadas a ti o que requieren tu acción", "archived": "Archivadas", "archived_description": "Alertas resueltas y descartadas" }, "toggle_filters": "Activar/desactivar filtros", "filters": "Filtros", "active": "Activos" }, "auto_action": { "title": "Acción Automática Pendiente", "remaining": "restante", "financial_impact": "Impacto:", "cancel_button": "Cancelar Acción Automática", "cancelling": "Cancelando...", "cancelled_title": "Acción Automática Cancelada", "cancelled_message": "La acción automática ha sido prevenida. Ahora puedes gestionarlo manualmente.", "completed_title": "Acción Automática Ejecutada", "help_text": "La IA ejecutará automáticamente esta acción cuando expire el temporizador. Haz clic en \"Cancelar\" para prevenirlo y gestionarlo manualmente.", "urgency": { "critical": "URGENTE", "warning": "PRONTO", "info": "PROGRAMADO" } }, "priority_explainer": { "title": "Entendiendo las Puntuaciones de Prioridad", "subtitle": "Cómo la IA calcula qué necesita tu atención primero", "overview": { "title": "La Puntuación de Prioridad (0-100)", "description": "Cada alerta recibe una puntuación de prioridad de 0-100 basada en cuatro componentes ponderados. Esto te ayuda a enfocarte en lo que realmente importa para tu panadería." }, "example_alert": "Prioridad de Alerta de Ejemplo", "level": { "critical": "CRÍTICO", "important": "IMPORTANTE", "standard": "ESTÁNDAR", "info": "INFO" }, "components_title": "Componentes de la Puntuación", "weight": "peso", "business_impact": { "name": "Impacto Empresarial", "description": "Consecuencias financieras, pedidos afectados, satisfacción del cliente", "example1": "€500 en ingresos potenciales en riesgo", "example2": "10 pedidos de clientes afectados", "example3": "Alto impacto en la satisfacción del cliente" }, "urgency": { "name": "Urgencia", "description": "Sensibilidad temporal, plazos, potencial de escalada", "example1": "Plazo en 2 horas", "example2": "Falta de stock inminente (4 horas)", "example3": "Ventana de producción cerrándose pronto" }, "agency": { "name": "Capacidad de Acción del Usuario", "description": "¿Puedes tomar acción? ¿Tienes control sobre el resultado?", "example1": "Requiere tu aprobación", "example2": "Acción con un clic disponible", "example3": "Decisión necesaria dentro de tu autoridad" }, "confidence": { "name": "Confianza de la IA", "description": "¿Qué tan segura está la IA sobre la validez de esta alerta?", "example1": "Basado en patrones históricos (95% coincidencia)", "example2": "Calidad de datos: Alta", "example3": "Precisión de predicción validada" }, "formula_title": "La Fórmula", "footer": "Esta puntuación ayuda a la IA a priorizar alertas, asegurando que veas los problemas más importantes primero.", "got_it": "¡Entendido!" }, "trend": { "near_threshold": "Cerca del umbral" }, "action_preview": { "title": "Vista Previa de Acción", "outcome": "Qué sucederá", "financial_impact": "Impacto Financiero", "affected_systems": "Sistemas Afectados", "reversible": "Esta acción se puede deshacer", "not_reversible": "Esta acción no se puede deshacer", "confidence": "Confianza de IA: {confidence}%", "cancel": "Cancelar", "confirm": "Confirmar Acción" }, "response_time": { "title": "Rendimiento de Tiempo de Respuesta", "subtitle": "Qué tan rápido respondes a las alertas", "on_time": "A Tiempo", "alerts": "alertas", "average": "Promedio", "target": "Objetivo", "on_time_responses": "Respuestas a Tiempo", "needs_improvement": "Necesita mejora", "benchmark_title": "Perspectiva de Rendimiento", "excellent": "¡Excelente! Estás respondiendo más rápido que el 80% de las panaderías. ¡Sigue así!", "good": "¡Buen trabajo! Intenta responder a alertas críticas dentro del tiempo objetivo para mejorar aún más.", "needs_work": "Respuestas más rápidas a alertas críticas pueden prevenir problemas y ahorrar dinero. Intenta cumplir los tiempos objetivo.", "tip": "Consejo: Activa las notificaciones móviles para responder más rápido a alertas críticas" }, "alerts": { "critical_stock_shortage": { "title": "🚨 Stock Crítico: {ingredient_name}", "message_with_po_pending": "Solo {current_stock}kg de {ingredient_name} (necesitas {required_stock}kg). Ya creé {po_id} para entrega el {delivery_day_name}. Por favor aprueba €{po_amount}.", "message_with_po_created": "Solo {current_stock}kg de {ingredient_name} (necesitas {required_stock}kg). Ya creé {po_id}. Revisa y aprueba €{po_amount}.", "message_with_hours": "Solo {current_stock}kg de {ingredient_name} disponibles (necesitas {required_stock}kg en {hours_until} horas).", "message_with_date": "Solo {current_stock}kg de {ingredient_name} disponibles (necesitas {required_stock}kg para producción del {production_day_name}).", "message_generic": "Solo {current_stock}kg de {ingredient_name} disponibles (necesitas {required_stock}kg)." }, "low_stock": { "title": "⚠️ Stock Bajo: {ingredient_name}", "message_with_po": "Stock de {ingredient_name}: {current_stock}kg (mínimo: {minimum_stock}kg). Ya programé PO para reposición.", "message_generic": "Stock de {ingredient_name}: {current_stock}kg (mínimo: {minimum_stock}kg). Considera hacer un pedido." }, "stock_depleted": { "title": "📦 Stock Agotado por Pedido", "message_with_supplier": "Pedido #{order_id} requiere {ingredient_name} pero está agotado. Contacta a {supplier_name} ({supplier_phone}).", "message_generic": "Pedido #{order_id} requiere {ingredient_name} pero está agotado. Acción inmediata requerida." }, "ingredient_shortage": { "title": "⚠️ Falta de Ingrediente en Producción", "message_with_customers": "{ingredient_name} insuficiente para lotes en curso. {affected_orders} pedidos afectados ({customer_names}). Stock actual: {current_stock}kg, necesario: {required_stock}kg.", "message_generic": "{ingredient_name} insuficiente para lotes en curso. Stock actual: {current_stock}kg, necesario: {required_stock}kg." }, "expired_products": { "title": "🚫 Productos Caducados o por Caducar", "message_with_names": "{count} productos caducando: {product_names}. Valor total: €{total_value}.", "message_generic": "{count} productos caducando. Valor total: €{total_value}." }, "production_delay": { "title": "⏰ Retraso en Producción: {batch_name}", "message_with_customers": "Lote {batch_name} retrasado {delay_minutes} minutos. Clientes afectados: {customer_names}. Hora entrega original: {scheduled_time}.", "message_with_orders": "Lote {batch_name} retrasado {delay_minutes} minutos. {affected_orders} pedidos afectados. Hora entrega original: {scheduled_time}.", "message_generic": "Lote {batch_name} retrasado {delay_minutes} minutos. Hora entrega original: {scheduled_time}." }, "equipment_failure": { "title": "🔧 Fallo de Equipo: {equipment_name}", "message_with_batches": "{equipment_name} falló. {affected_batches} lotes en producción afectados ({batch_names}).", "message_generic": "{equipment_name} falló. Requiere reparación inmediata." }, "maintenance_required": { "title": "🔧 Mantenimiento Requerido: {equipment_name}", "message_with_hours": "{equipment_name} requiere mantenimiento en {hours_until} horas. Programa ahora para evitar interrupciones.", "message_with_days": "{equipment_name} requiere mantenimiento en {days_until} días. Programa antes del {maintenance_date}." }, "low_equipment_efficiency": { "title": "📉 Baja Eficiencia: {equipment_name}", "message": "{equipment_name} operando a {efficiency_percent}% eficiencia (esperado: >{threshold_percent}%). Considera mantenimiento." }, "order_overload": { "title": "📊 Sobrecarga de Pedidos", "message_with_orders": "Capacidad sobrecargada en {overload_percent}%. {total_orders} pedidos programados, capacidad: {capacity_orders}. Considera ajustar el calendario.", "message_generic": "Capacidad sobrecargada en {overload_percent}%. Considera ajustar el calendario de producción." }, "supplier_delay": { "title": "🚚 Retraso de Proveedor: {supplier_name}", "message": "{supplier_name} retrasó entrega de {ingredient_name} (PO: {po_id}). Nueva fecha: {new_delivery_date}. Original: {original_delivery_date}." }, "temperature_breach": { "title": "🌡️ Violación de Temperatura", "message": "Temperatura {location}: {current_temp}°C (rango: {min_temp}°C-{max_temp}°C). Duración: {duration_minutes} minutos." }, "demand_surge_weekend": { "title": "📈 Aumento de Demanda: Fin de Semana", "message": "Demanda esperada {surge_percent}% mayor para {weekend_date}. Productos afectados: {products}. Considera aumentar producción." }, "weather_impact_alert": { "title": "🌦️ Impacto Climático Esperado", "message": "{weather_condition} esperado {date}. Impacto en demanda: {impact_percent}%. Productos afectados: {products}." }, "holiday_preparation": { "title": "🎉 Preparación para Festivo: {holiday_name}", "message": "{holiday_name} en {days_until} días ({holiday_date}). Demanda esperada {expected_increase}% mayor. Productos clave: {products}." }, "severe_weather_impact": { "title": "⛈️ Impacto Climático Severo", "message": "{weather_condition} severo esperado {date}. Impacto en demanda: {impact_percent}%. Considera ajustar horarios de entrega." }, "unexpected_demand_spike": { "title": "📊 Pico de Demanda Inesperado", "message": "Demanda aumentó {spike_percent}% para {products}. Stock actual podría agotarse en {hours_until_stockout} horas." }, "demand_pattern_optimization": { "title": "💡 Optimización de Patrón de Demanda", "message": "Patrón detectado: {pattern_description}. Recomienda ajustar producción de {products} para optimizar eficiencia." }, "inventory_optimization": { "title": "📦 Optimización de Inventario", "message": "{ingredient_name} consistentemente sobre-stock por {excess_percent}%. Recomienda reducir pedido a {recommended_amount}kg." }, "production_efficiency": { "title": "⚡ Oportunidad de Eficiencia en Producción", "message": "{product_name} más eficiente a las {suggested_time}. Tiempo de producción {time_saved} minutos menor ({savings_percent}% ahorro)." }, "sales_opportunity": { "title": "💰 Oportunidad de Ventas", "message": "Alta demanda de {products} detectada. Considera producción adicional. Ingresos potenciales: €{potential_revenue}." }, "seasonal_adjustment": { "title": "🍂 Ajuste Estacional Recomendado", "message": "Temporada {season} acercándose. Ajusta producción de {products} basado en tendencias históricas ({adjustment_percent}% {adjustment_direction})." }, "cost_reduction": { "title": "💵 Oportunidad de Reducción de Costos", "message": "Cambiando a {alternative_ingredient} puede ahorrar €{savings_amount}/mes. Calidad similar, menor costo." }, "waste_reduction": { "title": "♻️ Oportunidad de Reducción de Desperdicio", "message": "{product_name} desperdicio alto ({waste_percent}%). Recomienda reducir lote a {recommended_quantity} unidades." }, "quality_improvement": { "title": "⭐ Mejora de Calidad Recomendada", "message": "{issue_description} detectado en {product_name}. Acción recomendada: {recommended_action}." }, "customer_satisfaction": { "title": "😊 Oportunidad de Satisfacción del Cliente", "message": "Cliente {customer_name} consistentemente ordena {product_name}. Considera oferta especial o programa de lealtad." }, "energy_optimization": { "title": "⚡ Optimización de Energía", "message": "Uso de energía para {equipment_name} pico a las {peak_time}. Cambiando a {off_peak_start}-{off_peak_end} puede ahorrar €{savings_amount}/mes." }, "staff_optimization": { "title": "👥 Optimización de Personal", "message": "{shift_name} sobrestimado por {excess_percent}%. Considera ajustar niveles de personal para reducir costos laborales." }, "po_approval_needed": { "title": "Orden de Compra #{po_number} requiere aprobación", "message": "Orden de compra para {supplier_name} por un total de {currency} {total_amount} pendiente de aprobación. Entrega requerida para {required_delivery_date}." }, "production_batch_start": { "title": "Lote de Producción Listo: {product_name}", "message": "Lote #{batch_number} ({quantity_planned} {unit} de {product_name}) está listo para comenzar. Prioridad: {priority}." } } }