Files
amare/openspec/changes/archive/2026-08-11-enhance-public-motion/proposal.md

2.3 KiB

Why

O site público já possui uma abertura focal na home, mas o restante da experiência ainda muda de estado de forma desigual entre páginas e seções. WEB-01, WEB-07 e os requisitos transversais de acessibilidade pedem uma coreografia editorial consistente, progressiva e dispensável, sem ocultar conteúdo nem comprometer interação, performance ou movimento reduzido.

What Changes

  • Evoluir o contrato de motion do site público com abertura de página, sequência editorial inicial e reveals direcionais executados uma única vez.
  • Aplicar a coreografia à home, serviços, portfólio, detalhe, sobre, contato, privacidade e páginas de erro 404/419/429/500/503.
  • Alternar depoimentos entre esquerda e direita, filtrando citações vazias antes de renderizar a sequência.
  • Adicionar feedback curto e não bloqueante a links, CTAs, navegação e controles de formulário, preservando foco e mensagens de validação.
  • Garantir estado final imediato sem JavaScript, sem IntersectionObserver e com prefers-reduced-motion: reduce.
  • Limitar o progresso/índice da home a uma atualização por frame e ampliar testes de marcação, browser, acessibilidade e console.
  • Não objetivos: não criar transições entre rotas, alterar conteúdo ou layout estrutural, adicionar biblioteca de animação, modificar CMS/API/banco/Filament, nem introduzir itens fora do MVP listados em SPEC.md §4.2.

Capabilities

New Capabilities

  • public-site-motion: Coreografia progressiva, direções, timings, execução única, microfeedback, performance e fallbacks do motion público.

Modified Capabilities

  • design-tokens: Especificar tokens compartilhados de duração, stagger, distância e easing para motion editorial.
  • public-site-pages: Cobrir todas as páginas públicas visuais e templates de erro com o contrato compartilhado de abertura e reveal.
  • testimonials: Filtrar citações vazias e alternar explicitamente a direção de entrada dos depoimentos renderizados.
  • web-accessibility: Ampliar axe/console e validar conteúdo imediatamente utilizável com movimento reduzido ou enhancement indisponível.

Impact

Afeta somente templates Blade públicos, resources/js/motion.js, tokens/regras CSS e testes Pest/Pest Browser. Não altera APIs, banco, controllers, CMS, dependências, endpoints técnicos (sitemap.xml, robots.txt) ou Filament.