jarvis-ai-framework 1.0.3 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +66 -64
- package/README.md +24 -10
- package/agents/AGENTS.md +12 -8
- package/agents/README.md +14 -16
- package/agents/engineering/data/eng.data-engineer.agent.md +6 -6
- package/agents/engineering/eng.agent.md +19 -36
- package/agents/engineering/eng.bug-hunter.md +13 -12
- package/agents/engineering/eng.cybersecurity.agent.md +20 -35
- package/agents/engineering/eng.docs-writer.md +2 -2
- package/agents/engineering/eng.frontend.agent.md +17 -22
- package/agents/engineering/eng.rpa.agent.md +5 -15
- package/agents/engineering/qa/eng.qa.test-architect.md +4 -4
- package/agents/engineering/qa/eng.qa.test-planner.md +3 -3
- package/agents/engineering/qa/eng.qa.testing-engineer.md +3 -3
- package/agents/product/prod.discovery-interviewer.md +86 -0
- package/bin/commands/init.js +6 -6
- package/bin/jarvis.js +1 -1
- package/bin/lib/config/constants.js +47 -0
- package/bin/lib/core/sync-engine.js +12 -0
- package/package.json +2 -5
- package/rules/AGENTS.md +6 -4
- package/rules/engineering/eng-rules.md +5 -3
- package/rules/engineering/eng-security-rules.md +4 -4
- package/rules/engineering/eng.breakdown-subtasks-rules.md +208 -37
- package/rules/engineering/eng.docs-scraping-rules.md +1 -1
- package/rules/engineering/eng.downstream-flow-rules.md +1 -1
- package/rules/engineering/eng.integrations-rules.md +2 -2
- package/rules/engineering/eng.pre-pr-rules.md +1 -1
- package/rules/engineering/eng.skills-rules.md +60 -0
- package/rules/engineering/eng.specializations-rules.md +69 -0
- package/rules/engineering/eng.start-rules.md +11 -11
- package/rules/engineering/eng.work-rules.md +19 -14
- package/rules/engineering/frontend/eng.frontend-rules.md +70 -69
- package/rules/product/README.md +2 -0
- package/rules/product/prod-rules.md +7 -5
- package/{skills/prod-specs/rules/prod-spec-rules.md → rules/product/prod.spec-rules.md} +55 -50
- package/skills/AGENTS.md +111 -47
- package/skills/SKILLS-ROADMAP.md +26 -45
- package/skills/eng-ai-engineer/SKILL.md +1 -0
- package/skills/eng-backend/SKILL.md +142 -644
- package/skills/eng-backend/references/1-fundamentos-programacao.md +41 -0
- package/skills/eng-backend/references/10-seguranca.md +61 -0
- package/skills/eng-backend/references/11-performance.md +49 -0
- package/skills/eng-backend/references/12-erros-logging.md +42 -0
- package/skills/eng-backend/references/13-qualidade-codigo.md +51 -0
- package/skills/eng-backend/references/2-design-arquitetura.md +48 -0
- package/skills/eng-backend/references/3-design-patterns.md +50 -0
- package/skills/eng-backend/references/4-algoritmos-estruturas.md +43 -0
- package/skills/eng-backend/references/5-banco-dados.md +53 -0
- package/skills/eng-backend/references/6-api-comunicacao.md +42 -0
- package/skills/eng-backend/references/7-concorrencia-async.md +49 -0
- package/skills/eng-backend/references/8-arquitetura-servidor.md +49 -0
- package/skills/eng-backend/references/9-testes.md +43 -0
- package/skills/{eng-arch-c4 → eng-backend-arch-c4}/SKILL.md +12 -7
- package/skills/{eng-ms-trace → eng-backend-microservices-trace}/SKILL.md +6 -4
- package/skills/{eng-nestjs → eng-backend-nestjs}/SKILL.md +3 -1
- package/skills/{eng-rabbitmq → eng-backend-rabbitmq}/SKILL.md +3 -1
- package/skills/eng-data-bi/SKILL.md +1 -0
- package/skills/eng-data-debug/SKILL.md +2 -1
- package/skills/eng-data-engineer/SKILL.md +1 -0
- package/skills/eng-data-onboard/SKILL.md +1 -0
- package/skills/eng-data-orchestrator/SKILL.md +1 -0
- package/skills/{eng-performance-engineer → eng-devops-performance-engineer}/SKILL.md +2 -1
- package/skills/eng-frontend/SKILL.md +145 -782
- package/skills/eng-frontend/references/1-fundamentos-programacao.md +37 -0
- package/skills/eng-frontend/references/10-testes.md +47 -0
- package/skills/eng-frontend/references/11-seguranca.md +56 -0
- package/skills/eng-frontend/references/12-qualidade-codigo.md +51 -0
- package/skills/eng-frontend/references/2-html-fundamentals.md +51 -0
- package/skills/eng-frontend/references/3-css-responsive.md +61 -0
- package/skills/eng-frontend/references/4-javascript-dom.md +60 -0
- package/skills/eng-frontend/references/5-state-management.md +55 -0
- package/skills/eng-frontend/references/6-uiux-design.md +59 -0
- package/skills/eng-frontend/references/7-acessibilidade.md +46 -0
- package/skills/eng-frontend/references/8-performance.md +58 -0
- package/skills/eng-frontend/references/9-browser-apis.md +54 -0
- package/skills/{eng-design-system → eng-frontend-design-system}/SKILL.md +4 -2
- package/skills/{eng-microfrontend → eng-frontend-microfrontend}/SKILL.md +4 -2
- package/skills/{eng-browser-extension-builder → eng-global-browser-extension-builder}/SKILL.md +2 -1
- package/skills/{eng-docs-write → eng-global-docs-write}/SKILL.md +8 -4
- package/skills/eng-global-jira-comment/SKILL.md +21 -0
- package/skills/{eng-pr → eng-global-pr}/SKILL.md +7 -3
- package/skills/{eng-task-comment → eng-global-task-comment}/SKILL.md +6 -2
- package/skills/eng-qa-a11y-audit/SKILL.md +1 -0
- package/skills/eng-qa-bug-report/SKILL.md +2 -1
- package/skills/eng-qa-bug-report/TASK_MANAGERS.md +1 -1
- package/skills/eng-qa-cypress-e2e/SKILL.md +1 -0
- package/skills/eng-qa-dev-guide/SKILL.md +1 -0
- package/skills/eng-qa-e2e/SKILL.md +1 -0
- package/skills/eng-qa-e2e-spec-writer/SKILL.md +1 -0
- package/skills/eng-qa-exploratory/SKILL.md +1 -0
- package/skills/eng-qa-gate/SKILL.md +3 -2
- package/skills/eng-qa-graphql-contract/SKILL.md +1 -0
- package/skills/eng-qa-quality-report/SKILL.md +3 -2
- package/skills/eng-qa-test-plan/SKILL.md +1 -0
- package/skills/eng-qa-testsprite/SKILL.md +2 -1
- package/skills/eng-qa-unit-test/SKILL.md +1 -0
- package/skills/eng-scraper/SKILL.md +1 -0
- package/skills/eng-scraper-robot-builder/SKILL.md +1 -0
- package/skills/{eng-cybersecurity → eng-security-cybersecurity}/SKILL.md +3 -2
- package/skills/eng-security-patch/SKILL.md +6 -2
- package/skills/{eng-threat-model → eng-security-threat-model}/SKILL.md +6 -2
- package/skills/eng-security-triage/SKILL.md +4 -0
- package/skills/{context-detect → jarvis-context-detect}/SKILL.md +6 -5
- package/skills/{context-detect → jarvis-context-detect}/assets/context-profile-template.md +3 -3
- package/skills/jarvis-create-specialization/SKILL.md +230 -0
- package/skills/jarvis-create-specialization/assets/referencia-template.md +39 -0
- package/skills/jarvis-create-specialization/assets/skill-especializacao-template.md +78 -0
- package/skills/{docs-central → jarvis-docs-central}/README.md +1 -1
- package/skills/{docs-central → jarvis-docs-central}/SKILL.md +3 -40
- package/skills/{docs-index → jarvis-docs-index}/SKILL.md +8 -4
- package/skills/{init-jarvis → jarvis-init}/SKILL.md +42 -19
- package/skills/{init-jarvis → jarvis-init}/assets/mcp-configs.md +3 -3
- package/skills/{init-jarvis → jarvis-init}/assets/onboarding-checklist.md +1 -1
- package/skills/jarvis-init/assets/passo-adicionar-stacks.md +163 -0
- package/skills/{init-jarvis → jarvis-init}/assets/setup-guide.md +1 -1
- package/skills/jarvis-init/assets/sinais-de-stack.md +54 -0
- package/skills/jarvis-list-specializations/SKILL.md +148 -0
- package/skills/{report-issue → jarvis-report-issue}/SKILL.md +3 -2
- package/skills/{prod-roadmap-report → product-roadmap-report}/SKILL.md +2 -1
- package/skills/product-specs/SKILL.md +45 -0
- package/skills/{prod-specs-update → product-specs-update}/SKILL.md +3 -2
- package/taxonomy.md +3 -21
- package/templates/AGENTS.md +7 -6
- package/templates/CDD aplicado a Prompts.md +5 -5
- package/templates/ENV-template.md +12 -9
- package/templates/engineering/AGENTS-template.md +1 -1
- package/templates/engineering/CONTACTS-template.md +1 -1
- package/templates/product/prod-discovery-template.md +98 -0
- package/{skills/prod-specs/templates → templates/product}/prod-epic-template.md +1 -0
- package/{skills/prod-specs/templates → templates/product}/prod-frd-template.md +1 -0
- package/{skills/prod-specs/templates → templates/product}/prod-issue-template.md +1 -0
- package/{skills/prod-specs/templates → templates/product}/prod-prd-template.md +1 -0
- package/workflows/AGENTS.md +3 -1
- package/workflows/README.md +2 -0
- package/workflows/engineering/eng.bug-audit.md +2 -2
- package/workflows/engineering/eng.build-tech-spec.md +38 -49
- package/workflows/engineering/eng.debug.md +10 -10
- package/workflows/engineering/eng.docs.md +2 -2
- package/workflows/engineering/eng.plan.md +5 -5
- package/workflows/engineering/eng.pr.md +8 -8
- package/workflows/engineering/eng.pre-pr.md +16 -20
- package/workflows/engineering/eng.review.md +5 -10
- package/workflows/engineering/eng.rpa.robot.md +3 -3
- package/workflows/engineering/eng.security-audit.md +5 -5
- package/workflows/engineering/eng.security-incident.md +2 -2
- package/workflows/engineering/eng.security-pipeline.md +2 -2
- package/workflows/engineering/eng.start.md +16 -50
- package/workflows/engineering/eng.work.md +9 -12
- package/workflows/engineering/frontend/eng.frontend-component.md +68 -96
- package/workflows/engineering/frontend/eng.frontend-perf-audit.md +90 -220
- package/workflows/engineering/frontend/eng.frontend-review.md +57 -63
- package/workflows/engineering/qa/eng.qa-quality-report.md +0 -5
- package/workflows/product/prod.roadmap.preview.md +2 -2
- package/workflows/product/prod.spec.breakdown.md +3 -8
- package/workflows/product/prod.spec.discovery.md +152 -0
- package/workflows/product/prod.spec.epic.md +3 -0
- package/workflows/product/prod.spec.frd.md +123 -8
- package/workflows/product/prod.spec.issue.md +3 -2
- package/workflows/product/prod.spec.md +2 -0
- package/workflows/product/prod.spec.prd.md +105 -6
- package/workflows/taxonomy.md +1 -1
- package/workflows/warm-up.md +5 -26
- package/agents/engineering/eng.tech-analyst.agent.md +0 -102
- package/skills/churn-audit/SKILL.md +0 -385
- package/skills/eng-jira-comment/SKILL.md +0 -17
- package/skills/eng-tech-analyst/SKILL.md +0 -529
- package/skills/lovable-prompt-generator/SKILL.md +0 -304
- package/skills/prod-specs/SKILL.md +0 -108
- package/skills/prod-specs/references/prod.spec.clarify.md +0 -176
- package/skills/prod-specs/references/prod.spec.epic.md +0 -107
- package/skills/prod-specs/references/prod.spec.frd.md +0 -135
- package/skills/prod-specs/references/prod.spec.issue.md +0 -145
- package/skills/prod-specs/references/prod.spec.prd.md +0 -118
- package/skills/prod-specs/templates/prod-prd-full-template.md +0 -159
- package/workflows/engineering/ta/eng.ta.atendimento.md +0 -93
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-code.md +0 -0
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-component.md +0 -0
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-container.md +0 -0
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-context.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/README.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.compiled.single.team.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.list.projects.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.memory.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.roadmap.preview.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/references/detailed-guide.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/rules/detailed-guide.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/rules/status-report-rules.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-multiple-teams-compiled-status.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-projects-list.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-single-team-compiled-status.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-single-team-status.md +0 -0
- /package/{skills/prod-specs/templates → templates/product}/prod-breakdown-template.md +0 -0
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
name: eng.frontend-component
|
|
3
3
|
description: >
|
|
4
4
|
Workflow para criar ou refatorar um componente frontend com qualidade:
|
|
5
|
-
análise de contexto, decisão
|
|
6
|
-
acessibilidade e testes.
|
|
7
|
-
|
|
5
|
+
análise de contexto, decisão entre componente compartilhado e local, implementação com
|
|
6
|
+
acessibilidade e testes. Neutro de stack: o framework, as bibliotecas e as convenções
|
|
7
|
+
vêm do projeto e das especializações registradas em FRONTEND_SPECIALIZATIONS.
|
|
8
8
|
author: jarvis-team
|
|
9
|
-
version: "1.
|
|
9
|
+
version: "1.1"
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
@@ -15,9 +15,16 @@ version: "1.0"
|
|
|
15
15
|
## Contexto
|
|
16
16
|
|
|
17
17
|
Use este workflow para garantir que todo componente frontend seja criado com
|
|
18
|
-
qualidade, acessibilidade, testes e no lugar correto (
|
|
18
|
+
qualidade, acessibilidade, testes e no lugar correto (compartilhado vs local).
|
|
19
19
|
|
|
20
|
-
**
|
|
20
|
+
**Neutro de stack:** este workflow não presume framework, linguagem, biblioteca de estilos nem
|
|
21
|
+
estrutura de pastas. O que é específico da stack do projeto vem de:
|
|
22
|
+
|
|
23
|
+
1. O código existente (leia componentes parecidos antes de criar o seu)
|
|
24
|
+
2. Os arquivos de configuração do projeto (por exemplo, `package.json`, `go.mod`, `composer.json`, `pyproject.toml`)
|
|
25
|
+
3. As especializações registradas em `FRONTEND_SPECIALIZATIONS` no `ENV.md`
|
|
26
|
+
|
|
27
|
+
**Antes de começar**, aplique a regra `$IDE/rules/engineering/eng.specializations-rules.md` para a área **frontend**: ela carrega o skill base `eng-frontend` e as especializações registradas. Onde este workflow disser "conforme a especialização", siga o que o skill da especialização pedir; sem especialização registrada, siga as convenções do código existente e **pergunte ao usuário** o que faltar, sem inventar.
|
|
21
28
|
|
|
22
29
|
---
|
|
23
30
|
|
|
@@ -28,37 +35,28 @@ qualidade, acessibilidade, testes e no lugar correto (design system vs remote).
|
|
|
28
35
|
Antes de qualquer código, responder:
|
|
29
36
|
|
|
30
37
|
```
|
|
31
|
-
1. O componente será reutilizado em mais de um
|
|
32
|
-
→ Sim → pertence
|
|
33
|
-
→ Não → pertence ao
|
|
38
|
+
1. O componente será reutilizado em mais de um módulo, tela ou aplicação?
|
|
39
|
+
→ Sim → pertence à biblioteca de componentes compartilhados do projeto (se existir)
|
|
40
|
+
→ Não → pertence ao módulo onde será usado
|
|
34
41
|
|
|
35
42
|
2. Existe componente similar já criado?
|
|
36
|
-
→ Verificar
|
|
37
|
-
→ Verificar: ls apps/{remote}/src/components/
|
|
43
|
+
→ Verificar a pasta de componentes compartilhados e a do módulo
|
|
38
44
|
|
|
39
|
-
3. Existe primitivo
|
|
40
|
-
→ Modal,
|
|
45
|
+
3. Existe um primitivo ou componente pronto (da biblioteca de UI adotada pelo projeto) para este caso?
|
|
46
|
+
→ Modal, seleção, menu, dica de contexto, caixa de seleção → partir dele em vez de reescrever
|
|
41
47
|
|
|
42
48
|
4. Quais variantes são necessárias?
|
|
43
49
|
→ Levantar com design antes de implementar
|
|
44
50
|
|
|
45
|
-
5.
|
|
46
|
-
→
|
|
47
|
-
→ Se usa hooks/eventos → Client Component ('use client')
|
|
51
|
+
5. Onde o componente é renderizado e como ele guarda estado?
|
|
52
|
+
→ Conforme a especialização: renderização no servidor ou no cliente, componente com ou sem estado local
|
|
48
53
|
```
|
|
49
54
|
|
|
50
55
|
### 1.2 Ler o código ao redor
|
|
51
56
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
# Ver como um componente similar está implementado
|
|
57
|
-
cat packages/design-system/src/components/{componente-similar}/
|
|
58
|
-
|
|
59
|
-
# Verificar configuração de tokens
|
|
60
|
-
cat packages/design-system/tailwind.config.ts 2>/dev/null
|
|
61
|
-
```
|
|
57
|
+
Identifique onde ficam os componentes do projeto (pasta de componentes compartilhados e do módulo),
|
|
58
|
+
abra um componente similar e leia a configuração de estilos e de tokens de design, se existir.
|
|
59
|
+
Se não achar um padrão claro, pergunte ao usuário.
|
|
62
60
|
|
|
63
61
|
---
|
|
64
62
|
|
|
@@ -66,40 +64,26 @@ cat packages/design-system/tailwind.config.ts 2>/dev/null
|
|
|
66
64
|
|
|
67
65
|
### 2.1 Criar arquivos
|
|
68
66
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
├── {Nome}.tsx
|
|
73
|
-
├── {Nome}.test.tsx
|
|
74
|
-
├── {Nome}.stories.tsx
|
|
75
|
-
└── index.ts
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
Para componente em **remote**:
|
|
79
|
-
```
|
|
80
|
-
apps/{remote}/src/components/{Nome}/
|
|
81
|
-
├── {Nome}.tsx
|
|
82
|
-
├── {Nome}.test.tsx
|
|
83
|
-
└── index.ts
|
|
84
|
-
```
|
|
67
|
+
Siga a **estrutura de pastas e a nomenclatura que o projeto já usa** (e a da especialização registrada).
|
|
68
|
+
Um componente costuma ter: o arquivo do componente, o arquivo de testes e, quando o projeto usa
|
|
69
|
+
documentação visual de componentes, o arquivo dessa documentação.
|
|
85
70
|
|
|
86
71
|
### 2.2 Checklist de implementação
|
|
87
72
|
|
|
88
|
-
####
|
|
89
|
-
- [ ]
|
|
90
|
-
- [ ] Valores default explícitos para
|
|
91
|
-
- [ ]
|
|
92
|
-
- [ ] Exportar o tipo de props para uso externo
|
|
73
|
+
#### Tipagem e contrato
|
|
74
|
+
- [ ] Entradas do componente (props, parâmetros ou atributos) tipadas ou documentadas, sem tipo genérico solto (`any` ou equivalente)
|
|
75
|
+
- [ ] Valores default explícitos para entradas opcionais
|
|
76
|
+
- [ ] Contrato público do componente exportado para uso externo, quando a linguagem permite
|
|
93
77
|
|
|
94
|
-
#### Tokens
|
|
95
|
-
- [ ] Cores via tokens
|
|
96
|
-
- [ ] Espaçamentos via escala do
|
|
97
|
-
- [ ] Variantes
|
|
78
|
+
#### Tokens de design
|
|
79
|
+
- [ ] Cores via tokens do projeto, sem valor hardcoded (hex/rgb)
|
|
80
|
+
- [ ] Espaçamentos e tipografia via a escala do projeto
|
|
81
|
+
- [ ] Variantes organizadas do jeito que o projeto já faz, se o componente tem múltiplos estados visuais
|
|
98
82
|
|
|
99
83
|
#### Acessibilidade
|
|
100
|
-
- [ ] Semântica HTML correta
|
|
101
|
-
- [ ]
|
|
102
|
-
- [ ] Estados de
|
|
84
|
+
- [ ] Semântica HTML correta (botão é botão, link é link, lista é lista)
|
|
85
|
+
- [ ] Rótulo acessível ou texto visível em elementos interativos sem texto
|
|
86
|
+
- [ ] Estados de foco visíveis (não remover o contorno)
|
|
103
87
|
- [ ] Navegação por teclado testada manualmente
|
|
104
88
|
|
|
105
89
|
#### Estados visuais
|
|
@@ -115,38 +99,39 @@ apps/{remote}/src/components/{Nome}/
|
|
|
115
99
|
|
|
116
100
|
## Fase 3 — Testes
|
|
117
101
|
|
|
118
|
-
### 3.1
|
|
119
|
-
|
|
120
|
-
Focar em comportamento, não implementação:
|
|
102
|
+
### 3.1 Testar comportamento, não implementação
|
|
121
103
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
expect(screen.getByRole('button', { name: 'Salvar' })).toBeDisabled()
|
|
104
|
+
Use a ferramenta de testes de interface que o projeto já adota (ou a da especialização registrada).
|
|
105
|
+
Foque no que o usuário vê e faz, não em detalhes internos:
|
|
125
106
|
|
|
126
|
-
// ❌ Não testar detalhes de implementação
|
|
127
|
-
expect(component.state.isLoading).toBe(true)
|
|
128
107
|
```
|
|
108
|
+
✅ Verificar que o botão "Salvar" está desabilitado enquanto o formulário é inválido
|
|
109
|
+
❌ Verificar o valor de uma variável interna de estado
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Prefira consultar elementos por papel e rótulo acessível (botão, campo, texto visível) em vez de
|
|
113
|
+
identificadores de teste, e use o identificador de teste só quando não houver alternativa acessível.
|
|
129
114
|
|
|
130
115
|
### Cobertura mínima obrigatória
|
|
131
116
|
- [ ] Renderização padrão (smoke test)
|
|
132
117
|
- [ ] Cada variante principal
|
|
133
118
|
- [ ] Estado de loading (se existir)
|
|
134
119
|
- [ ] Estado de erro (se existir)
|
|
135
|
-
- [ ] Interação principal (
|
|
136
|
-
- [ ] Acessibilidade
|
|
120
|
+
- [ ] Interação principal (clique, mudança de valor, envio)
|
|
121
|
+
- [ ] Acessibilidade automatizada, se o projeto já tem ferramenta configurada
|
|
137
122
|
|
|
138
123
|
---
|
|
139
124
|
|
|
140
|
-
## Fase 4 —
|
|
125
|
+
## Fase 4 — Documentação visual (apenas se o projeto usa)
|
|
141
126
|
|
|
142
|
-
|
|
127
|
+
Se o projeto mantém documentação visual dos componentes (um catálogo de componentes, por exemplo),
|
|
128
|
+
siga o padrão dele. Checklist geral:
|
|
143
129
|
|
|
144
|
-
- [ ]
|
|
145
|
-
- [ ]
|
|
146
|
-
- [ ]
|
|
147
|
-
- [ ]
|
|
148
|
-
- [ ]
|
|
149
|
-
- [ ] Sem violations na aba `Accessibility` do Storybook
|
|
130
|
+
- [ ] Documentação gerada ou escrita para o componente
|
|
131
|
+
- [ ] Controles ou exemplos para cada entrada variável
|
|
132
|
+
- [ ] Exemplo para cada variante
|
|
133
|
+
- [ ] Exemplo para estados especiais (loading, disabled, erro)
|
|
134
|
+
- [ ] Sem problemas de acessibilidade apontados pela ferramenta de documentação, quando ela verifica isso
|
|
150
135
|
|
|
151
136
|
---
|
|
152
137
|
|
|
@@ -154,37 +139,24 @@ expect(component.state.isLoading).toBe(true)
|
|
|
154
139
|
|
|
155
140
|
### 5.1 Exportar do ponto de entrada correto
|
|
156
141
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
// packages/design-system/src/index.ts
|
|
160
|
-
export { {Nome}, type {Nome}Props } from './components/{Nome}'
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
**Remote:**
|
|
164
|
-
```typescript
|
|
165
|
-
// apps/{remote}/src/components/index.ts (se existir barrel)
|
|
166
|
-
export { {Nome} } from './{Nome}'
|
|
167
|
-
```
|
|
142
|
+
Exponha o componente pelo mesmo ponto de entrada que os demais componentes do projeto usam
|
|
143
|
+
(arquivo de índice da biblioteca compartilhada ou do módulo), seguindo o padrão existente.
|
|
168
144
|
|
|
169
145
|
### 5.2 Verificar responsividade
|
|
170
146
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
# mobile: 375px
|
|
174
|
-
# tablet: 768px
|
|
175
|
-
# desktop: 1280px
|
|
176
|
-
```
|
|
147
|
+
Teste nos tamanhos de tela que o projeto define. Se o projeto não define, confirme com o usuário;
|
|
148
|
+
como referência de partida: celular (375px), tablet (768px) e desktop (1280px).
|
|
177
149
|
|
|
178
150
|
---
|
|
179
151
|
|
|
180
152
|
## Checklist Final
|
|
181
153
|
|
|
182
|
-
- [ ] Componente no lugar correto (
|
|
183
|
-
- [ ]
|
|
184
|
-
- [ ] Tokens
|
|
154
|
+
- [ ] Componente no lugar correto (compartilhado vs local)
|
|
155
|
+
- [ ] Entradas tipadas ou documentadas, sem tipo genérico solto
|
|
156
|
+
- [ ] Tokens de design do projeto usados (sem hardcode)
|
|
185
157
|
- [ ] Estados visuais completos
|
|
186
|
-
- [ ] Acessibilidade: semântica + teclado +
|
|
158
|
+
- [ ] Acessibilidade: semântica + teclado + rótulos quando necessário
|
|
187
159
|
- [ ] Testes cobrindo comportamentos críticos
|
|
188
|
-
- [ ]
|
|
189
|
-
- [ ] Exportado do
|
|
190
|
-
- [ ] Responsivo nos
|
|
160
|
+
- [ ] Documentação visual criada (se o projeto usa)
|
|
161
|
+
- [ ] Exportado do ponto de entrada correto
|
|
162
|
+
- [ ] Responsivo nos tamanhos de tela do projeto
|