spec-first-copilot 0.6.0-beta.9 → 0.7.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/README.md +252 -167
- package/bin/cli.js +70 -70
- package/lib/init.js +92 -92
- package/lib/update.js +132 -132
- package/package.json +1 -1
- package/templates/.ai/memory/napkin.md +68 -68
- package/templates/.github/CHANGELOG.md +121 -0
- package/templates/.github/adapters/SETUP.md +314 -314
- package/templates/.github/adapters/confluence.md +295 -295
- package/templates/.github/adapters/errors.md +234 -234
- package/templates/.github/adapters/filesystem.md +353 -353
- package/templates/.github/adapters/interface.md +301 -301
- package/templates/.github/adapters/naming.md +241 -241
- package/templates/.github/adapters/registry.md +244 -244
- package/templates/.github/agents/backend-coder.md +14 -14
- package/templates/.github/agents/db-coder.md +165 -165
- package/templates/.github/agents/doc-writer.md +66 -53
- package/templates/.github/agents/frontend-coder.md +5 -5
- package/templates/.github/agents/infra-coder.md +341 -341
- package/templates/.github/agents/reviewer.md +6 -6
- package/templates/.github/agents/security-reviewer.md +153 -153
- package/templates/.github/copilot-instructions.md +272 -262
- package/templates/.github/instructions/docs.instructions.md +147 -145
- package/templates/.github/instructions/sensitive-files.instructions.md +32 -32
- package/templates/.github/rules.md +229 -229
- package/templates/.github/scripts/bootstrap-confluence.js +289 -223
- package/templates/.github/skills/sf-design/SKILL.md +161 -216
- package/templates/.github/skills/sf-dev/SKILL.md +204 -351
- package/templates/.github/skills/sf-discovery/SKILL.md +415 -414
- package/templates/.github/skills/sf-extract/SKILL.md +225 -249
- package/templates/.github/skills/sf-load/SKILL.md +296 -295
- package/templates/.github/skills/sf-mcp/SKILL.md +386 -385
- package/templates/.github/skills/sf-merge-docs/SKILL.md +152 -100
- package/templates/.github/skills/sf-plan/SKILL.md +152 -128
- package/templates/.github/skills/sf-publish/SKILL.md +144 -143
- package/templates/.github/skills/sf-session-finish/SKILL.md +93 -120
- package/templates/.github/skills/sf-start/SKILL.md +192 -145
- package/templates/.github/templates/estrutura/apiContracts.template.md +160 -159
- package/templates/.github/templates/estrutura/architecture.template.md +169 -168
- package/templates/.github/templates/estrutura/conventions.template.md +214 -212
- package/templates/.github/templates/estrutura/decisions.template.md +107 -107
- package/templates/.github/templates/estrutura/domain.template.md +161 -160
- package/templates/.github/templates/feature/PRD.template.md +279 -286
- package/templates/.github/templates/feature/Progresso.template.md +141 -141
- package/templates/.github/templates/feature/TRD.template.md +358 -0
- package/templates/.github/templates/feature/context.template.md +89 -48
- package/templates/.github/templates/feature/extract-log.template.md +49 -39
- package/templates/.github/templates/feature/projetos.template.yaml +79 -79
- package/templates/.github/templates/global/progresso_global.template.md +59 -57
- package/templates/.github/templates/specs/brief.template.md +66 -59
- package/templates/.github/templates/specs/contracts.template.md +147 -141
- package/templates/.github/templates/specs/scenarios.template.md +125 -117
- package/templates/.github/templates/specs/tasks.template.md +65 -63
- package/templates/_gitignore +35 -35
- package/templates/sfw.config.yml.example +147 -147
- package/templates/.github/templates/feature/backlog-extraido.template.md +0 -156
- package/templates/.github/templates/feature/sdd.template.md +0 -559
|
@@ -8,6 +8,127 @@
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
+
## 0.7.0 (2026-04-14) — Redesign v4 estável
|
|
12
|
+
|
|
13
|
+
Promoção de `0.7.0-beta.1` para versão estável. Inclui fix crítico:
|
|
14
|
+
purga de referências SDD residuais que sobreviveram ao beta (incluindo
|
|
15
|
+
whitelist do `/sf-publish`, que silenciosamente pulava TRD).
|
|
16
|
+
|
|
17
|
+
### Fix — limpeza de resíduos v3
|
|
18
|
+
|
|
19
|
+
Varredura de 23 arquivos no projeto:
|
|
20
|
+
- `sfw.config.yml.example`: `publishes: [PRD, SDD, Progresso]` → `[PRD, TRD, Progresso]` (bug runtime)
|
|
21
|
+
- `adapters/registry.md` e `naming.md`: refs a SDD como tipo válido → TRD
|
|
22
|
+
- `rules.md`: regras invioláveis 1-4 reescritas ("SDD aprovado" → "PRD/TRD aprovados + specs/")
|
|
23
|
+
- Templates de `estrutura/` (architecture, domain, conventions, apiContracts, decisions):
|
|
24
|
+
mapeamento completo SDD §X → TRD §Y nas instruções de ORIGEM/ATUALIZAÇÃO
|
|
25
|
+
- Templates de `feature/` (Progresso, projetos.yaml): refs SDD §3.2 → TRD §1.2, etc.
|
|
26
|
+
- `progresso_global.template.md`: legenda de status reescrita com fluxo v4 completo
|
|
27
|
+
- `docs.instructions.md`: reescrito integralmente para v4
|
|
28
|
+
- `sensitive-files.instructions.md`: `sdd.md` → `TRD.md`
|
|
29
|
+
- `copilot-instructions.md`: refs `sdd.md` → `TRD.md`
|
|
30
|
+
- `.ai/memory/napkin.md` (template): princípios invioláveis atualizados
|
|
31
|
+
- READMEs dos 2 packages: narrativa + estrutura + diagrama v4
|
|
32
|
+
|
|
33
|
+
Refs legítimas mantidas: CHANGELOGs (histórico), `doc-writer.md` e
|
|
34
|
+
`sf-merge-docs/SKILL.md` (explicam a migração v3→v4).
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## 0.7.0-beta.1 (2026-04-13) — Redesign v4 (BREAKING)
|
|
39
|
+
|
|
40
|
+
Reestruturação arquitetural baseada em feedback de uso real do v3. TRD ressuscitado
|
|
41
|
+
como peer do PRD, SDD eliminado, aprovação por persona. Pipeline continua unificado
|
|
42
|
+
via `/sf-start`.
|
|
43
|
+
|
|
44
|
+
### Breaking
|
|
45
|
+
|
|
46
|
+
- **TRD ressuscitado** — peer do PRD, aprovado pelo dev. Não é o TRD antigo
|
|
47
|
+
transiente: agora tem papel próprio (source técnica autoritativa).
|
|
48
|
+
- **SDD eliminado** — camada intermediária desnecessária quando PRD+TRD são bem
|
|
49
|
+
estruturados. `specs/{nome}/` deriva direto de PRD+TRD. `docs/` atualizado via
|
|
50
|
+
`/sf-merge-docs` a partir de PRD+TRD.
|
|
51
|
+
- **Aprovação por persona** — PM aprova PRD (`prd_aprovado: true`), dev aprova TRD
|
|
52
|
+
(`trd_aprovado: true`). Flags no `.context.md`. Em time pequeno, user faz as 2
|
|
53
|
+
aprovações — não pula.
|
|
54
|
+
- **Discovery obrigatório** — `/sf-discovery` deixou de ser skill opcional e virou
|
|
55
|
+
passo obrigatório dentro do `/sf-start`. Força entendimento antes da extração.
|
|
56
|
+
- **PRD `empty` removido** — conceito obsoleto. Agora: scope puro-técnico tem
|
|
57
|
+
`prd_existe=false`; scope puro-produto tem `trd_existe=false`. Maioria tem ambos.
|
|
58
|
+
- **backlog_extraido.md eliminado** — features futuras viram itens em PRD §11
|
|
59
|
+
Fora de Escopo com sugestão de `/sf-start <nome>` próprio.
|
|
60
|
+
- **Schema do `.context.md` mudou**: `prd_empty` → `prd_existe` + `prd_aprovado`;
|
|
61
|
+
adicionado `trd_existe` + `trd_aprovado`. Status fluxo tem novos estados:
|
|
62
|
+
`discovery_done → extract_done → prd_approved → trd_approved → design_done`.
|
|
63
|
+
|
|
64
|
+
### Templates
|
|
65
|
+
|
|
66
|
+
- `TRD.template.md` novo — 11 seções, organizado por área (§Sistema + §Área-X)
|
|
67
|
+
- `PRD.template.md` refatorado — 13 seções puro-produto, sem conteúdo técnico
|
|
68
|
+
- `sdd.template.md` deletado
|
|
69
|
+
- `backlog-extraido.template.md` deletado
|
|
70
|
+
- `context.template.md` schema v4
|
|
71
|
+
- `extract-log.template.md` sem categorização "produto/tech" (obsoleta)
|
|
72
|
+
- `specs/*.template.md` com ORIGEM atualizada: PRD+TRD em vez de SDD
|
|
73
|
+
|
|
74
|
+
### Skills
|
|
75
|
+
|
|
76
|
+
- `/sf-start` — 2 aprovações + discovery obrigatório
|
|
77
|
+
- `/sf-extract` — gera PRD e/ou TRD conforme conteúdo dos insumos (Reader + Produto-Analyzer + Tech-Analyzer)
|
|
78
|
+
- `/sf-design` — consome PRD+TRD aprovados, gera docs/ (first-run) + specs/
|
|
79
|
+
- `/sf-merge-docs` — diff semântico PRD+TRD ↔ docs/ (agente Integrator promovido pra Opus)
|
|
80
|
+
- `/sf-plan` — entrada PRD+TRD+specs/, tasks com `Ref TRD` em vez de `Ref SDD`
|
|
81
|
+
- `/sf-publish` — adicionado TRD à whitelist; SDD removido
|
|
82
|
+
|
|
83
|
+
### Agents
|
|
84
|
+
|
|
85
|
+
- Doc Writer reescrito: fonte muda de "SDD §Sistema" para "PRD + TRD"
|
|
86
|
+
- Coders (backend/frontend/db/infra) e Reviewers: refs de "SDD §X" → "TRD §X" ou "specs/{nome}/"
|
|
87
|
+
|
|
88
|
+
### Migração de v3 (0.6.x) pra v4
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
# 1. Atualizar kit
|
|
92
|
+
npx spec-first-copilot@beta update
|
|
93
|
+
|
|
94
|
+
# 2. Para cada scope em andamento: migrar .context.md
|
|
95
|
+
# - Remover `prd_empty`
|
|
96
|
+
# - Adicionar `prd_existe`, `trd_existe`, `prd_aprovado`, `trd_aprovado`
|
|
97
|
+
# - Se scope já tem SDD: extrair conteúdo técnico pra TRD.md manual
|
|
98
|
+
|
|
99
|
+
# 3. SDDs antigos em workspace/Output/{nome}/sdd.md ficam como legado
|
|
100
|
+
# (nenhum skill v4 lê eles). Deletar quando confortável.
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Versionamento
|
|
104
|
+
|
|
105
|
+
- Bump **minor** (0.6 → 0.7) pelo breaking. v3 (`0.6.0-beta.10`) permanece no npm
|
|
106
|
+
como histórico.
|
|
107
|
+
- Publicado com tag `beta`. Promoção para `latest` apenas após validação em uso real.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 0.6.0-beta.10 (2026-04-13)
|
|
112
|
+
|
|
113
|
+
### `bootstrap-confluence.js` agora é idempotente
|
|
114
|
+
|
|
115
|
+
Script agora lê `.mcp.json` existente e reusa valores da entry `atlassian` em
|
|
116
|
+
vez de perguntar tudo de novo:
|
|
117
|
+
|
|
118
|
+
- Se `CONFLUENCE_URL` já existe: mostra URL atual, pergunta "Manter? [S/n]"
|
|
119
|
+
- Se `CONFLUENCE_USERNAME` já existe: mostra email atual, pergunta "Manter? [S/n]"
|
|
120
|
+
- Se `CONFLUENCE_API_TOKEN` já existe: mostra token mascarado (`abcd…wxyz`), pergunta "Manter? [S/n]"
|
|
121
|
+
- Default ENTER = manter. Responder `n` abre o prompt completo da informação.
|
|
122
|
+
|
|
123
|
+
Se todos os 3 campos foram mantidos: detecta que nada mudou e **não reescreve**
|
|
124
|
+
`.mcp.json` (evita dirty git). Se mudou algo: reescreve preservando outras
|
|
125
|
+
entries MCP (Supabase, GitHub, etc.).
|
|
126
|
+
|
|
127
|
+
Útil pra: reexecução após novo rebuild do MCP, rotação apenas do token, debug
|
|
128
|
+
de setup sem perder credenciais já válidas.
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
11
132
|
## 0.6.0-beta.9 (2026-04-13)
|
|
12
133
|
|
|
13
134
|
### CLI em pt-BR + dica de bootstrap-confluence no init
|