Práctica focalizada · Bloque 2 · Unidad 2.3
EX-B2-08
Expediente anidado y vocabulario cerrado
Los payloads mezclan datos del responsable, estado libre y documentos sin estructura, lo que produce errores difíciles de localizar.
Cómo abordarla
Haz explícitas las reglas del modelo
Ejecuta primero el baseline. Después modifica la frontera indicada, escribe una regresión positiva y otra negativa y conserva la salida real.
Evidencia objetivo: El modelo acepta, normaliza o rechaza con reglas localizables y separa entrada, actualización y salida.
Abrir laboratorio de código
1. Descarga y arranca
- Starter ejecutable de modelos anidadosAPI parcial, fixtures y tests; los modelos Pydantic objetivo quedan sin resolver.
- Muestras de expedientesPayloads sintéticos válidos e inválidos sin respuesta marcada.
2. Escribe y prueba
- Implementa modelos para responsable, periodo, documento y expediente y conéctalos al endpoint.
- Usa enum para estado y `default_factory` para colecciones.
- Valida las muestras y compara las rutas de error.
3. Demuestra el comportamiento
- Modelos Pydantic y OpenAPI de la estructura anidada.
- Matriz de muestras válidas e inválidas con localización del error.
- Justificación de los conceptos extraídos y vocabularios cerrados.
La respuesta principal es tu código y sus pruebas. Usa este espacio solo para anotar la predicción inicial y el resultado observado.
Predicción breve antes de ejecutar
¿Qué submodelos representan conceptos reutilizables y qué vocabularios deben cerrarse?
Comprueba estas tres cosas
- ¿Qué comportamiento observas y qué parte es todavía una hipótesis?
- ¿Cuál es el cambio mínimo que permite verificar la causa o el contrato?
- ¿Qué evidencia conservarías para demostrar que no rompiste otra frontera?
Anota predicción, comando ejecutado y diferencia observada; el código vive en tu workspace.
Sin respuesta guardada.
Pistas opcionales
Pista 1 · Localiza la frontera
- Separa importación, enrutado, extracción, validación, operación y serialización.
- Lee el status, los headers y la ubicación del error antes de editar.
Pista 2 · Reduce la prueba
- Usa una petición válida y una inválida que difieran en una sola variable.
- Compara el comportamiento con `/openapi.json` cuando el contrato esté documentado.
Profundización opcional
Construir modelos anidados, enums y colecciones acotadas con errores localizables.
Contexto adicional
- Trabaja únicamente dentro del alcance del bloque: una aplicación pequeña y estado en memoria.
- No hay solución oficial publicada; el material contiene huecos y defectos deliberados.
- Justifica las decisiones por el mensaje HTTP y el contrato observable, no solo porque el código arranque.
Cómo revisar tu respuesta
- Las estructuras anidadas aparecen en OpenAPI.
- Un enum inválido identifica el campo exacto.
- Los defaults mutables usan factoría.
Evidencia, revisión y reinicio
- Decisión razonada guardada localmente en la web.
- Código o informe ejecutable en el workspace temporal, más una captura de curl/OpenAPI cuando proceda.
Revisión: con Codex, utilizando la evidencia y los criterios anteriores; no se publica una solución oficial.
Reinicio: Eliminar el workspace temporal y volver a descargar el material inicial; no hay estado persistente externo.