Skip to content

ci: harden deploy gate baselines#287

Merged
adm01-debug merged 1 commit into
mainfrom
fix/deploy-gates-smoke-project
May 24, 2026
Merged

ci: harden deploy gate baselines#287
adm01-debug merged 1 commit into
mainfrom
fix/deploy-gates-smoke-project

Conversation

@adm01-debug

@adm01-debug adm01-debug commented May 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • Follow-up to ci: stabilize deploy gates runtime checks #285: make Contract Tests smoke truly advisory while keeping the unit contract job required.
  • Align Deploy Gates and Contract Tests with .nvmrc and current checkout/setup-node actions.
  • Stabilize Lighthouse by auditing /auth, removing the broad lighthouse:recommended audit preset, and fixing duplicate canonical/OG/Twitter URL tags through Helmet-managed static tags.

Validation

  • git diff --check — passed
  • Config syntax check for .lighthouserc.json and both workflow YAMLs — passed
  • npm.cmd run typecheck — no TypeScript baseline regression
  • npm.cmd run lint:baseline — no ESLint baseline regression
  • npx.cmd vitest run src/pages/auth/__tests__/Auth.test.tsx --reporter=verbose — 1 file, 3 tests passed
  • node scripts/seo-sanity-check.mjs — passed
  • npm.cmd run build with Lighthouse placeholder env vars — passed
  • Built preview DOM check — /auth renders and exposes one canonical/og:url/twitter:url set for https://www.promogifts.com.br/auth
  • npm.cmd run test:e2e:smoke — 8 passed, 38 skipped
  • Local LHCI after placeholder rebuild: page paints and reaches /auth; Windows still hits Chrome temp cleanup EPERM, so final LHCI status is validated in Ubuntu CI.

Follow-up to #285
Refs #264


Summary by cubic

Hardened the Deploy Gates and stabilized Lighthouse/SEO checks to reduce flakes and ensure consistent baselines. Contract Tests smoke is now advisory; CI now follows .nvmrc with updated action versions.

  • Refactors

    • Made the smoke HTTP job advisory (continue-on-error: true) in contract-tests.yml; unit contract job remains required.
    • Aligned workflows to .nvmrc using actions/checkout@v5 and actions/setup-node@v6; removed NODE_VERSION env.
    • Pointed Lighthouse CI to /auth, loosened server ready pattern, and removed the lighthouse:recommended preset in favor of explicit assertions.
    • Ensured build/LHCI use placeholder Supabase envs; installed Playwright browsers for E2E.
  • Bug Fixes

    • Eliminated duplicate canonical/OG/Twitter URL tags by marking static tags with data-rh="true".
    • Corrected Auth page SEO path from /login to /auth.

Written for commit 6944620. Summary will update on new commits. Review in cubic

Copilot AI review requested due to automatic review settings May 24, 2026 19:08
@vercel

vercel Bot commented May 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
we-dream-big Ready Ready Preview, Comment May 24, 2026 7:09pm

@coderabbitai

coderabbitai Bot commented May 24, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@adm01-debug, we couldn't start this review because you've used your available PR reviews for now.

Your plan currently allows 5 reviews/hour. Refill in 37 minutes and 32 seconds.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more review capacity refills, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than trial, open-source, and free plans. In all cases, review capacity refills continuously over time.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 0df859b8-07ea-4b8f-9e44-5d4fc65a04ac

📥 Commits

Reviewing files that changed from the base of the PR and between d699f6a and 6944620.

📒 Files selected for processing (5)
  • .github/workflows/contract-tests.yml
  • .github/workflows/deploy-gates.yml
  • .lighthouserc.json
  • index.html
  • src/pages/auth/Auth.tsx
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/deploy-gates-smoke-project

Comment @coderabbitai help to get the list of available commands and usage tips.

@supabase

supabase Bot commented May 24, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project doufsxqlfjyuvxuezpln because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR hardens CI deploy gates and contract test baselines while stabilizing Lighthouse/SEO signals by standardizing runtimes and reducing SEO tag duplication on /auth.

