{
  "absorption_gap": {
    "avg_ticket_mxn": 4200000.0,
    "declared_actual_pace": 2.5,
    "expected_pace": 7.0,
    "extra_exposure_months": 23.7,
    "gap_pct": 64.3,
    "gap_units_month": 4.5,
    "label": "estimado / declarado — no es absorción medida",
    "months_in_market": 6,
    "pace_basis": "declared",
    "runout_months_at_actual": 36.8,
    "runout_months_at_expected": 13.1,
    "sales_velocity_gap_mxn_month": 18900000.0,
    "stake_label": "estimado sobre ticket declarado — diferencial de velocidad comercial, no es pérdida verificada",
    "units_remaining": 92
  },
  "assumptions": [
    "Todos los insumos son declarados por el cliente (T1) y, salvo indicación, no verificados.",
    "Completitud de datos: incomplete — sin export de CRM, sin serie de transacciones/inventario verificada, sin velocidad de terceros.",
    "El ritmo de venta actual es declarado por dirección; se usa como estimado, no como medición.",
    "Los pesos del scoring son criterio editorial del producto, no un modelo calibrado.",
    "El gap de precio vs comparables es estimado sobre asking declarado, no sobre precios de cierre.",
    "El caso es sintético (golden case GC-C); las cifras son ilustrativas."
  ],
  "clarity": {
    "absorption_clarity_score": 32.0,
    "classification": "MULTIPLE BOTTLENECKS",
    "classification_meaning": "Varios cuellos de botella concurren; ninguno explica solo el rezago. Se prioriza por impacto y esfuerzo.",
    "confidence": "low",
    "do_not_change_yet": [
      "No reaccionar bajando precio solo por presión de mercado: la demanda entrante sugiere que el problema no es de tráfico.",
      "No subir pauta todavía: llega volumen; el problema aparece después del lead, no antes."
    ],
    "fix_first": [
      "Salud del funnel (critical, score 30.0)",
      "Ejecución de ventas (critical, score 32.0)"
    ],
    "not_the_problem_yet": [
      "Alineación de brokers/canales",
      "Presión de mercado",
      "Generación de demanda"
    ],
    "primary_bottlenecks": [
      "Salud del funnel",
      "Ejecución de ventas"
    ],
    "secondary_bottlenecks": [
      "Disciplina de CRM",
      "Posicionamiento competitivo",
      "Estrategia comercial"
    ],
    "what_is_proven": [
      "Existe una brecha entre ritmo esperado y ritmo declarado (estimado, no verificado).",
      "Hay señales declaradas concurrentes en ejecución de ventas, CRM y financiamiento."
    ],
    "what_is_unproven": [
      "La causa raíz no está verificada: falta export de CRM, funnel medido y set comparable verificado.",
      "La absorción real y su velocidad no están medidas; todo ritmo es declarado/estimado.",
      "No se prueba que un solo factor (precio, marketing o ventas) explique el rezago."
    ]
  },
  "evidence_legend": [
    {
      "graduates_with": "Export de CRM / inventario / transacciones.",
      "level": "Declarado",
      "meaning": "Provisto por dirección (T1). No verificado por terceros ni conciliado con sistema."
    },
    {
      "graduates_with": "Métrica instrumentada del propio dato (funnel, CPL, cierres).",
      "level": "Estimado",
      "meaning": "Inferido de señales declaradas. No medido."
    },
    {
      "graduates_with": "Serie observada de absorción / cobranza en el tiempo.",
      "level": "Modelado",
      "meaning": "Proyección aritmética o según escenario. No observado."
    },
    {
      "graduates_with": "Validación de mercado / set comparable verificado.",
      "level": "Observado (interno)",
      "meaning": "Dato operativo real del cliente (p. ej. export de CRM). Sin verificación de terceros."
    },
    {
      "graduates_with": "El plan de evidencia faltante de este diagnóstico.",
      "level": "Incompleto",
      "meaning": "Evidencia insuficiente para concluir. Requiere recolección antes de decidir."
    }
  ],
  "labels": {
    "declared": "declarado por el cliente (T1) — no verificado",
    "estimated": "estimado — inferido de señales declaradas, no medido",
    "incomplete": "incompleto — evidencia insuficiente para concluir",
    "modeled": "modelado / según escenario — no observado",
    "observed_internal": "observado internamente (dato operativo del cliente, sin verificación de terceros)"
  },
  "limitations": [
    "PRODUCT-003 es un shell de producto + demo sintética + framework de diagnóstico. NO es un motor de absorción medida.",
    "No comprueba la causa raíz; prioriza hipótesis. La confirmación requiere la evidencia del plan de evidencia faltante.",
    "No emite juicio de inversión (GO/NO_GO): esa autoridad pertenece a un motor certificado que no existe para este producto todavía.",
    "No afirma que el problema sea ventas, marketing o precio: sin la evidencia correspondiente, cada uno es hipótesis.",
    "Sin promesa de ventas, absorción ni ROI.",
    "La absorción y su velocidad no están verificadas; se etiquetan declarado/estimado/modelado, nunca verificado.",
    "No hay integración con datos vivos de cliente ni CRM en esta versión."
  ],
  "missing_evidence_plan": [
    {
      "evidence": "Export de CRM con timestamps por etapa.",
      "priority": "alta",
      "unlocks_dimension": "Salud del funnel",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Registro de intentos de contacto y grabaciones de llamadas.",
      "priority": "alta",
      "unlocks_dimension": "Salud del funnel",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Auditoría de actividad de CRM por asesor.",
      "priority": "alta",
      "unlocks_dimension": "Ejecución de ventas",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Muestra de llamadas/mensajes para consistencia de script.",
      "priority": "alta",
      "unlocks_dimension": "Ejecución de ventas",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Export de CRM con fechas de última actividad.",
      "priority": "alta",
      "unlocks_dimension": "Disciplina de CRM",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Segmentación de base reactivable por antigüedad y etapa.",
      "priority": "alta",
      "unlocks_dimension": "Disciplina de CRM",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Matriz competitiva con set comparable verificado (P-02).",
      "priority": "alta",
      "unlocks_dimension": "Posicionamiento competitivo",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Condiciones de financiamiento reales de 3–5 competidores directos.",
      "priority": "alta",
      "unlocks_dimension": "Posicionamiento competitivo",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Prueba controlada de esquema de financiamiento vs conversión.",
      "priority": "alta",
      "unlocks_dimension": "Estrategia comercial",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Comparativo de términos de pago contra competidores directos.",
      "priority": "alta",
      "unlocks_dimension": "Estrategia comercial",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Desempeño por broker (leads, citas, cierres, tiempo).",
      "priority": "media",
      "unlocks_dimension": "Alineación de brokers/canales",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Estructura de comisiones/incentivos vs alternativas del broker.",
      "priority": "media",
      "unlocks_dimension": "Alineación de brokers/canales",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Estudio de oferta/absorción del submercado (T2/T3).",
      "priority": "media",
      "unlocks_dimension": "Presión de mercado",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Serie de precios de cierre de comparables (no asking).",
      "priority": "media",
      "unlocks_dimension": "Presión de mercado",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Export de campañas (CPL, CTR, calidad por canal).",
      "priority": "media",
      "unlocks_dimension": "Generación de demanda",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    },
    {
      "evidence": "Definición de lead calificado y % que cumple ICP.",
      "priority": "media",
      "unlocks_dimension": "Generación de demanda",
      "would_change_label_from": "estimado/declarado",
      "would_change_label_to": "observado internamente / verificado"
    }
  ],
  "priority_matrix": {
    "buckets": [
      "Corregir primero",
      "Segundo",
      "Monitorear",
      "No cambiar aún",
      "Requiere más evidencia"
    ],
    "do_not_change_yet": [
      "No reaccionar bajando precio solo por presión de mercado: la demanda entrante sugiere que el problema no es de tráfico.",
      "No subir pauta todavía: llega volumen; el problema aparece después del lead, no antes."
    ],
    "label": "priorización — hipótesis sobre evidencia declarada, no garantía de resultado",
    "legend": "Impacto y esfuerzo son criterio editorial del producto; confianza es del diagnóstico (baja con datos declarados).",
    "rows": [
      {
        "action": "Instalar SLA de primer contacto <2h y cadencia mínima de 6 toques por lead, medidos desde CRM.",
        "bucket": "Corregir primero",
        "confidence": "low-medium",
        "dimension": "Salud del funnel",
        "effort": "Bajo",
        "health_score": 30.0,
        "impact": "Alto",
        "owner": "Dir. Comercial + Coordinación de ventas",
        "risk_of_inaction": "Cada semana de contacto lento quema leads pagados; la fuga lead→cita se ensancha y sube el CAC efectivo.",
        "window": "Semana 1"
      },
      {
        "action": "Estandarizar script + guion de objeciones y montar tablero de accountability por asesor y etapa, revisado semanalmente.",
        "bucket": "Corregir primero",
        "confidence": "low-medium",
        "dimension": "Ejecución de ventas",
        "effort": "Medio",
        "health_score": 32.0,
        "impact": "Alto",
        "owner": "Gerencia de ventas",
        "risk_of_inaction": "El equipo no escala: más tráfico no produce más reservas porque el proceso no lo sostiene.",
        "window": "Semana 1–2"
      },
      {
        "action": "Higienizar CRM y lanzar reactivación segmentada de la base envejecida con mensaje de términos de pago.",
        "bucket": "Segundo",
        "confidence": "low-medium",
        "dimension": "Disciplina de CRM",
        "effort": "Bajo",
        "health_score": 39.0,
        "impact": "Medio-Alto",
        "owner": "Operaciones / CRM",
        "risk_of_inaction": "La base reactivable se enfría; se paga tráfico nuevo por citas que ya estaban en casa.",
        "window": "Semana 2"
      },
      {
        "action": "Correr una prueba controlada de 1 esquema de financiamiento/incentivo vs el actual, con política de descuentos definida.",
        "bucket": "Segundo",
        "confidence": "low-medium",
        "dimension": "Estrategia comercial",
        "effort": "Medio",
        "health_score": 41.0,
        "impact": "Medio-Alto",
        "owner": "Dir. Comercial + Finanzas",
        "risk_of_inaction": "Se recurre a descuentos de lista que erosionan margen sin resolver la fricción real de pago.",
        "window": "Semana 3–4"
      },
      {
        "action": "Reencuadrar el mensaje hacia términos de pago y razón para comprar ahora; levantar matriz competitiva de 3–5 comparables.",
        "bucket": "Segundo",
        "confidence": "low-medium",
        "dimension": "Posicionamiento competitivo",
        "effort": "Medio",
        "health_score": 40.0,
        "impact": "Medio",
        "owner": "Marketing + Producto",
        "risk_of_inaction": "La conversación se reduce a precio; presiona a descuentos reactivos que destruyen margen.",
        "window": "Semana 3"
      },
      {
        "action": "Realinear creativo y copy a la objeción real (términos de pago) sin subir presupuesto todavía.",
        "bucket": "Monitorear",
        "confidence": "low-medium",
        "dimension": "Generación de demanda",
        "effort": "Bajo",
        "health_score": 58.0,
        "impact": "Bajo-Medio",
        "owner": "Marketing",
        "risk_of_inaction": "Escalar inversión sobre un mensaje desalineado sube el costo por cita, no las reservas.",
        "window": "Semana 3"
      },
      {
        "action": "Monitorear oferta/absorción del submercado; no mover precio de lista por reflejo de mercado.",
        "bucket": "Monitorear",
        "confidence": "low",
        "dimension": "Presión de mercado",
        "effort": "Bajo",
        "health_score": 56.0,
        "impact": "Bajo",
        "owner": "Dir. Comercial",
        "risk_of_inaction": "Sobre-reaccionar al mercado con descuentos destruye margen sin arreglar la conversión interna.",
        "window": "Continuo"
      },
      {
        "action": "Medir desempeño por canal/broker antes de rediseñar incentivos; no tocar la estructura a ciegas.",
        "bucket": "Monitorear",
        "confidence": "low",
        "dimension": "Alineación de brokers/canales",
        "effort": "Medio",
        "health_score": 55.0,
        "impact": "Bajo",
        "owner": "Dir. Comercial",
        "risk_of_inaction": "Se mantiene una dependencia opaca; no se sabe qué canal sostiene o diluye el pipeline.",
        "window": "Continuo"
      }
    ]
  },
  "product": {
    "id": "PRODUCT-003",
    "name": "TRIDENT Absorption & Positioning Intelligence",
    "name_es": "Diagnóstico de Absorción y Posicionamiento Comercial",
    "schema": "trident.product.absorption_positioning_package.v1",
    "status": "product_shell + synthetic_demo + gtm_ready_diagnostic_framework",
    "version": "0.1.0"
  },
  "recovery_plan_30d": {
    "do_not_change_yet": [
      "No reaccionar bajando precio solo por presión de mercado: la demanda entrante sugiere que el problema no es de tráfico.",
      "No subir pauta todavía: llega volumen; el problema aparece después del lead, no antes."
    ],
    "horizon": "30 días",
    "label": "plan de acción — hipótesis priorizada, no garantía de resultado",
    "measurement": "Cada acción se mide contra baseline declarado; a los 30 días se re-scorea con datos ya instrumentados (sube la confianza del diagnóstico).",
    "principle": "Bajo-regret primero: instrumentar y corregir ejecución antes de mover precio; aislar variables antes de descontar.",
    "week_1": [
      "Instalar SLA de primer contacto <2h y medirlo desde CRM.",
      "Instrumentar el funnel por etapa (lead→cita→show→reserva) para localizar la fuga."
    ],
    "week_2": [
      "Fijar cadencia mínima de 6 toques por lead con recordatorios automáticos.",
      "Tablero de accountability por asesor y etapa, revisado semanalmente."
    ],
    "weeks": [
      {
        "actions": [
          "Instalar SLA de primer contacto <2h y medirlo desde CRM.",
          "Instrumentar el funnel por etapa (lead→cita→show→reserva) para localizar la fuga.",
          "Estandarizar script comercial y guion de objeciones; iniciar registro de objeciones."
        ],
        "decision_checkpoint": "¿La fuga se confirma en lead→cita o aparece antes/después? Ajustar foco.",
        "objective": "Instrumentar la fuga real y alinear al equipo en una sola hipótesis, no en culpas cruzadas.",
        "owner": "Dir. Comercial + Coordinación de ventas",
        "required_data": "Export de CRM con timestamps por etapa; registro de intentos de contacto.",
        "success_signal": "Tiempo de primer contacto medido y bajando; etapas del funnel visibles por primera vez.",
        "theme": "Evidencia y alineación",
        "week": "Semana 1"
      },
      {
        "actions": [
          "Fijar cadencia mínima de 6 toques por lead con recordatorios automáticos.",
          "Tablero de accountability por asesor y etapa, revisado semanalmente.",
          "Higienizar el CRM y segmentar la base envejecida por antigüedad/etapa."
        ],
        "decision_checkpoint": "¿Sube la tasa de cita con el mismo volumen de leads?",
        "objective": "Cerrar la fuga de bajo-regret sobre tráfico ya pagado, sin mover precio ni pauta.",
        "owner": "Gerencia de ventas + Operaciones/CRM",
        "required_data": "Actividad de CRM por asesor; conteo real de base reactivable.",
        "success_signal": "Cadencia de seguimiento cumplida ≥80%; primeras citas de base reactivada.",
        "theme": "Corrección de funnel y CRM",
        "week": "Semana 2"
      },
      {
        "actions": [
          "Reencuadrar el mensaje: de amenidades hacia términos de pago / razón para comprar ahora.",
          "Preparar 1 prueba controlada de esquema de financiamiento/incentivo vs el actual.",
          "Levantar matriz competitiva rápida de precio/financiamiento vs 3–5 comparables."
        ],
        "decision_checkpoint": "¿La fricción es de financiamiento u oferta, y no de precio de lista?",
        "objective": "Atacar la objeción real de pago y el mensaje, aislando variables antes de descontar.",
        "owner": "Marketing + Dir. Comercial + Finanzas",
        "required_data": "Objeciones documentadas de las semanas 1–2; términos de pago de comparables.",
        "success_signal": "Variante de financiamiento lista para probar; mensaje alineado a la objeción.",
        "theme": "Oferta, narrativa y broker",
        "week": "Semana 3"
      },
      {
        "actions": [
          "Medir cada acción contra el baseline declarado de la semana 1.",
          "Re-scorear el diagnóstico con datos instrumentados (sube la confianza).",
          "Decidir el siguiente frente (financiamiento, broker o pauta) según lo que movió la aguja."
        ],
        "decision_checkpoint": "¿Qué palanca produjo reservas y cuál escalar en los siguientes 30 días?",
        "objective": "Re-scorear con datos ya instrumentados y decidir el siguiente movimiento con evidencia, no presión.",
        "owner": "Dir. Comercial + Dirección",
        "required_data": "Serie de 30 días de funnel instrumentado y resultado de la prueba de financiamiento.",
        "success_signal": "Diagnóstico re-scoreado con confianza más alta; decisión de escalado basada en evidencia.",
        "theme": "Medición y revisión de decisión",
        "week": "Semana 4"
      }
    ],
    "weeks_3_4": [
      "Reencuadrar el mensaje: de amenidades hacia términos de pago / razón para comprar ahora.",
      "Preparar 1 prueba controlada de esquema de financiamiento/incentivo vs el actual.",
      "Re-scorear el diagnóstico con datos instrumentados (sube la confianza)."
    ]
  },
  "root_cause_map": {
    "absorption_clarity_score": 32.0,
    "case_id": "GC-C-PASEO-ALBA",
    "clarity_score_meaning": "Confianza de que el diagnóstico apunta limpiamente a una causa (0–100). NO es un juicio de inversión ni una probabilidad de venta.",
    "classification": "MULTIPLE BOTTLENECKS",
    "epistemic_note": "Cada nodo es una HIPÓTESIS ponderada sobre evidencia declarada/estimada, no una causa comprobada. La causa raíz se confirma con la evidencia listada en 'missing_evidence'.",
    "label": "estimado / declarado — hipótesis, no causa verificada",
    "nodes": [
      {
        "band": "critical",
        "diagnosis_confidence": "low-medium",
        "dimension": "funnel_health",
        "evidence_basis": "estimated",
        "health_score": 30.0,
        "hypothesis_strength": "alta (hipótesis)",
        "is_candidate_cause": true,
        "likely_cause": "Contacto de primer toque lento y cadencia de seguimiento por debajo de la meta (hipótesis).",
        "limitations": [
          "Métricas de funnel declaradas por dirección; sin conciliación contra CRM/telefonía."
        ],
        "missing_evidence": [
          "Export de CRM con timestamps por etapa.",
          "Registro de intentos de contacto y grabaciones de llamadas."
        ],
        "name": "Salud del funnel",
        "next_validation": "Export de CRM con timestamps por etapa + registro de intentos de contacto.",
        "owner": "Dir. Comercial + Coordinación de ventas",
        "recommended_action": "Instalar SLA de primer contacto <2h y cadencia mínima de 6 toques por lead, medidos desde CRM.",
        "severity": "Crítica",
        "supporting_signals": [
          "primer contacto lento (~9.0h vs <2h benchmark) (-)",
          "seguimiento insuficiente (1.6 intentos vs meta 6) (-)",
          "tasa de cita baja (10.0% de leads) (-)",
          "mayor fuga: lead→cita (-)",
          "objeciones no documentadas (-)"
        ],
        "symptom": "Entra volumen de leads, pero no se convierte en citas."
      },
      {
        "band": "critical",
        "diagnosis_confidence": "low-medium",
        "dimension": "sales_execution",
        "evidence_basis": "estimated",
        "health_score": 32.0,
        "hypothesis_strength": "alta (hipótesis)",
        "is_candidate_cause": true,
        "likely_cause": "Scripts inconsistentes, disciplina de seguimiento baja y sin accountability por etapa (hipótesis).",
        "limitations": [
          "Evaluación basada en percepción declarada de dirección; sin auditoría de CRM ni escucha de llamadas."
        ],
        "missing_evidence": [
          "Auditoría de actividad de CRM por asesor.",
          "Muestra de llamadas/mensajes para consistencia de script."
        ],
        "name": "Ejecución de ventas",
        "next_validation": "Auditoría de actividad de CRM por asesor + muestra de llamadas/mensajes.",
        "owner": "Gerencia de ventas",
        "recommended_action": "Estandarizar script + guion de objeciones y montar tablero de accountability por asesor y etapa, revisado semanalmente.",
        "severity": "Crítica",
        "supporting_signals": [
          "tareas de seguimiento inconsistentes (-)",
          "scripts comerciales no consistentes (-)",
          "disciplina del equipo baja (-)",
          "sin accountability por etapa del funnel (-)"
        ],
        "symptom": "Los resultados varían por asesor; no hay estándar replicable."
      },
      {
        "band": "weak",
        "diagnosis_confidence": "low-medium",
        "dimension": "crm_discipline",
        "evidence_basis": "estimated",
        "health_score": 39.0,
        "hypothesis_strength": "media (hipótesis)",
        "is_candidate_cause": true,
        "likely_cause": "CRM no higienizado, leads no nutridos y ~cientos de contactos antiguos sin reactivar (estimado).",
        "limitations": [
          "Conteo de leads envejecidos es estimado; requiere export real de CRM para confirmar."
        ],
        "missing_evidence": [
          "Export de CRM con fechas de última actividad.",
          "Segmentación de base reactivable por antigüedad y etapa."
        ],
        "name": "Disciplina de CRM",
        "next_validation": "Export de CRM con fechas de última actividad + segmentación por antigüedad/etapa.",
        "owner": "Operaciones / CRM",
        "recommended_action": "Higienizar CRM y lanzar reactivación segmentada de la base envejecida con mensaje de términos de pago.",
        "severity": "Alta",
        "supporting_signals": [
          "CRM no está limpio (-)",
          "leads no nutridos (-)",
          "leads antiguos sin reactivar (~900 estimados) (-)"
        ],
        "symptom": "Base histórica sin trabajar; nurturing inexistente y CRM desordenado."
      },
      {
        "band": "weak",
        "diagnosis_confidence": "low-medium",
        "dimension": "competitive_positioning",
        "evidence_basis": "estimated",
        "health_score": 40.0,
        "hypothesis_strength": "media (hipótesis)",
        "is_candidate_cause": true,
        "likely_cause": "Precio ligeramente arriba de comparables (estimado sobre asking) sin valor percibido que lo justifique (hipótesis).",
        "limitations": [
          "El gap de precio es estimado sobre asking declarado; no hay set comparable verificado ni precios de cierre."
        ],
        "missing_evidence": [
          "Matriz competitiva con set comparable verificado (P-02).",
          "Condiciones de financiamiento reales de 3–5 competidores directos."
        ],
        "name": "Posicionamiento competitivo",
        "next_validation": "Matriz competitiva con set comparable verificado y precios de cierre (no asking).",
        "owner": "Marketing + Producto",
        "recommended_action": "Reencuadrar el mensaje hacia términos de pago y razón para comprar ahora; levantar matriz competitiva de 3–5 comparables.",
        "severity": "Alta",
        "supporting_signals": [
          "precio ~6.0% arriba de comparables (declarado) (-)",
          "diferenciador poco claro para el comprador (-)",
          "financiamiento por debajo del mercado (-)",
          "mix de unidades parcialmente desalineado con demanda (-)",
          "sin razón clara para comprar ahora (-)"
        ],
        "symptom": "Diferenciador poco claro y sin razón para comprar ahora."
      },
      {
        "band": "weak",
        "diagnosis_confidence": "low-medium",
        "dimension": "commercial_strategy",
        "evidence_basis": "estimated",
        "health_score": 41.0,
        "hypothesis_strength": "media (hipótesis)",
        "is_candidate_cause": true,
        "likely_cause": "Financiamiento por debajo de mercado / oferta poco clara frena la conversión (hipótesis, no precio probado como incorrecto).",
        "limitations": [
          "Impacto del financiamiento en conversión es inferido de objeciones declaradas, no medido en A/B ni en cierre."
        ],
        "missing_evidence": [
          "Prueba controlada de esquema de financiamiento vs conversión.",
          "Comparativo de términos de pago contra competidores directos."
        ],
        "name": "Estrategia comercial",
        "next_validation": "A/B de esquema de financiamiento vs conversión + comparativo de términos vs competidores.",
        "owner": "Dir. Comercial + Finanzas",
        "recommended_action": "Correr una prueba controlada de 1 esquema de financiamiento/incentivo vs el actual, con política de descuentos definida.",
        "severity": "Alta",
        "supporting_signals": [
          "financiamiento probablemente bloquea conversión (objeción recurrente de términos de pago) (-)",
          "incentivos no claros (-)",
          "estrategia de liberación sin urgencia (-)",
          "pricing no alineado con meta de velocidad (-)",
          "descuentos reactivos, no controlados (-)"
        ],
        "symptom": "Objeción recurrente de términos de pago en la conversación de cierre."
      },
      {
        "band": "watch",
        "diagnosis_confidence": "low",
        "dimension": "broker_channel",
        "evidence_basis": "estimated",
        "health_score": 55.0,
        "hypothesis_strength": "baja (hipótesis)",
        "is_candidate_cause": false,
        "likely_cause": "Incentivo/priorización de brokers no alineados con la velocidad meta (hipótesis).",
        "limitations": [
          "Sin datos de desempeño por canal/broker; participación es declarada."
        ],
        "missing_evidence": [
          "Desempeño por broker (leads, citas, cierres, tiempo).",
          "Estructura de comisiones/incentivos vs alternativas del broker."
        ],
        "name": "Alineación de brokers/canales",
        "next_validation": "Desempeño por broker (leads, citas, cierres, tiempo) + estructura de comisiones vs alternativas.",
        "owner": "Dir. Comercial",
        "recommended_action": "Medir desempeño por canal/broker antes de rediseñar incentivos; no tocar la estructura a ciegas.",
        "severity": "Media",
        "supporting_signals": [
          "brokers no priorizan el proyecto (-)",
          "brokers = 35.0% de ventas declaradas (dependencia relevante)"
        ],
        "symptom": "Dependencia declarada de brokers sin medición de desempeño por canal."
      },
      {
        "band": "watch",
        "diagnosis_confidence": "low",
        "dimension": "market_pressure",
        "evidence_basis": "estimated",
        "health_score": 56.0,
        "hypothesis_strength": "baja (hipótesis)",
        "is_candidate_cause": false,
        "likely_cause": "Presión de mercado presente pero no dominante; la demanda entrante sugiere que el freno no es de tráfico (hipótesis).",
        "limitations": [
          "Sin datos verificados de oferta, absorción de competidores ni cierres del submercado."
        ],
        "missing_evidence": [
          "Estudio de oferta/absorción del submercado (T2/T3).",
          "Serie de precios de cierre de comparables (no asking)."
        ],
        "name": "Presión de mercado",
        "next_validation": "Estudio de oferta/absorción del submercado + precios de cierre de comparables.",
        "owner": "Dir. Comercial",
        "recommended_action": "Monitorear oferta/absorción del submercado; no mover precio de lista por reflejo de mercado.",
        "severity": "Media",
        "supporting_signals": [
          "oferta visible alta (-)",
          "competidores descontando (-)",
          "presión de precio al alza (-)",
          "comprador se mueve a esquemas más flexibles (-)",
          "proyectos comparables siguen activos (mercado no muerto) (+)"
        ],
        "symptom": "Oferta visible alta y competidores descontando, pero la demanda entrante sigue llegando."
      },
      {
        "band": "watch",
        "diagnosis_confidence": "low-medium",
        "dimension": "demand_generation",
        "evidence_basis": "estimated",
        "health_score": 58.0,
        "hypothesis_strength": "baja (hipótesis)",
        "is_candidate_cause": false,
        "likely_cause": "Mensaje desalineado con el dolor del comprador (amenidades vs términos de pago) (hipótesis).",
        "limitations": [
          "Sin export de plataforma de ads ni CRM: volumen y calidad son declarados, no medidos."
        ],
        "missing_evidence": [
          "Export de campañas (CPL, CTR, calidad por canal).",
          "Definición de lead calificado y % que cumple ICP."
        ],
        "name": "Generación de demanda",
        "next_validation": "Export de campañas: CPL, CTR y calidad de lead por canal.",
        "owner": "Marketing",
        "recommended_action": "Realinear creativo y copy a la objeción real (términos de pago) sin subir presupuesto todavía.",
        "severity": "Media",
        "supporting_signals": [
          "volumen de leads suficiente vs necesidad (+)",
          "calidad de leads mixta (-)",
          "canales funcionando parcialmente (-)",
          "mensaje NO alineado con el dolor del comprador (amenidades vs términos de pago) (-)",
          "promesa creativa parcialmente alineada con el producto (-)"
        ],
        "symptom": "Volumen suficiente pero calidad mixta y mensaje centrado en amenidades, no en pago."
      }
    ],
    "primary_bottlenecks": [
      "Salud del funnel",
      "Ejecución de ventas"
    ],
    "ruled_out_for_now": [
      "Alineación de brokers/canales",
      "Presión de mercado",
      "Generación de demanda"
    ],
    "secondary_bottlenecks": [
      "Disciplina de CRM",
      "Posicionamiento competitivo",
      "Estrategia comercial"
    ],
    "synthetic": true
  },
  "scores": [
    {
      "band": "watch",
      "basis": "estimated",
      "confidence": "low",
      "inputs": [
        "oferta visible alta (-)",
        "competidores descontando (-)",
        "presión de precio al alza (-)",
        "comprador se mueve a esquemas más flexibles (-)",
        "proyectos comparables siguen activos (mercado no muerto) (+)"
      ],
      "is_bottleneck": false,
      "key": "market_pressure",
      "layer": "market_context",
      "limitations": [
        "Sin datos verificados de oferta, absorción de competidores ni cierres del submercado."
      ],
      "missing_evidence": [
        "Estudio de oferta/absorción del submercado (T2/T3).",
        "Serie de precios de cierre de comparables (no asking)."
      ],
      "name": "Presión de mercado",
      "score": 56.0
    },
    {
      "band": "weak",
      "basis": "estimated",
      "confidence": "low-medium",
      "inputs": [
        "precio ~6.0% arriba de comparables (declarado) (-)",
        "diferenciador poco claro para el comprador (-)",
        "financiamiento por debajo del mercado (-)",
        "mix de unidades parcialmente desalineado con demanda (-)",
        "sin razón clara para comprar ahora (-)"
      ],
      "is_bottleneck": true,
      "key": "competitive_positioning",
      "layer": "competitive_positioning",
      "limitations": [
        "El gap de precio es estimado sobre asking declarado; no hay set comparable verificado ni precios de cierre."
      ],
      "missing_evidence": [
        "Matriz competitiva con set comparable verificado (P-02).",
        "Condiciones de financiamiento reales de 3–5 competidores directos."
      ],
      "name": "Posicionamiento competitivo",
      "score": 40.0
    },
    {
      "band": "watch",
      "basis": "estimated",
      "confidence": "low-medium",
      "inputs": [
        "volumen de leads suficiente vs necesidad (+)",
        "calidad de leads mixta (-)",
        "canales funcionando parcialmente (-)",
        "mensaje NO alineado con el dolor del comprador (amenidades vs términos de pago) (-)",
        "promesa creativa parcialmente alineada con el producto (-)"
      ],
      "is_bottleneck": false,
      "key": "demand_generation",
      "layer": "demand_generation",
      "limitations": [
        "Sin export de plataforma de ads ni CRM: volumen y calidad son declarados, no medidos."
      ],
      "missing_evidence": [
        "Export de campañas (CPL, CTR, calidad por canal).",
        "Definición de lead calificado y % que cumple ICP."
      ],
      "name": "Generación de demanda",
      "score": 58.0
    },
    {
      "band": "critical",
      "basis": "estimated",
      "confidence": "low-medium",
      "inputs": [
        "primer contacto lento (~9.0h vs <2h benchmark) (-)",
        "seguimiento insuficiente (1.6 intentos vs meta 6) (-)",
        "tasa de cita baja (10.0% de leads) (-)",
        "mayor fuga: lead→cita (-)",
        "objeciones no documentadas (-)"
      ],
      "is_bottleneck": true,
      "key": "funnel_health",
      "layer": "sales_funnel",
      "limitations": [
        "Métricas de funnel declaradas por dirección; sin conciliación contra CRM/telefonía."
      ],
      "missing_evidence": [
        "Export de CRM con timestamps por etapa.",
        "Registro de intentos de contacto y grabaciones de llamadas."
      ],
      "name": "Salud del funnel",
      "score": 30.0
    },
    {
      "band": "critical",
      "basis": "estimated",
      "confidence": "low-medium",
      "inputs": [
        "tareas de seguimiento inconsistentes (-)",
        "scripts comerciales no consistentes (-)",
        "disciplina del equipo baja (-)",
        "sin accountability por etapa del funnel (-)"
      ],
      "is_bottleneck": true,
      "key": "sales_execution",
      "layer": "sales_execution_crm",
      "limitations": [
        "Evaluación basada en percepción declarada de dirección; sin auditoría de CRM ni escucha de llamadas."
      ],
      "missing_evidence": [
        "Auditoría de actividad de CRM por asesor.",
        "Muestra de llamadas/mensajes para consistencia de script."
      ],
      "name": "Ejecución de ventas",
      "score": 32.0
    },
    {
      "band": "weak",
      "basis": "estimated",
      "confidence": "low-medium",
      "inputs": [
        "CRM no está limpio (-)",
        "leads no nutridos (-)",
        "leads antiguos sin reactivar (~900 estimados) (-)"
      ],
      "is_bottleneck": true,
      "key": "crm_discipline",
      "layer": "sales_execution_crm",
      "limitations": [
        "Conteo de leads envejecidos es estimado; requiere export real de CRM para confirmar."
      ],
      "missing_evidence": [
        "Export de CRM con fechas de última actividad.",
        "Segmentación de base reactivable por antigüedad y etapa."
      ],
      "name": "Disciplina de CRM",
      "score": 39.0
    },
    {
      "band": "weak",
      "basis": "estimated",
      "confidence": "low-medium",
      "inputs": [
        "financiamiento probablemente bloquea conversión (objeción recurrente de términos de pago) (-)",
        "incentivos no claros (-)",
        "estrategia de liberación sin urgencia (-)",
        "pricing no alineado con meta de velocidad (-)",
        "descuentos reactivos, no controlados (-)"
      ],
      "is_bottleneck": true,
      "key": "commercial_strategy",
      "layer": "commercial_strategy",
      "limitations": [
        "Impacto del financiamiento en conversión es inferido de objeciones declaradas, no medido en A/B ni en cierre."
      ],
      "missing_evidence": [
        "Prueba controlada de esquema de financiamiento vs conversión.",
        "Comparativo de términos de pago contra competidores directos."
      ],
      "name": "Estrategia comercial",
      "score": 41.0
    },
    {
      "band": "watch",
      "basis": "estimated",
      "confidence": "low",
      "inputs": [
        "brokers no priorizan el proyecto (-)",
        "brokers = 35.0% de ventas declaradas (dependencia relevante)"
      ],
      "is_bottleneck": false,
      "key": "broker_channel",
      "layer": "commercial_strategy",
      "limitations": [
        "Sin datos de desempeño por canal/broker; participación es declarada."
      ],
      "missing_evidence": [
        "Desempeño por broker (leads, citas, cierres, tiempo).",
        "Estructura de comisiones/incentivos vs alternativas del broker."
      ],
      "name": "Alineación de brokers/canales",
      "score": 55.0
    }
  ],
  "sections": [
    {
      "body": {
        "absorption_clarity_score": 32.0,
        "classification": "MULTIPLE BOTTLENECKS"
      },
      "key": "executive_summary",
      "label": "estimado — inferido de señales declaradas, no medido",
      "narrative": [
        "**Qué está pasando.** Paseo Albatros (Zona Norte (sintética)) lleva 6 meses en mercado con 92 de 140 unidades por vender. El ritmo declarado es 2.5 u/mes contra una meta de 7.0 u/mes — una brecha estimada de 4.5 u/mes (64.3%). Estimado/declarado, no es absorción medida.",
        "**Qué la explica (hipótesis).** Clasificación comercial **MULTIPLE BOTTLENECKS**: Varios cuellos de botella concurren; ninguno explica solo el rezago. Se prioriza por impacto y esfuerzo. El rezago no tiene una sola causa; concurren varias. El Absorption Clarity Score 32.0/100 (confianza low) mide qué tan limpio apunta el diagnóstico — no es un juicio de inversión ni una probabilidad de venta.",
        "**Qué corregir primero.** Salud del funnel (critical, score 30.0); Ejecución de ventas (critical, score 32.0). Son movimientos de bajo-regret: recuperan ventas sobre tráfico ya pagado antes de tocar precio o pauta.",
        "**Qué NO cambiar todavía.** No reaccionar bajando precio solo por presión de mercado: la demanda entrante sugiere que el problema no es de tráfico. No subir pauta todavía: llega volumen; el problema aparece después del lead, no antes.",
        "**Lo que sí está sustentado.** Existe una brecha entre ritmo esperado y ritmo declarado (estimado, no verificado). Hay señales declaradas concurrentes en ejecución de ventas, CRM y financiamiento.",
        "**Lo que permanece sin comprobar.** La causa raíz no está verificada: falta export de CRM, funnel medido y set comparable verificado. La absorción real y su velocidad no están medidas; todo ritmo es declarado/estimado. No se prueba que un solo factor (precio, marketing o ventas) explique el rezago."
      ],
      "tables": [
        {
          "columns": [
            "Indicador",
            "Lectura"
          ],
          "rows": [
            [
              "Clasificación comercial",
              "MULTIPLE BOTTLENECKS"
            ],
            [
              "Absorption Clarity Score",
              "32.0/100 · confianza low"
            ],
            [
              "Brecha de ritmo (declarada)",
              "2.5 vs 7.0 u/mes (64.3%)"
            ],
            [
              "Cuellos primarios (hipótesis)",
              "Salud del funnel, Ejecución de ventas"
            ],
            [
              "Primer movimiento (bajo-regret)",
              "Instalar SLA de primer contacto <2h y cadencia mínima de 6 toques por lead, medidos desde CRM."
            ],
            [
              "Naturaleza del resultado",
              "Diagnóstico comercial priorizado — no juicio de inversión, no absorción medida"
            ]
          ],
          "title": "Cuadro de mando ejecutivo"
        }
      ],
      "title": "1. Diagnóstico Ejecutivo"
    },
    {
      "body": {
        "avg_ticket_mxn": 4200000.0,
        "declared_actual_pace": 2.5,
        "expected_pace": 7.0,
        "extra_exposure_months": 23.7,
        "gap_pct": 64.3,
        "gap_units_month": 4.5,
        "label": "estimado / declarado — no es absorción medida",
        "months_in_market": 6,
        "pace_basis": "declared",
        "runout_months_at_actual": 36.8,
        "runout_months_at_expected": 13.1,
        "sales_velocity_gap_mxn_month": 18900000.0,
        "stake_label": "estimado sobre ticket declarado — diferencial de velocidad comercial, no es pérdida verificada",
        "units_remaining": 92
      },
      "key": "absorption_gap",
      "label": "estimado — inferido de señales declaradas, no medido",
      "narrative": [
        "**La brecha.** Ritmo esperado 7.0 u/mes vs declarado 2.5 u/mes — faltan 4.5 u/mes (64.3%). Base: declared — estimado / declarado — no es absorción medida.",
        "**Por qué importa (estimado).** A ese ritmo, cada mes de brecha equivale a ~$18.9M MXN en velocidad comercial diferida (estimado sobre ticket declarado — diferencial de velocidad comercial, no es pérdida verificada). No es pérdida verificada — es el tamaño del problema, dimensionado sobre el ticket declarado.",
        "**Riesgo si no se corrige.** Al ritmo declarado, el inventario restante (92 u) se agota en ~36.8 meses; al ritmo meta, en ~13.1 meses. Son ~23.7 meses adicionales de exposición: inventario que envejece, costo financiero que corre y presión de consejo que sube. Proyección aritmética bajo supuestos declarados, no absorción observada."
      ],
      "tables": [
        {
          "columns": [
            "Concepto",
            "Valor",
            "Etiqueta"
          ],
          "rows": [
            [
              "Ritmo esperado (u/mes)",
              7.0,
              "meta declarada"
            ],
            [
              "Ritmo declarado actual (u/mes)",
              2.5,
              "declarado — no verificado"
            ],
            [
              "Brecha (u/mes)",
              "4.5 (64.3%)",
              "estimado"
            ],
            [
              "Velocidad comercial diferida",
              "~$18.9M MXN/mes",
              "estimado sobre ticket declarado"
            ],
            [
              "Agotamiento @ ritmo actual",
              "~36.8 meses",
              "proyección aritmética"
            ],
            [
              "Agotamiento @ ritmo meta",
              "~13.1 meses",
              "proyección aritmética"
            ],
            [
              "Exposición adicional",
              "~23.7 meses",
              "proyección aritmética"
            ]
          ],
          "title": "Brecha de absorción y magnitud comercial (declarado/estimado)"
        }
      ],
      "title": "2. Brecha de Absorción"
    },
    {
      "body": {
        "nodes": [
          {
            "band": "critical",
            "diagnosis_confidence": "low-medium",
            "dimension": "funnel_health",
            "evidence_basis": "estimated",
            "health_score": 30.0,
            "hypothesis_strength": "alta (hipótesis)",
            "is_candidate_cause": true,
            "likely_cause": "Contacto de primer toque lento y cadencia de seguimiento por debajo de la meta (hipótesis).",
            "limitations": [
              "Métricas de funnel declaradas por dirección; sin conciliación contra CRM/telefonía."
            ],
            "missing_evidence": [
              "Export de CRM con timestamps por etapa.",
              "Registro de intentos de contacto y grabaciones de llamadas."
            ],
            "name": "Salud del funnel",
            "next_validation": "Export de CRM con timestamps por etapa + registro de intentos de contacto.",
            "owner": "Dir. Comercial + Coordinación de ventas",
            "recommended_action": "Instalar SLA de primer contacto <2h y cadencia mínima de 6 toques por lead, medidos desde CRM.",
            "severity": "Crítica",
            "supporting_signals": [
              "primer contacto lento (~9.0h vs <2h benchmark) (-)",
              "seguimiento insuficiente (1.6 intentos vs meta 6) (-)",
              "tasa de cita baja (10.0% de leads) (-)",
              "mayor fuga: lead→cita (-)",
              "objeciones no documentadas (-)"
            ],
            "symptom": "Entra volumen de leads, pero no se convierte en citas."
          },
          {
            "band": "critical",
            "diagnosis_confidence": "low-medium",
            "dimension": "sales_execution",
            "evidence_basis": "estimated",
            "health_score": 32.0,
            "hypothesis_strength": "alta (hipótesis)",
            "is_candidate_cause": true,
            "likely_cause": "Scripts inconsistentes, disciplina de seguimiento baja y sin accountability por etapa (hipótesis).",
            "limitations": [
              "Evaluación basada en percepción declarada de dirección; sin auditoría de CRM ni escucha de llamadas."
            ],
            "missing_evidence": [
              "Auditoría de actividad de CRM por asesor.",
              "Muestra de llamadas/mensajes para consistencia de script."
            ],
            "name": "Ejecución de ventas",
            "next_validation": "Auditoría de actividad de CRM por asesor + muestra de llamadas/mensajes.",
            "owner": "Gerencia de ventas",
            "recommended_action": "Estandarizar script + guion de objeciones y montar tablero de accountability por asesor y etapa, revisado semanalmente.",
            "severity": "Crítica",
            "supporting_signals": [
              "tareas de seguimiento inconsistentes (-)",
              "scripts comerciales no consistentes (-)",
              "disciplina del equipo baja (-)",
              "sin accountability por etapa del funnel (-)"
            ],
            "symptom": "Los resultados varían por asesor; no hay estándar replicable."
          },
          {
            "band": "weak",
            "diagnosis_confidence": "low-medium",
            "dimension": "crm_discipline",
            "evidence_basis": "estimated",
            "health_score": 39.0,
            "hypothesis_strength": "media (hipótesis)",
            "is_candidate_cause": true,
            "likely_cause": "CRM no higienizado, leads no nutridos y ~cientos de contactos antiguos sin reactivar (estimado).",
            "limitations": [
              "Conteo de leads envejecidos es estimado; requiere export real de CRM para confirmar."
            ],
            "missing_evidence": [
              "Export de CRM con fechas de última actividad.",
              "Segmentación de base reactivable por antigüedad y etapa."
            ],
            "name": "Disciplina de CRM",
            "next_validation": "Export de CRM con fechas de última actividad + segmentación por antigüedad/etapa.",
            "owner": "Operaciones / CRM",
            "recommended_action": "Higienizar CRM y lanzar reactivación segmentada de la base envejecida con mensaje de términos de pago.",
            "severity": "Alta",
            "supporting_signals": [
              "CRM no está limpio (-)",
              "leads no nutridos (-)",
              "leads antiguos sin reactivar (~900 estimados) (-)"
            ],
            "symptom": "Base histórica sin trabajar; nurturing inexistente y CRM desordenado."
          },
          {
            "band": "weak",
            "diagnosis_confidence": "low-medium",
            "dimension": "competitive_positioning",
            "evidence_basis": "estimated",
            "health_score": 40.0,
            "hypothesis_strength": "media (hipótesis)",
            "is_candidate_cause": true,
            "likely_cause": "Precio ligeramente arriba de comparables (estimado sobre asking) sin valor percibido que lo justifique (hipótesis).",
            "limitations": [
              "El gap de precio es estimado sobre asking declarado; no hay set comparable verificado ni precios de cierre."
            ],
            "missing_evidence": [
              "Matriz competitiva con set comparable verificado (P-02).",
              "Condiciones de financiamiento reales de 3–5 competidores directos."
            ],
            "name": "Posicionamiento competitivo",
            "next_validation": "Matriz competitiva con set comparable verificado y precios de cierre (no asking).",
            "owner": "Marketing + Producto",
            "recommended_action": "Reencuadrar el mensaje hacia términos de pago y razón para comprar ahora; levantar matriz competitiva de 3–5 comparables.",
            "severity": "Alta",
            "supporting_signals": [
              "precio ~6.0% arriba de comparables (declarado) (-)",
              "diferenciador poco claro para el comprador (-)",
              "financiamiento por debajo del mercado (-)",
              "mix de unidades parcialmente desalineado con demanda (-)",
              "sin razón clara para comprar ahora (-)"
            ],
            "symptom": "Diferenciador poco claro y sin razón para comprar ahora."
          },
          {
            "band": "weak",
            "diagnosis_confidence": "low-medium",
            "dimension": "commercial_strategy",
            "evidence_basis": "estimated",
            "health_score": 41.0,
            "hypothesis_strength": "media (hipótesis)",
            "is_candidate_cause": true,
            "likely_cause": "Financiamiento por debajo de mercado / oferta poco clara frena la conversión (hipótesis, no precio probado como incorrecto).",
            "limitations": [
              "Impacto del financiamiento en conversión es inferido de objeciones declaradas, no medido en A/B ni en cierre."
            ],
            "missing_evidence": [
              "Prueba controlada de esquema de financiamiento vs conversión.",
              "Comparativo de términos de pago contra competidores directos."
            ],
            "name": "Estrategia comercial",
            "next_validation": "A/B de esquema de financiamiento vs conversión + comparativo de términos vs competidores.",
            "owner": "Dir. Comercial + Finanzas",
            "recommended_action": "Correr una prueba controlada de 1 esquema de financiamiento/incentivo vs el actual, con política de descuentos definida.",
            "severity": "Alta",
            "supporting_signals": [
              "financiamiento probablemente bloquea conversión (objeción recurrente de términos de pago) (-)",
              "incentivos no claros (-)",
              "estrategia de liberación sin urgencia (-)",
              "pricing no alineado con meta de velocidad (-)",
              "descuentos reactivos, no controlados (-)"
            ],
            "symptom": "Objeción recurrente de términos de pago en la conversación de cierre."
          },
          {
            "band": "watch",
            "diagnosis_confidence": "low",
            "dimension": "broker_channel",
            "evidence_basis": "estimated",
            "health_score": 55.0,
            "hypothesis_strength": "baja (hipótesis)",
            "is_candidate_cause": false,
            "likely_cause": "Incentivo/priorización de brokers no alineados con la velocidad meta (hipótesis).",
            "limitations": [
              "Sin datos de desempeño por canal/broker; participación es declarada."
            ],
            "missing_evidence": [
              "Desempeño por broker (leads, citas, cierres, tiempo).",
              "Estructura de comisiones/incentivos vs alternativas del broker."
            ],
            "name": "Alineación de brokers/canales",
            "next_validation": "Desempeño por broker (leads, citas, cierres, tiempo) + estructura de comisiones vs alternativas.",
            "owner": "Dir. Comercial",
            "recommended_action": "Medir desempeño por canal/broker antes de rediseñar incentivos; no tocar la estructura a ciegas.",
            "severity": "Media",
            "supporting_signals": [
              "brokers no priorizan el proyecto (-)",
              "brokers = 35.0% de ventas declaradas (dependencia relevante)"
            ],
            "symptom": "Dependencia declarada de brokers sin medición de desempeño por canal."
          },
          {
            "band": "watch",
            "diagnosis_confidence": "low",
            "dimension": "market_pressure",
            "evidence_basis": "estimated",
            "health_score": 56.0,
            "hypothesis_strength": "baja (hipótesis)",
            "is_candidate_cause": false,
            "likely_cause": "Presión de mercado presente pero no dominante; la demanda entrante sugiere que el freno no es de tráfico (hipótesis).",
            "limitations": [
              "Sin datos verificados de oferta, absorción de competidores ni cierres del submercado."
            ],
            "missing_evidence": [
              "Estudio de oferta/absorción del submercado (T2/T3).",
              "Serie de precios de cierre de comparables (no asking)."
            ],
            "name": "Presión de mercado",
            "next_validation": "Estudio de oferta/absorción del submercado + precios de cierre de comparables.",
            "owner": "Dir. Comercial",
            "recommended_action": "Monitorear oferta/absorción del submercado; no mover precio de lista por reflejo de mercado.",
            "severity": "Media",
            "supporting_signals": [
              "oferta visible alta (-)",
              "competidores descontando (-)",
              "presión de precio al alza (-)",
              "comprador se mueve a esquemas más flexibles (-)",
              "proyectos comparables siguen activos (mercado no muerto) (+)"
            ],
            "symptom": "Oferta visible alta y competidores descontando, pero la demanda entrante sigue llegando."
          },
          {
            "band": "watch",
            "diagnosis_confidence": "low-medium",
            "dimension": "demand_generation",
            "evidence_basis": "estimated",
            "health_score": 58.0,
            "hypothesis_strength": "baja (hipótesis)",
            "is_candidate_cause": false,
            "likely_cause": "Mensaje desalineado con el dolor del comprador (amenidades vs términos de pago) (hipótesis).",
            "limitations": [
              "Sin export de plataforma de ads ni CRM: volumen y calidad son declarados, no medidos."
            ],
            "missing_evidence": [
              "Export de campañas (CPL, CTR, calidad por canal).",
              "Definición de lead calificado y % que cumple ICP."
            ],
            "name": "Generación de demanda",
            "next_validation": "Export de campañas: CPL, CTR y calidad de lead por canal.",
            "owner": "Marketing",
            "recommended_action": "Realinear creativo y copy a la objeción real (términos de pago) sin subir presupuesto todavía.",
            "severity": "Media",
            "supporting_signals": [
              "volumen de leads suficiente vs necesidad (+)",
              "calidad de leads mixta (-)",
              "canales funcionando parcialmente (-)",
              "mensaje NO alineado con el dolor del comprador (amenidades vs términos de pago) (-)",
              "promesa creativa parcialmente alineada con el producto (-)"
            ],
            "symptom": "Volumen suficiente pero calidad mixta y mensaje centrado en amenidades, no en pago."
          }
        ]
      },
      "key": "root_cause_map",
      "label": "estimado — inferido de señales declaradas, no medido",
      "narrative": [
        "**Cómo leerlo.** Se ordena de menor a mayor salud: menor salud = mayor probabilidad (hipótesis) de ser cuello de botella. Nada aquí es causa comprobada — es hipótesis ponderada sobre evidencia declarada/estimada.",
        "**Primarios (hipótesis alta):** Salud del funnel, Ejecución de ventas. **Secundarios (media):** Disciplina de CRM, Posicionamiento competitivo, Estrategia comercial. **Descartables por ahora:** Alineación de brokers/canales, Presión de mercado, Generación de demanda.",
        "Cada nodo es una HIPÓTESIS ponderada sobre evidencia declarada/estimada, no una causa comprobada. La causa raíz se confirma con la evidencia listada en 'missing_evidence'."
      ],
      "tables": [
        {
          "columns": [
            "Dimensión",
            "Salud",
            "Banda",
            "Rol",
            "Confianza"
          ],
          "rows": [
            [
              "Salud del funnel",
              30.0,
              "critical",
              "Primario",
              "low-medium"
            ],
            [
              "Ejecución de ventas",
              32.0,
              "critical",
              "Primario",
              "low-medium"
            ],
            [
              "Disciplina de CRM",
              39.0,
              "weak",
              "Secundario",
              "low-medium"
            ],
            [
              "Posicionamiento competitivo",
              40.0,
              "weak",
              "Secundario",
              "low-medium"
            ],
            [
              "Estrategia comercial",
              41.0,
              "weak",
              "Secundario",
              "low-medium"
            ],
            [
              "Alineación de brokers/canales",
              55.0,
              "watch",
              "Descartable (por ahora)",
              "low"
            ],
            [
              "Presión de mercado",
              56.0,
              "watch",
              "Descartable (por ahora)",
              "low"
            ],
            [
              "Generación de demanda",
              58.0,
              "watch",
              "Descartable (por ahora)",
              "low-medium"
            ]
          ],
          "title": "Salud por dimensión (100 = no es el problema; 0 = probable cuello de botella)"
        },
        {
          "columns": [
            "Dimensión",
            "Severidad",
            "Síntoma",
            "Hipótesis de causa",
            "Evidencia que la confirma"
          ],
          "rows": [
            [
              "Salud del funnel",
              "Crítica",
              "Entra volumen de leads, pero no se convierte en citas.",
              "Contacto de primer toque lento y cadencia de seguimiento por debajo de la meta (hipótesis).",
              "Export de CRM con timestamps por etapa + registro de intentos de contacto."
            ],
            [
              "Ejecución de ventas",
              "Crítica",
              "Los resultados varían por asesor; no hay estándar replicable.",
              "Scripts inconsistentes, disciplina de seguimiento baja y sin accountability por etapa (hipótesis).",
              "Auditoría de actividad de CRM por asesor + muestra de llamadas/mensajes."
            ],
            [
              "Disciplina de CRM",
              "Alta",
              "Base histórica sin trabajar; nurturing inexistente y CRM desordenado.",
              "CRM no higienizado, leads no nutridos y ~cientos de contactos antiguos sin reactivar (estimado).",
              "Export de CRM con fechas de última actividad + segmentación por antigüedad/etapa."
            ],
            [
              "Posicionamiento competitivo",
              "Alta",
              "Diferenciador poco claro y sin razón para comprar ahora.",
              "Precio ligeramente arriba de comparables (estimado sobre asking) sin valor percibido que lo justifique (hipótesis).",
              "Matriz competitiva con set comparable verificado y precios de cierre (no asking)."
            ],
            [
              "Estrategia comercial",
              "Alta",
              "Objeción recurrente de términos de pago en la conversación de cierre.",
              "Financiamiento por debajo de mercado / oferta poco clara frena la conversión (hipótesis, no precio probado como incorrecto).",
              "A/B de esquema de financiamiento vs conversión + comparativo de términos vs competidores."
            ]
          ],
          "title": "Causas candidatas — síntoma, hipótesis y prueba que la confirmaría"
        }
      ],
      "title": "3. Mapa de Causa Raíz"
    },
    {
      "body": {
        "band": "weak",
        "basis": "estimated",
        "confidence": "low-medium",
        "inputs": [
          "precio ~6.0% arriba de comparables (declarado) (-)",
          "diferenciador poco claro para el comprador (-)",
          "financiamiento por debajo del mercado (-)",
          "mix de unidades parcialmente desalineado con demanda (-)",
          "sin razón clara para comprar ahora (-)"
        ],
        "is_bottleneck": true,
        "key": "competitive_positioning",
        "layer": "competitive_positioning",
        "limitations": [
          "El gap de precio es estimado sobre asking declarado; no hay set comparable verificado ni precios de cierre."
        ],
        "missing_evidence": [
          "Matriz competitiva con set comparable verificado (P-02).",
          "Condiciones de financiamiento reales de 3–5 competidores directos."
        ],
        "name": "Posicionamiento competitivo",
        "score": 40.0
      },
      "key": "competitive_positioning",
      "label": "declarado por el cliente (T1) — no verificado",
      "narrative": [
        "**Señal.** Precio ~6.0% arriba de comparables (estimado sobre asking declarado), diferenciador weak, financiamiento below_market, razón para comprar ahora weak.",
        "**Lectura (hipótesis).** Salud 40.0 (weak). Sin un diferenciador claro, el comprador ancla en precio y castiga la prima; la palanca no es descontar, es reencuadrar valor y términos de pago.",
        "**Límite.** El gap de precio es estimado sobre asking declarado; no hay set comparable verificado ni precios de cierre. El gap de precio no está verificado contra precios de cierre."
      ],
      "tables": [
        {
          "columns": [
            "Aspecto",
            "Lectura"
          ],
          "rows": [
            [
              "Qué significa",
              "Mide si el comprador entiende por qué este proyecto vale su precio frente a alternativas."
            ],
            [
              "Por qué mueve caja",
              "Sin diferenciador claro, el comprador ancla la decisión sólo en precio y castiga cualquier prima."
            ],
            [
              "Evidencia (declarada)",
              "precio ~6.0% arriba de comparables (declarado) (-); diferenciador poco claro para el comprador (-); financiamiento por debajo del mercado (-)"
            ],
            [
              "Qué subiría el score",
              "Matriz competitiva con set comparable verificado y precios de cierre (no asking)."
            ],
            [
              "Confianza del diagnóstico",
              "low-medium"
            ]
          ],
          "title": "Scorecard — Posicionamiento competitivo · 40.0/100 (weak)"
        }
      ],
      "title": "4. Fricción de Posicionamiento y Mercado"
    },
    {
      "body": {
        "band": "watch",
        "basis": "estimated",
        "confidence": "low-medium",
        "inputs": [
          "volumen de leads suficiente vs necesidad (+)",
          "calidad de leads mixta (-)",
          "canales funcionando parcialmente (-)",
          "mensaje NO alineado con el dolor del comprador (amenidades vs términos de pago) (-)",
          "promesa creativa parcialmente alineada con el producto (-)"
        ],
        "is_bottleneck": false,
        "key": "demand_generation",
        "layer": "demand_generation",
        "limitations": [
          "Sin export de plataforma de ads ni CRM: volumen y calidad son declarados, no medidos."
        ],
        "missing_evidence": [
          "Export de campañas (CPL, CTR, calidad por canal).",
          "Definición de lead calificado y % que cumple ICP."
        ],
        "name": "Generación de demanda",
        "score": 58.0
      },
      "key": "marketing_and_demand",
      "label": "declarado por el cliente (T1) — no verificado",
      "narrative": [
        "**Señal.** 220 leads/mes (sufficient), calidad mixed, inversión ~$180k MXN/mes. Mensaje: amenities; objeción observada: payment_terms.",
        "**Lectura (hipótesis).** Salud 58.0 (watch). Llega volumen suficiente, pero el mensaje (amenidades) no ataca la objeción real (términos de pago): el desajuste es de mensaje/posicionamiento, no de tráfico. Subir pauta ahora amplificaría el desperdicio de un funnel que aún no convierte.",
        "**Límite.** Sin export de plataforma de ads ni CRM: volumen y calidad son declarados, no medidos."
      ],
      "tables": [
        {
          "columns": [
            "Aspecto",
            "Lectura"
          ],
          "rows": [
            [
              "Qué significa",
              "Mide si llega suficiente volumen y calidad de leads y si el mensaje ataca la objeción real."
            ],
            [
              "Por qué mueve caja",
              "Con volumen suficiente, subir pauta amplifica el desperdicio de un funnel que aún no convierte."
            ],
            [
              "Evidencia (declarada)",
              "volumen de leads suficiente vs necesidad (+); calidad de leads mixta (-); canales funcionando parcialmente (-)"
            ],
            [
              "Qué subiría el score",
              "Export de campañas: CPL, CTR y calidad de lead por canal."
            ],
            [
              "Confianza del diagnóstico",
              "low-medium"
            ]
          ],
          "title": "Scorecard — Generación de demanda · 58.0/100 (watch)"
        }
      ],
      "title": "5. Demanda y Ajuste de Mensaje"
    },
    {
      "body": {
        "band": "critical",
        "basis": "estimated",
        "confidence": "low-medium",
        "inputs": [
          "primer contacto lento (~9.0h vs <2h benchmark) (-)",
          "seguimiento insuficiente (1.6 intentos vs meta 6) (-)",
          "tasa de cita baja (10.0% de leads) (-)",
          "mayor fuga: lead→cita (-)",
          "objeciones no documentadas (-)"
        ],
        "is_bottleneck": true,
        "key": "funnel_health",
        "layer": "sales_funnel",
        "limitations": [
          "Métricas de funnel declaradas por dirección; sin conciliación contra CRM/telefonía."
        ],
        "missing_evidence": [
          "Export de CRM con timestamps por etapa.",
          "Registro de intentos de contacto y grabaciones de llamadas."
        ],
        "name": "Salud del funnel",
        "score": 30.0
      },
      "key": "sales_funnel",
      "label": "declarado por el cliente (T1) — no verificado",
      "narrative": [
        "**Señal.** Primer contacto ~9.0h (slow), seguimiento 1.6 intentos vs meta 6, tasa de cita 10.0%, show 55.0%. Mayor fuga declarada: lead_to_appointment.",
        "**Lectura (hipótesis).** Salud 30.0 (critical) — el cuello de botella primario. La fuga se concentra entre lead y cita: contacto lento y seguimiento por debajo de la meta. Es la palanca de mayor apalancamiento y menor regret: recupera ventas sobre leads ya pagados. Estimado/declarado; requiere export de CRM para verificar."
      ],
      "tables": [
        {
          "columns": [
            "Aspecto",
            "Lectura"
          ],
          "rows": [
            [
              "Qué significa",
              "Mide si los leads que ya entran avanzan a cita y reserva, o se fugan antes."
            ],
            [
              "Por qué mueve caja",
              "Es la palanca de mayor apalancamiento: recupera ventas sobre tráfico ya pagado, sin gastar un peso más en pauta."
            ],
            [
              "Evidencia (declarada)",
              "primer contacto lento (~9.0h vs <2h benchmark) (-); seguimiento insuficiente (1.6 intentos vs meta 6) (-); tasa de cita baja (10.0% de leads) (-)"
            ],
            [
              "Qué subiría el score",
              "Export de CRM con timestamps por etapa + registro de intentos de contacto."
            ],
            [
              "Confianza del diagnóstico",
              "low-medium"
            ]
          ],
          "title": "Scorecard — Salud del funnel · 30.0/100 (critical)"
        }
      ],
      "title": "6. Fuga del Embudo"
    },
    {
      "body": {
        "crm_discipline": {
          "band": "weak",
          "basis": "estimated",
          "confidence": "low-medium",
          "inputs": [
            "CRM no está limpio (-)",
            "leads no nutridos (-)",
            "leads antiguos sin reactivar (~900 estimados) (-)"
          ],
          "is_bottleneck": true,
          "key": "crm_discipline",
          "layer": "sales_execution_crm",
          "limitations": [
            "Conteo de leads envejecidos es estimado; requiere export real de CRM para confirmar."
          ],
          "missing_evidence": [
            "Export de CRM con fechas de última actividad.",
            "Segmentación de base reactivable por antigüedad y etapa."
          ],
          "name": "Disciplina de CRM",
          "score": 39.0
        },
        "sales_execution": {
          "band": "critical",
          "basis": "estimated",
          "confidence": "low-medium",
          "inputs": [
            "tareas de seguimiento inconsistentes (-)",
            "scripts comerciales no consistentes (-)",
            "disciplina del equipo baja (-)",
            "sin accountability por etapa del funnel (-)"
          ],
          "is_bottleneck": true,
          "key": "sales_execution",
          "layer": "sales_execution_crm",
          "limitations": [
            "Evaluación basada en percepción declarada de dirección; sin auditoría de CRM ni escucha de llamadas."
          ],
          "missing_evidence": [
            "Auditoría de actividad de CRM por asesor.",
            "Muestra de llamadas/mensajes para consistencia de script."
          ],
          "name": "Ejecución de ventas",
          "score": 32.0
        }
      },
      "key": "crm_and_followup",
      "label": "declarado por el cliente (T1) — no verificado",
      "narrative": [
        "**Señal.** CRM limpio: False; tareas seguidas: inconsistent; leads nutridos: False; base envejecida ~900 sin reactivar (estimado).",
        "**Lectura (hipótesis).** Ejecución de ventas 32.0 (critical) y disciplina de CRM 39.0 (weak). El resultado depende del asesor, no del proceso; y hay una base reactivable — la fuente de citas más barata disponible antes de subir pauta. Estimado; el conteo real exige export de CRM."
      ],
      "tables": [
        {
          "columns": [
            "Aspecto",
            "Lectura"
          ],
          "rows": [
            [
              "Qué significa",
              "Mide si el resultado depende del proceso comercial o del asesor de turno."
            ],
            [
              "Por qué mueve caja",
              "Sin disciplina de ejecución, cualquier lead adicional que se genere se desperdicia aguas abajo."
            ],
            [
              "Evidencia (declarada)",
              "tareas de seguimiento inconsistentes (-); scripts comerciales no consistentes (-); disciplina del equipo baja (-)"
            ],
            [
              "Qué subiría el score",
              "Auditoría de actividad de CRM por asesor + muestra de llamadas/mensajes."
            ],
            [
              "Confianza del diagnóstico",
              "low-medium"
            ]
          ],
          "title": "Scorecard — Ejecución de ventas · 32.0/100 (critical)"
        },
        {
          "columns": [
            "Aspecto",
            "Lectura"
          ],
          "rows": [
            [
              "Qué significa",
              "Mide la higiene del CRM y si la base histórica de leads se trabaja o se enfría."
            ],
            [
              "Por qué mueve caja",
              "Reactivar base envejecida es la fuente de citas más barata disponible antes de subir pauta."
            ],
            [
              "Evidencia (declarada)",
              "CRM no está limpio (-); leads no nutridos (-); leads antiguos sin reactivar (~900 estimados) (-)"
            ],
            [
              "Qué subiría el score",
              "Export de CRM con fechas de última actividad + segmentación por antigüedad/etapa."
            ],
            [
              "Confianza del diagnóstico",
              "low-medium"
            ]
          ],
          "title": "Scorecard — Disciplina de CRM · 39.0/100 (weak)"
        }
      ],
      "title": "7. Ejecución de Ventas y CRM"
    },
    {
      "body": {
        "broker_channel": {
          "band": "watch",
          "basis": "estimated",
          "confidence": "low",
          "inputs": [
            "brokers no priorizan el proyecto (-)",
            "brokers = 35.0% de ventas declaradas (dependencia relevante)"
          ],
          "is_bottleneck": false,
          "key": "broker_channel",
          "layer": "commercial_strategy",
          "limitations": [
            "Sin datos de desempeño por canal/broker; participación es declarada."
          ],
          "missing_evidence": [
            "Desempeño por broker (leads, citas, cierres, tiempo).",
            "Estructura de comisiones/incentivos vs alternativas del broker."
          ],
          "name": "Alineación de brokers/canales",
          "score": 55.0
        },
        "commercial_strategy": {
          "band": "weak",
          "basis": "estimated",
          "confidence": "low-medium",
          "inputs": [
            "financiamiento probablemente bloquea conversión (objeción recurrente de términos de pago) (-)",
            "incentivos no claros (-)",
            "estrategia de liberación sin urgencia (-)",
            "pricing no alineado con meta de velocidad (-)",
            "descuentos reactivos, no controlados (-)"
          ],
          "is_bottleneck": true,
          "key": "commercial_strategy",
          "layer": "commercial_strategy",
          "limitations": [
            "Impacto del financiamiento en conversión es inferido de objeciones declaradas, no medido en A/B ni en cierre."
          ],
          "missing_evidence": [
            "Prueba controlada de esquema de financiamiento vs conversión.",
            "Comparativo de términos de pago contra competidores directos."
          ],
          "name": "Estrategia comercial",
          "score": 41.0
        }
      },
      "key": "pricing_financing_incentives",
      "label": "estimado — inferido de señales declaradas, no medido",
      "narrative": [
        "**Señal.** Financiamiento bloquea conversión: likely (inferido de objeciones declaradas). Incentivos claros: False; descuentos controlados: False; brokers = 35.0% de ventas.",
        "**Lectura (hipótesis).** Estrategia comercial 41.0 (weak); brokers/canales 55.0 (watch). La objeción recurrente de términos de pago apunta a financiamiento/oferta antes que a precio de lista. Antes de descontar, conviene aislar el efecto del financiamiento con una prueba controlada. El precio no está probado como el freno; es hipótesis a validar."
      ],
      "tables": [
        {
          "columns": [
            "Aspecto",
            "Lectura"
          ],
          "rows": [
            [
              "Qué significa",
              "Mide si el esquema de precio/financiamiento/incentivos empuja la velocidad o la frena."
            ],
            [
              "Por qué mueve caja",
              "La objeción recurrente de pago sugiere que la palanca es financiamiento antes que precio de lista."
            ],
            [
              "Evidencia (declarada)",
              "financiamiento probablemente bloquea conversión (objeción recurrente de términos de pago) (-); incentivos no claros (-); estrategia de liberación sin urgencia (-)"
            ],
            [
              "Qué subiría el score",
              "A/B de esquema de financiamiento vs conversión + comparativo de términos vs competidores."
            ],
            [
              "Confianza del diagnóstico",
              "low-medium"
            ]
          ],
          "title": "Scorecard — Estrategia comercial · 41.0/100 (weak)"
        }
      ],
      "title": "8. Fricción de Precio y Financiamiento"
    },
    {
      "body": {
        "do_not_change_yet": [
          "No reaccionar bajando precio solo por presión de mercado: la demanda entrante sugiere que el problema no es de tráfico.",
          "No subir pauta todavía: llega volumen; el problema aparece después del lead, no antes."
        ],
        "horizon": "30 días",
        "label": "plan de acción — hipótesis priorizada, no garantía de resultado",
        "measurement": "Cada acción se mide contra baseline declarado; a los 30 días se re-scorea con datos ya instrumentados (sube la confianza del diagnóstico).",
        "principle": "Bajo-regret primero: instrumentar y corregir ejecución antes de mover precio; aislar variables antes de descontar.",
        "week_1": [
          "Instalar SLA de primer contacto <2h y medirlo desde CRM.",
          "Instrumentar el funnel por etapa (lead→cita→show→reserva) para localizar la fuga."
        ],
        "week_2": [
          "Fijar cadencia mínima de 6 toques por lead con recordatorios automáticos.",
          "Tablero de accountability por asesor y etapa, revisado semanalmente."
        ],
        "weeks": [
          {
            "actions": [
              "Instalar SLA de primer contacto <2h y medirlo desde CRM.",
              "Instrumentar el funnel por etapa (lead→cita→show→reserva) para localizar la fuga.",
              "Estandarizar script comercial y guion de objeciones; iniciar registro de objeciones."
            ],
            "decision_checkpoint": "¿La fuga se confirma en lead→cita o aparece antes/después? Ajustar foco.",
            "objective": "Instrumentar la fuga real y alinear al equipo en una sola hipótesis, no en culpas cruzadas.",
            "owner": "Dir. Comercial + Coordinación de ventas",
            "required_data": "Export de CRM con timestamps por etapa; registro de intentos de contacto.",
            "success_signal": "Tiempo de primer contacto medido y bajando; etapas del funnel visibles por primera vez.",
            "theme": "Evidencia y alineación",
            "week": "Semana 1"
          },
          {
            "actions": [
              "Fijar cadencia mínima de 6 toques por lead con recordatorios automáticos.",
              "Tablero de accountability por asesor y etapa, revisado semanalmente.",
              "Higienizar el CRM y segmentar la base envejecida por antigüedad/etapa."
            ],
            "decision_checkpoint": "¿Sube la tasa de cita con el mismo volumen de leads?",
            "objective": "Cerrar la fuga de bajo-regret sobre tráfico ya pagado, sin mover precio ni pauta.",
            "owner": "Gerencia de ventas + Operaciones/CRM",
            "required_data": "Actividad de CRM por asesor; conteo real de base reactivable.",
            "success_signal": "Cadencia de seguimiento cumplida ≥80%; primeras citas de base reactivada.",
            "theme": "Corrección de funnel y CRM",
            "week": "Semana 2"
          },
          {
            "actions": [
              "Reencuadrar el mensaje: de amenidades hacia términos de pago / razón para comprar ahora.",
              "Preparar 1 prueba controlada de esquema de financiamiento/incentivo vs el actual.",
              "Levantar matriz competitiva rápida de precio/financiamiento vs 3–5 comparables."
            ],
            "decision_checkpoint": "¿La fricción es de financiamiento u oferta, y no de precio de lista?",
            "objective": "Atacar la objeción real de pago y el mensaje, aislando variables antes de descontar.",
            "owner": "Marketing + Dir. Comercial + Finanzas",
            "required_data": "Objeciones documentadas de las semanas 1–2; términos de pago de comparables.",
            "success_signal": "Variante de financiamiento lista para probar; mensaje alineado a la objeción.",
            "theme": "Oferta, narrativa y broker",
            "week": "Semana 3"
          },
          {
            "actions": [
              "Medir cada acción contra el baseline declarado de la semana 1.",
              "Re-scorear el diagnóstico con datos instrumentados (sube la confianza).",
              "Decidir el siguiente frente (financiamiento, broker o pauta) según lo que movió la aguja."
            ],
            "decision_checkpoint": "¿Qué palanca produjo reservas y cuál escalar en los siguientes 30 días?",
            "objective": "Re-scorear con datos ya instrumentados y decidir el siguiente movimiento con evidencia, no presión.",
            "owner": "Dir. Comercial + Dirección",
            "required_data": "Serie de 30 días de funnel instrumentado y resultado de la prueba de financiamiento.",
            "success_signal": "Diagnóstico re-scoreado con confianza más alta; decisión de escalado basada en evidencia.",
            "theme": "Medición y revisión de decisión",
            "week": "Semana 4"
          }
        ],
        "weeks_3_4": [
          "Reencuadrar el mensaje: de amenidades hacia términos de pago / razón para comprar ahora.",
          "Preparar 1 prueba controlada de esquema de financiamiento/incentivo vs el actual.",
          "Re-scorear el diagnóstico con datos instrumentados (sube la confianza)."
        ]
      },
      "key": "recovery_plan_30d",
      "label": "modelado / según escenario — no observado",
      "narrative": [
        "**Principio.** Bajo-regret primero: instrumentar y corregir ejecución antes de mover precio; aislar variables antes de descontar. (plan modelado / según escenario, no garantía de resultado).",
        "**Cómo se prioriza.** Cada palanca se clasifica *Corregir primero · Segundo · Monitorear*, con impacto, esfuerzo, confianza, owner, ventana y riesgo de no actuar. Se secuencia evidencia → funnel/CRM → oferta/narrativa → medición.",
        "**Semana 1 · Evidencia y alineación.** Instrumentar la fuga real y alinear al equipo en una sola hipótesis, no en culpas cruzadas. Acciones: Instalar SLA de primer contacto <2h y medirlo desde CRM.; Instrumentar el funnel por etapa (lead→cita→show→reserva) para localizar la fuga.; Estandarizar script comercial y guion de objeciones; iniciar registro de objeciones.",
        "**Semana 2 · Corrección de funnel y CRM.** Cerrar la fuga de bajo-regret sobre tráfico ya pagado, sin mover precio ni pauta. Acciones: Fijar cadencia mínima de 6 toques por lead con recordatorios automáticos.; Tablero de accountability por asesor y etapa, revisado semanalmente.; Higienizar el CRM y segmentar la base envejecida por antigüedad/etapa.",
        "**Semana 3 · Oferta, narrativa y broker.** Atacar la objeción real de pago y el mensaje, aislando variables antes de descontar. Acciones: Reencuadrar el mensaje: de amenidades hacia términos de pago / razón para comprar ahora.; Preparar 1 prueba controlada de esquema de financiamiento/incentivo vs el actual.; Levantar matriz competitiva rápida de precio/financiamiento vs 3–5 comparables.",
        "**Semana 4 · Medición y revisión de decisión.** Re-scorear con datos ya instrumentados y decidir el siguiente movimiento con evidencia, no presión. Acciones: Medir cada acción contra el baseline declarado de la semana 1.; Re-scorear el diagnóstico con datos instrumentados (sube la confianza).; Decidir el siguiente frente (financiamiento, broker o pauta) según lo que movió la aguja.",
        "**No cambiar todavía.** No reaccionar bajando precio solo por presión de mercado: la demanda entrante sugiere que el problema no es de tráfico. No subir pauta todavía: llega volumen; el problema aparece después del lead, no antes.",
        "**Medición.** Cada acción se mide contra baseline declarado; a los 30 días se re-scorea con datos ya instrumentados (sube la confianza del diagnóstico)."
      ],
      "tables": [
        {
          "columns": [
            "Prioridad",
            "Palanca",
            "Impacto",
            "Esfuerzo",
            "Confianza",
            "Owner",
            "Ventana"
          ],
          "rows": [
            [
              "Corregir primero",
              "Salud del funnel",
              "Alto",
              "Bajo",
              "low-medium",
              "Dir. Comercial + Coordinación de ventas",
              "Semana 1"
            ],
            [
              "Corregir primero",
              "Ejecución de ventas",
              "Alto",
              "Medio",
              "low-medium",
              "Gerencia de ventas",
              "Semana 1–2"
            ],
            [
              "Segundo",
              "Disciplina de CRM",
              "Medio-Alto",
              "Bajo",
              "low-medium",
              "Operaciones / CRM",
              "Semana 2"
            ],
            [
              "Segundo",
              "Estrategia comercial",
              "Medio-Alto",
              "Medio",
              "low-medium",
              "Dir. Comercial + Finanzas",
              "Semana 3–4"
            ],
            [
              "Segundo",
              "Posicionamiento competitivo",
              "Medio",
              "Medio",
              "low-medium",
              "Marketing + Producto",
              "Semana 3"
            ],
            [
              "Monitorear",
              "Generación de demanda",
              "Bajo-Medio",
              "Bajo",
              "low-medium",
              "Marketing",
              "Semana 3"
            ],
            [
              "Monitorear",
              "Presión de mercado",
              "Bajo",
              "Bajo",
              "low",
              "Dir. Comercial",
              "Continuo"
            ],
            [
              "Monitorear",
              "Alineación de brokers/canales",
              "Bajo",
              "Medio",
              "low",
              "Dir. Comercial",
              "Continuo"
            ]
          ],
          "title": "Matriz de priorización (hipótesis)"
        },
        {
          "columns": [
            "Palanca",
            "Acción (bajo-regret)",
            "Riesgo si no se actúa"
          ],
          "rows": [
            [
              "Salud del funnel",
              "Instalar SLA de primer contacto <2h y cadencia mínima de 6 toques por lead, medidos desde CRM.",
              "Cada semana de contacto lento quema leads pagados; la fuga lead→cita se ensancha y sube el CAC efectivo."
            ],
            [
              "Ejecución de ventas",
              "Estandarizar script + guion de objeciones y montar tablero de accountability por asesor y etapa, revisado semanalmente.",
              "El equipo no escala: más tráfico no produce más reservas porque el proceso no lo sostiene."
            ],
            [
              "Disciplina de CRM",
              "Higienizar CRM y lanzar reactivación segmentada de la base envejecida con mensaje de términos de pago.",
              "La base reactivable se enfría; se paga tráfico nuevo por citas que ya estaban en casa."
            ],
            [
              "Estrategia comercial",
              "Correr una prueba controlada de 1 esquema de financiamiento/incentivo vs el actual, con política de descuentos definida.",
              "Se recurre a descuentos de lista que erosionan margen sin resolver la fricción real de pago."
            ],
            [
              "Posicionamiento competitivo",
              "Reencuadrar el mensaje hacia términos de pago y razón para comprar ahora; levantar matriz competitiva de 3–5 comparables.",
              "La conversación se reduce a precio; presiona a descuentos reactivos que destruyen margen."
            ],
            [
              "Generación de demanda",
              "Realinear creativo y copy a la objeción real (términos de pago) sin subir presupuesto todavía.",
              "Escalar inversión sobre un mensaje desalineado sube el costo por cita, no las reservas."
            ],
            [
              "Presión de mercado",
              "Monitorear oferta/absorción del submercado; no mover precio de lista por reflejo de mercado.",
              "Sobre-reaccionar al mercado con descuentos destruye margen sin arreglar la conversión interna."
            ],
            [
              "Alineación de brokers/canales",
              "Medir desempeño por canal/broker antes de rediseñar incentivos; no tocar la estructura a ciegas.",
              "Se mantiene una dependencia opaca; no se sabe qué canal sostiene o diluye el pipeline."
            ]
          ],
          "title": "Acción recomendada y riesgo de no actuar"
        },
        {
          "columns": [
            "Semana",
            "Owner",
            "Datos requeridos",
            "Checkpoint de decisión",
            "Señal de éxito"
          ],
          "rows": [
            [
              "Semana 1 · Evidencia y alineación",
              "Dir. Comercial + Coordinación de ventas",
              "Export de CRM con timestamps por etapa; registro de intentos de contacto.",
              "¿La fuga se confirma en lead→cita o aparece antes/después? Ajustar foco.",
              "Tiempo de primer contacto medido y bajando; etapas del funnel visibles por primera vez."
            ],
            [
              "Semana 2 · Corrección de funnel y CRM",
              "Gerencia de ventas + Operaciones/CRM",
              "Actividad de CRM por asesor; conteo real de base reactivable.",
              "¿Sube la tasa de cita con el mismo volumen de leads?",
              "Cadencia de seguimiento cumplida ≥80%; primeras citas de base reactivada."
            ],
            [
              "Semana 3 · Oferta, narrativa y broker",
              "Marketing + Dir. Comercial + Finanzas",
              "Objeciones documentadas de las semanas 1–2; términos de pago de comparables.",
              "¿La fricción es de financiamiento u oferta, y no de precio de lista?",
              "Variante de financiamiento lista para probar; mensaje alineado a la objeción."
            ],
            [
              "Semana 4 · Medición y revisión de decisión",
              "Dir. Comercial + Dirección",
              "Serie de 30 días de funnel instrumentado y resultado de la prueba de financiamiento.",
              "¿Qué palanca produjo reservas y cuál escalar en los siguientes 30 días?",
              "Diagnóstico re-scoreado con confianza más alta; decisión de escalado basada en evidencia."
            ]
          ],
          "title": "Plan operativo 30 días — checkpoints y señales de éxito"
        }
      ],
      "title": "9. Priorización y Plan de Recuperación a 30 Días"
    },
    {
      "body": {
        "missing_evidence_plan": [
          {
            "evidence": "Export de CRM con timestamps por etapa.",
            "priority": "alta",
            "unlocks_dimension": "Salud del funnel",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Registro de intentos de contacto y grabaciones de llamadas.",
            "priority": "alta",
            "unlocks_dimension": "Salud del funnel",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Auditoría de actividad de CRM por asesor.",
            "priority": "alta",
            "unlocks_dimension": "Ejecución de ventas",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Muestra de llamadas/mensajes para consistencia de script.",
            "priority": "alta",
            "unlocks_dimension": "Ejecución de ventas",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Export de CRM con fechas de última actividad.",
            "priority": "alta",
            "unlocks_dimension": "Disciplina de CRM",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Segmentación de base reactivable por antigüedad y etapa.",
            "priority": "alta",
            "unlocks_dimension": "Disciplina de CRM",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Matriz competitiva con set comparable verificado (P-02).",
            "priority": "alta",
            "unlocks_dimension": "Posicionamiento competitivo",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Condiciones de financiamiento reales de 3–5 competidores directos.",
            "priority": "alta",
            "unlocks_dimension": "Posicionamiento competitivo",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Prueba controlada de esquema de financiamiento vs conversión.",
            "priority": "alta",
            "unlocks_dimension": "Estrategia comercial",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Comparativo de términos de pago contra competidores directos.",
            "priority": "alta",
            "unlocks_dimension": "Estrategia comercial",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Desempeño por broker (leads, citas, cierres, tiempo).",
            "priority": "media",
            "unlocks_dimension": "Alineación de brokers/canales",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Estructura de comisiones/incentivos vs alternativas del broker.",
            "priority": "media",
            "unlocks_dimension": "Alineación de brokers/canales",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Estudio de oferta/absorción del submercado (T2/T3).",
            "priority": "media",
            "unlocks_dimension": "Presión de mercado",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Serie de precios de cierre de comparables (no asking).",
            "priority": "media",
            "unlocks_dimension": "Presión de mercado",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Export de campañas (CPL, CTR, calidad por canal).",
            "priority": "media",
            "unlocks_dimension": "Generación de demanda",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          },
          {
            "evidence": "Definición de lead calificado y % que cumple ICP.",
            "priority": "media",
            "unlocks_dimension": "Generación de demanda",
            "would_change_label_from": "estimado/declarado",
            "would_change_label_to": "observado internamente / verificado"
          }
        ]
      },
      "key": "assumptions_gaps_limitations",
      "label": "incompleto — evidencia insuficiente para concluir",
      "narrative": [
        "**Cómo tratar cada dato.** Todo insumo está etiquetado por su nivel de evidencia (leyenda abajo). El diagnóstico es direccional bajo datos declarados/incompletos, no verificado.",
        "**Supuestos.** (1) Todos los insumos son declarados por el cliente (T1) y, salvo indicación, no verificados. (2) Completitud de datos: incomplete — sin export de CRM, sin serie de transacciones/inventario verificada, sin velocidad de terceros. (3) El ritmo de venta actual es declarado por dirección; se usa como estimado, no como medición. (4) Los pesos del scoring son criterio editorial del producto, no un modelo calibrado. (5) El gap de precio vs comparables es estimado sobre asking declarado, no sobre precios de cierre. (6) El caso es sintético (golden case GC-C); las cifras son ilustrativas.",
        "**Límites.** (1) PRODUCT-003 es un shell de producto + demo sintética + framework de diagnóstico. NO es un motor de absorción medida. (2) No comprueba la causa raíz; prioriza hipótesis. La confirmación requiere la evidencia del plan de evidencia faltante. (3) No emite juicio de inversión (GO/NO_GO): esa autoridad pertenece a un motor certificado que no existe para este producto todavía. (4) No afirma que el problema sea ventas, marketing o precio: sin la evidencia correspondiente, cada uno es hipótesis. (5) Sin promesa de ventas, absorción ni ROI. (6) La absorción y su velocidad no están verificadas; se etiquetan declarado/estimado/modelado, nunca verificado. (7) No hay integración con datos vivos de cliente ni CRM en esta versión.",
        "**Ruta a mayor confianza.** La evidencia de abajo, en orden de prioridad, gradúa el diagnóstico de estimado/declarado a observado internamente y sube su confianza en la próxima revisión."
      ],
      "tables": [
        {
          "columns": [
            "Nivel",
            "Qué significa",
            "Cómo se gradúa"
          ],
          "rows": [
            [
              "Declarado",
              "Provisto por dirección (T1). No verificado por terceros ni conciliado con sistema.",
              "Export de CRM / inventario / transacciones."
            ],
            [
              "Estimado",
              "Inferido de señales declaradas. No medido.",
              "Métrica instrumentada del propio dato (funnel, CPL, cierres)."
            ],
            [
              "Modelado",
              "Proyección aritmética o según escenario. No observado.",
              "Serie observada de absorción / cobranza en el tiempo."
            ],
            [
              "Observado (interno)",
              "Dato operativo real del cliente (p. ej. export de CRM). Sin verificación de terceros.",
              "Validación de mercado / set comparable verificado."
            ],
            [
              "Incompleto",
              "Evidencia insuficiente para concluir. Requiere recolección antes de decidir.",
              "El plan de evidencia faltante de este diagnóstico."
            ]
          ],
          "title": "Leyenda de evidencia"
        },
        {
          "columns": [
            "Evidencia faltante",
            "Desbloquea",
            "Prioridad",
            "Sube la etiqueta a"
          ],
          "rows": [
            [
              "Export de CRM con timestamps por etapa.",
              "Salud del funnel",
              "alta",
              "observado internamente / verificado"
            ],
            [
              "Registro de intentos de contacto y grabaciones de llamadas.",
              "Salud del funnel",
              "alta",
              "observado internamente / verificado"
            ],
            [
              "Auditoría de actividad de CRM por asesor.",
              "Ejecución de ventas",
              "alta",
              "observado internamente / verificado"
            ],
            [
              "Muestra de llamadas/mensajes para consistencia de script.",
              "Ejecución de ventas",
              "alta",
              "observado internamente / verificado"
            ],
            [
              "Export de CRM con fechas de última actividad.",
              "Disciplina de CRM",
              "alta",
              "observado internamente / verificado"
            ],
            [
              "Segmentación de base reactivable por antigüedad y etapa.",
              "Disciplina de CRM",
              "alta",
              "observado internamente / verificado"
            ],
            [
              "Matriz competitiva con set comparable verificado (P-02).",
              "Posicionamiento competitivo",
              "alta",
              "observado internamente / verificado"
            ],
            [
              "Condiciones de financiamiento reales de 3–5 competidores directos.",
              "Posicionamiento competitivo",
              "alta",
              "observado internamente / verificado"
            ]
          ],
          "title": "Plan de evidencia faltante (prioridad alta primero)"
        }
      ],
      "title": "10. Base de Evidencia, Brechas de Datos y Límites"
    }
  ],
  "source": {
    "as_of": "2026-07-04",
    "authority": "Diagnóstico comercial priorizado (hipótesis). NO emite juicio de inversión ni verifica absorción; esas autoridades requieren un motor certificado inexistente para este producto todavía.",
    "bundle_schema": "trident.product.absorption_positioning_package.v1",
    "case_id": "GC-C-PASEO-ALBA",
    "data_completeness": "incomplete",
    "engagement_id": "ENG-GC-C",
    "product_id": "PRODUCT-003",
    "product_status": "product_shell + synthetic_demo + gtm_ready_diagnostic_framework",
    "product_version": "0.1.0",
    "synthetic": true
  },
  "validation": {
    "checks": [
      {
        "guard": "forbidden_copy",
        "passed": true,
        "problems": []
      },
      {
        "guard": "section_labels",
        "passed": true,
        "problems": []
      },
      {
        "guard": "valid_classification_not_verdict",
        "passed": true,
        "problems": []
      },
      {
        "guard": "no_investment_verdict",
        "passed": true,
        "problems": []
      },
      {
        "guard": "absorption_not_verified",
        "passed": true,
        "problems": []
      },
      {
        "guard": "assumptions_limitations_evidence_present",
        "passed": true,
        "problems": []
      },
      {
        "guard": "synthetic_labeling",
        "passed": true,
        "problems": []
      }
    ],
    "passed": true
  }
}
