Laboratorio La ciudadela de la nube
[!TIP] Descarga el ZIP del alumno o copia todo este laboratorio en una carpeta sin usar. Lee la configuración y los pasos opcionales de GitHub primero.
Antes de ejecutar nada
| Elemento | Contrato |
|---|---|
| Runtime | Node 24; las integraciones en vivo son independientes |
| Archivos a revisar | starter/task-contract.json, verify.js |
| Directorio del verificador | Raíz del kit extraído: node verify.js; desde starter/: node ../verify.js |
| Estado inicial | Se rechaza un starter sin terminar; conserva el diagnóstico |
| Evidencia final | La tarea nombra los dos directorios exactos permitidos y la evidencia que un revisor exigirá. |
Concepto en la práctica: Un trabajador en la nube recibe un problema pequeño con alcance de origen y criterios de aceptación. Un comando escrito en JSON solo es una comprobación propuesta hasta que un trabajador autorizado lo ejecuta de verdad.
Escribe un contrato de tarea acotado apto para delegarlo a un entorno remoto efímero.
Misión
Completa starter/task-contract.json con:
- un
goalno vacío; allowedPathsque contenga únicamentesrc/ytest/;acceptanceCriteriaexplícitos;- un comando de verificación local:
node test/run.js; networkRequiredestablecido enfalse;- una lista
evidencecon los archivos modificados, el comando, el código de salida y el resultado observado.
No añadas credenciales ni instrucciones de despliegue. Ejecuta node verify.js.
Ejecución guiada
- Ejecuta el verificador sin modificar y registra el estado inicial esperado.
- Pide una explicación fundamentada en las fuentes del código y las comprobaciones relevantes.
- Planifica: completa el objetivo, allowedPaths, acceptanceCriteria, el comando de verificación local y la evidencia requerida. Mantén networkRequired en false y no añadas credenciales ni instrucciones de despliegue.
- Implementa solo el fragmento aprobado y luego vuelve a ejecutar el mismo verificador.
- Establece networkRequired en true en el contrato copiado y confirma el rechazo. Restaura el contrato local acotado.
- Revisa el diff y registra la limitación: el verificador no ejecuta node test/run.js ni asigna un issue real. Un ejercicio en vivo necesita un repositorio con ese comando real y una autorización separada.
Finalización y restablecimiento seguro
- El comportamiento requerido y su caso negativo cuentan con evidencia observada.
- El resultado distingue la verificación local del comportamiento en vivo del host/runtime.
- No se cambiaron credenciales, archivos no relacionados ni servicios.
- La evidencia está guardada antes de restablecer el starter copiado.
Usa una nueva extracción para otro intento, o restaura solo los archivos nombrados desde una línea base de Git creada en esta copia. Nunca apliques un comando de restablecimiento de la raíz del currículo desde un proyecto ajeno.
Continúa con la aventura y la rúbrica.