Changes:

  • Updated Deploy Gates + Contract Tests workflows to use actions/checkout@v5, actions/setup-node@v6, and Node from .nvmrc.
  • Made Contract Tests “smoke” job advisory (continue-on-error: true) while keeping unit contract tests required.
  • Adjusted Lighthouse CI to audit /auth, relaxed the preview readiness pattern, and removed the lighthouse:recommended assertion preset; marked static canonical/URL tags as Helmet-managed to avoid duplicates.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/pages/auth/Auth.tsx Updates PageSEO canonical path from /login to /auth.
index.html Marks canonical/og:url/twitter:url tags as Helmet-managed via data-rh="true".
.lighthouserc.json Points LHCI collection at /auth and removes the recommended preset in favor of explicit assertions.
.github/workflows/deploy-gates.yml Aligns deploy gates to .nvmrc and updates checkout/setup-node action versions.
.github/workflows/contract-tests.yml Aligns Node version to .nvmrc and makes smoke job advisory.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/pages/auth/Auth.tsx
Comment on lines 479 to +482
<PageSEO
title="Login | Promo Gifts"
description="Acesse a plataforma Promo Gifts. Entre com suas credenciais para gerenciar seus produtos e orçamentos com a melhor IA das Galáxias!"
path="/login"
path="/auth"
@adm01-debug adm01-debug merged commit bb50953 into main May 24, 2026
31 of 35 checks passed
@adm01-debug adm01-debug deleted the fix/deploy-gates-smoke-project branch May 24, 2026 19:30
adm01-debug added a commit that referenced this pull request May 24, 2026
* Etapa 17 fase2 sweep orange to brand primary (#288)

* refactor(theme): sweep -orange* → -brand-primary* (chunk 1/8 — Etapa 17 fase 2)

* refactor(theme): sweep -orange* → -brand-primary* (chunk 2/N — Etapa 17 fase 2)

* ci: harden deploy gate baselines (#287)

Co-authored-by: Codex Simulation <codex-simulation@example.local>

---------

Co-authored-by: Codex Simulation <codex-simulation@example.local>
adm01-debug added a commit that referenced this pull request May 24, 2026
* fix(contracts): remove duplicate CONTRACTS import

* fix(auth): preserva isConfig p/ provider desabilitado (provider_is_not_enabled)

mapOAuthError passou a retornar mensagem PT-BR amigável, mas isso fazia
resolveOAuthError cair no fallback genérico (isConfig=false), reexibindo o botão
"Tentar Google Novamente" para uma falha de CONFIG que não tem solução
client-side. Adiciona heurística em resolveOAuthError que reconhece
"não está habilitado"/"not enabled" → copy provider_is_not_enabled (isConfig).
[Codex review]

https://claude.ai/code/session_01SN7BG6cYaPS1t1fYLkga4Z

* fix(ui): gateia transforms do botão Google atrás de motion-safe

Mesmo bug do login-submit (#3): o botão social-login-google tinha
'transition-all hover:scale-[1.01] active:scale-[0.98]' SEM gate motion-safe.
Sob o reducedMotion:'reduce' do CI o transform seguia animando a cada
hover/mousedown -> 'locator.click: Timeout' no smoke 40 (e o waitForRequest
era sintoma do clique nao registrar). Gateado, o botao fica estatico e
clicavel sob reduced-motion.

* test(contracts): port reusable webhook coverage

* chore(ci): refresh lint and typecheck baselines

* codex 1 (#290)

* Etapa 17 fase2 sweep orange to brand primary (#288)

* refactor(theme): sweep -orange* → -brand-primary* (chunk 1/8 — Etapa 17 fase 2)

* refactor(theme): sweep -orange* → -brand-primary* (chunk 2/N — Etapa 17 fase 2)

* ci: harden deploy gate baselines (#287)

Co-authored-by: Codex Simulation <codex-simulation@example.local>

---------

Co-authored-by: Codex Simulation <codex-simulation@example.local>

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Codex <codex@local>
Co-authored-by: Codex Simulation <codex-simulation@example.local>
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.

2 participants