---
fonte: 01-canonicos/mapa-cobertura-ds.md
versao_da_fonte: v2.31
secao: 04
titulo: "Eixo C — Componentes e seletores"
sequencia: 6 de 24
bytes_do_corpo: 9713
md5_do_corpo: e67822e25fa1afcb0d4b6c33e58b7a87
gerado_por: 06-validacao/geradores/gen-camada-ia.py
nota: fatia GERADA — o corpo abaixo é byte a byte o trecho do canônico; edite o canônico, nunca esta fatia. Canônico inteiro em https://ds.seed.eng.br/01-canonicos/mapa-cobertura-ds.md
---
## 4. Eixo C — Componentes e seletores

Universo derivado do produto medido + do que os arquétipos ausentes exigem. Os §1–§45 vigentes
não estão listados individualmente (todos `estável`); a tabela lista **o que falta**.

### 4.1 Entrada e seleção

| # | Componente | Por que é previsto | Estado |
|---|---|---|---|
| C1 | **Seletor de intervalo de datas** (range) | filtro de período é universal em ERP; o §13 cobre data única | **§61 `estável` ✅** (DH1–DH18) — **gate OBSERVADO em 2026-08-17**, BT-P1 e DH-P6 FECHADAS (§64.10) · bancada `banco-data.html` **v0.4**, `suite-data` **31 · 0 · 1** |
| C2 | **Seletor de data+hora** | agendamento de OS/visita | **§61 `estável` ✅** — a hora é EXTENSÃO da data (DH13), não componente próprio · mesmo gate OBSERVADO de 2026-08-17 (§64.10) |
| C3 | **Multi-select com chips** | filtro por vários responsáveis/status | **§60 `estável` ✅ (SG9–SG14)** — chips removíveis, colapso em +N, anúncio ao remover · SG-P2 FECHADA · **re-gate OBSERVADO em 2026-08-17 na v0.4**, BT-P1 FECHADA (§64.10) · bancada `banco-escolha.html` **v0.4**, `suite-escolha` **238 · 0 · 29** em 5 alvos |
| C4 | **Seletor de pessoa** (avatar + busca) | atribuição de responsável — no CU é componente próprio | **§62 `estável` ✅** (PS1–PS16) · bancada `banco-pessoa.html` **v0.1**, `suite-pessoa` **44 · 0 · 1** · **gate OBSERVADO em 2026-08-17, PS-P4 FECHADA** (§64.10) |
| C5 | **Seletor de entidade colorida** (espaço/projeto com glifo) | C1/CP23 tem a paleta; falta o *seletor* | **parcial** · leitura BLOQUEADA (só por escrita) — PS-P2 |
| C6 | **Seletor de ícone/cor** | criação de espaço/lista | **§65 `estável` ✅ (SI1–SI16)** — promovido em 2026-08-17 · consome a paleta FECHADA de 6 do CP23 e os 28 glifos do §45 · bancada `banco-identidade.html` **v0.2** *(errata: o mapa dizia v0.1; medido no `<title>`/selo do artefato)*, `suite-identidade` **32 · 0 · 0** |
| C7 | **Editor de texto rico** (toolbar mínima) | descrição de OS, documento (A13) | **§68 `estável` ✅ (ET1–ET14)** — promovido em 2026-08-17 · editor de CAMPO, seis marcas fechadas, saída em lista branca · bancada `banco-texto-rico.html` **v0.2** *(errata: o mapa dizia v0.1; medido no artefato)*, `suite-texto-rico` **25 · 0 · 0** · **o editor de DOCUMENTO (A13) segue AUSENTE** — fronteira declarada em §68.0 pelo C25 (660px, 16px/1,5, outra stack) |
| C8 | **Campo de menção `@`** | comentário em OS | **AUSENTE** · leitura BLOQUEADA (só por escrita) — PS-P2 |
| C9 | **Campo monetário / medida** (R$, kWp, kWh) | domínio SEED — hoje é `§5 número` genérico | **§59 ESCRITO ✅ (VD1–VD16).** Leitura visual NÃO SE APLICA: o produto de referência não tem campo de potência. **Bancada `banco-dominio.html` ENTREGUE** (gerador + molde + `suite-dominio.mjs` 28·0) |
| C10 | **Campo de duração** (8h, 3d) | gantt/carga precisam | **§59 ESCRITO ✅ (VD10).** Entrada composta normalizada; a jornada é parâmetro do produto, não do DS (VD-P2). **Bancada ENTREGUE** |
| C11 | **Rating / prioridade** (bandeira, estrelas) | prioridade de OS | **§63 `estável` ✅** (PR1–PR12) · bancada `banco-prioridade.html` **v0.2**, `suite-prioridade` **18 · 0 · 0** · **re-gate OBSERVADO em 2026-08-17, BT-P1 FECHADA** (§64.10) |
| C12 | **Toggle group / segmented control** | troca de lente (o §48 usa, sem spec própria) | **§60 `estável` ✅ (SG1–SG8)** — três saídas com régua, contra a divergência de canon · SG-P1 FECHADA (6 controles em 4 arquivos auditados) · mesmo re-gate OBSERVADO de 2026-08-17 (§64.10) |
| C13 | **Campo de senha** com revelar | tela de autenticação (A19) | **§66 `estável` ✅ (CD1–CD16)** — promovido em 2026-08-17 · junto com C14, porque os dois são governados pelo SC 3.3.8 · bancada `banco-credencial.html` **v0.2** *(errata: o mapa dizia v0.1; medido no artefato)*, `suite-credencial` **30 · 0 · 0** · ~~a TELA A19 segue ausente (CD-P5)~~ **CD-P5 FECHADA em 2026-08-23: a tela existe, `estável` (§83, F7.6)** |
| C14 | **Campo de código/OTP** | recuperação de acesso | **§66 `estável` ✅ (CD10–CD13)** · **UM campo, nunca seis caixinhas** — medido em casa: colar deixa 6/6 dígitos no canônico e 1/6 no contraexemplo |
| C15 | **Input inline editável** (clique no valor → edita) | edição direta na lista/tabela — PN22–PN41 cobre no painel | **§67 `estável` ✅ (IL1–IL14)** — promovido em 2026-08-17 · o componente que a grade do PN37 consome · bancada `banco-edicao-linha.html` **v0.2** *(errata: o mapa dizia v0.1; medido no artefato)*, `suite-edicao-linha` **23 · 0 · 0** · decisão: **clicar fora CONFIRMA** (erro reversível > irreversível) |

