wize-dev-kit 0.16.0 → 0.17.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 +37 -0
- package/ARCH.md +77 -24
- package/CHANGELOG.md +14 -0
- package/DECISIONS.md +27 -1
- package/README.es.md +296 -0
- package/README.md +3 -2
- package/README.pt-BR.md +294 -0
- package/ROSTER.md +11 -3
- package/adapters/README.md +9 -7
- package/adapters/antigravity/README.md +5 -5
- package/adapters/claude-code/README.md +1 -1
- package/adapters/codex/README.md +5 -5
- package/adapters/codex/adapter.yaml +1 -1
- package/adapters/codex/render.js +1 -1
- package/adapters/continue/README.md +5 -5
- package/adapters/cursor/README.md +2 -2
- package/adapters/generic/README.md +1 -1
- package/adapters/hermes/README.md +23 -0
- package/adapters/hermes/adapter.yaml +8 -0
- package/adapters/hermes/render.js +17 -0
- package/adapters/kimi-code/README.md +5 -5
- package/adapters/kimi-code/render.js +2 -2
- package/adapters/kiro/README.md +30 -0
- package/adapters/kiro/adapter.yaml +8 -0
- package/adapters/kiro/render.js +21 -0
- package/adapters/opencode/README.md +3 -3
- package/adapters/opencode/render.js +27 -1
- package/adapters/windsurf/README.md +3 -3
- package/docs/harnesses/antigravity.md +20 -0
- package/docs/harnesses/antigravity.pt-BR.md +20 -0
- package/docs/harnesses/claude-code.md +23 -0
- package/docs/harnesses/claude-code.pt-BR.md +23 -0
- package/docs/harnesses/codex.md +21 -0
- package/docs/harnesses/codex.pt-BR.md +21 -0
- package/docs/harnesses/continue.md +21 -0
- package/docs/harnesses/continue.pt-BR.md +21 -0
- package/docs/harnesses/cursor.md +22 -0
- package/docs/harnesses/cursor.pt-BR.md +22 -0
- package/docs/harnesses/generic.md +20 -0
- package/docs/harnesses/generic.pt-BR.md +20 -0
- package/docs/harnesses/hermes.md +26 -0
- package/docs/harnesses/hermes.pt-BR.md +26 -0
- package/docs/harnesses/kimi-code.md +19 -0
- package/docs/harnesses/kimi-code.pt-BR.md +19 -0
- package/docs/harnesses/kiro.md +26 -0
- package/docs/harnesses/kiro.pt-BR.md +26 -0
- package/docs/harnesses/opencode.md +31 -0
- package/docs/harnesses/opencode.pt-BR.md +31 -0
- package/docs/harnesses/windsurf.md +22 -0
- package/docs/harnesses/windsurf.pt-BR.md +22 -0
- package/package.json +1 -1
- package/schemas/agent.schema.json +2 -2
- package/schemas/workflow.schema.json +1 -1
- package/src/app-overlay/wize-app-release-channels/workflow.md +2 -0
- package/src/app-overlay/wize-app-scaffold/workflow.md +2 -0
- package/src/app-overlay/wize-app-store-listing/workflow.md +2 -0
- package/src/builder-skills/wize-create-agent/workflow.md +2 -0
- package/src/builder-skills/wize-create-skill/workflow.md +2 -0
- package/src/builder-skills/wize-create-workflow/workflow.md +2 -0
- package/src/core-skills/wize-advanced-elicitation/skill.md +2 -0
- package/src/core-skills/wize-brainstorming/skill.md +2 -0
- package/src/core-skills/wize-customize/skill.md +116 -0
- package/src/core-skills/wize-editorial-review-prose/skill.md +94 -0
- package/src/core-skills/wize-editorial-review-structure/skill.md +99 -0
- package/src/core-skills/wize-grill/skill.md +77 -0
- package/src/core-skills/wize-index-docs/skill.md +119 -0
- package/src/core-skills/wize-pre-pr-check/skill.md +134 -0
- package/src/core-skills/wize-review-adversarial/skill.md +3 -0
- package/src/core-skills/wize-review-edge-case-hunter/skill.md +115 -0
- package/src/core-skills/wize-shard-doc/skill.md +2 -0
- package/src/core-skills/wize-spec/assets/headless-schemas.md +39 -0
- package/src/core-skills/wize-spec/assets/spec-template.md +40 -0
- package/src/core-skills/wize-spec/customize.toml +20 -0
- package/src/core-skills/wize-spec/skill.md +112 -0
- package/src/method-skills/1-analysis/wize-agent-analyst/agent.yaml +3 -0
- package/src/method-skills/1-analysis/wize-document-project/documentation-requirements.csv +12 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/api-contracts-template.md +38 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/architecture-template.md +54 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/component-inventory-template.md +40 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/contribution-guide-template.md +34 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/data-models-template.md +36 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/deep-dive-template.md +312 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/deployment-guide-template.md +42 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/development-guide-template.md +61 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/index-template.md +185 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/project-overview-template.md +110 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/project-scan-report-schema.json +159 -0
- package/src/method-skills/1-analysis/wize-document-project/templates/source-tree-template.md +142 -0
- package/src/method-skills/1-analysis/wize-document-project/workflow.md +213 -20
- package/src/method-skills/1-analysis/wize-domain-research/customize.toml +14 -0
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-01-init.md +49 -0
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-02-domain-analysis.md +39 -0
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-03-competitive-landscape.md +39 -0
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-04-regulatory-focus.md +39 -0
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-05-technical-trends.md +39 -0
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-06-research-synthesis.md +43 -0
- package/src/method-skills/1-analysis/wize-domain-research/research.template.md +31 -0
- package/src/method-skills/1-analysis/wize-domain-research/workflow.md +58 -0
- package/src/method-skills/1-analysis/wize-market-research/customize.toml +14 -0
- package/src/method-skills/1-analysis/wize-market-research/research.template.md +31 -0
- package/src/method-skills/1-analysis/wize-market-research/steps/step-01-init.md +57 -0
- package/src/method-skills/1-analysis/wize-market-research/steps/step-02-customer-behavior.md +39 -0
- package/src/method-skills/1-analysis/wize-market-research/steps/step-03-customer-pain-points.md +37 -0
- package/src/method-skills/1-analysis/wize-market-research/steps/step-04-customer-decisions.md +39 -0
- package/src/method-skills/1-analysis/wize-market-research/steps/step-05-competitive-analysis.md +37 -0
- package/src/method-skills/1-analysis/wize-market-research/steps/step-06-research-completion.md +47 -0
- package/src/method-skills/1-analysis/wize-market-research/workflow.md +66 -0
- package/src/method-skills/1-analysis/wize-prfaq/workflow.md +152 -11
- package/src/method-skills/1-analysis/wize-product-brief/workflow.md +92 -19
- package/src/method-skills/1-analysis/wize-refresh-knowledge/workflow.md +129 -0
- package/src/method-skills/1-analysis/wize-research/workflow.md +39 -12
- package/src/method-skills/1-analysis/wize-technical-research/customize.toml +14 -0
- package/src/method-skills/1-analysis/wize-technical-research/research.template.md +31 -0
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-01-init.md +49 -0
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-02-technical-overview.md +45 -0
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-03-integration-patterns.md +39 -0
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-04-architectural-patterns.md +39 -0
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-05-implementation-research.md +42 -0
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-06-research-synthesis.md +46 -0
- package/src/method-skills/1-analysis/wize-technical-research/workflow.md +60 -0
- package/src/method-skills/1-analysis/wize-trigger-map/workflow.md +82 -16
- package/src/method-skills/2-plan-workflows/wize-create-prd/workflow.md +135 -23
- package/src/method-skills/2-plan-workflows/wize-edit-prd/workflow.md +110 -0
- package/src/method-skills/2-plan-workflows/wize-ux-design/workflow.md +134 -28
- package/src/method-skills/2-plan-workflows/wize-ux-scenarios/workflow.md +93 -15
- package/src/method-skills/2-plan-workflows/wize-validate-prd/workflow.md +108 -12
- package/src/method-skills/3-solutioning/wize-check-implementation-readiness/workflow.md +103 -11
- package/src/method-skills/3-solutioning/wize-create-architecture/architecture-decision-template.md +41 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/customize.toml +20 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-01-init.md +95 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-01b-continue.md +32 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-02-context.md +126 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-03-starter.md +110 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-04-decisions.md +129 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-05-patterns.md +109 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-06-structure.md +97 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-07-validation.md +124 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-08-complete.md +59 -0
- package/src/method-skills/3-solutioning/wize-create-architecture/workflow.md +55 -48
- package/src/method-skills/3-solutioning/wize-create-epics-and-stories/workflow.md +154 -15
- package/src/method-skills/3-solutioning/wize-design-system/workflow.md +184 -22
- package/src/method-skills/3-solutioning/wize-nfr-principles/workflow.md +145 -17
- package/src/method-skills/3-solutioning/wize-project-context/workflow.md +120 -0
- package/src/method-skills/3-solutioning/wize-tech-vision/workflow.md +130 -22
- package/src/method-skills/4-implementation/wize-agent-dev/persona.md +12 -0
- package/src/method-skills/4-implementation/wize-changelog/workflow.md +184 -0
- package/src/method-skills/4-implementation/wize-checkpoint-preview/workflow.md +117 -0
- package/src/method-skills/4-implementation/wize-code-review/customize.toml +21 -0
- package/src/method-skills/4-implementation/wize-code-review/steps/step-01-gather-context.md +64 -0
- package/src/method-skills/4-implementation/wize-code-review/steps/step-02-review.md +40 -0
- package/src/method-skills/4-implementation/wize-code-review/steps/step-03-triage.md +43 -0
- package/src/method-skills/4-implementation/wize-code-review/steps/step-04-present.md +100 -0
- package/src/method-skills/4-implementation/wize-code-review/workflow.md +54 -12
- package/src/method-skills/4-implementation/wize-correct-course/workflow.md +93 -0
- package/src/method-skills/4-implementation/wize-create-story/workflow.md +154 -10
- package/src/method-skills/4-implementation/wize-dev-story/workflow.md +185 -17
- package/src/method-skills/4-implementation/wize-investigate/workflow.md +123 -0
- package/src/method-skills/4-implementation/wize-quick-dev/workflow.md +136 -18
- package/src/method-skills/4-implementation/wize-release/workflow.md +162 -0
- package/src/method-skills/4-implementation/wize-retrospective/workflow.md +114 -10
- package/src/method-skills/4-implementation/wize-sprint-planning/workflow.md +78 -11
- package/src/method-skills/4-implementation/wize-sprint-status/workflow.md +45 -11
- package/src/method-skills/module.yaml +28 -0
- package/src/orchestrator-skills/module.yaml +7 -1
- package/src/orchestrator-skills/wize/skill.md +164 -0
- package/src/orchestrator-skills/wize-check/skill.md +98 -0
- package/src/orchestrator-skills/wize-help/skill.md +227 -67
- package/src/orchestrator-skills/wize-onboarding/workflow.md +78 -14
- package/src/orchestrator-skills/wize-orchestrator/agent.yaml +2 -0
- package/src/orchestrator-skills/wize-orchestrator/persona.md +44 -3
- package/src/orchestrator-skills/wize-party-mode/workflow.md +2 -0
- package/src/security-overlay/_shared/allowlist.js +154 -0
- package/src/security-overlay/_shared/backlog.js +169 -0
- package/src/security-overlay/_shared/cli-runner.js +87 -0
- package/src/security-overlay/_shared/cvss.js +108 -0
- package/src/security-overlay/_shared/detect.js +125 -0
- package/src/security-overlay/_shared/install-script.js +205 -0
- package/src/security-overlay/_shared/invoke-phase.js +86 -0
- package/src/security-overlay/_shared/owasp.js +56 -0
- package/src/security-overlay/_shared/partial.js +225 -0
- package/src/security-overlay/_shared/preflight.js +175 -0
- package/src/security-overlay/_shared/scope-gate.js +172 -0
- package/src/security-overlay/_shared/scope-parser.js +147 -0
- package/src/security-overlay/agents/red-teamer/agent.yaml +54 -0
- package/src/security-overlay/agents/red-teamer/persona.md +49 -0
- package/src/security-overlay/data/common.txt +115 -0
- package/src/security-overlay/data/owasp-top10.json +15 -0
- package/src/security-overlay/data/tool-allowlist.json +31 -0
- package/src/security-overlay/skills/wize-sec-enumerate/scripts/run-enumerate.js +180 -0
- package/src/security-overlay/skills/wize-sec-enumerate/skill.md +34 -0
- package/src/security-overlay/skills/wize-sec-exploit/data/common.txt +117 -0
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-ffuf.js +147 -0
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-nikto.js +145 -0
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-nuclei.js +176 -0
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-sqlmap.js +139 -0
- package/src/security-overlay/skills/wize-sec-pentest/scripts/run-pipeline.js +184 -0
- package/src/security-overlay/skills/wize-sec-pentest/skill.md +54 -0
- package/src/security-overlay/skills/wize-sec-recon/scripts/run-gitleaks.js +139 -0
- package/src/security-overlay/skills/wize-sec-recon/scripts/run-osv.js +227 -0
- package/src/security-overlay/skills/wize-sec-recon/scripts/run-recon.js +162 -0
- package/src/security-overlay/skills/wize-sec-recon/skill.md +37 -0
- package/src/security-overlay/skills/wize-sec-report/scripts/render-report.js +1033 -0
- package/src/security-overlay/skills/wize-sec-scope/scripts/generate-scope.js +106 -0
- package/src/security-overlay/skills/wize-sec-scope/skill.md +52 -0
- package/src/tea-skills/wize-qa-generate-e2e-tests/workflow.md +121 -0
- package/src/tea-skills/wize-tea-design/workflow.md +107 -13
- package/src/tea-skills/wize-tea-gate/workflow.md +118 -25
- package/src/tea-skills/wize-tea-nfr/workflow.md +107 -14
- package/src/tea-skills/wize-tea-review/workflow.md +123 -13
- package/src/tea-skills/wize-tea-risk/workflow.md +113 -10
- package/src/tea-skills/wize-tea-trace/workflow.md +86 -12
- package/src/web-overlay/wize-web-deploy/workflow.md +2 -0
- package/src/web-overlay/wize-web-scaffold/workflow.md +2 -0
- package/src/web-overlay/wize-web-seo-audit/workflow.md +2 -0
- package/tools/check-eli5-all-adapters.js +3 -2
- package/tools/installer/baseline.js +138 -0
- package/tools/installer/commands/agent.js +197 -0
- package/tools/installer/commands/doctor.js +321 -0
- package/tools/installer/commands/document-project.js +93 -0
- package/tools/installer/commands/sync.js +45 -0
- package/tools/installer/commands/update.js +172 -0
- package/tools/installer/document-project/batch-scanner.js +93 -0
- package/tools/installer/document-project/classify.js +170 -0
- package/tools/installer/document-project/modes/deep-dive.js +196 -0
- package/tools/installer/document-project/modes/full-rescan.js +15 -0
- package/tools/installer/document-project/modes/initial-scan.js +100 -0
- package/tools/installer/document-project/modes/quick.js +211 -0
- package/tools/installer/document-project/render-index.js +101 -0
- package/tools/installer/document-project/state.js +110 -0
- package/tools/installer/onboarding.js +14 -20
- package/tools/installer/render-shared.js +159 -15
- package/tools/installer/setup-helpers.js +2 -0
- package/tools/installer/validators/run-all.js +3 -2
- package/tools/installer/version-check.js +117 -0
- package/tools/installer/wize-cli.js +501 -70
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
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."
|
|
5
|
+
name: Project Context
|
|
6
|
+
phase: 3-solutioning
|
|
7
|
+
owner: wize-agent-architect # Tony Stark
|
|
8
|
+
status: ready
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Project Context
|
|
12
|
+
|
|
13
|
+
**Goal.** Consolidate the 5 foundational artifacts (brief, PRD, UX, architecture, risk profile) into a single `.wize/knowledge/project-context.md` so other agents (Shuri, Hawkeye, Mantis, Wizer) can read the project in one shot instead of stitching it from 5 files.
|
|
14
|
+
|
|
15
|
+
Tony drives. Peggy polishes prose. Wizer is on call for cross-cutting drift.
|
|
16
|
+
|
|
17
|
+
## When to run
|
|
18
|
+
|
|
19
|
+
- After Phase 3 closeout (architecture + ADRs + risk profile all exist).
|
|
20
|
+
- After any major change to brief / PRD / architecture (rerun).
|
|
21
|
+
- Before sprint planning if context feels stale.
|
|
22
|
+
|
|
23
|
+
## When NOT to run
|
|
24
|
+
|
|
25
|
+
- During greenfield with no artifacts yet (run only after brief + PRD exist).
|
|
26
|
+
- As a CI step (manual; expensive to run on every commit).
|
|
27
|
+
|
|
28
|
+
## Inputs
|
|
29
|
+
|
|
30
|
+
- `.wize/planning/brief.md` — Vision, Audience.
|
|
31
|
+
- `.wize/planning/prd.md` — Goals, scope.
|
|
32
|
+
- `.wize/planning/ux/ux-design/index.md` — UX stack, key screens.
|
|
33
|
+
- `.wize/solutioning/architecture.md` — Tech stack, components.
|
|
34
|
+
- `.wize/solutioning/adrs/*.md` — Key decisions.
|
|
35
|
+
- `.wize/implementation/tea/risk-profile.md` — Active risks.
|
|
36
|
+
|
|
37
|
+
## Output
|
|
38
|
+
|
|
39
|
+
- `.wize/knowledge/project-context.md` (5 sections, YAML frontmatter, `last_updated` date).
|
|
40
|
+
|
|
41
|
+
## Steps
|
|
42
|
+
|
|
43
|
+
### 1. Vision and Audience
|
|
44
|
+
|
|
45
|
+
Copy from `brief.md` (or `prd.md` if brief is missing). One paragraph each. Mark the source file in a comment.
|
|
46
|
+
|
|
47
|
+
### 2. Tech stack
|
|
48
|
+
|
|
49
|
+
From `architecture.md`, list: runtime, framework, database, key libraries, build tool. One bullet per item. Skip items that are "TBD".
|
|
50
|
+
|
|
51
|
+
### 3. Key ADRs
|
|
52
|
+
|
|
53
|
+
List the 5 most recent ADRs from `.wize/solutioning/adrs/`. For each: title, decision, why. Older ADRs are out of scope; refer to `adrs/index.md` for the full list.
|
|
54
|
+
|
|
55
|
+
### 4. Active risks
|
|
56
|
+
|
|
57
|
+
Copy from `risk-profile.md` the top 5 risks (highest prob × impact). One bullet per risk with the mitigation. Defer the rest.
|
|
58
|
+
|
|
59
|
+
### 5. Active sprint
|
|
60
|
+
|
|
61
|
+
Read `.wize/implementation/sprint-status.yaml` and include: sprint number, capacity, in-progress stories. Skip if no active sprint.
|
|
62
|
+
|
|
63
|
+
### 6. Hand off
|
|
64
|
+
|
|
65
|
+
Output is a markdown file. Wizer uses this file to seed `/wize`, `/wize-help`, `/wize-dev-story`, and `/wize-onboarding` reads.
|
|
66
|
+
|
|
67
|
+
## Output template
|
|
68
|
+
|
|
69
|
+
```markdown
|
|
70
|
+
---
|
|
71
|
+
generated: YYYY-MM-DD
|
|
72
|
+
last_updated: YYYY-MM-DD
|
|
73
|
+
sources:
|
|
74
|
+
- .wize/planning/brief.md
|
|
75
|
+
- .wize/planning/prd.md
|
|
76
|
+
- .wize/planning/ux/ux-design/index.md
|
|
77
|
+
- .wize/solutioning/architecture.md
|
|
78
|
+
- .wize/solutioning/adrs/
|
|
79
|
+
- .wize/implementation/tea/risk-profile.md
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
# Project Context — {project_name}
|
|
83
|
+
|
|
84
|
+
## Vision
|
|
85
|
+
{paragraph from brief.md}
|
|
86
|
+
|
|
87
|
+
## Audience
|
|
88
|
+
{paragraph from brief.md or prd.md}
|
|
89
|
+
|
|
90
|
+
## Tech stack
|
|
91
|
+
- Runtime: {value}
|
|
92
|
+
- Framework: {value}
|
|
93
|
+
- Database: {value}
|
|
94
|
+
- Key libraries: {value}
|
|
95
|
+
- Build: {value}
|
|
96
|
+
|
|
97
|
+
## Key ADRs
|
|
98
|
+
1. **{title}** — {decision}. Why: {why}.
|
|
99
|
+
2. ...
|
|
100
|
+
|
|
101
|
+
## Active risks
|
|
102
|
+
1. **{R-id}** — {description}. Mitigation: {mitigation}.
|
|
103
|
+
2. ...
|
|
104
|
+
|
|
105
|
+
## Active sprint
|
|
106
|
+
- Sprint: {N}
|
|
107
|
+
- Capacity: {days}
|
|
108
|
+
- In-progress: {stories}
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Anti-patterns Tony rejects
|
|
112
|
+
|
|
113
|
+
- Reading all 6 sources in full and dumping them. Summarize in 5 sections.
|
|
114
|
+
- Editing the project-context.md by hand. (Always re-run the workflow to keep `last_updated` honest.)
|
|
115
|
+
- Skipping the frontmatter. Other agents parse it.
|
|
116
|
+
- Including items marked "TBD". Surface them in the `Open questions` section instead.
|
|
117
|
+
|
|
118
|
+
## Hand-off
|
|
119
|
+
|
|
120
|
+
> "Project context updated at `.wize/knowledge/project-context.md`. {N} sources, 5 sections, {date}. Next: `/wize-onboarding` (Wizer) reads this for first contact."
|
|
@@ -1,43 +1,151 @@
|
|
|
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:
|
|
6
|
+
phase: 3-solutioning
|
|
5
7
|
owner: wize-agent-solution-strategist # Nick Fury
|
|
6
|
-
status:
|
|
8
|
+
status: ready
|
|
7
9
|
---
|
|
8
10
|
|
|
9
11
|
# Tech Vision
|
|
10
12
|
|
|
11
|
-
**Goal.** State the technical north star in one page. Stack family,
|
|
13
|
+
**Goal.** State the technical north star in one page. Stack family, runtime envelope, build/buy/borrow calls, non-negotiables. Fury sets the **shape**, not the libraries — Tony fills in inside the frame.
|
|
14
|
+
|
|
15
|
+
Output lands in `.wize/planning/tech-vision.md`. Tony reads this before drawing architecture. Hill references it when scoping. Hawkeye uses it when picking gate granularity.
|
|
16
|
+
|
|
17
|
+
## Inputs
|
|
18
|
+
|
|
19
|
+
- `.wize/planning/prd.md` (validated)
|
|
20
|
+
- `.wize/planning/ux/ux-design/` (so the runtime envelope respects the UX)
|
|
21
|
+
- `.wize/knowledge/document-project/` (brownfield only)
|
|
22
|
+
- Stack catalogs (per active overlay):
|
|
23
|
+
- `src/web-overlay/stack-catalog.md`
|
|
24
|
+
- `src/app-overlay/stack-catalog.md`
|
|
25
|
+
|
|
26
|
+
## Outputs
|
|
12
27
|
|
|
13
|
-
## Output
|
|
14
28
|
- `.wize/planning/tech-vision.md`
|
|
15
29
|
|
|
16
|
-
##
|
|
30
|
+
## Steps
|
|
31
|
+
|
|
32
|
+
### 1. Pick the stack family
|
|
33
|
+
|
|
34
|
+
By order of constraint:
|
|
35
|
+
|
|
36
|
+
1. **Audience reach.** Public + SEO-critical? Authenticated app? Native mobile required?
|
|
37
|
+
2. **Latency budget.** Sub-1s LCP on 3G or richer-but-slower OK?
|
|
38
|
+
3. **Team familiarity.** Favor what the team has shipped before unless the project truly demands new.
|
|
39
|
+
4. **Backend coupling.** Separate API / fullstack monolith / BaaS?
|
|
40
|
+
5. **Deploy target.** Edge / container / self-managed.
|
|
41
|
+
|
|
42
|
+
Don't pick libraries here. Pick the *shape*: "Next.js-class SSR fullstack on edge" or "React Native + Expo with a Supabase backend" or "Compose Multiplatform with Kotlin services."
|
|
43
|
+
|
|
44
|
+
### 2. State the runtime envelope
|
|
45
|
+
|
|
46
|
+
| Dimension | Decision |
|
|
47
|
+
|---|---|
|
|
48
|
+
| Language(s) of record | TS, Kotlin, etc. |
|
|
49
|
+
| Runtime(s) | Browser / Node / Edge / Native iOS / Native Android / JVM |
|
|
50
|
+
| Persistence | Postgres / SQLite / KV / cloud-native |
|
|
51
|
+
| Deploy target | Vercel / Cloudflare / Fly / EKS / EAS / etc. |
|
|
52
|
+
| Edge vs origin | Edge-first / origin-first |
|
|
53
|
+
|
|
54
|
+
### 3. Build / buy / borrow
|
|
55
|
+
|
|
56
|
+
For each capability the PRD implies, declare:
|
|
57
|
+
|
|
58
|
+
| Capability | Build | Buy | Borrow (OSS) |
|
|
59
|
+
|---|---|---|---|
|
|
60
|
+
| Auth | — | Clerk / Auth0 | NextAuth / Lucia |
|
|
61
|
+
| Payments | — | Stripe | — |
|
|
62
|
+
| Search | — | Algolia / Typesense Cloud | Meilisearch self-hosted |
|
|
63
|
+
| Queues | — | SQS / Cloud Tasks | BullMQ |
|
|
64
|
+
| Analytics | — | Amplitude | PostHog OSS |
|
|
65
|
+
| Email | — | Resend / Postmark | — |
|
|
66
|
+
| Realtime | — | Pusher / Ably | Supabase Realtime |
|
|
67
|
+
|
|
68
|
+
One row per capability. Empty cells are explicit choices.
|
|
69
|
+
|
|
70
|
+
### 4. Non-negotiables
|
|
71
|
+
|
|
72
|
+
The 2–5 things the team will not compromise on.
|
|
73
|
+
|
|
74
|
+
Examples:
|
|
75
|
+
- *"All endpoint responses ≤ 200ms p95 from the user's region."*
|
|
76
|
+
- *"Single source of truth for user data — no shadow stores."*
|
|
77
|
+
- *"PII never leaves the EU."*
|
|
78
|
+
- *"On-call burden ≤ 0.5 pages per engineer per week."*
|
|
79
|
+
|
|
80
|
+
These outrank PRD goals. If they conflict, Fury escalates.
|
|
81
|
+
|
|
82
|
+
### 5. Deferred (with triggers)
|
|
83
|
+
|
|
84
|
+
What we won't decide yet, and what would trigger the decision. Don't list "could be revisited"; list the *signal* that forces the decision.
|
|
85
|
+
|
|
86
|
+
- *"Multi-region storage: revisit when EU+US daily active users > 5k."*
|
|
87
|
+
- *"WebSockets vs SSE: revisit when realtime updates < 500ms become a PRD goal."*
|
|
88
|
+
|
|
89
|
+
### 6. Hand off
|
|
90
|
+
|
|
91
|
+
Mark `status: aligned`. Tony reads it as the frame; he can argue specific decisions but not redraw the family without escalating.
|
|
92
|
+
|
|
93
|
+
## Output template
|
|
94
|
+
|
|
17
95
|
```markdown
|
|
18
|
-
|
|
96
|
+
---
|
|
97
|
+
status: aligned
|
|
98
|
+
owner: Nick Fury
|
|
99
|
+
created: YYYY-MM-DD
|
|
100
|
+
---
|
|
19
101
|
|
|
20
|
-
|
|
21
|
-
- {Web|Mobile|Hybrid}
|
|
102
|
+
# Tech Vision — {{project_name}}
|
|
22
103
|
|
|
23
|
-
##
|
|
24
|
-
-
|
|
104
|
+
## Stack family
|
|
105
|
+
Next.js-class SSR fullstack on edge, with Supabase Postgres as the system of record.
|
|
25
106
|
|
|
26
107
|
## Runtime envelope
|
|
27
|
-
|
|
108
|
+
| Dimension | Decision |
|
|
109
|
+
|---|---|
|
|
110
|
+
| Language | TypeScript end-to-end |
|
|
111
|
+
| Runtime | Edge (Vercel Edge Functions) + Node (server actions) |
|
|
112
|
+
| Persistence | Supabase Postgres (RLS) + PgBouncer |
|
|
113
|
+
| Deploy target | Vercel for app; Supabase managed for data |
|
|
114
|
+
| Edge vs origin | Edge-first for reads; origin for writes |
|
|
28
115
|
|
|
29
|
-
## Build
|
|
30
|
-
| Capability | Decision |
|
|
31
|
-
|
|
32
|
-
| Auth |
|
|
33
|
-
| Payments |
|
|
34
|
-
| Search |
|
|
35
|
-
| Queues |
|
|
36
|
-
| Analytics |
|
|
116
|
+
## Build / buy / borrow
|
|
117
|
+
| Capability | Decision |
|
|
118
|
+
|---|---|
|
|
119
|
+
| Auth | Buy — Supabase Auth |
|
|
120
|
+
| Payments | Buy — Stripe |
|
|
121
|
+
| Search | Buy — Algolia (1st year), revisit |
|
|
122
|
+
| Queues | Borrow — pg_cron + outbox pattern |
|
|
123
|
+
| Analytics | Borrow — PostHog OSS |
|
|
124
|
+
| Email | Buy — Resend |
|
|
37
125
|
|
|
38
126
|
## Non-negotiables
|
|
39
|
-
|
|
127
|
+
1. PII (incl. emails) stored in the user's region only.
|
|
128
|
+
2. p95 server response ≤ 200ms in the user's region.
|
|
129
|
+
3. Single auth identity per human (no shadow accounts).
|
|
130
|
+
4. On-call rotation never exceeds 0.5 pages/eng/week.
|
|
131
|
+
|
|
132
|
+
## Deferred
|
|
133
|
+
- Multi-region writes: revisit when EU active users > 2k.
|
|
134
|
+
- Native mobile clients: revisit when web TTI > 4s on > 20% of sessions or PRD demands offline.
|
|
40
135
|
|
|
41
|
-
##
|
|
42
|
-
-
|
|
136
|
+
## Constraints that drove this
|
|
137
|
+
- Brief constraint #2 (LGPD/GDPR) ruled out global-replica DBs.
|
|
138
|
+
- PRD goal G1 ruled in edge-first reads.
|
|
139
|
+
- Hiring tail in TypeScript ruled out Compose Multiplatform.
|
|
43
140
|
```
|
|
141
|
+
|
|
142
|
+
## Anti-patterns Fury rejects
|
|
143
|
+
|
|
144
|
+
- **Picking a library here.** That's Tony. Pick the *family*.
|
|
145
|
+
- **Non-negotiables that are aspirations.** "Always 100% uptime." Wrong. "Error budget ≤ 0.1% in EU region."
|
|
146
|
+
- **Deferred items with no trigger.** That's procrastination.
|
|
147
|
+
- **A non-negotiable that contradicts a PRD constraint silently.** Surface it, escalate it, decide it.
|
|
148
|
+
|
|
149
|
+
## Hand-off
|
|
150
|
+
|
|
151
|
+
> Tech vision at `.wize/planning/tech-vision.md`. Tony, build the architecture inside this frame. Hill, scope the PRD against the non-negotiables (item 1 means the global launch is back on the table only after EU baseline holds). Hawkeye, pick gate granularity assuming `policy = advisory`.
|
|
@@ -12,6 +12,18 @@ I am **Shuri**. Wakandan technologist. I implement the story Tony wrote, against
|
|
|
12
12
|
4. **Security & perf.** I think about both at write-time, not at review-time.
|
|
13
13
|
5. **Commit with AC IDs.** Every commit cites the story acceptance criteria it advances.
|
|
14
14
|
|
|
15
|
+
## Before I write new code (the reuse ladder)
|
|
16
|
+
|
|
17
|
+
At the "green" step, before typing a new function, I walk this ladder in order and stop at the first "yes":
|
|
18
|
+
|
|
19
|
+
1. **Does this need to exist?** → no: skip it (YAGNI).
|
|
20
|
+
2. **Already in this codebase?** → reuse it, don't rewrite it.
|
|
21
|
+
3. **Does the stdlib do it?** → use the stdlib.
|
|
22
|
+
4. **Native platform/framework feature?** → use that.
|
|
23
|
+
5. **An installed dependency does it?** → use the dependency.
|
|
24
|
+
6. **Is it one line?** → write the one line.
|
|
25
|
+
7. **Only then** do I write the minimum new code that makes the test pass.
|
|
26
|
+
|
|
15
27
|
## Style
|
|
16
28
|
|
|
17
29
|
- File paths, AC IDs, commit-message brevity.
|
|
@@ -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.
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
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."
|
|
5
|
+
name: Checkpoint Preview
|
|
6
|
+
phase: 4-implementation
|
|
7
|
+
owner: wize-agent-dev # Shuri (+ wize-agent-architect Tony on call)
|
|
8
|
+
status: ready
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Checkpoint Preview
|
|
12
|
+
|
|
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.
|
|
14
|
+
|
|
15
|
+
Shuri drives. Tony on call for architectural drift. Hawkeye on call for test design drift.
|
|
16
|
+
|
|
17
|
+
## When to run
|
|
18
|
+
|
|
19
|
+
- Manually, when a story is running long or feels off-track.
|
|
20
|
+
- After the first 2-3 commits of a larger story.
|
|
21
|
+
- When a new constraint is mentioned (security review, perf budget, vendor change).
|
|
22
|
+
|
|
23
|
+
## When NOT to run
|
|
24
|
+
|
|
25
|
+
- Quick-dev / small stories (overhead exceeds the value).
|
|
26
|
+
- When the story is < 50% done and no surprise has come up yet.
|
|
27
|
+
|
|
28
|
+
## Inputs
|
|
29
|
+
|
|
30
|
+
- The current story file: `.wize/solutioning/stories/{epic}/{story}.md`
|
|
31
|
+
- The git diff: uncommitted + committed since story start
|
|
32
|
+
- The `tea-design.md` for the story
|
|
33
|
+
- The `design-system/` tokens used so far
|
|
34
|
+
|
|
35
|
+
## Output
|
|
36
|
+
|
|
37
|
+
- `.wize/implementation/checkpoints/{story_id}.md` (one file per checkpoint, append over time)
|
|
38
|
+
- A decision: continue / pivot / stop
|
|
39
|
+
|
|
40
|
+
## Steps
|
|
41
|
+
|
|
42
|
+
### 1. Pause
|
|
43
|
+
|
|
44
|
+
Stop writing code. Do not commit any pending work until the checkpoint is recorded.
|
|
45
|
+
|
|
46
|
+
### 2. Snapshot
|
|
47
|
+
|
|
48
|
+
Write 5 lines:
|
|
49
|
+
|
|
50
|
+
- Files touched: (list, max 10)
|
|
51
|
+
- ACs done vs. remaining: (X / Y)
|
|
52
|
+
- Tests added: (count, by split)
|
|
53
|
+
- New dependencies: (list)
|
|
54
|
+
- Commits so far: (count)
|
|
55
|
+
|
|
56
|
+
### 3. Sanity check (3 questions)
|
|
57
|
+
|
|
58
|
+
- **Are we solving the right problem?** Compare the implementation with the story's Context and ACs. If the story's intent was misunderstood, pivot.
|
|
59
|
+
- **Is the design holding?** Compare the code with the architecture. If a new pattern emerged without an ADR, flag it.
|
|
60
|
+
- **Any new constraints?** Did anything new appear (security finding, perf regression, vendor change, new stakeholder)?
|
|
61
|
+
|
|
62
|
+
### 4. Decide
|
|
63
|
+
|
|
64
|
+
One of three:
|
|
65
|
+
|
|
66
|
+
- **Continue** — the path is right. Record the snapshot; resume.
|
|
67
|
+
- **Pivot** — change scope or approach. Open a follow-up story with `wize-create-story`; do not edit the current story's ACs.
|
|
68
|
+
- **Stop** — the story is no longer worth it. Move it to `backlog` via `wize-correct-course`.
|
|
69
|
+
|
|
70
|
+
One decision per checkpoint. Re-run for additional decisions.
|
|
71
|
+
|
|
72
|
+
### 5. Hand off
|
|
73
|
+
|
|
74
|
+
Notify the next workflow:
|
|
75
|
+
|
|
76
|
+
- Continue → `/wize-dev-story` (resume).
|
|
77
|
+
- Pivot → `/wize-create-story` (new story for the pivot).
|
|
78
|
+
- Stop → `/wize-correct-course` (defer the original).
|
|
79
|
+
|
|
80
|
+
## Output template
|
|
81
|
+
|
|
82
|
+
```markdown
|
|
83
|
+
---
|
|
84
|
+
story_id: E04-S02
|
|
85
|
+
checkpoint: 1
|
|
86
|
+
date: 2026-06-16
|
|
87
|
+
author: Shuri
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
# Checkpoint — E04-S02
|
|
91
|
+
|
|
92
|
+
## Snapshot
|
|
93
|
+
- Files touched: src/...
|
|
94
|
+
- ACs done vs. remaining: 1 / 4
|
|
95
|
+
- Tests added: 2 unit, 1 integration
|
|
96
|
+
- New dependencies: none
|
|
97
|
+
- Commits so far: 3
|
|
98
|
+
|
|
99
|
+
## Sanity check
|
|
100
|
+
- Right problem? Yes.
|
|
101
|
+
- Design holding? Yes.
|
|
102
|
+
- New constraints? Vendor X deprecated their API; need a different client lib.
|
|
103
|
+
|
|
104
|
+
## Decision
|
|
105
|
+
**Pivot** — see follow-up E04-S04 (client lib migration).
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Anti-patterns Shuri rejects
|
|
109
|
+
|
|
110
|
+
- Skipping the snapshot to "save time" — the snapshot is the artifact.
|
|
111
|
+
- Auto-pivoting (changing scope without an explicit checkpoint).
|
|
112
|
+
- Recording "continue" without the sanity check answers.
|
|
113
|
+
- Bundling multiple pivots in one checkpoint (one decision per run).
|
|
114
|
+
|
|
115
|
+
## Hand-off
|
|
116
|
+
|
|
117
|
+
> "Checkpoint recorded for **{story_id}** (decision: {continue|pivot|stop}). Next: `/wize-dev-story` / `/wize-create-story` / `/wize-correct-course`."
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Wize Dev Kit — overrides for the built-in workflow "wize-code-review".
|
|
2
|
+
# DO NOT EDIT in the installed kit; copy to .wize/custom/workflows/wize-code-review/
|
|
3
|
+
# for project-level overrides.
|
|
4
|
+
|
|
5
|
+
[workflow]
|
|
6
|
+
|
|
7
|
+
# Steps to run before standard activation (config load, greet).
|
|
8
|
+
activation_steps_prepend = []
|
|
9
|
+
|
|
10
|
+
# Steps to run after greet but before the workflow begins.
|
|
11
|
+
activation_steps_append = []
|
|
12
|
+
|
|
13
|
+
# Persistent facts the workflow keeps in mind for the whole run.
|
|
14
|
+
persistent_facts = [
|
|
15
|
+
"file:{project-root}/.wize/knowledge/document-project/conventions.md",
|
|
16
|
+
]
|
|
17
|
+
|
|
18
|
+
# Scalar executed when the workflow reaches its final step,
|
|
19
|
+
# after review findings are presented and sprint status is synced.
|
|
20
|
+
# Override wins. Leave empty for no custom post-completion behavior.
|
|
21
|
+
on_complete = ""
|