---
fonte: 01-canonicos/mapa-cobertura-ds.md
versao_da_fonte: v2.31
secao: 06
titulo: "Eixo E — Estados, comportamento e sistema"
sequencia: 8 de 24
bytes_do_corpo: 4418
md5_do_corpo: 932d97bac5ec9eebd4cb2cd432672616
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
---
## 6. Eixo E — Estados, comportamento e sistema

### 6.1 Estados não-felizes (§6 do estudo)

| Estado | Medido no CU | SEED |
|---|---|---|
| Vazio (três tratamentos distintos, **não intercambiáveis**) | sim | §25 Z1 com **seis** tipos — **estável e mais completo que a referência** |
| Carregando (skeleton duas camadas, entrada deslocada — C23) | sim | §19 `estável`; **C23 não adotado** — parcial |
| Erro | sim | §15/§16/§17 `estável` |
| Sem permissão | **não medido lá** (§12.3) | §25 Z1 cobre — **estável** |
| Offline | **não medido lá** | ✅ **§90 (OF1–OF11)** `estável` (2026-08-24, F7.7-P5, emendada na mesma data) — dois estados por decisão dele; **OF10** dá os quatro estados de sincronização, porque o app de campo offline (OS e ponto) é decisão tomada; ⚠ o ponto tem regra própria (Portaria MTP 671/2021, REP-P) e o comprovante ao trabalhador é peça que não existe — **PT-P1** |
| Zero resultado de busca | sim | §25 Z1 — estável |
| Lista longa (virtualização) | sim | ✅ **§92 (LL1–LL6)** `estável` (2026-08-24, F7.7-P5) — **fecha a BU-P1**; limiar MEDIDO em cobaia (2.000 linhas); sem conferência por declaração (LL-P1) |
| Estado neutro sem croma (C19) | sim | CP19 adotado — estável |
| Conflito de edição concorrente | não medido | ✅ **§91 (CE1–CE9)** `estável` (2026-08-24, F7.7-P5, emendada na mesma data) — otimista + presença, com trava exclusiva para objeto que gera documento com ART; **CE4-f** separa COLETA (offline, sem trava) de EMISSÃO (online, com trava), resolvendo a colisão com o app de campo; **CE9** é o conflito detectado na sincronização |
| Ação irreversível / confirmação destrutiva | parcial | §30 modal + §1 destrutivo — parcial (falta o *pattern*) |

### 6.2 Comportamento e densidade

| Item | Estado |
|---|---|
| **Container queries nomeadas** (C22; o CU tem **60+**, e a barra de ferramentas sozinha tem 7 pontos de quebra próprios) | **parcial** — o shell usa `@container app`; o resto do DS é media-query. **É a lacuna estrutural mais séria do eixo**, porque a §5.1 do estudo diz que testar por janela mede a coisa errada |
| Movimento tokenizado (dur/ease) | estável |
| `prefers-reduced-motion` | **parcial** — declarado, sem varredura (o próprio estudo não mediu, §12.4) |
| Anel de foco dupla camada (C29) | **parcial** — nosso anel é simples; C29 é proposta não adotada |
| Arraste (C20 borda tracejada) | parcial (PN33) |
| Persistência de preferência (sidebar, densidade, lente) | **AUSENTE** |
| Rolagem infinita × paginação | parcial (§37) |

### 6.3 Camada de sistema

| Item | Estado |
|---|---|
| Tokens 3 camadas + gêmeos + paridade | **estável** |
| Tema escuro (degrau 800 como ponto fixo; alphas maiores — §7) | **estável** |
| Acessibilidade WCAG 2.2 AA | **estável** (e acima da referência: o estudo mediu reprovações sistemáticas lá) |
| Microcópia PT-BR | **ESTÁVEL desde 2026-08-24** — nasce a **§89 do `seed-componentes.md`** (MC1–MC18) por cinco decisões dele no gate, sobre rodada de 12 fontes. Inclui a parte que só fonte brasileira resolvia: **registro verbal por elemento** (§89.3, do GNOME Brasil + guia pt-BR da Microsoft) e a distinção "não é possível" × "não foi possível". Sem guarda automatizada ainda (MC-P2) |
| **Auditoria de valor não-tokenizado (C31)** — *"drift não se manifesta como cor errada, e sim como cor quase certa"* | **ESTÁVEL desde 2026-08-24 (F7.7-P3).** A `auditoria-c31.mjs` ganhou a **perna de COR**: valor computado × inventário de tokens, com alpha COMPOSTO, em três classes (token exato · **QUASE-CERTO a ΔE76 ≤ 2,3** — o drift invisível · solta). Régua calibrada contra o número do próprio canônico (§7.5: o hex inventado `#0A6B60` a ΔE 1,03 do stop, que viveu quatro rodadas até virar peça aprovada). Medido no acervo: **21.774 pinturas casam exatamente com token, 2 quase-certas (as duas legítimas)** |
| Conversor `color(srgb …)` no script de contraste | **ESTÁVEL desde 2026-08-24 (F7.7-P2).** Nasce `ferramentas/cor.py` + `cor.mjs` (gêmeos, prova 20·0 nos dois, com a **paridade entre eles medida**): `color(srgb r g b / α)`, composição de alpha, WCAG e ΔE76; notação desconhecida ABORTA. Os 13 scripts de contraste migrados com **saída idêntica**, provada por diff |

---