### 4.2 Estrutura, dado e navegação

| # | Componente | Por que | Estado |
|---|---|---|---|
| C16 | **Árvore (tree) com expandir/recolher** | sidebar do shell usa | **RESOLVIDO na F7.2** — §52 (AR1–AR8), **`estável`** — gate DECLARADO em 2026-08-17 (ver nota abaixo da tabela) |
| C17 | **Coluna redimensionável** (drag no cabeçalho) | tabela real de ERP | **RESOLVIDO na F7.2** — §51/PC1–PC3 (resizer = slider, alvo ≥24px) |
| C18 | **Reordenar coluna** (drag horizontal) | idem | **RESOLVIDO na F7.2** — §51/PC4–PC5 (três caminhos do CP30 + painel de colunas) |
| C19 | **Agrupamento de linhas** (group by com cabeçalho colapsável + **contador junto ao rótulo**, C26) | lista do CU é agrupada por padrão | **RESOLVIDO na F7.2** — §50 (AG1–AG8), sem `role=grid` |
| C20 | **Ordenação multi-coluna** | §40 cobre sort simples | **RESOLVIDO na F7.2** — §40-b/DT9–DT11 (teto 3, ordem como número) |
| C21 | **Filtro composto** (E/OU aninhado) | §42 cobre chips de filtro aplicado | **RESOLVIDO na F7.2** — §53 (FC1–FC6), profundidade 2 |
| C22 | **Numeração de linha** (C30) | grade | **RESOLVIDO na F7.2** — §40-b/DT12 (opt-in, posicional, nunca endereço) |
| C23 | **Célula editável de grade** | fronteira declarada no backlog v1.3 | **AUSENTE** |
| C24 | **Split/resizer** (C24) | detalhe lado a lado | **AUSENTE** |
| C25 | **Sidebar colapsável com memória** | medido no CU (§4.3 cronometrado) | **parcial** (SH12 colapsa; sem persistência — o PC6 da F7.2 já declarou persistência POR GABARITO para largura de coluna, mesma régua) |
| C26 | **Barra de progresso de etapa em linha** | OS em andamento | **parcial** (§20) |
| C27 | **Timeline/histórico vertical** | atividade de registro (A14) | **parcial** (existe no painel `.tl`, sem spec) |
| C28 | **Comentário com thread** | colaboração em OS | **AUSENTE** |
| C29 | **Anexo/arquivo em lista** | §14 cobre upload; falta a *lista de anexos* | **parcial** |
| C30 | **Cartão de quadro (Kanban card)** | A7 | **AUSENTE** |
| C31 | **Alvo de soltura (drop target)** (C20 — borda tracejada, nunca cor saturada) | arraste em quadro/gantt | **parcial** (PN33 no painel; a lei geral virou CP30 na F7.1) |
| C32 | **Barra de ações em massa flutuante** | §41 cobre seleção | **RESOLVIDO na F7.2** — §41-b/SL7 (variante nomeada, rodapé reservado) |
| C33 | **Breadcrumb com truncamento por container** | §36 existe; falta a regra de container | **parcial** |
| C34 | **Menu de contexto (botão direito)** | PN50 cobre no painel; falta geral | **parcial** |
| C35 | **Atalhos de teclado / cheat sheet** | ⌘K existe; falta o mapa de atalhos | **AUSENTE** |
| C36 | **Indicador de presença em tempo real** (quem está vendo) | C2 cobre presença de avatar | **parcial** |

