Skip to content

Centralizar CORS origins y eliminar localhost hardcoded en producción #32

@AIOjPINEDA

Description

@AIOjPINEDA

Objetivo

Eliminar URLs localhost hardcoded de la lista CORS en producción. Solo settings.FRONTEND_URL debe estar activo fuera de development.

Contexto

backend/app/main.py mezcla settings.FRONTEND_URL con strings hardcoded http://localhost:3000/3001. En producción, las URLs locales no deben estar activas.

Hallazgo original: spec 003, F1.3.

Cambios requeridos

  1. En config.py, añadir propiedad cors_origins que solo incluya localhost en ENVIRONMENT=development.
  2. En main.py, reemplazar la lista manual por settings.cors_origins.

Criterios de aceptación

  • Con ENVIRONMENT=production, settings.cors_origins solo contiene FRONTEND_URL
  • Con ENVIRONMENT=development, incluye localhost:3000 y localhost:3001
  • Tests existentes pasan
  • Test unitario nuevo verifica el comportamiento por entorno

Restricciones

  • No cambiar el contrato HTTP público
  • No añadir dependencias nuevas

Verificación

cd backend && source .venv/bin/activate && pytest tests/unit tests/contracts -v --tb=short

Referencia

  • docs/specs/003-refactor-plan/spec.md — F1.3

Metadata

Metadata

Assignees

Labels

priority:mediumCiclo actual, sin bloqueotype:securityAuth, cifrado, exposición de datos, GDPR

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions