Implementación de ratings en backend con Claude Code y Docker

Clase 11 de 18Curso de Claude Code

Resumen

Construye y asegura el feature de ratings de Platiflix con un flujo de trabajo probado. Aquí se implementan la capa de servicios, los endpoints y las pruebas unitarias en backend usando Claude Code v2 y Sonet 4.5, acelerando con el flag Dangerously Skip Permissions y ejecutando todo en un contenedor de Docker apoyado por Makefile. Además, se ejecuta una revisión de seguridad con el comando security review y se documentan hallazgos críticos alineados a OWASP.

¿Cómo se implementa el feature de ratings en backend con Claude Code y Docker?

La meta fue llevar a producción el plan de implementación de ratings para Platiflix: Service Layer, Endpoints y Testing. Se priorizó la automatización, el aislamiento en contenedor y la seguridad posterior a la ejecución sin permisos interactivos.

  • Configuración previa lista: base de datos, migraciones y modelos preparados para ratings.
  • Ejecución prolongada: sesiones de más de 30 horas con Sonet 4.5 en Claude Code v2.
  • Aceleración controlada: uso de Dangerously Skip Permissions en entorno seguro y restaurable.
  • Enfoque en Docker: todos los comandos de backend corren dentro del contenedor.
  • Orquestación con Makefile: reutilización de comandos existentes del proyecto.
  • Pruebas unitarias: garantía de no romper la funcionalidad actual.

¿Cuándo usar el flag Dangerously Skip Permissions?

  • Solo en entornos aislados: máquinas virtuales o contenedores con acceso restringido a Internet.
  • Con capacidad de restauración: si se daña el contenedor, se recrea base de datos, semillas y tests.
  • Beneficio clave: evita solicitar aprobaciones constantes y acelera la entrega.

¿Cómo forzar los tests y migraciones en Docker con Makefile?

  • Instrucción persistente con el comando "hash": guardar en memoria del proyecto que todo se ejecute en Docker.
  • Verificación previa: comprobar que el contenedor está funcionando antes de correr comandos.
  • Uso del Makefile: revisar los comandos disponibles y ejecutarlos dentro del contenedor api.

¿Qué fases se completaron en backend?

  • Service Layer: implementación de siete métodos según la documentación del plan.
  • Endpoints: creación del directorio schemas y archivo rating con modelos de Pydantic.
  • Testing: cobertura de la funcionalidad de ratings con resultados exitosos.

¿Qué resultados arrojaron las pruebas y el uso de contexto?

La ejecución confirmó que el backend de ratings quedó funcional y estable, y permitió medir el consumo de contexto para sesiones largas.

  • Tests: 39 pasaron y 1 en skip. Resultado estable.
  • Contexto: se usó cerca del 66% de 200k tokens en la construcción del backend.
  • Avisos de límite: al quedar 9% restante, Claude Code sugiere compactar.
  • MCPs: uso de dos MCPs ligados al editor de código; mínimos custom agents.

¿Cómo gestionar el contexto con context y compact?

  • Comando context: muestra el uso de memoria conversacional y recursos.
  • Comando compact: reduce la conversación para continuar; puede ejecutarse solo o preservando hallazgos clave.
  • Comando reset: limpia por completo y arranca una conversación nueva.

¿Qué validan los resultados de test?

  • Integración completa: base de datos, tablas, modelos, API y pruebas creadas.
  • Estabilidad del feature: cobertura suficiente para detectar regresiones en ratings.
  • Flujo de CI local: ejecutable integramente desde Docker con Makefile.

¿Cómo revisar seguridad y documentar hallazgos con Claude Code?

Tras el bypass de permisos, se validó la seguridad del cambio con el comando de Claude Code: security review. El análisis comparó la rama actual y propuso mejoras.

  • Análisis automatizado: identificación de vulnerabilidades en el repositorio.
  • Documentación estructurada: hallazgos guardados en un archivo Markdown en spec (versión 03).
  • Reporte claro: resumen ejecutivo con riesgos priorizados.
  • Hallazgo crítico: posible bypass de autorización en operaciones de rating.
  • Clasificación OWASP: Broken Access Control con 95% de confianza.

Acciona con dos pasos simples:

  • Usa el archivo Markdown generado para planear correcciones en el código.
  • Apóyate en security review para iterar hasta cerrar la vulnerabilidad.

¿Ya corregiste el control de acceso en ratings? Comparte en comentarios cómo lo resolviste y qué estrategia de pruebas usaste en Docker con Makefile y Claude Code.