Elegir espacio

Dos espacios

¿Qué quieres consultar?

Elige el espacio al que quieres entrar.

Biblioteca FastAPIPrimera API

Checkpoint independiente · Bloque 2 · Unidad 2.2

EX-B2-06

Ausente no significa null

Un PATCH borra el título cuando el cliente no lo envía porque el código solo mira el valor final `None`.

  • Escribir y ejecutar código
  • Razonamiento de actualización
  • Media
  • Apoyo autónomo
  • Starter ejecutable

Cómo abordarla

Coloca cada dato donde expresa mejor su intención

Inténtalo desde el starter nuevo y sin copiar el ensayo anterior. La estructura y el orden del cambio son tuyos; los tests deben demostrar el contrato.

Evidencia objetivo: Distingues path, query, header, cookie, body, formulario y archivo, incluida la ausencia frente a null.

Abrir laboratorio de código

1. Descarga y arranca

2. Escribe y prueba

  1. Antes de editar, predice resultado almacenado, respuesta y presencia para `{}`, `null`, un valor y un tipo inválido.
  2. Ejecuta los cuatro casos contra el starter y explica cualquier diferencia con tu predicción.
  3. Repara el PATCH para aplicar solo campos enviados y decide explícitamente si `null` pertenece al contrato.
  4. Añade regresiones independientes para omitido, `null`, valor y rechazo de tipo.

3. Demuestra el comportamiento

  • Matriz predicción → observación → explicación para los cuatro payloads.
  • Implementación reparada y pruebas que fallen antes y pasen después.
  • Nota contractual sobre presencia, nulabilidad y default sin depender de una receta concreta.

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é estado debe conservar el recurso tras cada payload y qué evidencia demuestra si `title` fue enviado?

Comprueba estas tres cosas

  1. ¿Qué diferencia observable esperas entre omitir el campo y enviarlo como `null`?
  2. ¿Qué caso negativo detectaría que la implementación vuelve a perder la intención del cliente?
  3. ¿Qué parte de la decisión pertenece al contrato y cuál al mecanismo Pydantic?

Anota predicción, comando ejecutado y diferencia observada; el código vive en tu workspace.

Sin respuesta guardada.

Pistas opcionales

Profundización opcional

Distinguir campo omitido, `null` explícito, valor y default mediante la presencia observable en una actualización parcial.

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

  • Omitir no modifica el recurso.
  • `null` se acepta o rechaza explícitamente.
  • La implementación usa una señal de presencia y no solo una comparación con `None`.

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.