wize-dev-kit 0.10.1 → 0.12.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.
Files changed (92) hide show
  1. package/AGENTS.md +3 -3
  2. package/CHANGELOG.md +48 -0
  3. package/README.es.md +1 -1
  4. package/README.md +1 -1
  5. package/README.pt-BR.md +1 -1
  6. package/package.json +1 -1
  7. package/src/app-overlay/wize-app-release-channels/workflow.md +2 -0
  8. package/src/app-overlay/wize-app-scaffold/workflow.md +2 -0
  9. package/src/app-overlay/wize-app-store-listing/workflow.md +2 -0
  10. package/src/builder-skills/wize-create-agent/workflow.md +2 -0
  11. package/src/builder-skills/wize-create-skill/workflow.md +2 -0
  12. package/src/builder-skills/wize-create-workflow/workflow.md +2 -0
  13. package/src/core-skills/wize-advanced-elicitation/skill.md +2 -0
  14. package/src/core-skills/wize-brainstorming/skill.md +2 -0
  15. package/src/core-skills/wize-customize/skill.md +2 -0
  16. package/src/core-skills/wize-editorial-review-prose/skill.md +2 -0
  17. package/src/core-skills/wize-editorial-review-structure/skill.md +2 -0
  18. package/src/core-skills/wize-grill/skill.md +3 -1
  19. package/src/core-skills/wize-index-docs/skill.md +3 -1
  20. package/src/core-skills/wize-review-adversarial/skill.md +2 -0
  21. package/src/core-skills/wize-review-edge-case-hunter/skill.md +2 -0
  22. package/src/core-skills/wize-shard-doc/skill.md +2 -0
  23. package/src/core-skills/wize-spec/skill.md +2 -0
  24. package/src/method-skills/1-analysis/wize-agent-analyst/agent.yaml +3 -0
  25. package/src/method-skills/1-analysis/wize-document-project/workflow.md +2 -0
  26. package/src/method-skills/1-analysis/wize-domain-research/workflow.md +7 -0
  27. package/src/method-skills/1-analysis/wize-market-research/workflow.md +7 -0
  28. package/src/method-skills/1-analysis/wize-prfaq/workflow.md +2 -0
  29. package/src/method-skills/1-analysis/wize-product-brief/workflow.md +2 -0
  30. package/src/method-skills/1-analysis/wize-refresh-knowledge/workflow.md +3 -1
  31. package/src/method-skills/1-analysis/wize-research/workflow.md +24 -89
  32. package/src/method-skills/1-analysis/wize-technical-research/workflow.md +7 -0
  33. package/src/method-skills/1-analysis/wize-trigger-map/workflow.md +2 -0
  34. package/src/method-skills/2-plan-workflows/wize-create-prd/workflow.md +3 -2
  35. package/src/method-skills/2-plan-workflows/wize-edit-prd/workflow.md +3 -1
  36. package/src/method-skills/2-plan-workflows/wize-ux-design/workflow.md +2 -0
  37. package/src/method-skills/2-plan-workflows/wize-ux-scenarios/workflow.md +2 -0
  38. package/src/method-skills/2-plan-workflows/wize-validate-prd/workflow.md +3 -1
  39. package/src/method-skills/3-solutioning/wize-check-implementation-readiness/workflow.md +2 -0
  40. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-02-context.md +1 -1
  41. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-08-complete.md +1 -1
  42. package/src/method-skills/3-solutioning/wize-create-architecture/workflow.md +2 -0
  43. package/src/method-skills/3-solutioning/wize-create-epics-and-stories/workflow.md +7 -6
  44. package/src/method-skills/3-solutioning/wize-design-system/workflow.md +2 -0
  45. package/src/method-skills/3-solutioning/wize-nfr-principles/workflow.md +3 -1
  46. package/src/method-skills/3-solutioning/wize-project-context/workflow.md +3 -1
  47. package/src/method-skills/3-solutioning/wize-tech-vision/workflow.md +3 -1
  48. package/src/method-skills/4-implementation/wize-changelog/workflow.md +184 -0
  49. package/src/method-skills/4-implementation/wize-checkpoint-preview/workflow.md +8 -6
  50. package/src/method-skills/4-implementation/wize-code-review/workflow.md +2 -0
  51. package/src/method-skills/4-implementation/wize-correct-course/workflow.md +3 -1
  52. package/src/method-skills/4-implementation/wize-create-story/workflow.md +7 -13
  53. package/src/method-skills/4-implementation/wize-dev-story/workflow.md +3 -1
  54. package/src/method-skills/4-implementation/wize-investigate/workflow.md +2 -0
  55. package/src/method-skills/4-implementation/wize-quick-dev/workflow.md +2 -0
  56. package/src/method-skills/4-implementation/wize-release/workflow.md +162 -0
  57. package/src/method-skills/4-implementation/wize-retrospective/workflow.md +7 -5
  58. package/src/method-skills/4-implementation/wize-sprint-planning/workflow.md +11 -6
  59. package/src/method-skills/4-implementation/wize-sprint-status/workflow.md +2 -0
  60. package/src/method-skills/module.yaml +12 -3
  61. package/src/orchestrator-skills/module.yaml +4 -1
  62. package/src/orchestrator-skills/wize/skill.md +164 -0
  63. package/src/orchestrator-skills/wize-help/skill.md +127 -6
  64. package/src/orchestrator-skills/wize-onboarding/workflow.md +3 -1
  65. package/src/orchestrator-skills/wize-orchestrator/agent.yaml +1 -0
  66. package/src/orchestrator-skills/wize-orchestrator/persona.md +29 -4
  67. package/src/orchestrator-skills/wize-party-mode/workflow.md +2 -0
  68. package/src/security-overlay/_shared/backlog.js +3 -14
  69. package/src/security-overlay/_shared/scope-parser.js +27 -0
  70. package/src/security-overlay/agents/red-teamer/agent.yaml +2 -0
  71. package/src/security-overlay/agents/red-teamer/persona.md +6 -0
  72. package/src/security-overlay/skills/wize-sec-enumerate/skill.md +2 -0
  73. package/src/security-overlay/skills/wize-sec-pentest/scripts/run-pipeline.js +18 -1
  74. package/src/security-overlay/skills/wize-sec-pentest/skill.md +2 -0
  75. package/src/security-overlay/skills/wize-sec-recon/skill.md +2 -0
  76. package/src/security-overlay/skills/wize-sec-scope/scripts/generate-scope.js +106 -0
  77. package/src/security-overlay/skills/wize-sec-scope/skill.md +52 -0
  78. package/src/tea-skills/wize-qa-generate-e2e-tests/workflow.md +2 -0
  79. package/src/tea-skills/wize-tea-design/workflow.md +3 -0
  80. package/src/tea-skills/wize-tea-gate/workflow.md +3 -0
  81. package/src/tea-skills/wize-tea-nfr/workflow.md +3 -0
  82. package/src/tea-skills/wize-tea-review/workflow.md +3 -0
  83. package/src/tea-skills/wize-tea-risk/workflow.md +3 -0
  84. package/src/tea-skills/wize-tea-trace/workflow.md +3 -0
  85. package/src/web-overlay/wize-web-deploy/workflow.md +2 -0
  86. package/src/web-overlay/wize-web-scaffold/workflow.md +2 -0
  87. package/src/web-overlay/wize-web-seo-audit/workflow.md +2 -0
  88. package/tools/installer/commands/doctor.js +2 -2
  89. package/tools/installer/onboarding.js +14 -21
  90. package/tools/installer/render-shared.js +50 -28
  91. package/tools/installer/validators/run-all.js +3 -2
  92. package/tools/installer/wize-cli.js +323 -77
