jarvis-ai-framework 1.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 +416 -0
- package/LICENSE +21 -0
- package/README.md +190 -0
- package/agents/AGENTS.md +234 -0
- package/agents/README.md +309 -0
- package/agents/engineering/data/eng.data-engineer.agent.md +309 -0
- package/agents/engineering/eng.agent.md +303 -0
- package/agents/engineering/eng.bug-hunter.md +386 -0
- package/agents/engineering/eng.cybersecurity.agent.md +503 -0
- package/agents/engineering/eng.dev-code-reviewer.md +148 -0
- package/agents/engineering/eng.docs-writer.md +152 -0
- package/agents/engineering/eng.frontend.agent.md +117 -0
- package/agents/engineering/eng.rpa.agent.md +215 -0
- package/agents/engineering/eng.tech-analyst.agent.md +102 -0
- package/agents/engineering/eng.ux-designer.agent.md +193 -0
- package/agents/engineering/qa/eng.qa.cypress-specialist.md +109 -0
- package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +85 -0
- package/agents/engineering/qa/eng.qa.quality-strategist.md +111 -0
- package/agents/engineering/qa/eng.qa.test-architect.md +400 -0
- package/agents/engineering/qa/eng.qa.test-planner.md +477 -0
- package/agents/engineering/qa/eng.qa.testing-engineer.md +339 -0
- package/agents/product/prod.pm-checker.md +52 -0
- package/bin/commands/docs-publish.js +184 -0
- package/bin/commands/docs-sync.js +139 -0
- package/bin/commands/info.js +87 -0
- package/bin/commands/init.js +237 -0
- package/bin/commands/install-rtk.js +90 -0
- package/bin/commands/list.js +48 -0
- package/bin/commands/qa-signoff.js +112 -0
- package/bin/commands/whoami.js +43 -0
- package/bin/jarvis.js +159 -0
- package/bin/lib/auth/session.js +56 -0
- package/bin/lib/config/constants.js +123 -0
- package/bin/lib/config/ide-config.js +233 -0
- package/bin/lib/core/scanner.js +124 -0
- package/bin/lib/core/sync-engine.js +551 -0
- package/bin/lib/docs/fetch-file.sh +41 -0
- package/bin/lib/docs/publish-file.sh +284 -0
- package/bin/lib/docs/validate-frontmatter.js +157 -0
- package/bin/lib/env-loader.js +198 -0
- package/bin/lib/tasks/comment.js +131 -0
- package/bin/lib/utils/git-parser.js +145 -0
- package/bin/lib/utils/logger.js +104 -0
- package/bin/lib/utils/npmrc-parser.js +106 -0
- package/bin/lib/utils/paths.js +55 -0
- package/bin/lib/utils/ui.js +59 -0
- package/bin/lib/vcs/api.js +312 -0
- package/bin/lib/vcs/create-issue.js +43 -0
- package/bin/lib/vcs/create-merge.js +43 -0
- package/bin/lib/vcs/fetch-raw.js +30 -0
- package/bin/postinstall.js +41 -0
- package/members.md +25 -0
- package/package.json +55 -0
- package/rules/AGENTS.md +205 -0
- package/rules/engineering/data/data-rules.md +200 -0
- package/rules/engineering/eng-rules.md +243 -0
- package/rules/engineering/eng-security-rules.md +186 -0
- package/rules/engineering/eng.breakdown-subtasks-rules.md +585 -0
- package/rules/engineering/eng.bump-rules.md +27 -0
- package/rules/engineering/eng.docs-scraping-rules.md +64 -0
- package/rules/engineering/eng.downstream-flow-rules.md +297 -0
- package/rules/engineering/eng.integrations-rules.md +73 -0
- package/rules/engineering/eng.plan-rules.md +333 -0
- package/rules/engineering/eng.pr-rules.md +359 -0
- package/rules/engineering/eng.pre-pr-rules.md +103 -0
- package/rules/engineering/eng.start-rules.md +246 -0
- package/rules/engineering/eng.tech-spec-rules.md +968 -0
- package/rules/engineering/eng.work-rules.md +312 -0
- package/rules/engineering/frontend/eng.frontend-rules.md +147 -0
- package/rules/engineering/qa/eng.qa.cypress-standards-rules.md +259 -0
- package/rules/engineering/qa/eng.qa.exploratory-session-rules.md +137 -0
- package/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md +181 -0
- package/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md +120 -0
- package/rules/engineering/rpa/eng.rpa-rules.md +230 -0
- package/rules/product/README.md +24 -0
- package/rules/product/prod-rules.md +151 -0
- package/rules/rtk-rules.md +68 -0
- package/skills/AGENTS.md +290 -0
- package/skills/SKILLS-ROADMAP.md +333 -0
- package/skills/churn-audit/SKILL.md +385 -0
- package/skills/context-detect/SKILL.md +399 -0
- package/skills/context-detect/assets/context-profile-template.md +127 -0
- package/skills/docs-central/README.md +310 -0
- package/skills/docs-central/SKILL.md +423 -0
- package/skills/docs-index/SKILL.md +377 -0
- package/skills/eng-ai-engineer/SKILL.md +296 -0
- package/skills/eng-arch-c4/SKILL.md +358 -0
- package/skills/eng-arch-c4/assets/example-code.md +189 -0
- package/skills/eng-arch-c4/assets/example-component.md +105 -0
- package/skills/eng-arch-c4/assets/example-container.md +104 -0
- package/skills/eng-arch-c4/assets/example-context.md +81 -0
- package/skills/eng-backend/SKILL.md +776 -0
- package/skills/eng-browser-extension-builder/SKILL.md +385 -0
- package/skills/eng-cybersecurity/SKILL.md +645 -0
- package/skills/eng-data-bi/SKILL.md +199 -0
- package/skills/eng-data-debug/SKILL.md +307 -0
- package/skills/eng-data-engineer/SKILL.md +256 -0
- package/skills/eng-data-onboard/SKILL.md +310 -0
- package/skills/eng-data-orchestrator/SKILL.md +426 -0
- package/skills/eng-design-system/SKILL.md +619 -0
- package/skills/eng-docs-write/SKILL.md +312 -0
- package/skills/eng-frontend/SKILL.md +913 -0
- package/skills/eng-jira-comment/SKILL.md +17 -0
- package/skills/eng-microfrontend/SKILL.md +602 -0
- package/skills/eng-ms-trace/SKILL.md +469 -0
- package/skills/eng-nestjs/SKILL.md +791 -0
- package/skills/eng-performance-engineer/SKILL.md +312 -0
- package/skills/eng-pr/SKILL.md +339 -0
- package/skills/eng-qa-a11y-audit/SKILL.md +269 -0
- package/skills/eng-qa-bug-report/SKILL.md +1088 -0
- package/skills/eng-qa-bug-report/TASK_MANAGERS.md +138 -0
- package/skills/eng-qa-cypress-e2e/SKILL.md +177 -0
- package/skills/eng-qa-dev-guide/SKILL.md +164 -0
- package/skills/eng-qa-e2e/SKILL.md +400 -0
- package/skills/eng-qa-e2e-spec-writer/SKILL.md +322 -0
- package/skills/eng-qa-exploratory/SKILL.md +188 -0
- package/skills/eng-qa-gate/SKILL.md +370 -0
- package/skills/eng-qa-gate/assets/checklist-validacao.md +291 -0
- package/skills/eng-qa-graphql-contract/SKILL.md +256 -0
- package/skills/eng-qa-quality-report/SKILL.md +412 -0
- package/skills/eng-qa-test-plan/SKILL.md +466 -0
- package/skills/eng-qa-test-plan/assets/test-coverage-template.md +92 -0
- package/skills/eng-qa-test-plan/assets/test-patterns.md +178 -0
- package/skills/eng-qa-testsprite/SKILL.md +325 -0
- package/skills/eng-qa-testsprite/references/testsprite-mcp.md +224 -0
- package/skills/eng-qa-unit-test/SKILL.md +471 -0
- package/skills/eng-rabbitmq/SKILL.md +661 -0
- package/skills/eng-scraper/SKILL.md +683 -0
- package/skills/eng-scraper-robot-builder/SKILL.md +370 -0
- package/skills/eng-security-patch/SKILL.md +378 -0
- package/skills/eng-security-triage/SKILL.md +266 -0
- package/skills/eng-task-comment/SKILL.md +60 -0
- package/skills/eng-tech-analyst/SKILL.md +529 -0
- package/skills/eng-threat-model/SKILL.md +161 -0
- package/skills/init-jarvis/SKILL.md +1304 -0
- package/skills/init-jarvis/assets/mcp-configs.md +389 -0
- package/skills/init-jarvis/assets/onboarding-checklist.md +104 -0
- package/skills/init-jarvis/assets/setup-guide.md +360 -0
- package/skills/lovable-prompt-generator/SKILL.md +304 -0
- package/skills/prod-roadmap-report/README.md +303 -0
- package/skills/prod-roadmap-report/SKILL.md +198 -0
- package/skills/prod-roadmap-report/commands/status.compiled.single.team.md +23 -0
- package/skills/prod-roadmap-report/commands/status.list.projects.md +17 -0
- package/skills/prod-roadmap-report/commands/status.memory.md +192 -0
- package/skills/prod-roadmap-report/commands/status.roadmap.preview.md +94 -0
- package/skills/prod-roadmap-report/references/detailed-guide.md +236 -0
- package/skills/prod-roadmap-report/rules/detailed-guide.md +237 -0
- package/skills/prod-roadmap-report/rules/status-report-rules.md +44 -0
- package/skills/prod-roadmap-report/templates/template-multiple-teams-compiled-status.md +53 -0
- package/skills/prod-roadmap-report/templates/template-projects-list.md +23 -0
- package/skills/prod-roadmap-report/templates/template-single-team-compiled-status.md +60 -0
- package/skills/prod-roadmap-report/templates/template-single-team-status.md +49 -0
- package/skills/prod-specs/SKILL.md +108 -0
- package/skills/prod-specs/references/prod.spec.clarify.md +176 -0
- package/skills/prod-specs/references/prod.spec.epic.md +107 -0
- package/skills/prod-specs/references/prod.spec.frd.md +135 -0
- package/skills/prod-specs/references/prod.spec.issue.md +145 -0
- package/skills/prod-specs/references/prod.spec.prd.md +118 -0
- package/skills/prod-specs/rules/prod-spec-rules.md +186 -0
- package/skills/prod-specs/templates/prod-breakdown-template.md +136 -0
- package/skills/prod-specs/templates/prod-epic-template.md +76 -0
- package/skills/prod-specs/templates/prod-frd-template.md +172 -0
- package/skills/prod-specs/templates/prod-issue-template.md +68 -0
- package/skills/prod-specs/templates/prod-prd-full-template.md +159 -0
- package/skills/prod-specs/templates/prod-prd-template.md +173 -0
- package/skills/prod-specs-update/SKILL.md +272 -0
- package/skills/report-issue/SKILL.md +156 -0
- package/taxonomy.md +270 -0
- package/templates/AGENTS.md +189 -0
- package/templates/CDD aplicado a Prompts.md +182 -0
- package/templates/ENV-template.md +187 -0
- package/templates/engineering/AGENTS-template.md +71 -0
- package/templates/engineering/ARD-template.md +193 -0
- package/templates/engineering/CONTACTS-template.md +135 -0
- package/templates/engineering/PR-template.md +40 -0
- package/templates/engineering/RFC-Playbook.md +325 -0
- package/templates/engineering/RFC-template.md +199 -0
- package/templates/engineering/architecture-template.md +277 -0
- package/templates/engineering/breakdown-subtasks-template.md +582 -0
- package/templates/engineering/c4-model-template.md +516 -0
- package/templates/engineering/data-contract-template.md +135 -0
- package/templates/engineering/data-pipeline-template.md +163 -0
- package/templates/engineering/plan-template.md +255 -0
- package/templates/engineering/qa/eng.qa.quality-gate-examples-template.md +311 -0
- package/templates/engineering/qa/eng.qa.quality-gate-report-template.md +249 -0
- package/templates/engineering/qa/qa.cypress-test-template.md +172 -0
- package/templates/engineering/qa/qa.exploratory-session-template.md +148 -0
- package/templates/engineering/qa/qa.quality-report-template.md +130 -0
- package/templates/engineering/qa/qa.release-signoff-template.md +54 -0
- package/templates/engineering/qa/qa.sprint-plan-template.md +49 -0
- package/templates/engineering/swagger-template.md +145 -0
- package/templates/engineering/tech-spec-template.md +497 -0
- package/templates/engineering/work-progress-template.md +155 -0
- package/workflows/AGENTS.md +240 -0
- package/workflows/README.md +160 -0
- package/workflows/all-tools.md +11 -0
- package/workflows/engineering/data/data.contract.md +202 -0
- package/workflows/engineering/data/data.new-pipeline.md +234 -0
- package/workflows/engineering/eng.breakdown-subtasks.md +420 -0
- package/workflows/engineering/eng.bug-audit.md +591 -0
- package/workflows/engineering/eng.build-tech-spec.md +1116 -0
- package/workflows/engineering/eng.create-ard-from-code.md +259 -0
- package/workflows/engineering/eng.create-ard.md +382 -0
- package/workflows/engineering/eng.create-rfc.md +245 -0
- package/workflows/engineering/eng.debug.md +479 -0
- package/workflows/engineering/eng.docs.md +40 -0
- package/workflows/engineering/eng.light-arch.md +84 -0
- package/workflows/engineering/eng.plan.md +213 -0
- package/workflows/engineering/eng.pr.md +466 -0
- package/workflows/engineering/eng.pre-pr.md +167 -0
- package/workflows/engineering/eng.review.md +185 -0
- package/workflows/engineering/eng.rpa.robot.md +342 -0
- package/workflows/engineering/eng.security-audit.md +312 -0
- package/workflows/engineering/eng.security-incident.md +275 -0
- package/workflows/engineering/eng.security-pipeline.md +210 -0
- package/workflows/engineering/eng.security-review.md +235 -0
- package/workflows/engineering/eng.start.md +494 -0
- package/workflows/engineering/eng.work.md +558 -0
- package/workflows/engineering/frontend/eng.frontend-component.md +190 -0
- package/workflows/engineering/frontend/eng.frontend-perf-audit.md +375 -0
- package/workflows/engineering/frontend/eng.frontend-review.md +185 -0
- package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +51 -0
- package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +51 -0
- package/workflows/engineering/qa/eng.qa-exploratory-session.md +60 -0
- package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +202 -0
- package/workflows/engineering/qa/eng.qa-quality-report.md +83 -0
- package/workflows/engineering/qa/eng.qa-refinement-entry.md +83 -0
- package/workflows/engineering/qa/eng.qa-release-signoff.md +170 -0
- package/workflows/engineering/qa/eng.qa-sprint-planning.md +100 -0
- package/workflows/engineering/ta/eng.ta.atendimento.md +93 -0
- package/workflows/product/prod.roadmap.preview.md +110 -0
- package/workflows/product/prod.spec.breakdown.md +163 -0
- package/workflows/product/prod.spec.clarify.md +178 -0
- package/workflows/product/prod.spec.epic.md +154 -0
- package/workflows/product/prod.spec.frd.md +96 -0
- package/workflows/product/prod.spec.issue.md +145 -0
- package/workflows/product/prod.spec.md +60 -0
- package/workflows/product/prod.spec.prd.md +100 -0
- package/workflows/taxonomy.md +92 -0
- package/workflows/warm-up.md +574 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
status: GO
|
|
3
|
+
branch: "{branch-name}"
|
|
4
|
+
date: "{YYYY-MM-DD HH:MM}"
|
|
5
|
+
qa: "{nome do QA responsável}"
|
|
6
|
+
version: "1.0"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# QA Sign-off — {branch-name}
|
|
10
|
+
|
|
11
|
+
**Decisão**: ✅ GO / 🚫 NO-GO
|
|
12
|
+
**Branch**: {branch-name}
|
|
13
|
+
**Data**: {YYYY-MM-DD HH:MM}
|
|
14
|
+
**QA Responsável**: {nome}
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Tasks incluídas neste deploy
|
|
19
|
+
|
|
20
|
+
| Task | Título |
|
|
21
|
+
|------|--------|
|
|
22
|
+
| {ID} | {título} |
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Cobertura verificada
|
|
27
|
+
|
|
28
|
+
| Área / Domínio | E2E | Exploratório | Quality Gate |
|
|
29
|
+
|----------------|-----|-------------|-------------|
|
|
30
|
+
| {domínio} | ✅ passou / ⚠️ parcial / ❌ ausente | ✅ / ⚠️ / ❌ | ✅ / ⚠️ / ❌ |
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Bugs abertos relacionados
|
|
35
|
+
|
|
36
|
+
| ID | Título | Decisão QA |
|
|
37
|
+
|----|--------|------------|
|
|
38
|
+
| {ID} | {título} | Bloqueador / Aceito com ressalva / Não relacionado |
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Ressalvas aceitas
|
|
43
|
+
|
|
44
|
+
> Listar itens que não estão 100% cobertos mas foram aceitos conscientemente com justificativa.
|
|
45
|
+
|
|
46
|
+
- {ressalva}: {motivo da aceitação}
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Decisão final
|
|
51
|
+
|
|
52
|
+
**{✅ GO — aprovado para deploy} / {🚫 NO-GO — bloqueadores em aberto}**
|
|
53
|
+
|
|
54
|
+
{Justificativa em 1-2 linhas}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
sprint: "{Sprint N}"
|
|
3
|
+
squad: "{SQUAD}"
|
|
4
|
+
period: "{YYYY-MM-DD} — {YYYY-MM-DD}"
|
|
5
|
+
version: "1.0"
|
|
6
|
+
status: Draft
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Plano QA — {Sprint N}
|
|
10
|
+
|
|
11
|
+
**Squad**: {SQUAD}
|
|
12
|
+
**Período**: {data início} — {data fim}
|
|
13
|
+
**Gerado em**: {YYYY-MM-DD}
|
|
14
|
+
**QA Responsável**: {nome(s)}
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Capacidade
|
|
19
|
+
|
|
20
|
+
| Papel | Nome | Disponibilidade |
|
|
21
|
+
|-------|------|----------------|
|
|
22
|
+
| QA | {nome} | 100% |
|
|
23
|
+
| Quality Champion | {nome} | ~30% |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Alocação por Task
|
|
28
|
+
|
|
29
|
+
| Task | Título | Risco | Cobertura | Responsável | Observação |
|
|
30
|
+
|------|--------|-------|-----------|-------------|------------|
|
|
31
|
+
| {ID} | {título} | Alto | E2E + exploratório | {QA} | |
|
|
32
|
+
| {ID} | {título} | Médio | Quality gate | {QA ou Champion} | |
|
|
33
|
+
| {ID} | {título} | Baixo | Delegar ao dev | {Champion} | eng-qa-dev-guide |
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Sobrecarga
|
|
38
|
+
|
|
39
|
+
> Preencher se a capacidade total for insuficiente para cobrir todas as tasks.
|
|
40
|
+
|
|
41
|
+
| Task | Título | Decisão |
|
|
42
|
+
|------|--------|---------|
|
|
43
|
+
| {ID} | {título} | Reduzir escopo / Aceitar sem cobertura E2E / Mover para próxima sprint |
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Recomendações do Quality Strategist
|
|
48
|
+
|
|
49
|
+
{Síntese da análise de risco: áreas de atenção, padrões identificados, sugestões para a sprint.}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "API {Nome do Serviço}"
|
|
3
|
+
version: "1.0.0"
|
|
4
|
+
status: "draft"
|
|
5
|
+
jira: ""
|
|
6
|
+
owner: ""
|
|
7
|
+
reviewers: []
|
|
8
|
+
created_at: "YYYY-MM-DD"
|
|
9
|
+
updated_at: "YYYY-MM-DD"
|
|
10
|
+
spec_format: "openapi-3.0"
|
|
11
|
+
spec_file: "api-{service}.yaml"
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# API {Nome do Serviço}
|
|
15
|
+
|
|
16
|
+
## Metadados
|
|
17
|
+
|
|
18
|
+
- **Versão da API**: 1.0.0
|
|
19
|
+
- **Formato da Spec**: OpenAPI 3.0.3
|
|
20
|
+
- **Arquivo da Spec**: `api-{service}.yaml` (ou `.json`)
|
|
21
|
+
- **Base URL (Produção)**: `https://api.exemplo.com/v1`
|
|
22
|
+
- **Base URL (Staging)**: `https://api-staging.exemplo.com/v1`
|
|
23
|
+
- **Autenticação**: JWT Bearer Token
|
|
24
|
+
|
|
25
|
+
## Visão Geral
|
|
26
|
+
|
|
27
|
+
Breve descrição do propósito da API e principais funcionalidades.
|
|
28
|
+
|
|
29
|
+
## Endpoints Principais
|
|
30
|
+
|
|
31
|
+
### Autenticação
|
|
32
|
+
- `POST /auth/login` - Autenticar usuário
|
|
33
|
+
- `POST /auth/refresh` - Renovar token
|
|
34
|
+
- `POST /auth/logout` - Encerrar sessão
|
|
35
|
+
|
|
36
|
+
### Recursos
|
|
37
|
+
- `GET /resources` - Listar recursos
|
|
38
|
+
- `POST /resources` - Criar recurso
|
|
39
|
+
- `GET /resources/{id}` - Obter recurso específico
|
|
40
|
+
- `PUT /resources/{id}` - Atualizar recurso
|
|
41
|
+
- `DELETE /resources/{id}` - Remover recurso
|
|
42
|
+
|
|
43
|
+
## Autenticação
|
|
44
|
+
|
|
45
|
+
```http
|
|
46
|
+
Authorization: Bearer {jwt_token}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Obter token via `POST /auth/login` com credenciais válidas.
|
|
50
|
+
|
|
51
|
+
## Formato de Resposta
|
|
52
|
+
|
|
53
|
+
### Sucesso (2xx)
|
|
54
|
+
|
|
55
|
+
```json
|
|
56
|
+
{
|
|
57
|
+
"data": { ... },
|
|
58
|
+
"meta": {
|
|
59
|
+
"timestamp": "2026-03-11T15:30:00Z",
|
|
60
|
+
"version": "1.0.0"
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### Erro (4xx, 5xx)
|
|
66
|
+
|
|
67
|
+
```json
|
|
68
|
+
{
|
|
69
|
+
"error": {
|
|
70
|
+
"code": "RESOURCE_NOT_FOUND",
|
|
71
|
+
"message": "Recurso não encontrado",
|
|
72
|
+
"details": {}
|
|
73
|
+
},
|
|
74
|
+
"meta": {
|
|
75
|
+
"timestamp": "2026-03-11T15:30:00Z",
|
|
76
|
+
"request_id": "abc-123"
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Rate Limiting
|
|
82
|
+
|
|
83
|
+
- **Limite**: 1000 requisições por hora por IP
|
|
84
|
+
- **Headers**:
|
|
85
|
+
- `X-RateLimit-Limit`: Limite total
|
|
86
|
+
- `X-RateLimit-Remaining`: Requisições restantes
|
|
87
|
+
- `X-RateLimit-Reset`: Timestamp do reset
|
|
88
|
+
|
|
89
|
+
## Versionamento
|
|
90
|
+
|
|
91
|
+
- Versionamento via URL: `/v1/`, `/v2/`
|
|
92
|
+
- Versões antigas mantidas por 6 meses após deprecação
|
|
93
|
+
- Deprecação anunciada via header `Deprecation: true`
|
|
94
|
+
|
|
95
|
+
## Documentação Interativa
|
|
96
|
+
|
|
97
|
+
- **Swagger UI**: `https://api.exemplo.com/docs`
|
|
98
|
+
- **ReDoc**: `https://api.exemplo.com/redoc`
|
|
99
|
+
- **Spec JSON**: `https://api.exemplo.com/openapi.json`
|
|
100
|
+
- **Spec YAML**: `https://api.exemplo.com/openapi.yaml`
|
|
101
|
+
|
|
102
|
+
## Ambientes
|
|
103
|
+
|
|
104
|
+
| Ambiente | Base URL | Propósito |
|
|
105
|
+
|----------|----------|-----------|
|
|
106
|
+
| Desenvolvimento | `http://localhost:3000` | Desenvolvimento local |
|
|
107
|
+
| Staging | `https://api-staging.exemplo.com` | Testes e homologação |
|
|
108
|
+
| Produção | `https://api.exemplo.com` | Ambiente de produção |
|
|
109
|
+
|
|
110
|
+
## Contato
|
|
111
|
+
|
|
112
|
+
- **Squad**: {squad}
|
|
113
|
+
- **Tech Lead**: {nome}
|
|
114
|
+
- **Slack**: #{canal-slack}
|
|
115
|
+
- **Repositório**: {url-repo}
|
|
116
|
+
|
|
117
|
+
## Changelog da API
|
|
118
|
+
|
|
119
|
+
### v1.0.0 (YYYY-MM-DD)
|
|
120
|
+
- Versão inicial
|
|
121
|
+
- Endpoints de autenticação
|
|
122
|
+
- CRUD de recursos
|
|
123
|
+
|
|
124
|
+
## Referências
|
|
125
|
+
|
|
126
|
+
- [OpenAPI Specification 3.0](https://spec.openapis.org/oas/v3.0.3)
|
|
127
|
+
- [Swagger Editor](https://editor.swagger.io/)
|
|
128
|
+
- ARD relacionado: `ard-{service}.md`
|
|
129
|
+
- RFC relacionado: `rfc-{service}.md`
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Arquivo da Spec
|
|
134
|
+
|
|
135
|
+
O arquivo completo da especificação OpenAPI está em:
|
|
136
|
+
- **YAML**: `engineering/swagger/api-{service}.yaml`
|
|
137
|
+
- **JSON**: `engineering/swagger/api-{service}.json`
|
|
138
|
+
|
|
139
|
+
Para visualizar interativamente, use:
|
|
140
|
+
```bash
|
|
141
|
+
# Swagger UI local
|
|
142
|
+
npx swagger-ui-watcher api-{service}.yaml
|
|
143
|
+
|
|
144
|
+
# Ou abra em https://editor.swagger.io/
|
|
145
|
+
```
|