A plataforma
16 · Design system
A interface de toda stack segue o design system da Hibex (enterprise-stack-design).
Ele está acima do produto: quando algo conflita, o produto se ajusta, e o que
falta vira pedido.
Como o design system chega à stack
Regras
| Regra | Garantia |
|---|---|
vendor/hibex/ é cópia, nunca editada à mão | Garantia: hook block-vendor-hibex.py + o verificador compara com o MANIFESTO.json |
| A cópia é feita pelo mantenedor, com o atualizador da própria versão, rodado do repositório do design system na tag; a stack não guarda script de atualização | Garantia: AGENTS.md |
Cada aplicação tem uma família de cor, exclusiva dentro do produto, listada em docs/design-system/aplicacoes.md; a Fase 1 a escolhe no guia de adoção do design system, antes de existir a cópia, e a change aparencia confere | Garantia: ficha da stack (lacuna app.familia) |
| O build de cada aplicação entrega só a folha, o script, fontes, ícones, a marca-mãe e a sua família | Garantia: build da stack |
| Fontes servidas pela aplicação (sem CDN) | Garantia: design system |
Um mapa de estados por produto (docs/design-system/estados.md), e o código o consulta | Garantia: design system §3; teste que confere o mapa contra o arquivo |
| O verificador roda na CI e quebra o build com erro (templates, CSS, JS próprios) | Garantia: ci.yml |
O que falta vira hibex-pendente: NNNN <assunto> no código + bloco em docs/design-system/pedidos.md | Garantia: verificador conta os pendentes |
| Aviso de ambiente (LOCAL) em toda publicação fora de produção; nunca nas capturas | Garantia: ORG-0023 |
Antes de qualquer tela: ler vendor/hibex/agentes/AGENTS.md | Garantia: AGENTS.md da stack aponta para ele |
Os três caminhos do dia a dia
Documentos da stack
| Arquivo | Conteúdo |
|---|---|
docs/design-system/aplicacoes.md | Conteúdo: cada aplicação, sua pasta e sua família |
docs/design-system/estados.md | Conteúdo: palavra de estado → papel de cor |
docs/design-system/pedidos.md | Conteúdo: um bloco por pedido, com estado (aberto · no pacote · registrado NNNN · atendido em X.Y.Z · recusado) |
docs/design-system/aprendizados.md | Conteúdo: por que algo destoou e o que levar ao design system |
Atualizar é change
Atualizar a cópia nunca é manutenção livre: uma atualização começada direto no código
pula a leitura do CHANGELOG.md e as trocas que ele pede. Regra:
- o mantenedor faz a cópia da versão nova com o atualizador dela;
- o agente abre
/opsx:propose design-system-X-Y-Z, lendo todas as versões doCHANGELOG.mdentre a antiga e a nova; - a change é dividida se a atualização for grande;
- as telas afetadas ganham capturas novas (só elas), e a regressão E2E roda inteira.
A interface nasce no padrão
Adotar o design system depois das telas prontas custa uma change por grupo de telas. No
modelo, o design system entra na Fase 2 (change aparencia),
antes de qualquer tela de produto: layout, temas, menus, página de erro e aviso de
ambiente já no padrão. Cada tela de produto depois disso nasce seguindo o
COMPONENTES.md.