Achado ao validar prefetch (portal-davinci, 2026-08-20)
O que foi validado
Pedido: confirmar que o benchmark ativa o hover pro prefetch. Resultado: não ativa o prefetch real.
Evidência
navigateWithHover faz .hover() + 500ms + click (código correto), e o content journey agora abre o menu mobile antes (anchor fica visível → caminho de hover, não goto).
- MAS o HAR do cand mobile mostra 6 requests de documento pra /blog e /especialidades, todos com
Sec-Purpose ausente — nenhum prefetch de speculation-rules. São navegações frias normais.
- Timings confirmam: nav ~1.34–1.39s (sem head-start de prefetch).
Causa provável
- Hover sintético do Playwright não dispara a heurística
eagerness: moderate das Speculation Rules em Chromium headless/automação (a heurística usa sinais de dwell/engajamento reais).
- No site, as speculation rules são injetadas no evento
load (fix do React #418) — pode não estar registrada a tempo no fluxo do benchmark.
Impacto
O benchmark mede navegação fria, não o head-start do prefetch. Pra sites que dependem de prefetch (speculation rules / <Link preload>), o número subestima o ganho real percebido pelo usuário.
Opções de fix
- Usar
eagerness: eager numa speculation rule de teste durante o benchmark, ou dispatch explícito de pointerdown + espera de dwell maior.
- Detectar se o prefetch disparou (checar
Sec-Purpose: prefetch no HAR) e avisar no report quando o hover não resultou em prefetch — assim o número fica honesto ('nav fria, sem prefetch').
- Medir os dois cenários: com e sem prefetch (cold vs warm-by-hover), e mostrar ambos.
Relacionado
Speculation Rules foram adicionadas no davinci (commit 57fb16b/d39fba9). O ganho é real pra usuário; o benchmark é que não reproduz.
Achado ao validar prefetch (portal-davinci, 2026-08-20)
O que foi validado
Pedido: confirmar que o benchmark ativa o hover pro prefetch. Resultado: não ativa o prefetch real.
Evidência
navigateWithHoverfaz.hover()+ 500ms + click (código correto), e o content journey agora abre o menu mobile antes (anchor fica visível → caminho de hover, não goto).Sec-Purposeausente — nenhum prefetch de speculation-rules. São navegações frias normais.Causa provável
eagerness: moderatedas Speculation Rules em Chromium headless/automação (a heurística usa sinais de dwell/engajamento reais).load(fix do React #418) — pode não estar registrada a tempo no fluxo do benchmark.Impacto
O benchmark mede navegação fria, não o head-start do prefetch. Pra sites que dependem de prefetch (speculation rules /
<Link preload>), o número subestima o ganho real percebido pelo usuário.Opções de fix
eagerness: eagernuma speculation rule de teste durante o benchmark, ou dispatch explícito depointerdown+ espera de dwell maior.Sec-Purpose: prefetchno HAR) e avisar no report quando o hover não resultou em prefetch — assim o número fica honesto ('nav fria, sem prefetch').Relacionado
Speculation Rules foram adicionadas no davinci (commit 57fb16b/d39fba9). O ganho é real pra usuário; o benchmark é que não reproduz.