Ir ao conteúdo
SEED engenharia

Componentes

85. TELA A17 — BUSCA / RESULTADOS

estávelseed-componentes.md v2.00 · §85seção 167 de 18485-tela-a17-busca-resultados-estavel-2026-08-23.md · MD5 e0b8ff18

Título completo no canon: TELA A17 — BUSCA / RESULTADOS · estável (2026-08-23, gate dele: "fora isso está aprovado", com a correção HV1 aplicada antes da promoção) · tela 05-html-de-referencia/telas/tela-busca.html v0.2 · instrumento 06-validacao/suites/suite-busca.mjs (15 PASS · 0 FAIL · 1 [n/a] declarado e provado em navegador real)

Em uma frase: A tela de resultados ecoa a consulta no título com a contagem visível; o realce do termo é sublinhado com peso.

O que é: a terceira tela da F7.6 — a TELA DE RESULTADOS que faltava do arquétipo (o §39/⌘K cobre o gatilho; o §4 cobre o campo; a superfície de resultados nunca existiu). Gabarito F7.1: canvas surface-subtle, a lista de resultados INTEIRA é peça (herda o arquétipo lista), os filtros são RÉGUA, <600px filtros viram gaveta e o realce do termo permanece.

85.1 Contratos (suíte por comportamento + CSSOM; nunca regex)#

  • BU-01 — a query é ECOADA no título (aspas semânticas <q>) e a contagem de resultados é SEMPRE visível junto dele (D4-b do §4).
  • BU-02 — o realce do termo é sublinhado + peso 700 (era 800 — SH-P9) — nunca só cor (gabarito F7.1; confirmado na leitura do produto de referência); o fundo suave brand-subtle é reforço, não portador. Medido no pixel: underline
    • 800 no navegador real.
  • BU-03 — resultado = UM LINK com ícone de tipo + título realçado + contexto ("Ordem de serviço · em Obras › …") + idade relativa em mono; lista semântica <ol>.
  • BU-04/05 — filtros por DIMENSÃO com contagem de ativos (TD1); chips aplicados em linha própria e o × do chip remove o filtro E desmarca a origem, refaz a contagem e volta à página 1 (TD2/TD3/PG4).
  • BU-06 — zero-resultado com a microcopy D9 do contexto ERP (query + escopo ecoados) e as DUAS saídas: [Limpar busca] [Buscar em todo o sistema] (§25 Z1).
  • BU-07 — o espelho FALADO é nó separado (role=status aria-atomic, .vh) com debounce ~300ms — o visível muda na hora (D4-b); o debounce é MEDIDO por espera real na suíte.
  • BU-08 — filtro é input RESTRITO: zero texto livre por dimensão (TD5).
  • BU-09/10 — <600px os filtros colapsam em GAVETA sob disclosure (aria-expanded espelhado); o colapso é render — provado em navegador real (régua display:none, gatilho visível, clique abre, zero overflow).
  • BU-11 — paginação <nav> nomeada com aria-current (§37).
  • BU-12 — HV1 (§71) na tela: hover e pressionado DECLARADOS para paginação, filtros, botões e resultados — ver 85.2.

85.2 O gate pegou a HV1 de novo — e o conserto alcançou as TRÊS telas#

No gate desta tela o Rafael perguntou, sobre o botão da página 2: "pelo que definimos era pra ter um efeito sobre o botao?" — tinha: é a HV1-a (§71), nascida de gate DELE em 2026-08-19, e as três telas da F7.6 nasceram violando (paginação/filtros sem hover; NENHUM controle com pressionado distinto). Conserto na mesma janela, retroativo às três: hover de controle neutro = fundo desce um degrau (surface-sunken); hover de controle de fundo de marca = véu de 8%; pressionado = véu de 12% (monotônico press > hover — o padrão eBay/M3 citado no §71.2); véu por box-shadow inset (funciona sobre qualquer fundo, nos dois temas); hover só sob @media (hover: hover) (§71.3 — toque não tem sobrevoo) e o :active FORA da media (toque também pressiona). HV1-c: fundos novos são tokens já medidos; véus escurecem fundo sob tinta clara (contraste sobe) e mantêm ≥4,5 sob a tinta escura do primário no escuro. ⚠ Defeito de instrumento no caminho (49º da série): o check CSSOM das suítes reprovou as três telas JÁ CORRETAS — em CSSOM moderno, style rule também tem .cssRules (CSS Nesting), vazia mas truthy, e o flatMap ingênuo a substituía por LISTA VAZIA, engolindo as regras :active de topo. Régua nova que reprova em bloco mede outra coisa — reincidência da lição do §75. O juiz do PIXEL do hover segue sendo a guarda-resposta-ponteiro, pendente de ambiente nesta máquina (AU-P1); a suíte confere a DECLARAÇÃO.

⚠ Supersede do véu deste parágrafo — nota datada de 2026-09-27 (REV-P19). O mecanismo prescrito acima — véu de 8 % no sobrevoo do controle de fundo de marca e de 12 % no pressionado, por box-shadow inset — não vale mais: o §71.6 é o vigente. Ali o véu por box-shadow: inset é a "Alternativa descartada 1" desde 2026-08-19 (o contraste do estado fica NÃO MEDÍVEL), e o descarte foi reafirmado DEPOIS desta seção, em 2026-09-15, com a gramática por superfície do veredito "V-HV4.1 casca: a" (MANIFESTO §226) e a frase "véu (box-shadow: inset rgba(0,0,0,·)) continua descartado pelo motivo acima". O véu saiu dos moldes no G-B da HV-P4 (MANIFESTO §228, GB-2); em 2026-09-27, 16:05Z, 0 arquivos de 05-html-de-referencia/ e 06-validacao/geradores/ declaram inset 0 0 0 999px (grep). Proveniência (git log -S): este §85.2 nasce em 4cd9f6d2 (2026-08-23); as duas frases de 2026-09-15 em 1acf2618 e bf69d22f. Continua valendo daqui: a HV1 retroativa às três telas, o sobrevoo só sob @media (hover: hover) e o :active fora da media. O texto acima fica como está: é a verdade de 2026-08-23.

85.3 Fronteiras (produto)#

Relevância/ranking, índice de busca, fuzzy, conectores externos (as abas de fonte do produto de referência), "Pergunte à IA" (slot do chat, F6) e a virtualização de lista longa — regra AUSENTE no acervo, registrada como pendência BU-P1 (a tela de resultados é o caso canônico de lista longa). Dados da demo 100% fictícios, sem nome de pessoa (LGPD).


TelaSEED · Gabarito A17 — Busca / resultados (v0.5 · estável 2026-08-23)abrir em página própria ↗
Esc