@@ -108,7 +108,7 @@ Prepare the section to append:
108
108
  **Scale & Complexity:**
109
109
  - Primary domain: {{domain}}
110
110
  - Complexity level: {{level}}
111
- - Estimated architectural components: {{count}}
111
+ - Architectural components: {{count}}
112
112
 
113
113
  ### Technical Constraints & Dependencies
114
114
  {{list}}
@@ -47,7 +47,7 @@ lastStep: 8
47
47
  Architecture complete. Next:
48
48
  1. Hawkeye: run wize-tea-risk to build the global risk profile.
49
49
  2. Tony: run wize-create-epics-and-stories to slice the work.
50
- 3. Use wize-help anytime to check what comes next.
50
+ 3. Use `/wize` (or `/wize-help`) anytime to check what comes next.
51
51
  ```
52
52
 
53
53
  ## On complete
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-create-architecture
4
+ description: "Use quando o PRD e UX design estiverem prontos e precisar projetar a arquitetura do sistema com componentes, sequências e ADRs."
3
5
  name: Create Architecture
4
6
  phase: 3-solutioning
5
7
  owner: wize-agent-architect # Tony Stark
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-create-epics-and-stories
4
+ description: "Use quando a arquitetura estiver definida e precisar fatiar o escopo em epics e stories com acceptance criteria."
3
5
  name: Create Epics and Stories
4
6
  phase: 3-solutioning
5
7
  owner: wize-agent-architect # Tony Stark
@@ -12,6 +14,8 @@ status: ready
12
14
 
13
15
  Tony drives. Output lands in `.wize/solutioning/epics/` and `.wize/solutioning/stories/`.
14
16
 
17
+ > **No estimates.** Epics and stories never carry a time or effort estimate (hours, days, story points, S/M/L/XL) — at any step. AI development speed has made them noise that only burns time and tokens. The only sizing question is binary: **does a story fit one PR?** If not, slice it.
18
+
15
19
  When slicing raises decisions the PRD doesn't answer — priority order, sequencing, protected behaviors, what's out of a story — offer a short `wize-grill` pass with the user instead of guessing. Decisions land in the epic/story fields; unresolved ones become open questions with owners.
16
20
 
17
21
  ## Inputs
@@ -47,7 +51,6 @@ owner: Tony Stark + Maria Hill
47
51
  linked_prd: E01
48
52
  trigger_map_row: 1
49
53
  priority: 1
50
- estimate: M
51
54
  ---
52
55
 
53
56
  # Epic 01: Sign-up + first invite
@@ -76,8 +79,7 @@ Each story passes:
76
79
  - **I**ndependent — can be implemented without waiting for another in-flight story.
77
80
  - **N**egotiable — wording can move; intent stays.
78
81
  - **V**aluable — a real outcome to a real user (or a clear test path that proves a slice).
79
- - **E**stimable — Tony can size: S/M/L/XL.
80
- - **S**mall — fits in one PR (≤ 1 day for an experienced dev, including tests).
82
+ - **S**mall — fits in one PR, tests included. This is the *only* sizing test; no time or point estimate (see **No estimates** above).
81
83
  - **T**estable — every AC is observable.
82
84
 
83
85
  If a story is XL, slice it before merging it to `stories/`.
@@ -101,7 +103,6 @@ story_id: E01-S03
101
103
  epic: 01-onboarding
102
104
  status: ready-for-dev
103
105
  priority: 2
104
- estimate: M
105
106
  linked_screens: [onboarding-step-1, invite-modal]
106
107
  linked_acs: [AC-02-1, AC-02-2]
107
108
  ---
@@ -163,9 +164,9 @@ Every story declares the AC IDs it advances (from PRD). The union of stories per
163
164
 
164
165
  Each story carries its own **sources of truth**, **restrictions** (out-of-scope + protected behaviors + compatibility + security), and a **validation contract** (AC → test map + required checks). These aren't optional prose — they are what makes AC → code → test → gate traceable. A story missing them is not ready for dev.
165
166
 
166
- ### 4. Estimates
167
+ ### 4. Slice check (no estimates)
167
168
 
168
- Story estimates S/M/L/XL. XL gets sliced before merging. If everything is L, slicing pattern is too coarse; revisit.
169
+ Don't estimate stories — size them by one question: does each fit a single PR? Anything that doesn't gets sliced before it lands in `stories/`. If most stories feel too big to slice cleanly, the slicing pattern is too coarse; revisit it.
169
170
 
170
171
  ### 5. Hand off
171
172
 
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-design-system
4
+ description: "Use quando o UX design estiver avançando e precisar estabelecer a baseline do design system (tokens, componentes, grids)."
3
5
  name: Design System
4
6
  phase: 3-solutioning
5
7
  owner: wize-agent-ux-designer # Mantis (WDS Freya — Phase 7)
@@ -1,7 +1,9 @@
1
1
  ---
2
+
2
3
  code: wize-nfr-principles
4
+ description: "Use quando o PRD estiver validado e precisar definir os princípios de NFR (perf, segurança, confiabilidade, acessibilidade, custo) que guiarão a arquitetura."
3
5
  name: NFR Principles
4
- phase: 2-to-3-boundary
6
+ phase: 3-solutioning
5
7
  owner: wize-agent-solution-strategist # Nick Fury
6
8
  status: ready
7
9
  ---
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-project-context
4
+ description: "Use quando precisar estabelecer ou atualizar o contexto do projeto (stack, convenções, restrições) para orientar a solução."
3
5
  name: Project Context
4
6
  phase: 3-solutioning
5
7
  owner: wize-agent-architect # Tony Stark
@@ -60,7 +62,7 @@ Read `.wize/implementation/sprint-status.yaml` and include: sprint number, capac
60
62
 
61
63
  ### 6. Hand off
62
64
 
63
- Output is a markdown file. Wizer uses this file to seed `/wize-help`, `/wize-dev-story`, and `/wize-onboarding` reads.
65
+ Output is a markdown file. Wizer uses this file to seed `/wize`, `/wize-help`, `/wize-dev-story`, and `/wize-onboarding` reads.
64
66
 
65
67
  ## Output template
66
68
 
@@ -1,7 +1,9 @@
1
1
  ---
2
+
2
3
  code: wize-tech-vision
4
+ description: "Use quando o PRD estiver validado e precisar definir o norte técnico: stack family, build-buy-borrow e non-negotiables."
3
5
  name: Tech Vision
4
- phase: 2-to-3-boundary
6
+ phase: 3-solutioning
5
7
  owner: wize-agent-solution-strategist # Nick Fury
6
8
  status: ready
7
9
  ---
@@ -0,0 +1,184 @@
1
+ ---
2
+ code: wize-changelog
3
+ description: "Use quando precisar gerar ou atualizar o changelog no formato Keep a Changelog a partir das stories concluídas."
4
+ name: Changelog
5
+ phase: 4-implementation
6
+ owner: wize-agent-dev # Shuri
7
+ status: ready
8
+ ---
9
+
10
+ # Changelog
11
+
12
+ **Goal.** Gerar `CHANGELOG.md` no formato [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) a partir das stories concluídas no sprint, agrupadas por epic e categoria.
13
+
14
+ Shuri executa. O changelog é gerado em pt-BR (texto voltado ao usuário) e segue a convenção do projeto.
15
+
16
+ ## Inputs
17
+
18
+ - `.wize/implementation/sprint-status.yaml` — stories concluídas
19
+ - `.wize/solutioning/stories/{epic}/*.md` — detalhes das stories
20
+ - `.wize/solutioning/epics/*.md` — nomes legíveis dos epics
21
+ - `CHANGELOG.md` — changelog existente (se houver)
22
+ - `git tag --list 'v*' --sort=-v:refname | head -1` — última tag
23
+
24
+ ## Output
25
+
26
+ - `CHANGELOG.md` criado ou atualizado com a nova entrada pré-pendida
27
+
28
+ ## Formato Keep a Changelog
29
+
30
+ Seguir estritamente o formato [Keep a Changelog 1.1.0](https://keepachangelog.com/en/1.1.0/):
31
+
32
+ ```markdown
33
+ # Changelog
34
+
35
+ All notable changes to this project are documented here.
36
+ Format inspired by [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
37
+
38
+ ## [Unreleased]
39
+
40
+ ## [0.12.0] — 2026-08-08
41
+
42
+ ### Added
43
+ - **Epic 09 — UX / intent:** Release e changelog skills (`wize-release`, `wize-changelog`). #E09-S07
44
+
45
+ ### Changed
46
+ - **Epic 09 — UX / intent:** Roteamento por intenção expandido com release/changelog. #E09-S03
47
+
48
+ ### Fixed
49
+ - **Epic 09 — UX / intent:** Descrições de skill corrigidas (block scalars). #E09-S01
50
+
51
+ ### Security
52
+ - (vazio se não houver stories de segurança)
53
+ ```
54
+
55
+ ### Regras de categoria
56
+
57
+ | Categoria | Quando usar |
58
+ |---|---|
59
+ | **Added** | Nova feature, nova skill, nova funcionalidade |
60
+ | **Changed** | Mudança em funcionalidade existente, alteração de comportamento |
61
+ | **Deprecated** | Funcionalidade que será removida em breve |
62
+ | **Removed** | Funcionalidade removida |
63
+ | **Fixed** | Correção de bug |
64
+ | **Security** | Correção de vulnerabilidade, melhoria de segurança |
65
+
66
+ ### Regras de agrupamento
67
+
68
+ - Agrupar por **epic** dentro de cada categoria.
69
+ - Cada linha começa com `- **Epic NN — Nome:**` seguido da descrição e `#story_id`.
70
+ - Stories sem epic definido vão sob `- **Geral:**`.
71
+ - Se uma categoria não tiver stories, escrever `- (vazio)` ou omitir (consistente com o changelog existente).
72
+
73
+ ## Steps
74
+
75
+ ### 1. Coletar stories concluídas
76
+
77
+ Ler `sprint-status.yaml`. Para cada story com status `done`:
78
+
79
+ 1. Localizar o arquivo em `.wize/solutioning/stories/{epic}/{story}.md`
80
+ 2. Extrair do frontmatter: `story_id`, `epic`
81
+ 3. Extrair do corpo: título (linha `# Story:`) e primeira frase da seção `## Context` como sumário
82
+
83
+ Se o arquivo da story não existir, usar apenas o `story_id` como referência.
84
+
85
+ ### 2. Classificar por categoria
86
+
87
+ Para cada story, determinar a categoria com base no conteúdo:
88
+
89
+ | Padrão no título/contexto | Categoria |
90
+ |---|---|
91
+ | "Adicionar", "Criar", "Novo", "Added", "Add" | Added |
92
+ | "Corrigir", "Consertar", "Bug", "Fix", "Hotfix", "Correção" | Fixed |
93
+ | "Alterar", "Mudar", "Refatorar", "Change", "Update" | Changed |
94
+ | "Remover", "Deprecar" | Removed / Deprecated |
95
+ | "Segurança", "Vulnerabilidade", "Security", "CVE" | Security |
96
+
97
+ Se ambíguo, default `Added` para stories novas, `Changed` para alterações.
98
+
99
+ ### 3. Agrupar por epic
100
+
101
+ Para cada story, resolver o nome do epic:
102
+
103
+ 1. Se o frontmatter tem `epic: NN-nome`, usar `Epic NN — Nome`
104
+ 2. Buscar em `.wize/solutioning/epics/{epic}.md` o título (`# Epic NN: Nome`)
105
+ 3. Fallback: `Epic {epic_id}`
106
+
107
+ Agrupar stories por epic, depois por categoria.
108
+
109
+ ### 4. Gerar entrada do changelog
110
+
111
+ Montar a entrada no formato:
112
+
113
+ ```markdown
114
+ ## [{version}] — {YYYY-MM-DD}
115
+
116
+ {descrição curta do release — 1-2 frases sobre o que esta versão entrega}
117
+
118
+ ### Added
119
+ - **{epic_nome}:** {descrição}. #{story_id}
120
+
121
+ ### Changed
122
+ - **{epic_nome}:** {descrição}. #{story_id}
123
+
124
+ ### Fixed
125
+ - **{epic_nome}:** {descrição}. #{story_id}
126
+
127
+ ### Security
128
+ - **{epic_nome}:** {descrição}. #{story_id}
129
+ ```
130
+
131
+ ### 5. Atualizar CHANGELOG.md
132
+
133
+ Se `CHANGELOG.md` não existir, criar com o cabeçalho padrão:
134
+
135
+ ```markdown
136
+ # Changelog
137
+
138
+ All notable changes to this project are documented here.
139
+ Format inspired by [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
140
+
141
+ > **Language:** entries are written in **Portuguese (pt-BR)**.
142
+
143
+ ## [Unreleased]
144
+ ```
145
+
146
+ Se existir:
147
+ 1. Localizar a linha `## [Unreleased]`
148
+ 2. Inserir a nova entrada entre `## [Unreleased]` e a primeira `## [versão]` existente
149
+ 3. Se não houver `## [Unreleased]`, inserir após o cabeçalho
150
+
151
+ ### 6. Verificar formatação
152
+
153
+ - A data está no formato `YYYY-MM-DD`
154
+ - A versão segue semver (`X.Y.Z`)
155
+ - Cada story tem referência ao `#story_id`
156
+ - Categorias vazias foram omitidas
157
+ - O link do Keep a Changelog está presente
158
+
159
+ ## Exemplo de saída
160
+
161
+ ```markdown
162
+ ## [0.12.0] — 2026-08-08
163
+
164
+ Release do cluster de ship: skills de release e changelog para o perfil core, roteamento por intenção expandido.
165
+
166
+ ### Added
167
+ - **Epic 09 — UX / intent:** Skill `wize-release` para bump de versão, changelog e tag git a partir das stories gated. #E09-S07
168
+ - **Epic 09 — UX / intent:** Skill `wize-changelog` para geração de changelog no formato Keep a Changelog. #E09-S07
169
+
170
+ ### Changed
171
+ - **Epic 09 — UX / intent:** Tabela de roteamento por intenção expandida com release, changelog, lançar, publicar, notas de versão. #E09-S03
172
+ ```
173
+
174
+ ## Anti-patterns
175
+
176
+ - Changelog escrito à mão sem referência às stories — perde rastreabilidade.
177
+ - Categoria "Added" para correção de bug — usar "Fixed".
178
+ - Data fora do formato ISO — usar `YYYY-MM-DD`.
179
+ - Pular stories concluídas — toda story `done` no sprint entra no changelog.
180
+ - Escrever changelog em inglês quando o projeto usa pt-BR — seguir o idioma do changelog existente.
181
+
182
+ ## Hand-off
183
+
184
+ > Changelog atualizado em `CHANGELOG.md`. {count} stories de {epic_count} epics registradas. Próximo: `/wize-release` para bump de versão e tag, ou revisão manual do changelog.
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-checkpoint-preview
4
+ description: "Use quando uma story estiver parcialmente implementada e precisar de preview de checkpoint para validar direção antes de continuar."
3
5
  name: Checkpoint Preview
4
6
  phase: 4-implementation
5
7
  owner: wize-agent-dev # Shuri (+ wize-agent-architect Tony on call)
@@ -8,19 +10,19 @@ status: ready
8
10
 
9
11
  # Checkpoint Preview
10
12
 
11
- **Goal.** Pause mid-story to validate direction before continuing. For M/L stories where the cost of going off-rail is high, a quick checkpoint catches drift before it becomes rework.
13
+ **Goal.** Pause mid-story to validate direction before continuing. For larger stories where the cost of going off-rail is high, a quick checkpoint catches drift before it becomes rework.
12
14
 
13
15
  Shuri drives. Tony on call for architectural drift. Hawkeye on call for test design drift.
14
16
 
15
17
  ## When to run
16
18
 
17
- - Manually, when a story is taking longer than expected.
18
- - After the first 2-3 commits of an M or L story.
19
+ - Manually, when a story is running long or feels off-track.
20
+ - After the first 2-3 commits of a larger story.
19
21
  - When a new constraint is mentioned (security review, perf budget, vendor change).
20
22
 
21
23
  ## When NOT to run
22
24
 
23
- - Quick-dev / S stories (overhead exceeds the value).
25
+ - Quick-dev / small stories (overhead exceeds the value).
24
26
  - When the story is < 50% done and no surprise has come up yet.
25
27
 
26
28
  ## Inputs
@@ -49,7 +51,7 @@ Write 5 lines:
49
51
  - ACs done vs. remaining: (X / Y)
50
52
  - Tests added: (count, by split)
51
53
  - New dependencies: (list)
52
- - Time spent: (estimate)
54
+ - Commits so far: (count)
53
55
 
54
56
  ### 3. Sanity check (3 questions)
55
57
 
@@ -92,7 +94,7 @@ author: Shuri
92
94
  - ACs done vs. remaining: 1 / 4
93
95
  - Tests added: 2 unit, 1 integration
94
96
  - New dependencies: none
95
- - Time spent: ~3h
97
+ - Commits so far: 3
96
98
 
97
99
  ## Sanity check
98
100
  - Right problem? Yes.
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-code-review
4
+ description: "Use quando um PR estiver aberto e precisar de revisão de código por pares focada em saúde do código."
3
5
  name: Code Review
4
6
  phase: 4-implementation
5
7
  owner: wize-agent-dev # Shuri (peer review)
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-correct-course
4
+ description: "Use quando o projeto desviar do plano e precisar de correção de curso com decisão documentada."
3
5
  name: Correct Course
4
6
  phase: 4-implementation
5
7
  owner: wize-agent-pm # Maria Hill, with wize-orchestrator
@@ -43,7 +45,7 @@ Wizer pulls the latest status file. If `last_updated` is older than 2 days, the
43
45
 
44
46
  Pick exactly one cause:
45
47
 
46
- - **Cut scope.** Story is bigger than estimated, or a non-essential AC can be deferred.
48
+ - **Cut scope.** Story turned out larger than one PR, or a non-essential AC can be deferred.
47
49
  - **Re-route.** Story needs a different agent (e.g., Mantis for UX) or skill (e.g., `wize-investigate` for a regression).
48
50
  - **Escalate.** Story needs more hands, or a decision outside the team.
49
51
 
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-create-story
4
+ description: "Use quando um epic estiver definido e precisar criar uma story individual com acceptance criteria detalhados."
3
5
  name: Create Story
4
6
  phase: 4-implementation
5
7
  owner: wize-agent-architect # Tony writes; Shuri may refine
@@ -12,6 +14,8 @@ status: ready
12
14
 
13
15
  Tony drives. Shuri reads and proposes refinements before pulling the story.
14
16
 
17
+ > **No estimates.** Never attach a time or effort estimate (hours, days, story points, S/M/L/XL) to a story — at any step. AI development speed has made them noise that only burns time and tokens. The only sizing question is binary: **does it fit one PR?** If not, slice it. Nothing else.
18
+
15
19
  ## When to use
16
20
 
17
21
  - New story splits from an epic (most common — done in `wize-create-epics-and-stories`).
@@ -47,7 +51,6 @@ story_id: E01-S03
47
51
  epic: 01-onboarding
48
52
  status: ready-for-dev
49
53
  priority: 2 # 1=now, 2=next, 3=later
50
- estimate: M # S | M | L (XL → slice further before merging here)
51
54
  linked_screens: [onboarding-step-1, invite-modal]
52
55
  linked_acs: [AC-02-1, AC-02-2]
53
56
  ---
@@ -95,20 +98,12 @@ Every story passes:
95
98
  - **I**ndependent.
96
99
  - **N**egotiable.
97
100
  - **V**aluable.
98
- - **E**stimable (Tony sizes).
99
- - **S**mall (≤ 1 PR).
101
+ - **S**mall (≤ 1 PR) — the *only* sizing test; if it doesn't fit one PR, slice.
100
102
  - **T**estable.
101
103
 
102
- If any letter fails, fix before queueing.
103
-
104
- ## Estimation rough guide
105
-
106
- - **S** ≤ 4h.
107
- - **M** 4h–1d.
108
- - **L** 1–2d.
109
- - **XL** > 2d → split.
104
+ (INVEST's "Estimable" is dropped on purpose — see **No estimates** above. We don't size in time or points.)
110
105
 
111
- These are intervals, not commitments. Hill plans capacity against M-median.
106
+ If any letter fails, fix before queueing.
112
107
 
113
108
  ## Full story template
114
109
 
@@ -118,7 +113,6 @@ story_id: E01-S03
118
113
  epic: 01-onboarding
119
114
  status: ready-for-dev
120
115
  priority: 2
121
- estimate: M
122
116
  linked_screens: [onboarding-step-1, invite-modal]
123
117
  linked_acs: [AC-02-1, AC-02-2]
124
118
  ---
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-dev-story
4
+ description: "Use quando uma story estiver pronta para implementação e precisar ser desenvolvida com TDD e commits rastreáveis."
3
5
  name: Dev Story
4
6
  phase: 4-implementation
5
7
  owner: wize-agent-dev # Shuri
@@ -14,7 +16,7 @@ Shuri drives. Hawkeye observes (test design is binding). Tony stays available fo
14
16
 
15
17
  ## Operating contract
16
18
 
17
- I work inside a repo with WDK installed: `.wize/`, `AGENTS.md`, and the `wize-*` skills are my instructions and memory, not background reading. This section is the execution slice of the story's **mission contract** (see `/wize-help mission`).
19
+ I work inside a repo with WDK installed: `.wize/`, `AGENTS.md`, and the `wize-*` skills are my instructions and memory, not background reading. This section is the execution slice of the story's **mission contract** (see `/wize mission` or `/wize-help mission`).
18
20
 
19
21
  - **Inspect before editing.** Read the story, its sources of truth, and the touched code first.
20
22
  - **Reuse ladder before new code** (see `wize-agent-dev` persona): needs to exist → already here → stdlib → framework feature → installed dep → one-liner → only then new code.
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-investigate
4
+ description: "Use quando um bug ou comportamento inesperado surgir e precisar de investigação estruturada com root cause analysis."
3
5
  name: Investigate
4
6
  phase: 4-implementation
5
7
  owner: wize-agent-dev # Shuri (+ wize-agent-test-architect Hawkeye on call)
@@ -1,5 +1,7 @@
1
1
  ---
2
+
2
3
  code: wize-quick-dev
4
+ description: "Use quando a demanda for pequena e bem delimitada (bug fix, copy edit, refactor) e não justificar o ciclo completo."
3
5
  name: Quick Dev (lifecycle shortcut)
4
6
  phase: 4-implementation
5
7
  owner: wize-agent-dev # Shuri
@@ -0,0 +1,162 @@
1
+ ---
2
+ code: wize-release
3
+ description: "Use quando todas as stories do sprint estiverem gated e você precisar gerar release: bump de versão, changelog e tag git."
4
+ name: Release
5
+ phase: 4-implementation
6
+ owner: wize-agent-dev # Shuri + Maria Hill
7
+ status: ready
8
+ ---
9
+
10
+ # Release
11
+
12
+ **Goal.** Bump de versão, changelog a partir das stories gated e tag git. O release é o passo entre "todas as stories passaram no gate" e a retrospectiva.
13
+
14
+ Shuri executa. Maria Hill confirma o escopo (quais epics entram).
15
+
16
+ ## Pré-requisitos
17
+
18
+ Antes de iniciar, verificar:
19
+
20
+ 1. **Sprint ativo** — `sprint-status.yaml` deve ter `development_status` com stories.
21
+ 2. **Todas as stories gated** — cada story no sprint ativo deve estar `done` no `sprint-status.yaml`. Stories com gate `FAIL` bloqueiam o release. Stories com `CONCERNS` precisam de waiver documentado.
22
+ 3. **Git limpo** — `git status --porcelain` deve estar vazio (ou conter apenas arquivos não rastreados que não fazem parte do release).
23
+ 4. **Branch main** — releases saem da `main`. Se estiver em feature branch, abortar e orientar merge via PR.
24
+
25
+ Se qualquer pré-requisito falhar, reportar o bloqueio e parar. Não fazer release parcial.
26
+
27
+ ## Inputs
28
+
29
+ - `.wize/implementation/sprint-status.yaml` — stories concluídas
30
+ - `.wize/solutioning/stories/{epic}/*.md` — detalhes das stories
31
+ - `package.json` — versão atual
32
+ - `CHANGELOG.md` — changelog existente (se houver)
33
+ - `git tag --list 'v*'` — tags existentes
34
+
35
+ ## Outputs
36
+
37
+ - `package.json` com versão atualizada
38
+ - `CHANGELOG.md` atualizado com a nova versão
39
+ - Tag git `v{semver}`
40
+ - `sprint-status.yaml` atualizado (sprint marcado como concluído)
41
+ - Resumo do release no terminal
42
+
43
+ ## Steps
44
+
45
+ ### 1. Verificar pré-requisitos
46
+
47
+ ```bash
48
+ git status --porcelain # deve estar vazio
49
+ git branch --show-current # deve ser main
50
+ ```
51
+
52
+ Ler `sprint-status.yaml` e validar que todas as stories do sprint ativo estão `done`. Se houver stories `backlog`, `ready-for-dev`, `in-progress` ou `review`, listar cada uma e abortar.
53
+
54
+ ### 2. Coletar stories concluídas
55
+
56
+ Varrer `development_status` no `sprint-status.yaml`. Para cada story com status `done`:
57
+
58
+ 1. Localizar o arquivo da story em `.wize/solutioning/stories/{epic}/{story}.md`
59
+ 2. Extrair do frontmatter: `story_id`, `epic`, `status`
60
+ 3. Extrair do corpo: título (linha `# Story:`), acceptance criteria
61
+
62
+ Agrupar por epic. Se o epic tiver `epic_id` no `sprint-status.yaml`, usar o nome do arquivo do epic em `.wize/solutioning/epics/` para obter o título legível.
63
+
64
+ ### 3. Determinar o bump de versão
65
+
66
+ Ler a versão atual de `package.json`:
67
+
68
+ ```
69
+ Versão atual: 0.11.0
70
+ Qual o bump?
71
+ 1. patch (0.11.1) — correções, hotfix, docs
72
+ 2. minor (0.12.0) — novas features compatíveis
73
+ 3. major (1.0.0) — breaking changes
74
+ ```
75
+
76
+ Em modo interativo, perguntar ao usuário. Em modo não-interativo, usar o primeiro argumento (`patch`, `minor` ou `major`). Se nenhum argumento for passado, default `patch`.
77
+
78
+ Calcular a nova versão com `semver.inc(current, bump)` — usar Node built-in (regex parse + increment, sem dependência externa).
79
+
80
+ ### 4. Gerar changelog
81
+
82
+ Delegar a geração do changelog ao `wize-changelog`:
83
+
84
+ 1. Invocar o fluxo do `wize-changelog` com a nova versão e a lista de stories coletadas no passo 2.
85
+ 2. O changelog é gerado no formato Keep a Changelog e pré-pendido ao `CHANGELOG.md`.
86
+
87
+ Se `CHANGELOG.md` não existir, criar com o cabeçalho padrão.
88
+
89
+ ### 5. Bump de versão
90
+
91
+ Atualizar o campo `version` em `package.json` com a nova versão. Preservar a formatação existente (indentação, aspas duplas).
92
+
93
+ ### 6. Commit e tag
94
+
95
+ ```bash
96
+ git add package.json CHANGELOG.md
97
+ git commit -m "chore: release v{version}"
98
+ git tag v{version} -m "Release v{version}"
99
+ ```
100
+
101
+ A mensagem de commit deve listar os epics incluídos no release.
102
+
103
+ ### 7. Atualizar sprint-status.yaml
104
+
105
+ Adicionar ao `sprint-status.yaml`:
106
+
107
+ ```yaml
108
+ release:
109
+ version: "{version}"
110
+ date: "{YYYY-MM-DD}"
111
+ sprint: "{active_cycle}"
112
+ stories_released: {count}
113
+ ```
114
+
115
+ Marcar o sprint como concluído e adicionar entrada de retrospectiva pendente.
116
+
117
+ ### 8. Resumo
118
+
119
+ Emitir no terminal:
120
+
121
+ ```
122
+ ✓ Release v{version} criado
123
+
124
+ Epics incluídos:
125
+ - {epic_name} ({story_count} stories)
126
+
127
+ Changelog: CHANGELOG.md
128
+ Tag: v{version}
129
+ Commit: {commit_hash}
130
+
131
+ Próximos passos:
132
+ - git push origin main --tags
133
+ - /wize-retrospective
134
+ ```
135
+
136
+ **Não executar `git push` automaticamente.** O push é sempre manual — o desenvolvedor revisa antes de publicar.
137
+
138
+ ## Bump semver (built-in, zero-dep)
139
+
140
+ ```js
141
+ function bumpVersion(current, type) {
142
+ const [major, minor, patch] = current.split('.').map(Number);
143
+ switch (type) {
144
+ case 'major': return `${major + 1}.0.0`;
145
+ case 'minor': return `${major}.${minor + 1}.0`;
146
+ case 'patch': return `${major}.${minor}.${patch + 1}`;
147
+ default: throw new Error(`Tipo de bump inválido: ${type}. Use patch, minor ou major.`);
148
+ }
149
+ }
150
+ ```
151
+
152
+ ## Anti-patterns
153
+
154
+ - Fazer release com stories não gated — o gate existe para proteger a main.
155
+ - Fazer release de feature branch — releases saem da main.
156
+ - Push automático — o desenvolvedor revisa antes de publicar.
157
+ - Pular o changelog — "depois eu escrevo" = nunca escreve.
158
+ - Bump manual de versão — usar o bump semver para evitar off-by-one.
159
+
160
+ ## Hand-off
161
+
162
+ > Release v{version} criado. Changelog atualizado, tag aplicada. Execute `git push origin main --tags` quando revisar. Depois: `/wize-retrospective`.