---
fonte: 01-canonicos/seed-componentes.md
versao_da_fonte: v1.67
secao: h20
titulo: "Histórico da seção §20 — Progress (não é regra)"
status: historico
vigente_desde: null
superseded_by: null
tipo_de_fatia: historico
secao_mae: 20
quando_consultar: "Histórico da §20 — NÃO é regra; leia só se a pergunta for sobre o passado (quando e por que a decisão mudou)."
em_uma_frase: null
nao_cobre: null
conceitos: null
vocabulario: null
sequencia: 42 de 172
bytes_do_corpo: 763
md5_do_corpo: f2b36e82422467bb139c0159018e5ec4
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/seed-componentes.md
---
### Histórico da seção

> **Base:** R1 — NN/g (>10s exige estimativa explícita), Carbon progress bar (handoff indeterminado→determinado; direção E→D), Material m1 PRIMÁRIO (nunca regride; uma barra para o todo) e m2 (handoff). R2 — React Aria useProgressBar (valuetext localizado; label obrigatório), Radix/shadcn (omitir value = indeterminado), Angular Material (não alterar valuemin/max padrão), MUI (aria-valuetext quando não é %). R3 — **W3C ARIA25 íntegra** (técnica oficial do 4.1.3: progressbar NÃO é live region; canal polite separado visually-hidden), MDN progressbar, marcos 25/50/75 (nunca cada 1%), Fiori (bloquear o mínimo). Fronteira: stepper "passo 2 de 5" é NAVEGAÇÃO → Bloco 5 (registrado no roadmap).

---

