Skip to content

fix(e2e): prod-smoke creds via env + docs 404 esperado en production (card 64763175) - #222

Closed
SabaTech-dev wants to merge 1 commit into
mainfrom
fix/e2e-prod-smoke-creds-docs
Closed

SabaTech-dev wants to merge 1 commit into
mainfrom
fix/e2e-prod-smoke-creds-docs

Conversation

@SabaTech-dev

Copy link
Copy Markdown
Owner

Resumen (card 64763175)

El job nuevo E2E Prod Smoke (self-hosted) (solo main) falló en 7dadb7d (run 33776208828) con 3 tests rojos. Triage 1ª persona contra el stack real (127.0.0.1:8010):

Test Causa raíz
Login API / Get user info Creds hardcodeados Joker/Joker123! (era railway) no existen en la BD real de prod: el user real es joker (minúscula) con otro password — login 401 con ambos casings, sin token
Backend API docs Imposible por diseño: docs_url=None if settings.is_production (PR #147 / card 2972521c) y ENVIRONMENT=production en el container

JWT secret y auth middleware descartados (nunca se emite token).

Cambios

  • e2e/app.spec.ts: auth tests pasan a E2E_AUTH_USERNAME/E2E_AUTH_PASSWORD con test.skip si ausentes (defaults hardcodeados solo tenían sentido en la era railway/preview). /me compara username case-insensitive. Full login flow (UI) también env-gated.
  • e2e/app.spec.ts: docs test espera 404 cuando E2E_DOCS_DISABLED=1 — afirma la postura de seguridad del propio repo (2972521c) en vez de contradecirla.
  • .github/workflows/e2e.yml (job e2e-prod-smoke): E2E_DOCS_DISABLED: '1' + wiring E2E_AUTH_USERNAME/PASSWORD desde secrets. Comentario falso corregido.

Matriz de comportamiento

Contexto Auth tests Docs test
PR (vite preview / preview Coolify) skip (sin env) skip (sin E2E_API_URL)
main, pre-fix-B (hoy) skip honesto pass (404 esperado) → job verde
main, post-fix-B (secrets configurados) pass con creds reales pass (404)

Pendiente (gated, fuera de este PR — fix B)

User e2e dedicado en DB prod + secrets E2E_AUTH_* en el repo + redeploy prod del main (stack 5 días stale). Gateado a Joker en card aparte.

Verificación local

npm ci --legacy-peer-deps + npx tsc --noEmit → OK (TS7). ESLint no corre por la incompat typescript-eslint/TS7 pre-existente (card 17e01ad9), ajena a este cambio.

…(card 64763175)

- Auth tests (Login API, Get user info, Full login flow UI) pasan a
  E2E_AUTH_USERNAME/E2E_AUTH_PASSWORD con test.skip si ausentes: los
  creds hardcodeados eran de la era railway y no existen en la BD real
  de prod (usuario 'joker' con password propio; verificado 2026-09-03
  login 401 con ambos casings, sin emisión de token).
- Docs test afirma la postura de seguridad cuando E2E_DOCS_DISABLED=1
  (espera 404): docs_url=None si is_production (PR #147 / card
  2972521c) hace imposible /api/v1/docs accesible en prod POR DISEÑO.
- e2e-prod-smoke job: E2E_DOCS_DISABLED=1 + wiring de secrets
  E2E_AUTH_USERNAME/PASSWORD (hasta configurarlos: skip honesto, no
  rojo). Comentario del workflow corregido: "la BD real tiene el
  usuario Joker" era falso (run 33776208828).
- Fix B (user e2e dedicado en prod DB + secrets + redeploy prod) gated
  aparte por Joker.
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

PR Check Results

Code Formatting: Passed
Linting: Passed
Type Checking: Failed
Tests: Failed

⚠️ Some checks failed. Please review the details above.

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

⚠️ WARN Trivy Security Scan Results

Severity Count
🔴 CRITICAL 0
🟠 HIGH 49
Total 49

Scans performed:

  • 📁 Filesystem (vulnerabilities, secrets, misconfigurations)
  • 🐳 Backend Docker image
  • 🐳 Frontend Docker image
  • 🏗️ IaC misconfiguration detection

⚠️ HIGH vulnerabilities should be addressed. Review required.

📋 View detailed SARIF reports

Download artifacts from this workflow run for full SARIF reports.
Results are also available in the GitHub Security tab.


Trivy v0.71.0 | aquasecurity/trivy

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

🎨 Frontend Preview Deployment

App Coolify: qa-framework-frontend-pr-222 (xzgea0nocqj2s4u9pd8mrbg7)
Estado: ⚠️ running:unknown
Commit: e92d5600846c8c2c3837eb1d12fa232a1e5fbf46
Branch: fix/e2e-prod-smoke-creds-docs

Preview interna (sin FQDN público hasta decisión de proxy — card 52a85645).

@SabaTech-dev

Copy link
Copy Markdown
Owner Author

Duplicado de #223 — mismo fix A de la card 64763175 implementado por dos lanes en paralelo. Se cierra a favor de #223: checks 38 pass / 0 fail (aquí: 36/1, Deploy Backend Preview en timeout), y es la versión con review de contenido (spec con skip explícito via E2E_AUTH_* + test docs production-aware esperando 404). Diff entre branches confirma que #223 es superset: nada de este PR se pierde.

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

🧹 Preview Cleanup

PR #222 - Closed

✅ Preview apps eliminadas de Coolify (verificado via API): backend + frontend.


Resources freed at 2026-09-03T22:01:00.594Z

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant