{
  "fictionalPublisherAndCampaign": true,
  "providerRequests": 0,
  "messagesSent": 0,
  "placementsCreated": 0,
  "realResource": {
    "groupKey": "backlink-html",
    "practiceDirectory": "/downloads/link-mechanics/"
  },
  "candidateSource": "https://classroom.example/resources",
  "publicationVerified": null,
  "campaign": {
    "templateGroupKey": "backlink-strategy-template",
    "start": "2030-04-01",
    "checkpoints": [
      "2030-04-01",
      "2030-04-03",
      "2030-04-08",
      "2030-04-12",
      "2030-04-15",
      "2030-04-30"
    ],
    "capMinor": 40000,
    "currency": "USD",
    "plannedMinor": 32000,
    "committedMinor": null,
    "actualMinor": null,
    "results": null
  },
  "effort": {
    "hours": [
      "2",
      "1",
      "1",
      "0.5",
      "0.5"
    ],
    "rate": "25",
    "expenses": "0",
    "currency": "USD",
    "fictional": true
  },
  "locale": "es",
  "note": "Ejercicio creado para aprender. El recurso es real; editor, conversaciones, fechas y resultados son hipotéticos. No hubo contacto ni publicación.",
  "first": [
    {
      "title": "Abrir el recurso real",
      "detail": "Usa la guía HTML existente y su editor local para aprender la sintaxis.",
      "check": "Comprueba acceso y utilidad para una tarea concreta."
    },
    {
      "title": "Inspeccionar la práctica",
      "detail": "Abre el ejemplo sin conexión y compara href con el ancla visible.",
      "check": "Registra la observación; editar localmente no publica."
    },
    {
      "title": "Investigar una página relevante",
      "detail": "Imagina una clase inicial de HTML en classroom.example/resources.",
      "check": "El editor es hipotético; verifica la adecuación de una página real."
    },
    {
      "title": "Comprobar permiso y canal",
      "detail": "Un recurso útil no autoriza envíos masivos ni editar la web ajena.",
      "check": "Busca instrucciones reales de colaboración; aquí no se envía nada."
    },
    {
      "title": "Separar acuerdo de publicación",
      "detail": "El editor hipotético puede aceptar, rechazar o no responder.",
      "check": "Solo una referencia pública observada cuenta como verificada."
    },
    {
      "title": "Registrar y mantener la referencia",
      "detail": "En una publicación real revisa origen, destino, ancla, rel y fecha.",
      "check": "Deja sin resolver accesos fallidos; no infieras mejoras de ranking."
    }
  ],
  "campaignSteps": [
    {
      "title": "Definir el piloto",
      "detail": "2030-04-01: el ejemplo de revisión de bicicletas fija responsable, público y tope de 400 USD.",
      "check": "Son hipótesis de planificación, no autorización de gasto."
    },
    {
      "title": "Revisar el destino",
      "detail": "2030-04-03: planifica revisar la lista antes de contactar con editores.",
      "check": "Registra el trabajo real; un recurso incompleto detiene el contacto."
    },
    {
      "title": "Comprobar ilustraciones",
      "detail": "2030-04-08: planifica revisar imágenes y accesibilidad.",
      "check": "Verifica instrucciones y derechos antes de declararlo listo."
    },
    {
      "title": "Cualificar candidatos",
      "detail": "2030-04-12: investiga un pequeño grupo de editores de ciclismo relevantes.",
      "check": "Cada candidato necesita pruebas de encaje y un canal legítimo."
    },
    {
      "title": "Revisar antes de continuar",
      "detail": "2030-04-15: compara preparación, coste previsto y correspondencia real.",
      "check": "Modifica o pausa si faltan pruebas, presupuesto o permiso."
    },
    {
      "title": "Cerrar con pruebas observadas",
      "detail": "2030-04-30: separa trabajo, respuestas, referencias publicadas y visitas medidas.",
      "check": "Deja vacíos los resultados desconocidos; conserva responsable de mantenimiento."
    }
  ]
}
