---
fonte: 01-canonicos/seed-componentes.md
versao_da_fonte: v1.67
secao: h14
titulo: "Histórico da seção §14 — Upload (não é regra)"
status: historico
vigente_desde: null
superseded_by: null
tipo_de_fatia: historico
secao_mae: 14
quando_consultar: "Histórico da §14 — 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: 30 de 172
bytes_do_corpo: 679
md5_do_corpo: 666023f5741e90ea8fa60a9e89a45880
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 (3 rodadas):** R1 — GOV.UK file upload (input nativo + "Choose file or drop"; JS como enhancement), Scottish (progress + confirmação), Queensland/NSW (erros; WCAG 2.2 redundant entry: erro NÃO força re-upload do que subiu), VA (variantes), Home Office (erros que sugerem correção). R2 — SaaS patterns (constraints ANTES; progresso real POR arquivo; retry individual; item visível com remover), NN/g drag-drop, react-dropzone/Uppy. R3 — W3C ARIA25 (progressbar + live region), Uploadcare/Carbon issues (anúncios nomeando arquivo), 4.1.3 Status Messages, segurança MIME server-side. N1–N7 conferidas no consolidado.

---