> ### Nota de promoção — 2026-08-17: gate DECLARADO, e o que isso quer dizer
>
> As linhas acima marcadas **`estável` — gate DECLARADO em 2026-08-17** foram promovidas porque o
> bloqueio **objetivo** que as segurava deixou de existir: nenhum artefato do acervo tem defeito
> medido em aberto. A varredura transversal `validacao/suite-reflow.mjs` (contrato **BT7**, reflow a
> 320 e 390px + alcance de teclado + nome acessível de faixa rolável) mede hoje **34 artefatos** com
> **120 PASS · 0 FAIL**, e a bateria completa de suítes foi reexecutada sem nenhum FAIL em nenhuma
> camada. A regra do projeto — *"artefato com defeito aberto não promove"* — está satisfeita.
>
> **O que "gate DECLARADO" significa, e por que a distinção é registrada.** O Rafael respondeu
> **"aprovo. siga"** a um texto que listava estes artefatos nominalmente. **Não há registro de quais
> capturas ele abriu**, e **quatro deles foram alterados depois dessa frase** — `tela-painel`,
> `tela-quadro`, `tela-gantt` e `tela-referencia`, pelos consertos de BT7 e FIG-03 da mesma rodada.
> Portanto: *aprovado por declaração*, não *aprovado depois de visto*. **Se o gate não tiver ocorrido
> nestes artefatos, ou não cobrir as versões consertadas, corrigir aqui por errata.** É o mesmo
> padrão de rastreabilidade usado no `seed-componentes.md` §45.5 e no `validacao/MANIFESTO.md` §78.5
> e §79.9.

**Contagem do eixo C:** 36 itens previstos além dos 45 estáveis. Estado após a **F7.5** (2026-08-16): **19 RESOLVIDOS** — C16–C22 e C32 (F7.2) + C9/C10 (§59), C3/C12 (§60), C1/C2 (§61), C4 (§62), C11 (§63), C6 (§65), C13/C14 (§66), C15 (§67) e C7 (§68) —, **2 ausentes e BLOQUEADOS** (C5 e C8, pela PS-P2: só se leem escrevendo no produto de referência), **8 ausentes** (C23, C24, C28, C30, C35 e os que dependem de arquétipo) e o restante parcial. *(Antes da F7.2: 17 ausentes, 19 parciais.)* **Ressalva de método:** esta contagem foi refeita à mão sobre a tabela acima; recontar por comando quando houver shell sobre a pasta.

---

