{
  "version": "1.0.0",
  "date": "2026-09-23",
  "status": "borrador",
  "provenance": "Muestra didáctica adaptada de las semillas sintéticas SYN-CRM-001, SYN-CRM-002 y SYN-CRM-004 del piloto CRM local v1 de IA en Uso. Entradas, propuestas y referencias redactadas con asistencia de IA para este ejercicio y pendientes de revisión editorial humana. Las propuestas son salidas manuales preparadas para enseñar la revisión y pueden contener errores deliberados; no proceden de un modelo ejecutado ni son resultados medidos. No es un conjunto de evaluación independiente.",
  "task": {
    "title": "Antes de conectarlo al CRM",
    "goal": "Revisar una solicitud comercial sintética y decidir si puede prepararse un borrador pendiente de revisión humana, si falta información o si debe conciliarse una reentrega con un borrador existente.",
    "requiredFields": [
      "empresa",
      "email",
      "servicio"
    ],
    "optionalFields": [
      "presupuesto"
    ],
    "rules": [
      "Solo se preparan borradores. Ninguna decisión aprueba un alta en un CRM ni autoriza enviar un email.",
      "Cada campo debe estar respaldado por el mensaje de esta solicitud. No completar datos usando otra solicitud, conjeturas o información externa.",
      "El único servicio admitido en esta muestra es revision_campanas. Las expresiones revisar campañas y revisar nuestras campañas se normalizan a ese valor.",
      "Un campo ausente se conserva como null. Empresa, email y servicio son obligatorios; presupuesto es opcional y su ausencia no bloquea la preparación del borrador.",
      "Preparar significa conservar un borrador PENDIENTE de revisión humana cuando los campos obligatorios tienen soporte. Revisar significa retirar valores sin soporte y pedir que se complete o aclare la información antes de continuar.",
      "La identidad de una solicitud es el par source + requestId. El mismo email por sí solo no demuestra que dos solicitudes sean la misma.",
      "Conciliar significa comparar la identidad y la huella del objeto preparado con el borrador existente. En esta muestra se comparan manualmente los cuatro campos normalizados. Misma identidad y mismos campos: conservar un único borrador. Misma identidad y campos distintos: bloquear la incorporación, no sobrescribir y pedir revisión.",
      "Todos los nombres, mensajes y emails del ejercicio son sintéticos. Las propuestas y referencias son didácticas; no se mide el rendimiento de un sistema."
    ]
  },
  "cases": [
    {
      "id": "MUESTRA-CRM-001",
      "title": "Una solicitud con los datos necesarios",
      "family": "completo",
      "requestId": "mail-001",
      "source": "correo-sintetico",
      "input": "Soy Ana de Taller Norte. Queremos revisar nuestras campañas. Email: ana@example.com.",
      "context": "Primera entrega de la identidad correo-sintetico + mail-001. No existe un borrador previo para esa identidad. El presupuesto no figura en el mensaje y es opcional.",
      "proposed": {
        "empresa": "Taller Norte",
        "email": "ana@example.com",
        "servicio": "revision_campanas",
        "presupuesto": null
      },
      "reference": {
        "decision": "preparar",
        "reason": "Los tres campos obligatorios tienen soporte en el mensaje. Se puede preparar un borrador PENDIENTE de revisión humana; la ausencia del presupuesto opcional no lo bloquea.",
        "corrected": {
          "empresa": "Taller Norte",
          "email": "ana@example.com",
          "servicio": "revision_campanas",
          "presupuesto": null
        },
        "checks": [
          "Empresa: Taller Norte aparece literalmente en el mensaje.",
          "Email: ana@example.com aparece literalmente en el mensaje; esta comprobación no acredita que exista un buzón real.",
          "Servicio: revisar nuestras campañas respalda la normalización a revision_campanas.",
          "Presupuesto: null conserva su ausencia y no impide preparar el borrador.",
          "Identidad nueva: correo-sintetico + mail-001 no tiene borrador previo en el contexto del caso.",
          "Resultado del ejercicio: un borrador PENDIENTE de revisión; ninguna escritura en un CRM ni envío de email."
        ]
      }
    },
    {
      "id": "MUESTRA-CRM-002",
      "title": "Una nueva solicitud de la misma empresa",
      "family": "incompleto",
      "requestId": "mail-002",
      "source": "correo-sintetico",
      "input": "Soy Ana de Taller Norte y quiero revisar campañas. No incluyo un email.",
      "context": "Primera entrega de la identidad correo-sintetico + mail-002. Es una solicitud distinta de mail-001 y no hereda automáticamente los datos de la anterior. Contrastar su mensaje con la propuesta.",
      "proposed": {
        "empresa": "Taller Norte",
        "email": "comercial@example.com",
        "servicio": "revision_campanas",
        "presupuesto": null
      },
      "reference": {
        "decision": "revisar",
        "reason": "El email propuesto es inventado y debe eliminarse. El email es obligatorio: conservar null y pedir que se complete antes de continuar. Que coincida la empresa con otra solicitud no autoriza copiar sus datos.",
        "corrected": {
          "empresa": "Taller Norte",
          "email": null,
          "servicio": "revision_campanas",
          "presupuesto": null
        },
        "checks": [
          "Empresa: Taller Norte tiene soporte literal.",
          "Email: comercial@example.com no aparece en el mensaje y se retira; el valor corregido es null.",
          "Servicio: revisar campañas respalda revision_campanas.",
          "Presupuesto: sigue siendo null y opcional; no es el motivo del bloqueo.",
          "Identidad distinta: mail-002 no hereda el email de mail-001, aunque compartan empresa y nombre.",
          "Resultado del ejercicio: anotar que falta el email para que una persona pida completarlo por un canal apropiado; esta práctica no envía mensajes ni crea registros en un CRM."
        ]
      }
    },
    {
      "id": "MUESTRA-CRM-003",
      "title": "La misma solicitud llega otra vez",
      "family": "reentrega",
      "requestId": "mail-001",
      "source": "correo-sintetico",
      "input": "Soy Ana de Taller Norte. Queremos revisar nuestras campañas. Email: ana@example.com.",
      "context": "Ya existe un borrador PENDIENTE de revisión para correo-sintetico + mail-001, preparado en el caso 001. Sus campos son empresa=Taller Norte, email=ana@example.com, servicio=revision_campanas y presupuesto=null. Llega otra entrega con esa misma identidad y exactamente los mismos datos. Comparar la identidad y el contenido preparado; la coincidencia del email por sí sola no es el criterio.",
      "proposed": {
        "empresa": "Taller Norte",
        "email": "ana@example.com",
        "servicio": "revision_campanas",
        "presupuesto": null
      },
      "reference": {
        "decision": "conciliar",
        "reason": "Coinciden el origen, la identidad mail-001 y los cuatro campos del borrador existente. Conservar ese único borrador PENDIENTE de revisión y anotar la reentrega, sin crear otro registro. Si la misma identidad trajera una huella distinta, habría que bloquear la incorporación y revisar la discrepancia.",
        "corrected": {
          "empresa": "Taller Norte",
          "email": "ana@example.com",
          "servicio": "revision_campanas",
          "presupuesto": null
        },
        "checks": [
          "Origen e identidad: correo-sintetico + mail-001 coincide con el borrador existente.",
          "Huella del objeto preparado: los cuatro campos normalizados coinciden; en esta práctica la comparación es manual, sin calcular hashes.",
          "La coincidencia del email no se usa por sí sola para identificar una reentrega.",
          "Si coincidiera la identidad pero cambiara algún campo, bloquear la incorporación y conservar el borrador previo hasta revisar; no sobrescribir automáticamente.",
          "Resultado del ejercicio: permanece un solo borrador PENDIENTE de revisión, sin otro registro y sin envío de email."
        ]
      }
    }
  ]
}
