jarvis-ai-framework 2.1.1 → 3.2.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 +14 -115
- package/agents/AGENTS.md +11 -23
- package/agents/README.md +27 -129
- package/agents/engineering/data/eng.data-engineer.agent.md +11 -34
- package/agents/engineering/eng.advisor.agent.md +56 -0
- package/agents/engineering/eng.agent.md +14 -24
- package/agents/engineering/eng.bug-hunter.md +7 -15
- package/agents/engineering/eng.dev-code-reviewer.md +1 -1
- package/agents/engineering/eng.frontend.agent.md +3 -7
- package/agents/engineering/eng.rpa.agent.md +2 -8
- package/agents/engineering/qa/eng.qa.quality-strategist.md +6 -11
- package/agents/engineering/qa/eng.qa.test-architect.md +8 -18
- package/agents/engineering/qa/eng.qa.test-planner.md +10 -14
- package/agents/engineering/qa/eng.qa.testing-engineer.md +91 -24
- package/agents/product/prod.discovery-interviewer.md +3 -3
- package/bin/README.md +142 -0
- package/bin/commands/docs-publish.js +105 -141
- package/bin/commands/docs-sync.js +66 -104
- package/bin/commands/info.js +7 -27
- package/bin/commands/init.js +23 -51
- package/bin/commands/install-rtk.js +9 -3
- package/bin/commands/list.js +5 -18
- package/bin/commands/map.js +20 -5
- package/bin/commands/qa-signoff.js +58 -55
- package/bin/commands/tokens.js +14 -17
- package/bin/commands/whoami.js +30 -26
- package/bin/jarvis.js +9 -163
- package/bin/lib/auth/session.js +20 -20
- package/bin/lib/cli/program.js +219 -0
- package/bin/lib/cli/shared-options.js +29 -0
- package/bin/lib/config/constants.js +59 -2
- package/bin/lib/config/ide-config.js +4 -8
- package/bin/lib/core/profile-filter.js +4 -1
- package/bin/lib/core/scanner.js +3 -29
- package/bin/lib/core/sync-engine.js +21 -14
- package/bin/lib/core/token-report.js +12 -2
- package/bin/lib/docs/fetch-file.js +39 -0
- package/bin/lib/docs/publish-file.js +194 -0
- package/bin/lib/docs/redis-cache.js +49 -0
- package/bin/lib/docs/validate-frontmatter.js +9 -39
- package/bin/lib/env-loader.js +11 -34
- package/bin/lib/flow-map/parse.js +11 -5
- package/bin/lib/flow-map/render.js +5 -2
- package/bin/lib/flow-map/tree.js +59 -10
- package/bin/lib/tasks/comment.js +40 -35
- package/bin/lib/utils/frontmatter.js +57 -0
- package/bin/lib/utils/git-parser.js +4 -6
- package/bin/lib/utils/npmrc-parser.js +6 -13
- package/bin/lib/utils/paths.js +2 -4
- package/bin/lib/utils/ui.js +3 -9
- package/bin/lib/vcs/api.js +25 -41
- package/bin/lib/vcs/create-issue.js +49 -33
- package/bin/lib/vcs/create-merge.js +47 -31
- package/bin/lib/vcs/fetch-raw.js +35 -23
- package/package.json +14 -5
- package/rules/engineering/eng-rules.md +1 -1
- package/rules/engineering/eng-security-rules.md +18 -16
- package/rules/engineering/eng.bump-rules.md +3 -2
- package/rules/engineering/eng.docs-scraping-rules.md +4 -4
- package/rules/engineering/eng.integrations-rules.md +6 -4
- package/rules/engineering/eng.skills-rules.md +1 -1
- package/rules/engineering/eng.specializations-rules.md +18 -4
- package/rules/engineering/frontend/eng.frontend-rules.md +1 -4
- package/rules/engineering/qa/eng.qa.cypress-standards-rules.md +1 -1
- package/rules/engineering/rpa/eng.rpa-rules.md +4 -9
- package/rules-on-demand/engineering/eng.pre-pr-rules.md +1 -1
- package/rules-on-demand/engineering/eng.start-rules.md +2 -0
- package/skills/AGENTS.md +52 -87
- package/skills/SKILLS-ROADMAP.md +47 -128
- package/skills/eng-ai/SKILL.md +270 -0
- package/skills/eng-ai/references/1-fundamentos-ml.md +24 -0
- package/skills/eng-ai/references/10-arquitetura-solucoes-ia.md +24 -0
- package/skills/eng-ai/references/11-governanca-ia.md +24 -0
- package/skills/eng-ai/references/12-seguranca-ia-responsavel.md +25 -0
- package/skills/eng-ai/references/2-matematica-estatistica.md +24 -0
- package/skills/eng-ai/references/3-dados-para-ia.md +24 -0
- package/skills/eng-ai/references/4-deep-learning-fundacionais.md +24 -0
- package/skills/eng-ai/references/5-llms-chatbots-agentes-rag.md +25 -0
- package/skills/eng-ai/references/6-avaliacao-experimentacao.md +24 -0
- package/skills/eng-ai/references/7-engenharia-sistemas-ia.md +24 -0
- package/skills/eng-ai/references/8-mlops-plataforma.md +24 -0
- package/skills/eng-ai/references/9-produto-ia.md +24 -0
- package/skills/eng-ai/references/especializacoes.md +17 -0
- package/skills/eng-automation/SKILL.md +290 -0
- package/skills/eng-automation/references/1-fundamentos-automacao.md +25 -0
- package/skills/eng-automation/references/10-ingestao-dados.md +25 -0
- package/skills/eng-automation/references/11-captcha-antibot.md +25 -0
- package/skills/eng-automation/references/12-limites-taxa-sessoes.md +25 -0
- package/skills/eng-automation/references/13-agendamento-orquestracao.md +24 -0
- package/skills/eng-automation/references/14-retentativa-erros.md +25 -0
- package/skills/eng-automation/references/15-autenticacao-credenciais.md +24 -0
- package/skills/eng-automation/references/16-observabilidade-confiabilidade.md +24 -0
- package/skills/eng-automation/references/2-aquisicao-dados.md +25 -0
- package/skills/eng-automation/references/3-automacao-navegador.md +24 -0
- package/skills/eng-automation/references/4-scraping-crawling.md +25 -0
- package/skills/eng-automation/references/5-apis-rest-graphql-soap.md +26 -0
- package/skills/eng-automation/references/6-webhooks-integracao.md +25 -0
- package/skills/eng-automation/references/7-rpa.md +25 -0
- package/skills/eng-automation/references/8-extracao-estruturada.md +25 -0
- package/skills/eng-automation/references/9-extracao-documentos.md +25 -0
- package/skills/eng-automation/references/especializacoes.md +18 -0
- package/skills/eng-backend-nestjs/SKILL.md +1 -1
- package/skills/eng-data/SKILL.md +271 -0
- package/skills/eng-data/references/1-fundamentos-dados.md +24 -0
- package/skills/eng-data/references/10-ciencia-dados.md +24 -0
- package/skills/eng-data/references/11-dataops-plataforma.md +24 -0
- package/skills/eng-data/references/12-seguranca-privacidade.md +24 -0
- package/skills/eng-data/references/2-modelagem-dados.md +24 -0
- package/skills/eng-data/references/3-bancos-dados.md +24 -0
- package/skills/eng-data/references/4-arquitetura-dados.md +24 -0
- package/skills/eng-data/references/5-pipelines-integracao.md +24 -0
- package/skills/eng-data/references/6-qualidade-dados.md +24 -0
- package/skills/eng-data/references/7-governanca-metadados.md +24 -0
- package/skills/eng-data/references/8-estatistica-analise.md +24 -0
- package/skills/eng-data/references/9-analytics-bi.md +24 -0
- package/skills/eng-data/references/especializacoes.md +20 -0
- package/skills/eng-frontend/SKILL.md +12 -5
- package/skills/eng-frontend/references/13-design-system.md +48 -0
- package/skills/eng-frontend/references/14-microfrontend.md +46 -0
- package/skills/eng-global-task-comment/SKILL.md +3 -3
- package/skills/eng-platform/SKILL.md +331 -0
- package/skills/eng-platform/references/1-fundamentos-sistemas.md +23 -0
- package/skills/eng-platform/references/10-resiliencia-arquitetura.md +24 -0
- package/skills/eng-platform/references/11-plataforma-devex.md +24 -0
- package/skills/eng-platform/references/12-finops-custos.md +24 -0
- package/skills/eng-platform/references/13-seguranca-fundamentos.md +26 -0
- package/skills/eng-platform/references/14-profiling-performance.md +23 -0
- package/skills/eng-platform/references/15-testes-carga-chaos.md +23 -0
- package/skills/eng-platform/references/16-cache-multicamada.md +22 -0
- package/skills/eng-platform/references/2-redes.md +23 -0
- package/skills/eng-platform/references/3-cloud.md +24 -0
- package/skills/eng-platform/references/4-iac-automacao.md +24 -0
- package/skills/eng-platform/references/5-containers-orquestracao.md +25 -0
- package/skills/eng-platform/references/6-cicd-entrega.md +24 -0
- package/skills/eng-platform/references/7-observabilidade.md +24 -0
- package/skills/eng-platform/references/8-confiabilidade-sre.md +24 -0
- package/skills/eng-platform/references/9-seguranca-infra.md +26 -0
- package/skills/eng-platform/references/especializacoes.md +34 -0
- package/skills/eng-qa/SKILL.md +283 -0
- package/skills/eng-qa/references/1-fundamentos-qualidade.md +25 -0
- package/skills/eng-qa/references/10-confiabilidade.md +25 -0
- package/skills/eng-qa/references/11-seguranca.md +24 -0
- package/skills/eng-qa/references/12-acessibilidade.md +24 -0
- package/skills/eng-qa/references/13-dados-testes.md +24 -0
- package/skills/eng-qa/references/14-gestao-testes-defeitos.md +25 -0
- package/skills/eng-qa/references/15-arquitetura-qa.md +25 -0
- package/skills/eng-qa/references/2-estrategia-planejamento.md +25 -0
- package/skills/eng-qa/references/3-design-testes.md +25 -0
- package/skills/eng-qa/references/4-manual-exploratorio.md +24 -0
- package/skills/eng-qa/references/5-automacao-testes.md +25 -0
- package/skills/eng-qa/references/6-api-integracao.md +25 -0
- package/skills/eng-qa/references/7-contrato.md +24 -0
- package/skills/eng-qa/references/8-interface-compat-mobile.md +24 -0
- package/skills/eng-qa/references/9-performance.md +24 -0
- package/skills/eng-qa/references/especializacoes.md +29 -0
- package/skills/eng-qa-planner/SKILL.md +264 -0
- package/skills/jarvis-context-detect/SKILL.md +1 -1
- package/skills/jarvis-context-detect/assets/context-profile-template.md +1 -1
- package/skills/jarvis-create-specialization/SKILL.md +8 -0
- package/skills/jarvis-docs-central/README.md +31 -28
- package/skills/jarvis-docs-central/SKILL.md +5 -5
- package/skills/jarvis-init/SKILL.md +9 -8
- package/skills/jarvis-init/assets/passo-adicionar-stacks.md +47 -18
- package/skills/jarvis-list-specializations/SKILL.md +30 -17
- package/skills/jarvis-report-issue/SKILL.md +1 -1
- package/taxonomy.md +4 -16
- package/templates/AGENTS.md +2 -0
- package/templates/ENV-template.md +20 -2
- package/templates/engineering/advisor-template.md +65 -0
- package/templates/engineering/architecture-template.md +52 -4
- package/templates/engineering/qa/qa.sprint-plan-template.md +1 -1
- package/workflows/AGENTS.md +3 -1
- package/workflows/README.md +0 -10
- package/workflows/engineering/data/data.new-pipeline.md +6 -5
- package/workflows/engineering/eng.bug-audit.md +4 -14
- package/workflows/engineering/eng.debug.md +4 -20
- package/workflows/engineering/eng.plan.md +4 -26
- package/workflows/engineering/eng.pr.md +13 -63
- package/workflows/engineering/eng.pre-pr.md +14 -51
- package/workflows/engineering/eng.review.md +7 -13
- package/workflows/engineering/eng.rpa.robot.md +3 -9
- package/workflows/engineering/eng.start.md +37 -32
- package/workflows/engineering/eng.work.md +17 -40
- package/workflows/engineering/qa/eng.qa-sprint-planning.md +1 -1
- package/workflows/product/prod.spec.discovery.md +2 -2
- package/workflows/warm-up.md +35 -63
- package/agents/engineering/eng.cybersecurity.agent.md +0 -486
- package/agents/engineering/qa/eng.qa.cypress-specialist.md +0 -112
- package/bin/lib/docs/fetch-file.sh +0 -41
- package/bin/lib/docs/publish-file.sh +0 -284
- package/rules/engineering/qa/eng.qa.exploratory-session-rules.md +0 -137
- package/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md +0 -181
- package/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md +0 -120
- package/skills/eng-ai-engineer/SKILL.md +0 -303
- package/skills/eng-data-bi/SKILL.md +0 -206
- package/skills/eng-data-debug/SKILL.md +0 -314
- package/skills/eng-data-engineer/SKILL.md +0 -266
- package/skills/eng-data-onboard/SKILL.md +0 -317
- package/skills/eng-data-orchestrator/SKILL.md +0 -433
- package/skills/eng-devops-performance-engineer/SKILL.md +0 -319
- package/skills/eng-frontend-design-system/SKILL.md +0 -155
- package/skills/eng-frontend-design-system/references/1-estrutura-pacote.md +0 -57
- package/skills/eng-frontend-design-system/references/2-tokens.md +0 -116
- package/skills/eng-frontend-design-system/references/3-componentes.md +0 -165
- package/skills/eng-frontend-design-system/references/4-storybook.md +0 -85
- package/skills/eng-frontend-design-system/references/5-auditoria-versionamento.md +0 -76
- package/skills/eng-frontend-microfrontend/SKILL.md +0 -164
- package/skills/eng-frontend-microfrontend/references/1-criando-remote.md +0 -109
- package/skills/eng-frontend-microfrontend/references/2-configurando-shell.md +0 -70
- package/skills/eng-frontend-microfrontend/references/3-contratos-interface.md +0 -73
- package/skills/eng-frontend-microfrontend/references/4-shared-dependencies.md +0 -48
- package/skills/eng-frontend-microfrontend/references/5-event-bus.md +0 -59
- package/skills/eng-frontend-microfrontend/references/6-monorepo-deploy.md +0 -77
- package/skills/eng-frontend-microfrontend/references/7-troubleshooting.md +0 -45
- package/skills/eng-global-browser-extension-builder/SKILL.md +0 -392
- package/skills/eng-global-jira-comment/SKILL.md +0 -27
- package/skills/eng-qa-a11y-audit/SKILL.md +0 -276
- package/skills/eng-qa-bug-report/SKILL.md +0 -877
- package/skills/eng-qa-bug-report/TASK_MANAGERS.md +0 -138
- package/skills/eng-qa-bug-report/references/1-integracao-task-managers.md +0 -148
- package/skills/eng-qa-bug-report/references/2-exemplos-de-uso.md +0 -46
- package/skills/eng-qa-bug-report/references/3-bug-to-test.md +0 -45
- package/skills/eng-qa-cypress-e2e/SKILL.md +0 -184
- package/skills/eng-qa-dev-guide/SKILL.md +0 -173
- package/skills/eng-qa-e2e/SKILL.md +0 -407
- package/skills/eng-qa-e2e-spec-writer/SKILL.md +0 -329
- package/skills/eng-qa-exploratory/SKILL.md +0 -196
- package/skills/eng-qa-gate/SKILL.md +0 -377
- package/skills/eng-qa-gate/assets/checklist-validacao.md +0 -291
- package/skills/eng-qa-graphql-contract/SKILL.md +0 -263
- package/skills/eng-qa-quality-report/SKILL.md +0 -419
- package/skills/eng-qa-test-plan/SKILL.md +0 -473
- package/skills/eng-qa-testsprite/SKILL.md +0 -332
- package/skills/eng-qa-testsprite/references/testsprite-mcp.md +0 -224
- package/skills/eng-qa-unit-test/SKILL.md +0 -478
- package/skills/eng-scraper/SKILL.md +0 -260
- package/skills/eng-scraper/references/1-puppeteer.md +0 -140
- package/skills/eng-scraper/references/2-playwright-cheerio-pdf.md +0 -82
- package/skills/eng-scraper/references/3-anti-bot.md +0 -94
- package/skills/eng-scraper/references/4-resiliencia-etl-monitoramento.md +0 -137
- package/skills/eng-scraper-robot-builder/SKILL.md +0 -377
- package/skills/eng-security-cybersecurity/SKILL.md +0 -250
- package/skills/eng-security-cybersecurity/references/1-owasp-top-10.md +0 -331
- package/skills/eng-security-cybersecurity/references/2-secrets-management.md +0 -31
- package/skills/eng-security-cybersecurity/references/3-input-validation.md +0 -43
- package/skills/eng-security-cybersecurity/references/4-compliance.md +0 -20
- package/skills/eng-security-patch/SKILL.md +0 -388
- package/skills/eng-security-threat-model/SKILL.md +0 -171
- package/skills/eng-security-triage/SKILL.md +0 -276
- package/templates/engineering/qa/eng.qa.quality-gate-examples-template.md +0 -311
- package/templates/engineering/qa/eng.qa.quality-gate-report-template.md +0 -249
- package/templates/engineering/qa/qa.cypress-test-template.md +0 -172
- package/templates/engineering/qa/qa.exploratory-session-template.md +0 -148
- package/templates/engineering/qa/qa.quality-report-template.md +0 -130
- package/workflows/engineering/eng.security-audit.md +0 -319
- package/workflows/engineering/eng.security-incident.md +0 -281
- package/workflows/engineering/eng.security-pipeline.md +0 -219
- package/workflows/engineering/eng.security-review.md +0 -241
- package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +0 -57
- package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +0 -57
- package/workflows/engineering/qa/eng.qa-exploratory-session.md +0 -68
- package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +0 -209
- package/workflows/engineering/qa/eng.qa-quality-report.md +0 -85
- /package/skills/{eng-qa-test-plan → eng-qa-planner}/assets/test-coverage-template.md +0 -0
- /package/skills/{eng-qa-test-plan → eng-qa-planner}/assets/test-patterns.md +0 -0
- /package/templates/{CDD aplicado a Prompts.md → cdd-aplicado-a-prompts.md} +0 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# 13. Fundamentos de Segurança da Informação
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Ter o mapa conceitual de segurança que sustenta todas as especializações. Complementa a skill 9.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** tríade CIA; risco: ativo, ameaça, vulnerabilidade, probabilidade, impacto; modelagem de ameaças (STRIDE, fronteiras de confiança); segurança de aplicações: ciclo seguro e classes de vulnerabilidade; arquitetura: defesa em profundidade, menor privilégio, falha segura, zero trust; identidade e acesso: autenticação, autorização, federação, privilégios; operações: logs, detecção, triagem; resposta a incidentes: conter, erradicar, recuperar, aprender; governança, risco e conformidade: controles, evidências, auditoria; engenharia de privacidade: minimização e privacidade por projeto; gestão de vulnerabilidades.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Segurança é gestão de risco, não eliminação de ameaça.
|
|
11
|
+
- Assuma violação: detectar e responder pesa tanto quanto prevenir.
|
|
12
|
+
- Controle sem evidência não passa em auditoria; controle que trava o negócio é contornado.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** produtos, scanners, regras e exploits específicos; interpretação jurídica.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Quais são seus ativos mais valiosos, quem os ameaçaria e como você notaria o ataque?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- NIST, *Cybersecurity Framework 2.0* (2024)
|
|
20
|
+
- ISO/IEC 27001:2022 e 27002:2022
|
|
21
|
+
- Anderson, *Security Engineering* (3ª ed.)
|
|
22
|
+
- Shostack, *Threat Modeling: Designing for Security*
|
|
23
|
+
- NIST SP 800-61 (resposta a incidentes) e SP 800-63 (identidade digital)
|
|
24
|
+
- OWASP, *SAMM* e *Top 10*
|
|
25
|
+
|
|
26
|
+
**Usam mais:** todas as funções de Security, DevSecOps, Architecture
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# 14. Profiling e Diagnóstico de Performance
|
|
2
|
+
|
|
3
|
+
**Nível:** IMPORTANTE · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Encontrar onde o tempo e o recurso realmente vão, em vez de supor.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** profiling de CPU (amostragem vs. instrumentação, flame graphs, hotspots); profiling de memória (heap, alocação, vazamento, tuning de garbage collection); profiling de I/O (disco, rede, latência de query); profiling por ambiente (processo local, container, função serverless); correlação entre profile e trace distribuído; medir antes de otimizar; performance budget e detecção de regressão.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Não otimiza o que não mediu; não promete o que não validou contra baseline.
|
|
11
|
+
- O maior gargalo primeiro: otimização sem priorização por impacto é desperdício.
|
|
12
|
+
- Profile em condição parecida com produção — ambiente sintético mente.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** sintaxe de um profiler específico (ex: pprof, async-profiler, clinic.js).
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Qual é o maior gargalo agora, e quanto essa otimização vale antes de implementá-la?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Gregg, *Systems Performance* (2ª ed.)
|
|
20
|
+
- Gregg, método USE
|
|
21
|
+
- Beyer et al., *Site Reliability Engineering*, cap. 6
|
|
22
|
+
|
|
23
|
+
**Usam mais:** SRE, DevOps, Platform Engineering, Systems Engineering
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# 15. Testes de Carga e Chaos Engineering
|
|
2
|
+
|
|
3
|
+
**Nível:** IMPORTANTE · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Descobrir o ponto de ruptura e o modo de falha antes que a produção descubra por você.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** testes de carga, estresse, pico e resistência (soak); planejamento de capacidade e ponto de ruptura; cenários realistas (dados e padrão de tráfego parecidos com produção); chaos engineering — injeção deliberada de falha (latência, erro, instância, zona); blast radius e critério de abortar; validar auto-scaling e failover sob carga real; portões de performance no pipeline (bloquear deploy por regressão).
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Nunca gerar carga ou injetar falha em produção sem aprovação, blast radius definido e plano de rollback.
|
|
11
|
+
- Testar o que o usuário realmente faz, não um cenário sintético confortável.
|
|
12
|
+
- O objetivo é aprender o modo de falha, não só confirmar que "funciona sob carga".
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** sintaxe de uma ferramenta específica (ex: k6, Gatling, Chaos Mesh, Gremlin).
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Se isso falhar exatamente como você está prestes a testar, qual é o raio de impacto e quem precisa saber?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Basiri et al., *Chaos Engineering* (Netflix, O'Reilly)
|
|
20
|
+
- Beyer et al., *Site Reliability Engineering*, cap. sobre gestão de capacidade
|
|
21
|
+
- Rosenthal & Jones, *Chaos Engineering: System Resiliency in Practice*
|
|
22
|
+
|
|
23
|
+
**Usam mais:** SRE, DevOps, Platform Engineering, Infrastructure/Platform Architecture
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# 16. Cache Multi-Camada
|
|
2
|
+
|
|
3
|
+
**Nível:** IMPORTANTE · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Decidir onde, o quê e por quanto tempo cachear — e como invalidar sem servir dado velho como se fosse novo.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** camadas de cache (aplicação/in-memory, distribuído, banco de dados, CDN/edge, browser/cliente); trade-off de consistência vs. latência; estratégias de invalidação (TTL, write-through, write-behind, invalidação por evento); cache stampede e thundering herd; chave de cache e cardinalidade; cache de resultado de query vs. cache de objeto computado; medir hit rate antes de adicionar mais uma camada.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Cache sem estratégia de invalidação é bug de dado velho esperando para acontecer.
|
|
11
|
+
- Cada camada adicionada é mais um lugar onde o dado pode discordar da fonte — adicione só com ganho medido.
|
|
12
|
+
- Dado sensível em cache segue a mesma política de acesso e expiração do dado original.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** sintaxe ou configuração de um produto específico (ex: Redis, Memcached, CloudFront).
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Se este dado em cache estiver errado por 5 minutos, alguém percebe — e o que isso custa?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Kleppmann, *Designing Data-Intensive Applications*, cap. sobre caching e consistência
|
|
20
|
+
- Documentação de padrões de cache da AWS/Cloudflare (cache-aside, write-through, write-behind)
|
|
21
|
+
|
|
22
|
+
**Usam mais:** Platform Engineering, DevOps, Cloud Engineering, Infrastructure/Platform Architecture
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# 2. Redes
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Raciocinar sobre como pacotes e nomes chegam de A a B, e por que não chegam.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** modelos OSI e TCP/IP; IP, CIDR, sub-redes e roteamento; TCP (handshake, congestionamento) vs. UDP; DNS e resolução de nomes; HTTP e TLS (certificados, cadeia de confiança); NAT, firewalls e proxies; balanceamento L4/L7; VPN, segmentação e MTU; latência vs. largura de banda.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- A rede é não confiável: latência, perda e partição acontecem.
|
|
11
|
+
- Segmente para limitar o raio de impacto.
|
|
12
|
+
- DNS e certificados expirados estão por trás de muitos incidentes.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** configuração de equipamentos de um fornecedor específico.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Por que um nome resolve, mas a conexão não se estabelece?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Stevens, *TCP/IP Illustrated*, vol. 1
|
|
20
|
+
- Kurose & Ross, *Computer Networking: A Top-Down Approach*
|
|
21
|
+
- RFCs 791 (IP), 793 (TCP), 1035 (DNS), 8446 (TLS 1.3)
|
|
22
|
+
|
|
23
|
+
**Usam mais:** Network, Cloud, Cloud Security, SRE
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# 3. Computação em Nuvem
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Dominar o modelo operacional da nuvem, independentemente do provedor.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** características essenciais (autoatendimento, elasticidade, medição); IaaS, PaaS, SaaS e funções sob demanda; responsabilidade compartilhada; regiões, zonas e domínios de falha; contas/projetos e landing zone; redes virtuais; armazenamento de bloco, objeto e arquivo; multi-tenancy; portabilidade e lock-in; pilares de arquitetura bem projetada.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Nuvem é modelo operacional, não só localização.
|
|
11
|
+
- Governança começa na conta, antes da primeira carga.
|
|
12
|
+
- Serviço gerenciado transfere operação, não responsabilidade.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** nomes de serviços, consoles e SDKs de um provedor.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Que parte da segurança continua sua num serviço totalmente gerenciado?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- NIST SP 800-145, *The NIST Definition of Cloud Computing*
|
|
20
|
+
- Pilares comuns dos frameworks Well-Architected dos grandes provedores
|
|
21
|
+
- CNCF, *Cloud Native Definition*
|
|
22
|
+
- Kleppmann, *Designing Data-Intensive Applications*
|
|
23
|
+
|
|
24
|
+
**Usam mais:** Cloud, Cloud Security, Architecture, FinOps
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# 4. Infraestrutura como Código e Automação
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Tratar infraestrutura como software: versionada, revisada, testada e reproduzível.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** declarativo vs. imperativo; idempotência e convergência; estado desejado vs. real e drift; módulos reutilizáveis; imutabilidade (substituir, não consertar); ambientes efêmeros e paridade; gestão de estado e segredos; revisão por pull request, testes de infraestrutura, policy as code; GitOps; automação de runbooks.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Tudo que se faz duas vezes se automatiza.
|
|
11
|
+
- Git é a fonte da verdade; mudança manual é dívida.
|
|
12
|
+
- Ambientes devem ser descartáveis e recriáveis.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** sintaxe de uma ferramenta de provisionamento ou de configuração.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Se o ambiente de produção sumisse hoje, em quanto tempo e com que confiança você o recria?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Morris, *Infrastructure as Code* (2ª ed.)
|
|
20
|
+
- Humble & Farley, *Continuous Delivery*
|
|
21
|
+
- OpenGitOps, *Principles* v1.0
|
|
22
|
+
- Limoncelli et al., *The Practice of System and Network Administration*
|
|
23
|
+
|
|
24
|
+
**Usam mais:** Automation, DevOps, Cloud, Platform
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# 5. Contêineres e Orquestração
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Compreender empacotamento isolado e orquestração declarativa de cargas.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** isolamento por namespaces e cgroups; imagem vs. contêiner e camadas; registries, assinatura e reprodutibilidade; stateless vs. stateful; scheduling e bin packing; descoberta de serviço; health checks e probes; requests e limits de recursos; autoscaling; laço de reconciliação (controladores/operators); configuração e segredos externalizados.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Contêiner é processo isolado, não máquina virtual.
|
|
11
|
+
- Orquestração é reconciliar estado desejado com o observado.
|
|
12
|
+
- Aplicação deve ser descartável e reiniciável.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** comandos, manifestos e APIs de um orquestrador específico.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** O que acontece com o estado de um contêiner quando ele é reagendado em outro nó?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Burns, *Designing Distributed Systems*
|
|
20
|
+
- Verma et al., *Large-scale cluster management at Google with Borg* (EuroSys 2015)
|
|
21
|
+
- NIST SP 800-190, *Application Container Security Guide*
|
|
22
|
+
- Wiggins, *The Twelve-Factor App*
|
|
23
|
+
- OCI Image & Runtime Specifications
|
|
24
|
+
|
|
25
|
+
**Usam mais:** Platform, DevOps, Cloud, SRE
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# 6. CI/CD e Entrega de Software
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Entregar mudanças pequenas, frequentes e seguras até a produção.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** integração contínua e trunk-based development; pipeline como código; build reprodutível e artefatos versionados; rolling, blue/green, canary; feature flags: deploy ≠ release; rollback vs. roll-forward; testes na pipeline; promoção entre ambientes; migrações de banco compatíveis; métricas DORA (lead time, frequência, falha de mudança, tempo de restauração).
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Lotes pequenos reduzem risco e facilitam diagnóstico.
|
|
11
|
+
- O mesmo artefato percorre todos os ambientes.
|
|
12
|
+
- Pipeline lenta ou instável é incidente de produtividade.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** sintaxe de um orquestrador de pipelines ou de uma plataforma de CI.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Como reverter uma mudança que já migrou o esquema do banco?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Humble & Farley, *Continuous Delivery*
|
|
20
|
+
- Forsgren, Humble & Kim, *Accelerate*
|
|
21
|
+
- Kim et al., *The DevOps Handbook* (2ª ed.)
|
|
22
|
+
- DORA, *State of DevOps Report*
|
|
23
|
+
|
|
24
|
+
**Usam mais:** DevOps, DevSecOps, Platform, DevEx
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# 7. Observabilidade e Monitoramento
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Responder a perguntas novas sobre o sistema sem precisar alterá-lo.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** métricas, logs, traces e eventos; cardinalidade e custo; golden signals, RED e USE; SLI e SLO; alerta por sintoma, não por causa; alertas acionáveis vs. ruído; correlação por identificadores de contexto; amostragem e retenção; dashboards por pergunta; instrumentação padronizada.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Alerta só se exige ação humana imediata.
|
|
11
|
+
- Meça o que o usuário sente, não só o que a máquina faz.
|
|
12
|
+
- Contexto compartilhado entre sinais vale mais que volume.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** configuração de uma ferramenta de coleta, armazenamento ou visualização.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** O alerta das 3h indica uma ação humana imediata ou pode esperar?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Beyer et al., *Site Reliability Engineering*, cap. 6
|
|
20
|
+
- Majors, Fong-Jones & Miranda, *Observability Engineering*
|
|
21
|
+
- Gregg, método USE
|
|
22
|
+
- Especificação OpenTelemetry
|
|
23
|
+
|
|
24
|
+
**Usam mais:** SRE, DevOps, DevEx, Systems
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# 8. Confiabilidade e Gestão de Incidentes
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Gerenciar confiabilidade como característica de produto, com metas explícitas.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** SLI, SLO e SLA; error budget e política associada; toil e automação; papéis, severidade e comunicação em incidentes; postmortem sem culpa; fatores contribuintes vs. causa raiz única; planejamento de capacidade; testes de caos e game days; on-call sustentável; revisão de prontidão para produção.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- 100% é a meta errada; defina quanta falha é aceitável.
|
|
11
|
+
- Aprenda com o incidente sem buscar culpados.
|
|
12
|
+
- Reduza toil antes de contratar mais operação.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** processos de uma empresa ou de uma ferramenta de incidentes.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** O error budget acabou. O que muda na forma de entregar?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- Beyer et al., *Site Reliability Engineering* (2016)
|
|
20
|
+
- Beyer et al., *The Site Reliability Workbook* (2018)
|
|
21
|
+
- Nygard, *Release It!* (2ª ed.)
|
|
22
|
+
- Dekker, *The Field Guide to Understanding 'Human Error'*
|
|
23
|
+
|
|
24
|
+
**Usam mais:** SRE, DevOps, Systems, Infrastructure
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# 9. Segurança de Infraestrutura e DevSecOps
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Incorporar segurança como propriedade automatizada da plataforma, não como portão manual.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** menor privilégio e gestão de identidade e acesso; zero trust; segredos: armazenamento e rotação; criptografia em trânsito e em repouso; gestão de chaves; hardening e baselines; gestão de vulnerabilidades e patches; cadeia de suprimentos (SBOM, assinatura, proveniência); varreduras na pipeline (shift-left); logs de auditoria e detecção; conformidade como código; postura de segurança em nuvem.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Defesa em profundidade; assuma que haverá violação.
|
|
11
|
+
- Credencial de longa duração é passivo.
|
|
12
|
+
- Controles automatizados e visíveis superam revisões manuais.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** regras e produtos de segurança de um fornecedor específico.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** Um token da pipeline vazou. Qual é o alcance do dano e como você o limita?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- NIST SP 800-207, *Zero Trust Architecture*
|
|
20
|
+
- NIST SP 800-218, *SSDF*
|
|
21
|
+
- SLSA Framework
|
|
22
|
+
- NIST Cybersecurity Framework 2.0
|
|
23
|
+
- CIS Benchmarks
|
|
24
|
+
- OWASP DevSecOps Guideline
|
|
25
|
+
|
|
26
|
+
**Usam mais:** DevSecOps, Cloud Security, Platform, Architecture
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Skill Base Platform & Infrastructure — Funções × Skills
|
|
2
|
+
|
|
3
|
+
Cada função **parte da mesma base**; o que muda é o peso. Núcleo = domínio esperado; apoio = noção sólida (números = skills do INDEX).
|
|
4
|
+
|
|
5
|
+
| Função | Núcleo (●) | Apoio (○) |
|
|
6
|
+
|--------|-----------|-----------|
|
|
7
|
+
| DevOps | 4·Infraestrutura como Código e Automação, 6·CI/CD e Entrega de Software, 7·Observabilidade e Monitoramento, 5·Contêineres e Orquestração | 1, 3, 8, 9, 11, 14, 15 |
|
|
8
|
+
| SRE | 7·Observabilidade e Monitoramento, 8·Confiabilidade e Gestão de Incidentes, 10·Resiliência e Arquitetura de Infraestrutura, 1·Fundamentos de Sistemas | 2, 3, 4, 5, 6, 14, 15 |
|
|
9
|
+
| Platform Engineering | 11·Plataforma como Produto e DevEx, 5·Contêineres e Orquestração, 4·Infraestrutura como Código e Automação, 6·CI/CD e Entrega de Software | 3, 7, 9, 12, 14, 16 |
|
|
10
|
+
| Cloud Engineering | 3·Computação em Nuvem, 4·Infraestrutura como Código e Automação, 2·Redes, 5·Contêineres e Orquestração | 1, 6, 9, 10, 12, 14, 16 |
|
|
11
|
+
| Performance Engineering | 14·Profiling e Diagnóstico de Performance, 15·Testes de Carga e Chaos Engineering, 16·Cache Multi-Camada, 7·Observabilidade e Monitoramento | 1, 3, 5, 6, 8 |
|
|
12
|
+
| Infrastructure Engineering | 1·Fundamentos de Sistemas, 2·Redes, 4·Infraestrutura como Código e Automação, 10·Resiliência e Arquitetura de Infraestrutura | 3, 5, 7, 8 |
|
|
13
|
+
| DevSecOps | 9·Segurança de Infraestrutura e DevSecOps, 6·CI/CD e Entrega de Software, 4·Infraestrutura como Código e Automação, 5·Contêineres e Orquestração | 3, 7, 8, 13 |
|
|
14
|
+
| Cloud Security | 9·Segurança de Infraestrutura e DevSecOps, 3·Computação em Nuvem, 13·Fundamentos de Segurança da Informação, 2·Redes | 4, 5, 7, 10 |
|
|
15
|
+
| Infrastructure / Platform Architecture | 10·Resiliência e Arquitetura de Infraestrutura, 3·Computação em Nuvem, 11·Plataforma como Produto e DevEx, 9·Segurança de Infraestrutura e DevSecOps | 2, 4, 5, 8, 12 |
|
|
16
|
+
| Developer Experience (DevEx) | 11·Plataforma como Produto e DevEx, 6·CI/CD e Entrega de Software, 7·Observabilidade e Monitoramento | 4, 5, 8 |
|
|
17
|
+
| Network Engineering | 2·Redes, 1·Fundamentos de Sistemas, 9·Segurança de Infraestrutura e DevSecOps, 10·Resiliência e Arquitetura de Infraestrutura | 3, 4, 7 |
|
|
18
|
+
| Systems Engineering | 1·Fundamentos de Sistemas, 2·Redes, 10·Resiliência e Arquitetura de Infraestrutura, 7·Observabilidade e Monitoramento | 4, 8, 9 |
|
|
19
|
+
| Infrastructure Automation | 4·Infraestrutura como Código e Automação, 6·CI/CD e Entrega de Software, 5·Contêineres e Orquestração, 1·Fundamentos de Sistemas | 3, 7, 9 |
|
|
20
|
+
| FinOps | 12·FinOps e Gestão de Custos, 3·Computação em Nuvem, 7·Observabilidade e Monitoramento | 4, 5, 10, 11 |
|
|
21
|
+
| Application Security | 13·Fundamentos de Segurança da Informação, 6·CI/CD e Entrega de Software, 9·Segurança de Infraestrutura e DevSecOps | 4, 5, 7 |
|
|
22
|
+
| Security Engineering | 13·Fundamentos de Segurança da Informação, 9·Segurança de Infraestrutura e DevSecOps, 4·Infraestrutura como Código e Automação, 6·CI/CD e Entrega de Software | 3, 5, 7, 8 |
|
|
23
|
+
| Security Architecture | 13·Fundamentos de Segurança da Informação, 9·Segurança de Infraestrutura e DevSecOps, 3·Computação em Nuvem, 10·Resiliência e Arquitetura de Infraestrutura | 2, 4, 5, 11 |
|
|
24
|
+
| Infrastructure Security | 9·Segurança de Infraestrutura e DevSecOps, 2·Redes, 1·Fundamentos de Sistemas, 13·Fundamentos de Segurança da Informação | 4, 5, 7, 10 |
|
|
25
|
+
| Identity & Access Management | 13·Fundamentos de Segurança da Informação, 9·Segurança de Infraestrutura e DevSecOps, 3·Computação em Nuvem, 4·Infraestrutura como Código e Automação | 6, 7 |
|
|
26
|
+
| Security Operations | 7·Observabilidade e Monitoramento, 13·Fundamentos de Segurança da Informação, 2·Redes, 9·Segurança de Infraestrutura e DevSecOps | 1, 4, 8 |
|
|
27
|
+
| Threat Modeling | 13·Fundamentos de Segurança da Informação, 3·Computação em Nuvem, 2·Redes, 10·Resiliência e Arquitetura de Infraestrutura | 5, 9 |
|
|
28
|
+
| Incident Response | 13·Fundamentos de Segurança da Informação, 7·Observabilidade e Monitoramento, 8·Confiabilidade e Gestão de Incidentes, 1·Fundamentos de Sistemas | 2, 9, 10 |
|
|
29
|
+
| GRC | 13·Fundamentos de Segurança da Informação, 9·Segurança de Infraestrutura e DevSecOps | 3, 4, 7, 10 |
|
|
30
|
+
| Privacy Engineering | 13·Fundamentos de Segurança da Informação, 9·Segurança de Infraestrutura e DevSecOps | 3, 4, 7 |
|
|
31
|
+
|
|
32
|
+
**Funções de Security:** esta base dá o panorama (skill 13) e a operação em infraestrutura (skill 9). A profundidade de código seguro está na *Skill Base Backend/Frontend* (segurança), a de privacidade de dados na *Skill Base Data* (segurança e privacidade) e a de segurança de IA na *Skill Base AI*. Application Security e Privacy Engineering devem combinar essas bases.
|
|
33
|
+
|
|
34
|
+
> Uma função não *limita* o estudo: serve para priorizar a ordem. Lacunas no núcleo são prioridade; lacunas no apoio são aceitáveis.
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: eng-qa
|
|
3
|
+
description: >
|
|
4
|
+
Skill base de qualidade e testes, válida em qualquer stack, framework de teste ou ferramenta de
|
|
5
|
+
automação: fundamentos de qualidade, estratégia e planejamento, design de casos, testes manuais e
|
|
6
|
+
exploratórios, automação, API/integração/contrato, interface/compatibilidade/mobile, performance,
|
|
7
|
+
confiabilidade, segurança, acessibilidade, dados de teste, gestão de testes e defeitos, e
|
|
8
|
+
arquitetura de QA. Pode ser complementada por especializações registradas em QA_SPECIALIZATIONS
|
|
9
|
+
(ex: eng-qa-planner).
|
|
10
|
+
Trigger: Use para planejar estratégia de testes, identificar lacunas de cobertura, projetar casos
|
|
11
|
+
de teste, decidir o que automatizar ou para qualquer dúvida sobre qualidade de software em geral.
|
|
12
|
+
license: AGPL-3.0
|
|
13
|
+
compatibility: Designed for Claude Code (or similar products)
|
|
14
|
+
allowed-tools: Read Write Edit Glob Grep Bash
|
|
15
|
+
metadata:
|
|
16
|
+
author: jarvis-team
|
|
17
|
+
version: "1.0"
|
|
18
|
+
area: qa
|
|
19
|
+
# Campos Claude Code-specific (não fazem parte da spec oficial agentskills.io):
|
|
20
|
+
argument-hint: "[estrategia|design-casos|automacao|performance|seguranca|a11y] [contexto]"
|
|
21
|
+
disable-model-invocation: false
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
# Eng QA - Skill Base de Qualidade e Testes
|
|
25
|
+
|
|
26
|
+
Você é uma **pessoa especialista em qualidade e testes sênior**, com domínio dos princípios que valem em qualquer stack, framework de teste ou ferramenta de automação: estratégia de risco, design de casos, automação, tipos de teste não funcionais, gestão de defeitos e arquitetura de qualidade.
|
|
27
|
+
|
|
28
|
+
## Objetivo
|
|
29
|
+
|
|
30
|
+
Garantir que o software tenha a cobertura de testes e a qualidade adequadas ao risco, aplicando a **base universal** de QA. Este skill não presume um framework de teste ou ferramenta: ele descobre o que o projeto já usa pelo próprio código (suíte existente, CI, convenções) e segue o padrão que encontra.
|
|
31
|
+
|
|
32
|
+
## Entrada
|
|
33
|
+
|
|
34
|
+
- `$ARGUMENTS` - Operação, funcionalidade ou problema a resolver (ex: `plano-de-testes-checkout`, `identificar-gaps-cobertura`, `design-casos-cadastro`, `estrategia-performance-busca`)
|
|
35
|
+
|
|
36
|
+
## Recursos
|
|
37
|
+
|
|
38
|
+
- **ENV**: `$IDE/ENV.md` (variáveis de ambiente e configurações do projeto)
|
|
39
|
+
- **Base universal**: os 15 temas em [references/](references/), carregados sob demanda
|
|
40
|
+
- **Funções × skills**: [references/especializacoes.md](references/especializacoes.md) — peso por função (Test Automation, Manual, Performance, Quality Engineering etc.)
|
|
41
|
+
- **Saída**: planos de teste, casos de teste e relatórios de gap no repositório atual
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## Pré-requisito
|
|
46
|
+
|
|
47
|
+
Verificar se o `ENV.md` existe e se as variáveis necessárias ao projeto estão configuradas:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
cat $IDE/ENV.md
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Quando Usar
|
|
56
|
+
|
|
57
|
+
Use este skill quando:
|
|
58
|
+
- Planejar estratégia de testes (risco, níveis, pirâmide, critérios de aceitação)
|
|
59
|
+
- Identificar lacunas de cobertura no código novo ou modificado
|
|
60
|
+
- Projetar casos de teste (equivalência, limites, tabela de decisão, estados)
|
|
61
|
+
- Decidir o que automatizar e o que manter manual/exploratório
|
|
62
|
+
- Avaliar testes não funcionais (performance, confiabilidade, segurança, acessibilidade)
|
|
63
|
+
- Estruturar gestão de testes e de defeitos (rastreabilidade, métricas, ciclo do defeito)
|
|
64
|
+
- Definir arquitetura de qualidade (testabilidade, quality gates, shift-left/shift-right)
|
|
65
|
+
|
|
66
|
+
**NÃO usar quando:**
|
|
67
|
+
- A tarefa é só escrever um teste específico numa ferramenta já decidida (ver a especialização registrada, ex: `eng-qa-planner`)
|
|
68
|
+
- Não há nenhuma decisão de qualidade ou cobertura envolvida
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Validação de Entrada
|
|
73
|
+
|
|
74
|
+
Se `$ARGUMENTS` está vazio, o skill funciona em modo interativo: pergunte à pessoa o contexto da tarefa de qualidade/teste antes de prosseguir.
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Padrões Críticos
|
|
79
|
+
|
|
80
|
+
### Padrão 1: Analisar o risco antes de decidir o esforço
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
1. O que quebra mais caro se falhar? (dados, dinheiro, segurança, reputação)
|
|
84
|
+
2. Qual a probabilidade real de falha nesse ponto?
|
|
85
|
+
3. Não se testa tudo igual: risco alto pega mais profundidade, risco baixo pega menos
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Padrão 2: Ler o projeto antes de planejar
|
|
89
|
+
|
|
90
|
+
Antes de propor qualquer plano, descubra como o projeto já testa:
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
1. Qual framework de teste e qual ferramenta de automação já existem?
|
|
94
|
+
2. Como a suíte está organizada (unitário, integração, e2e)?
|
|
95
|
+
3. O que já está cobrindo e o que está faltando?
|
|
96
|
+
4. Existe CI rodando os testes? Em qual gate?
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Siga o padrão existente do projeto, **não** o padrão genérico deste skill. Se não conseguir identificar o framework, pergunte antes de prosseguir.
|
|
100
|
+
|
|
101
|
+
### Padrão 3: Teste instável é pior que sem teste
|
|
102
|
+
|
|
103
|
+
- Teste flaky corrói a confiança do time e é ignorado — tratar como defeito, não como ruído
|
|
104
|
+
- Priorizar feedback rápido a suíte grande e lenta
|
|
105
|
+
- Isolar dependências externas antes de automatizar (doubles, intercepts)
|
|
106
|
+
|
|
107
|
+
### Padrão 4: Testabilidade é requisito de design
|
|
108
|
+
|
|
109
|
+
- Se o código é difícil de testar, o problema é o design, não a falta de ferramenta
|
|
110
|
+
- Levantar isso com quem implementa antes de forçar um teste em volta de um design ruim
|
|
111
|
+
|
|
112
|
+
### Padrão 5: Teste é informação para decidir, não prova de ausência de defeito
|
|
113
|
+
|
|
114
|
+
- Reportar cobertura e risco residual, nunca "está 100% garantido"
|
|
115
|
+
- Qualidade é responsabilidade do time inteiro; QA guia, mede e comunica
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## Base ou especialização?
|
|
120
|
+
|
|
121
|
+
Pergunta-chave para decidir onde um conhecimento mora:
|
|
122
|
+
|
|
123
|
+
> **Esse conhecimento continua válido quando eu mudo de framework de teste, de ferramenta de automação ou de linguagem?**
|
|
124
|
+
> **Sim** → pertence à base universal (este skill). **Não** → pertence a uma especialização de ferramenta.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Árvore de Decisão
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
Planejar estratégia ou critérios de teste? → tema 2 (estratégia e planejamento)
|
|
132
|
+
Projetar casos de teste? → tema 3 (design de casos)
|
|
133
|
+
Decidir entre manual e automatizado? → tema 4 (manual/exploratório) e tema 5 (automação)
|
|
134
|
+
Testar API, integração ou contrato? → tema 6 (API/integração) e tema 7 (contrato)
|
|
135
|
+
Testar interface, compatibilidade ou mobile? → tema 8
|
|
136
|
+
Avaliar performance? → tema 9
|
|
137
|
+
Avaliar confiabilidade/resiliência? → tema 10
|
|
138
|
+
Avaliar segurança? → tema 11
|
|
139
|
+
Avaliar acessibilidade? → tema 12
|
|
140
|
+
Testar dados ou pipelines? → tema 13
|
|
141
|
+
Gerir testes, defeitos ou métricas? → tema 14
|
|
142
|
+
Definir arquitetura de qualidade/quality gate? → tema 15
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## Fluxo de Trabalho
|
|
148
|
+
|
|
149
|
+
1. **Entender**: ler a suíte e o risco existente (Padrão 1 e 2); esclarecer o que **não** está no escopo
|
|
150
|
+
2. **Planejar**: escolher a abordagem na base universal; decidir nível, critério e profundidade pelo risco
|
|
151
|
+
3. **Projetar**: estruturar os casos/cenários antes de escrever qualquer teste
|
|
152
|
+
4. **Delegar ou executar**: se a ferramenta já está decidida, seguir a especialização registrada; senão, aplicar a base
|
|
153
|
+
5. **Validar**: percorrer o checklist de conclusão abaixo
|
|
154
|
+
|
|
155
|
+
### Skills invocados durante a execução do skill
|
|
156
|
+
|
|
157
|
+
| Passo | Skill | Condição |
|
|
158
|
+
|-------|-------|----------|
|
|
159
|
+
| — | Nenhuma — skill autocontida | — |
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## Base Universal
|
|
164
|
+
|
|
165
|
+
Carregue **só o tema necessário** para a tarefa, em vez de todos de uma vez.
|
|
166
|
+
|
|
167
|
+
| # | Tema | Nível | Carregue quando |
|
|
168
|
+
|---|------|-------|-----------------|
|
|
169
|
+
| 1 | [Fundamentos de qualidade e teste](references/1-fundamentos-qualidade.md) | Fundamental | Precisar distinguir qualidade, garantia, controle e teste |
|
|
170
|
+
| 2 | [Estratégia e planejamento de testes](references/2-estrategia-planejamento.md) | Fundamental | Definir risco, níveis, pirâmide, critérios e ambientes |
|
|
171
|
+
| 3 | [Design de casos de teste](references/3-design-testes.md) | Fundamental | Aplicar equivalência, limites, tabela de decisão ou oráculos |
|
|
172
|
+
| 4 | [Testes manuais e exploratórios](references/4-manual-exploratorio.md) | Fundamental | Definir charter, heurísticas ou sessão exploratória |
|
|
173
|
+
| 5 | [Automação de testes](references/5-automacao-testes.md) | Fundamental | Decidir estratégia de automação, doubles ou manutenção de suíte |
|
|
174
|
+
| 6 | [Testes de API e integração](references/6-api-integracao.md) | Fundamental | Testar contratos HTTP ou borda entre serviços |
|
|
175
|
+
| 7 | [Testes de contrato](references/7-contrato.md) | Importante | Validar consumer-driven ou verificação pelo provedor |
|
|
176
|
+
| 8 | [Testes de interface, compatibilidade e mobile](references/8-interface-compat-mobile.md) | Importante | Cobrir UI, regressão visual ou matriz de compatibilidade |
|
|
177
|
+
| 9 | [Testes de performance](references/9-performance.md) | Importante | Avaliar carga, estresse, percentis ou gargalos |
|
|
178
|
+
| 10 | [Testes de confiabilidade e resiliência](references/10-confiabilidade.md) | Importante | Avaliar falhas, caos ou degradação graciosa |
|
|
179
|
+
| 11 | [Testes de segurança](references/11-seguranca.md) | Importante | Avaliar ameaças, controle de acesso ou fuzzing |
|
|
180
|
+
| 12 | [Testes de acessibilidade](references/12-acessibilidade.md) | Importante | Avaliar WCAG, teclado ou leitores de tela |
|
|
181
|
+
| 13 | [Testes de dados](references/13-dados-testes.md) | Importante | Validar reconciliação, pipelines ou migração de dados |
|
|
182
|
+
| 14 | [Gestão de testes e de defeitos](references/14-gestao-testes-defeitos.md) | Fundamental | Estruturar rastreabilidade, métricas ou ciclo do defeito |
|
|
183
|
+
| 15 | [Arquitetura de QA e qualidade contínua](references/15-arquitetura-qa.md) | Importante | Definir testabilidade, quality gates ou shift-right |
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## Funções e Peso por Área
|
|
188
|
+
|
|
189
|
+
QA reúne várias funções (Test Automation, Manual Testing, Performance, Security Testing, Quality Engineering etc.) que partem da mesma base, mas pesam os 15 temas de forma diferente. Ver [references/especializacoes.md](references/especializacoes.md) para o núcleo (●) e o apoio (○) esperado de cada função.
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## Regras
|
|
194
|
+
|
|
195
|
+
### Nunca
|
|
196
|
+
- Testar tudo com o mesmo nível de profundidade, ignorando o risco
|
|
197
|
+
- Reportar cobertura como garantia de ausência de defeito
|
|
198
|
+
- Deixar teste flaky "passar direto" sem investigar — tratar como defeito
|
|
199
|
+
- Automatizar antes de ter o caso de teste desenhado
|
|
200
|
+
- Depender de dados de produção real em teste sem anonimização
|
|
201
|
+
|
|
202
|
+
### Sempre
|
|
203
|
+
- Priorizar teste do que é crítico (dados sensíveis, autenticação, dinheiro) primeiro
|
|
204
|
+
- Ler a suíte e as convenções existentes antes de propor um plano novo
|
|
205
|
+
- Separar claramente plano/estratégia (este skill) de implementação de ferramenta (especialização)
|
|
206
|
+
- Registrar rastreabilidade entre requisito, caso de teste e defeito
|
|
207
|
+
- Medir e comunicar risco residual, não só "está testado"
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## Tratamento de Erros
|
|
212
|
+
|
|
213
|
+
### Framework ou ferramenta de teste não identificada
|
|
214
|
+
- Procurar manifesto de dependências, configs de CI e pastas de teste existentes
|
|
215
|
+
- Se não encontrar, perguntar à pessoa antes de prosseguir
|
|
216
|
+
|
|
217
|
+
### Suíte existente com padrão diferente
|
|
218
|
+
- Seguir o padrão do projeto, não o genérico deste skill
|
|
219
|
+
- Registrar a divergência quando relevante
|
|
220
|
+
|
|
221
|
+
### Teste falha depois de uma mudança
|
|
222
|
+
- Verificar se o teste já falhava antes (flaky vs. regressão real)
|
|
223
|
+
- Isolar a causa antes de ajustar o teste ou o código
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Checklist de Conclusão
|
|
228
|
+
|
|
229
|
+
- [ ] Risco mapeado e priorizado antes do plano
|
|
230
|
+
- [ ] Casos de teste cobrindo caminho feliz, erro e limites
|
|
231
|
+
- [ ] Rastreabilidade entre requisito, caso e defeito registrada
|
|
232
|
+
- [ ] Decisão de automatizar vs. manter manual justificada
|
|
233
|
+
- [ ] Testes não funcionais considerados quando relevantes (performance, segurança, a11y)
|
|
234
|
+
- [ ] Gaps de cobertura documentados, não só os testes criados
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
## Output
|
|
239
|
+
|
|
240
|
+
| Artefato | Descrição |
|
|
241
|
+
|----------|-----------|
|
|
242
|
+
| Plano de testes | Estratégia, risco, níveis e critérios de aceitação |
|
|
243
|
+
| Casos de teste | Cenários de sucesso, erro e limite, prontos para implementar |
|
|
244
|
+
| Relatório de gaps | Lacunas de cobertura identificadas no código atual |
|
|
245
|
+
| Recomendação de automação | O que automatizar, com qual ferramenta/especialização |
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Mensagem de Conclusão
|
|
250
|
+
|
|
251
|
+
```
|
|
252
|
+
Planejamento de QA concluído!
|
|
253
|
+
|
|
254
|
+
Escopo: {descrição do que foi analisado/planejado}
|
|
255
|
+
Framework/ferramenta do projeto: {identificados no código}
|
|
256
|
+
|
|
257
|
+
Risco priorizado: {áreas críticas identificadas}
|
|
258
|
+
Gaps de cobertura: {encontrados / nenhum}
|
|
259
|
+
Especialização recomendada: {ex: eng-qa-planner / nenhuma}
|
|
260
|
+
|
|
261
|
+
Próximo passo: {implementar os testes / rodar a especialização registrada}
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## Aviso: uso só da skill base
|
|
267
|
+
|
|
268
|
+
Quando o trabalho usar **só a skill base** e envolver um framework ou ferramenta de teste para a qual **não há skill especializado** disponível, avise a pessoa de forma explícita:
|
|
269
|
+
|
|
270
|
+
```
|
|
271
|
+
ℹ️ Estou usando só a skill base de QA.
|
|
272
|
+
Não há skill especializado para {framework/ferramenta}; vou seguir os princípios universais
|
|
273
|
+
e o padrão que encontrei no projeto.
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
Não invente convenções nem comandos específicos da ferramenta: siga o código do projeto e a base universal.
|
|
277
|
+
|
|
278
|
+
---
|
|
279
|
+
|
|
280
|
+
## Recursos Adicionais
|
|
281
|
+
|
|
282
|
+
- **Base universal**: os 15 temas em [references/](references/)
|
|
283
|
+
- **Funções × skills**: [references/especializacoes.md](references/especializacoes.md)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# 1. Fundamentos de Qualidade e Teste
|
|
2
|
+
|
|
3
|
+
**Nível:** FUNDAMENTAL · **Agnóstico de tecnologia:** ✅
|
|
4
|
+
|
|
5
|
+
**Objetivo:** Distinguir qualidade, garantia, controle e teste, e saber por que e para quem testamos.
|
|
6
|
+
|
|
7
|
+
**Conhecimentos:** erro, defeito e falha; verificação vs. validação; garantia da qualidade (prevenção, processo) vs. controle da qualidade (detecção, produto) vs. teste; sete princípios do teste; características de qualidade (funcionalidade, desempenho, usabilidade, confiabilidade, segurança, manutenibilidade, compatibilidade, portabilidade); custo da qualidade e do defeito tardio; shift-left e shift-right; qualidade como responsabilidade do time; teste como informação para decisão.
|
|
8
|
+
|
|
9
|
+
**Princípios:**
|
|
10
|
+
- Teste mostra a presença de defeitos, não a ausência.
|
|
11
|
+
- Prevenir custa menos que detectar; detectar custa menos que corrigir em produção.
|
|
12
|
+
- Qualidade é definida pelas partes interessadas, não só pela especificação.
|
|
13
|
+
|
|
14
|
+
**Fora do escopo:** sintaxe de ferramentas e exigências de certificações específicas.
|
|
15
|
+
|
|
16
|
+
**Pergunta-chave:** O que significa 'pronto com qualidade' para este item e quem decide?
|
|
17
|
+
|
|
18
|
+
**Referências:**
|
|
19
|
+
- ISTQB, *Certified Tester Foundation Level Syllabus* v4.0 (2023)
|
|
20
|
+
- ISO/IEC 25010, modelo de qualidade de produto
|
|
21
|
+
- IEEE, *SWEBOK* v4 (Software Testing; Software Quality)
|
|
22
|
+
- Myers, *The Art of Software Testing*
|
|
23
|
+
- Juran, *Juran's Quality Handbook*
|
|
24
|
+
|
|
25
|
+
**Usam mais:** todas as funções de QA
|