wize-dev-kit 0.14.0 → 0.16.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/ARCH.md +24 -77
- package/CHANGELOG.md +24 -0
- package/DECISIONS.md +1 -27
- package/README.md +7 -2
- package/ROSTER.md +3 -11
- package/adapters/README.md +7 -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/kimi-code/README.md +5 -5
- package/adapters/kimi-code/render.js +2 -2
- package/adapters/opencode/README.md +3 -3
- package/adapters/opencode/render.js +1 -27
- package/adapters/windsurf/README.md +3 -3
- 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 +0 -2
- package/src/app-overlay/wize-app-scaffold/workflow.md +0 -2
- package/src/app-overlay/wize-app-store-listing/workflow.md +0 -2
- package/src/builder-skills/wize-create-agent/workflow.md +0 -2
- package/src/builder-skills/wize-create-skill/workflow.md +0 -2
- package/src/builder-skills/wize-create-workflow/workflow.md +0 -2
- package/src/core-skills/module.yaml +3 -0
- package/src/core-skills/wize-advanced-elicitation/skill.md +0 -2
- package/src/core-skills/wize-brainstorming/skill.md +0 -2
- package/src/core-skills/wize-eli5/skill.md +72 -0
- package/src/core-skills/wize-review-adversarial/skill.md +0 -3
- package/src/core-skills/wize-shard-doc/skill.md +0 -2
- package/src/method-skills/1-analysis/wize-agent-analyst/agent.yaml +0 -3
- package/src/method-skills/1-analysis/wize-document-project/workflow.md +20 -213
- package/src/method-skills/1-analysis/wize-prfaq/workflow.md +11 -152
- package/src/method-skills/1-analysis/wize-product-brief/workflow.md +19 -92
- package/src/method-skills/1-analysis/wize-research/workflow.md +12 -39
- package/src/method-skills/1-analysis/wize-trigger-map/workflow.md +16 -82
- package/src/method-skills/2-plan-workflows/wize-create-prd/workflow.md +23 -135
- package/src/method-skills/2-plan-workflows/wize-ux-design/workflow.md +28 -134
- package/src/method-skills/2-plan-workflows/wize-ux-scenarios/workflow.md +15 -93
- package/src/method-skills/2-plan-workflows/wize-validate-prd/workflow.md +12 -108
- package/src/method-skills/3-solutioning/wize-check-implementation-readiness/workflow.md +11 -103
- package/src/method-skills/3-solutioning/wize-create-architecture/workflow.md +48 -55
- package/src/method-skills/3-solutioning/wize-create-epics-and-stories/workflow.md +15 -154
- package/src/method-skills/3-solutioning/wize-design-system/workflow.md +22 -184
- package/src/method-skills/3-solutioning/wize-nfr-principles/workflow.md +17 -145
- package/src/method-skills/3-solutioning/wize-tech-vision/workflow.md +22 -130
- package/src/method-skills/4-implementation/wize-agent-dev/persona.md +0 -12
- package/src/method-skills/4-implementation/wize-code-review/workflow.md +12 -54
- package/src/method-skills/4-implementation/wize-create-story/workflow.md +10 -154
- package/src/method-skills/4-implementation/wize-dev-story/workflow.md +17 -185
- package/src/method-skills/4-implementation/wize-quick-dev/workflow.md +18 -136
- package/src/method-skills/4-implementation/wize-retrospective/workflow.md +10 -114
- package/src/method-skills/4-implementation/wize-sprint-planning/workflow.md +11 -78
- package/src/method-skills/4-implementation/wize-sprint-status/workflow.md +11 -45
- package/src/method-skills/module.yaml +0 -28
- package/src/orchestrator-skills/module.yaml +1 -7
- package/src/orchestrator-skills/wize-help/skill.md +67 -227
- package/src/orchestrator-skills/wize-onboarding/workflow.md +14 -78
- package/src/orchestrator-skills/wize-orchestrator/agent.yaml +0 -2
- package/src/orchestrator-skills/wize-orchestrator/persona.md +3 -44
- package/src/orchestrator-skills/wize-party-mode/workflow.md +0 -2
- package/src/tea-skills/wize-tea-design/workflow.md +13 -107
- package/src/tea-skills/wize-tea-gate/workflow.md +25 -118
- package/src/tea-skills/wize-tea-nfr/workflow.md +14 -107
- package/src/tea-skills/wize-tea-review/workflow.md +13 -123
- package/src/tea-skills/wize-tea-risk/workflow.md +10 -113
- package/src/tea-skills/wize-tea-trace/workflow.md +12 -86
- package/src/web-overlay/wize-web-deploy/workflow.md +0 -2
- package/src/web-overlay/wize-web-scaffold/workflow.md +0 -2
- package/src/web-overlay/wize-web-seo-audit/workflow.md +0 -2
- package/tools/check-eli5-all-adapters.js +50 -0
- package/tools/installer/onboarding.js +20 -14
- package/tools/installer/render-shared.js +14 -158
- package/tools/installer/validators/run-all.js +2 -3
- package/tools/installer/wize-cli.js +70 -499
- package/AGENTS.md +0 -37
- package/README.es.md +0 -294
- package/README.pt-BR.md +0 -292
- package/docs/harnesses/antigravity.md +0 -20
- package/docs/harnesses/antigravity.pt-BR.md +0 -20
- package/docs/harnesses/claude-code.md +0 -23
- package/docs/harnesses/claude-code.pt-BR.md +0 -23
- package/docs/harnesses/codex.md +0 -21
- package/docs/harnesses/codex.pt-BR.md +0 -21
- package/docs/harnesses/continue.md +0 -21
- package/docs/harnesses/continue.pt-BR.md +0 -21
- package/docs/harnesses/cursor.md +0 -22
- package/docs/harnesses/cursor.pt-BR.md +0 -22
- package/docs/harnesses/generic.md +0 -20
- package/docs/harnesses/generic.pt-BR.md +0 -20
- package/docs/harnesses/kimi-code.md +0 -19
- package/docs/harnesses/kimi-code.pt-BR.md +0 -19
- package/docs/harnesses/opencode.md +0 -31
- package/docs/harnesses/opencode.pt-BR.md +0 -31
- package/docs/harnesses/windsurf.md +0 -22
- package/docs/harnesses/windsurf.pt-BR.md +0 -22
- package/src/core-skills/wize-customize/skill.md +0 -116
- package/src/core-skills/wize-editorial-review-prose/skill.md +0 -94
- package/src/core-skills/wize-editorial-review-structure/skill.md +0 -99
- package/src/core-skills/wize-grill/skill.md +0 -77
- package/src/core-skills/wize-index-docs/skill.md +0 -119
- package/src/core-skills/wize-pre-pr-check/skill.md +0 -134
- package/src/core-skills/wize-review-edge-case-hunter/skill.md +0 -115
- package/src/core-skills/wize-spec/assets/headless-schemas.md +0 -39
- package/src/core-skills/wize-spec/assets/spec-template.md +0 -40
- package/src/core-skills/wize-spec/customize.toml +0 -20
- package/src/core-skills/wize-spec/skill.md +0 -112
- package/src/method-skills/1-analysis/wize-document-project/documentation-requirements.csv +0 -12
- package/src/method-skills/1-analysis/wize-document-project/templates/api-contracts-template.md +0 -38
- package/src/method-skills/1-analysis/wize-document-project/templates/architecture-template.md +0 -54
- package/src/method-skills/1-analysis/wize-document-project/templates/component-inventory-template.md +0 -40
- package/src/method-skills/1-analysis/wize-document-project/templates/contribution-guide-template.md +0 -34
- package/src/method-skills/1-analysis/wize-document-project/templates/data-models-template.md +0 -36
- package/src/method-skills/1-analysis/wize-document-project/templates/deep-dive-template.md +0 -312
- package/src/method-skills/1-analysis/wize-document-project/templates/deployment-guide-template.md +0 -42
- package/src/method-skills/1-analysis/wize-document-project/templates/development-guide-template.md +0 -61
- package/src/method-skills/1-analysis/wize-document-project/templates/index-template.md +0 -185
- package/src/method-skills/1-analysis/wize-document-project/templates/project-overview-template.md +0 -110
- package/src/method-skills/1-analysis/wize-document-project/templates/project-scan-report-schema.json +0 -159
- package/src/method-skills/1-analysis/wize-document-project/templates/source-tree-template.md +0 -142
- package/src/method-skills/1-analysis/wize-domain-research/customize.toml +0 -14
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-01-init.md +0 -49
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-02-domain-analysis.md +0 -39
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-03-competitive-landscape.md +0 -39
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-04-regulatory-focus.md +0 -39
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-05-technical-trends.md +0 -39
- package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-06-research-synthesis.md +0 -43
- package/src/method-skills/1-analysis/wize-domain-research/research.template.md +0 -31
- package/src/method-skills/1-analysis/wize-domain-research/workflow.md +0 -58
- package/src/method-skills/1-analysis/wize-market-research/customize.toml +0 -14
- package/src/method-skills/1-analysis/wize-market-research/research.template.md +0 -31
- package/src/method-skills/1-analysis/wize-market-research/steps/step-01-init.md +0 -57
- package/src/method-skills/1-analysis/wize-market-research/steps/step-02-customer-behavior.md +0 -39
- package/src/method-skills/1-analysis/wize-market-research/steps/step-03-customer-pain-points.md +0 -37
- package/src/method-skills/1-analysis/wize-market-research/steps/step-04-customer-decisions.md +0 -39
- package/src/method-skills/1-analysis/wize-market-research/steps/step-05-competitive-analysis.md +0 -37
- package/src/method-skills/1-analysis/wize-market-research/steps/step-06-research-completion.md +0 -47
- package/src/method-skills/1-analysis/wize-market-research/workflow.md +0 -66
- package/src/method-skills/1-analysis/wize-refresh-knowledge/workflow.md +0 -129
- package/src/method-skills/1-analysis/wize-technical-research/customize.toml +0 -14
- package/src/method-skills/1-analysis/wize-technical-research/research.template.md +0 -31
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-01-init.md +0 -49
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-02-technical-overview.md +0 -45
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-03-integration-patterns.md +0 -39
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-04-architectural-patterns.md +0 -39
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-05-implementation-research.md +0 -42
- package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-06-research-synthesis.md +0 -46
- package/src/method-skills/1-analysis/wize-technical-research/workflow.md +0 -60
- package/src/method-skills/2-plan-workflows/wize-edit-prd/workflow.md +0 -110
- package/src/method-skills/3-solutioning/wize-create-architecture/architecture-decision-template.md +0 -41
- package/src/method-skills/3-solutioning/wize-create-architecture/customize.toml +0 -20
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-01-init.md +0 -95
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-01b-continue.md +0 -32
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-02-context.md +0 -126
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-03-starter.md +0 -110
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-04-decisions.md +0 -129
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-05-patterns.md +0 -109
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-06-structure.md +0 -97
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-07-validation.md +0 -124
- package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-08-complete.md +0 -59
- package/src/method-skills/3-solutioning/wize-project-context/workflow.md +0 -120
- package/src/method-skills/4-implementation/wize-changelog/workflow.md +0 -184
- package/src/method-skills/4-implementation/wize-checkpoint-preview/workflow.md +0 -117
- package/src/method-skills/4-implementation/wize-code-review/customize.toml +0 -21
- package/src/method-skills/4-implementation/wize-code-review/steps/step-01-gather-context.md +0 -64
- package/src/method-skills/4-implementation/wize-code-review/steps/step-02-review.md +0 -40
- package/src/method-skills/4-implementation/wize-code-review/steps/step-03-triage.md +0 -43
- package/src/method-skills/4-implementation/wize-code-review/steps/step-04-present.md +0 -100
- package/src/method-skills/4-implementation/wize-correct-course/workflow.md +0 -93
- package/src/method-skills/4-implementation/wize-investigate/workflow.md +0 -123
- package/src/method-skills/4-implementation/wize-release/workflow.md +0 -162
- package/src/orchestrator-skills/wize/skill.md +0 -164
- package/src/orchestrator-skills/wize-check/skill.md +0 -98
- package/src/security-overlay/_shared/allowlist.js +0 -154
- package/src/security-overlay/_shared/backlog.js +0 -169
- package/src/security-overlay/_shared/cli-runner.js +0 -87
- package/src/security-overlay/_shared/cvss.js +0 -108
- package/src/security-overlay/_shared/detect.js +0 -125
- package/src/security-overlay/_shared/install-script.js +0 -205
- package/src/security-overlay/_shared/invoke-phase.js +0 -86
- package/src/security-overlay/_shared/owasp.js +0 -56
- package/src/security-overlay/_shared/partial.js +0 -225
- package/src/security-overlay/_shared/preflight.js +0 -175
- package/src/security-overlay/_shared/scope-gate.js +0 -172
- package/src/security-overlay/_shared/scope-parser.js +0 -147
- package/src/security-overlay/agents/red-teamer/agent.yaml +0 -54
- package/src/security-overlay/agents/red-teamer/persona.md +0 -49
- package/src/security-overlay/data/common.txt +0 -115
- package/src/security-overlay/data/owasp-top10.json +0 -15
- package/src/security-overlay/data/tool-allowlist.json +0 -31
- package/src/security-overlay/skills/wize-sec-enumerate/scripts/run-enumerate.js +0 -180
- package/src/security-overlay/skills/wize-sec-enumerate/skill.md +0 -34
- package/src/security-overlay/skills/wize-sec-exploit/data/common.txt +0 -117
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-ffuf.js +0 -147
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-nikto.js +0 -145
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-nuclei.js +0 -176
- package/src/security-overlay/skills/wize-sec-exploit/scripts/run-sqlmap.js +0 -139
- package/src/security-overlay/skills/wize-sec-pentest/scripts/run-pipeline.js +0 -184
- package/src/security-overlay/skills/wize-sec-pentest/skill.md +0 -54
- package/src/security-overlay/skills/wize-sec-recon/scripts/run-gitleaks.js +0 -139
- package/src/security-overlay/skills/wize-sec-recon/scripts/run-osv.js +0 -227
- package/src/security-overlay/skills/wize-sec-recon/scripts/run-recon.js +0 -162
- package/src/security-overlay/skills/wize-sec-recon/skill.md +0 -37
- package/src/security-overlay/skills/wize-sec-report/scripts/render-report.js +0 -1033
- package/src/security-overlay/skills/wize-sec-scope/scripts/generate-scope.js +0 -106
- package/src/security-overlay/skills/wize-sec-scope/skill.md +0 -52
- package/src/tea-skills/wize-qa-generate-e2e-tests/workflow.md +0 -121
- package/tools/installer/baseline.js +0 -128
- package/tools/installer/commands/agent.js +0 -197
- package/tools/installer/commands/doctor.js +0 -319
- package/tools/installer/commands/document-project.js +0 -93
- package/tools/installer/commands/sync.js +0 -45
- package/tools/installer/commands/update.js +0 -172
- package/tools/installer/document-project/batch-scanner.js +0 -93
- package/tools/installer/document-project/classify.js +0 -170
- package/tools/installer/document-project/modes/deep-dive.js +0 -196
- package/tools/installer/document-project/modes/full-rescan.js +0 -15
- package/tools/installer/document-project/modes/initial-scan.js +0 -100
- package/tools/installer/document-project/modes/quick.js +0 -211
- package/tools/installer/document-project/render-index.js +0 -101
- package/tools/installer/document-project/state.js +0 -110
- package/tools/installer/version-check.js +0 -117
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
|
|
3
|
-
code: wize-editorial-review-structure
|
|
4
|
-
description: "Use quando um artefato Wize precisar de revisão estrutural — seções obrigatórias, ordenação e níveis de heading."
|
|
5
|
-
name: Editorial Review — Structure
|
|
6
|
-
module: core
|
|
7
|
-
status: ready
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Editorial Review — Structure
|
|
11
|
-
|
|
12
|
-
**Goal.** Catch structural drift in Wize artifacts: missing required sections, wrong ordering, inconsistent heading levels. Peggy Carter runs the review; the user applies the fixes.
|
|
13
|
-
|
|
14
|
-
Peggy drives. Tony on call for architecture artifacts; Maria Hill for PRD; Hawkeye for gates.
|
|
15
|
-
|
|
16
|
-
## When to use
|
|
17
|
-
|
|
18
|
-
- "Review the structure of this PRD."
|
|
19
|
-
- "Is this ADR complete?"
|
|
20
|
-
- "Does this gate file have all required sections?"
|
|
21
|
-
|
|
22
|
-
## When NOT to use
|
|
23
|
-
|
|
24
|
-
- Prose quality → use `wize-editorial-review-prose`.
|
|
25
|
-
- Content correctness (does the AC actually hold?) → use `wize-tea-review` or `wize-validate-prd`.
|
|
26
|
-
|
|
27
|
-
## Inputs
|
|
28
|
-
|
|
29
|
-
- A markdown file under `.wize/`.
|
|
30
|
-
- (Optional) the artifact type (PRD, ADR, gate, story, brief) — auto-detected from path.
|
|
31
|
-
|
|
32
|
-
## Output
|
|
33
|
-
|
|
34
|
-
- A markdown review with section-level findings (missing, misordered, mistyped).
|
|
35
|
-
|
|
36
|
-
## Steps
|
|
37
|
-
|
|
38
|
-
### 1. Detect
|
|
39
|
-
|
|
40
|
-
Infer the artifact type from the path:
|
|
41
|
-
|
|
42
|
-
| Path | Type |
|
|
43
|
-
|---|---|
|
|
44
|
-
| `planning/brief.md` | brief |
|
|
45
|
-
| `planning/prd.md` | prd |
|
|
46
|
-
| `solutioning/adrs/ADR-*.md` | adr |
|
|
47
|
-
| `solutioning/architecture.md` | architecture |
|
|
48
|
-
| `implementation/tea/{epic}/{story}/gate.md` | gate |
|
|
49
|
-
| `solutioning/stories/*/*.md` | story |
|
|
50
|
-
| `solutioning/epics/*/*.md` | epic |
|
|
51
|
-
|
|
52
|
-
### 2. Check against the template
|
|
53
|
-
|
|
54
|
-
Each type has a required set of H2 sections. Use the template in the relevant workflow file (e.g., for PRD, see `wize-create-prd/workflow.md`). Compare against the file.
|
|
55
|
-
|
|
56
|
-
### 3. Hunt (4 areas)
|
|
57
|
-
|
|
58
|
-
- **Missing sections.** Required H2 not present.
|
|
59
|
-
- **Misordered sections.** H2 present but in wrong order relative to the template.
|
|
60
|
-
- **Inconsistent heading levels.** H3 used where H2 is expected (or vice versa).
|
|
61
|
-
- **Empty sections.** H2 with no content (a heading and nothing else).
|
|
62
|
-
|
|
63
|
-
### 4. Hand off
|
|
64
|
-
|
|
65
|
-
Output is a markdown list with section-level findings. Severity: **must-fix** (missing) / **should-fix** (misordered) / **nit** (heading level).
|
|
66
|
-
|
|
67
|
-
## Output template
|
|
68
|
-
|
|
69
|
-
```markdown
|
|
70
|
-
---
|
|
71
|
-
date: 2026-06-17
|
|
72
|
-
file: planning/prd.md
|
|
73
|
-
type: prd
|
|
74
|
-
author: Peggy
|
|
75
|
-
---
|
|
76
|
-
|
|
77
|
-
# Structure review — prd.md (PRD)
|
|
78
|
-
|
|
79
|
-
## Must-fix
|
|
80
|
-
- Missing H2: "Out of scope".
|
|
81
|
-
- Missing H2: "Open questions".
|
|
82
|
-
|
|
83
|
-
## Should-fix
|
|
84
|
-
- H2 "Success criteria" appears after "Non-goals"; should be before (per template).
|
|
85
|
-
|
|
86
|
-
## Nits
|
|
87
|
-
- H3 used in "Constraints" where H4 would match the rest of the doc.
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## Anti-patterns Peggy rejects
|
|
91
|
-
|
|
92
|
-
- Suggesting a different section order than the template. (The template is the source of truth.)
|
|
93
|
-
- Reviewing prose. (Use the prose skill.)
|
|
94
|
-
- Marking optional sections (e.g., "Glossary" in PRD) as missing.
|
|
95
|
-
- Auto-rewriting the file. (Suggest; never write.)
|
|
96
|
-
|
|
97
|
-
## Hand-off
|
|
98
|
-
|
|
99
|
-
> "Structure review complete for `{file}` ({type}). {M} must-fix, {K} should-fix, {L} nits. Apply or reject per finding."
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
|
|
3
|
-
code: wize-grill
|
|
4
|
-
description: "Use quando uma demanda chegar vaga e precisar de entrevista exaustiva para alcançar entendimento compartilhado antes de produzir qualquer artefato."
|
|
5
|
-
name: Grill
|
|
6
|
-
module: core
|
|
7
|
-
status: ready
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Grill
|
|
11
|
-
|
|
12
|
-
**Goal.** Interview the user exhaustively about a demand until both sides reach **shared understanding** — before any artifact is drafted. Sharper answers make a sharper brief, PRD, epic, story, or plan. Grill is an input-quality tool, not an artifact of its own.
|
|
13
|
-
|
|
14
|
-
Any persona about to author an artifact can invoke it: Pepper before a brief, Maria Hill before a PRD, Tony before epics/stories/architecture, Wizer when a demand arrives fuzzy. Wizer also **suggests** it from `/wize` (or `/wize-help`) — always suggest, never force.
|
|
15
|
-
|
|
16
|
-
## The five rules
|
|
17
|
-
|
|
18
|
-
1. **One question at a time.** Ask, then wait for the answer. A batch of questions is bewildering and produces shallow answers.
|
|
19
|
-
2. **Every question ships with a recommendation.** State your recommended answer and a one-line reason. The user confirms or corrects — far cheaper than answering from scratch.
|
|
20
|
-
3. **Facts are looked up; decisions are asked.** If the answer lives in the repo, `.wize/`, or the environment (stack, existing behavior, conventions, prior artifacts), fetch it — never ask. Only genuine decisions — trade-offs, priorities, scope calls — go to the user.
|
|
21
|
-
4. **Walk the decision tree in dependency order.** Resolve upstream decisions before the downstream ones that depend on them. Don't ask about scope before the problem is agreed.
|
|
22
|
-
5. **No drafting until confirmed.** Close with a compact summary of every decision made and ask for confirmation of shared understanding. Only then hand back to the authoring workflow.
|
|
23
|
-
|
|
24
|
-
## Question ladder (dependency order)
|
|
25
|
-
|
|
26
|
-
Climb top-down; **skip any rung an existing artifact already answers** (brief, trigger map, PRD, architecture — check first, rule 3).
|
|
27
|
-
|
|
28
|
-
| Rung | Resolves | Feeds |
|
|
29
|
-
|---|---|---|
|
|
30
|
-
| 1. Problem | What hurts, for whom, what's the evidence it hurts | Brief vision / story context |
|
|
31
|
-
| 2. Outcome | The observable result that means "solved" — metric, target, deadline | Success criteria / PRD goals |
|
|
32
|
-
| 3. Audience | Primary user (role + JTBD), who else is affected | Brief audience / trigger map |
|
|
33
|
-
| 4. Scope | What's in, what's explicitly out, non-goals | PRD scope table / story restrictions |
|
|
34
|
-
| 5. Constraints | Deadline, budget, compliance, integrations, protected behaviors | Brief constraints / restrictions |
|
|
35
|
-
| 6. Risks & assumptions | What, if wrong, changes the plan | PRD assumptions / risk profile |
|
|
36
|
-
| 7. Validation | How we'll verify — which checks, which ACs, what "done" means | ACs / validation contract |
|
|
37
|
-
|
|
38
|
-
When an answer comes back vague, apply a technique from `wize-advanced-elicitation` (5 Whys, laddering, premortem) to that one rung before moving on.
|
|
39
|
-
|
|
40
|
-
## Calibration — how hard to grill
|
|
41
|
-
|
|
42
|
-
| Demand class | Depth |
|
|
43
|
-
|---|---|
|
|
44
|
-
| **Quick Dev** (bug fix, copy edit, dep bump) | Don't grill. One clarifying question max — grilling a typo fix is theater. |
|
|
45
|
-
| **Full Lifecycle, incremental** (new story in a known epic) | Short pass: rungs 4, 5, 7 only — the upstream rungs live in the PRD. |
|
|
46
|
-
| **Full Lifecycle, new value** (new feature, new product, new plan) | Full ladder. |
|
|
47
|
-
|
|
48
|
-
Momentum shortcut: after **three consecutive "as you recommend"** answers, switch to batch mode — state the remaining recommendations as one list and ask for a single confirmation. Respect the user's time; the point is clarity, not ceremony.
|
|
49
|
-
|
|
50
|
-
## Where answers land
|
|
51
|
-
|
|
52
|
-
Grill produces no separate file. Route each decision to its home:
|
|
53
|
-
|
|
54
|
-
- **Decisions** → the target artifact's fields (brief sections, PRD scope/ACs, story restrictions/validation contract) — in the artifact's own words, not chat quotes.
|
|
55
|
-
- **Unresolved questions** → the artifact's *Open questions*, each with owner + priority (`blocker` / `important` / `nice-to-know`).
|
|
56
|
-
- **Load-bearing trade-offs** → the artifact's decision log (or `DECISIONS.md` / an ADR when architectural).
|
|
57
|
-
|
|
58
|
-
## Stop conditions
|
|
59
|
-
|
|
60
|
-
Stop grilling when **any** of these hits:
|
|
61
|
-
|
|
62
|
-
- Every relevant rung is resolved or explicitly parked as an open question with an owner.
|
|
63
|
-
- The user says "enough" / "just go" — park the rest as open questions and proceed with your recommendations, flagged as assumptions.
|
|
64
|
-
- The summary is confirmed — shared understanding reached.
|
|
65
|
-
|
|
66
|
-
## Anti-patterns
|
|
67
|
-
|
|
68
|
-
- Multiple questions in one message.
|
|
69
|
-
- Asking a fact `grep` or `.wize/` would answer.
|
|
70
|
-
- A question without a recommendation ("So… what do you want?").
|
|
71
|
-
- Grilling a Quick Dev demand.
|
|
72
|
-
- Re-opening a confirmed decision without new information.
|
|
73
|
-
- Continuing to interrogate after confirmation — grill is a phase, not a personality.
|
|
74
|
-
|
|
75
|
-
## Hand-off
|
|
76
|
-
|
|
77
|
-
> Shared understanding confirmed: {n} decisions captured, {m} open questions parked with owners. Handing back to {persona} / `{workflow}` to draft the {artifact}.
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
|
|
3
|
-
code: wize-index-docs
|
|
4
|
-
description: "Use quando precisar reconstruir o índice da base de conhecimento (.wize/knowledge/index.md) a partir da árvore real de artefatos."
|
|
5
|
-
name: Index Docs
|
|
6
|
-
module: core
|
|
7
|
-
status: ready
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Index Docs
|
|
11
|
-
|
|
12
|
-
**Goal.** Rebuild `.wize/knowledge/index.md` from the actual tree. One file that lists every artifact with a one-line description and a relative link. New devs read this file first.
|
|
13
|
-
|
|
14
|
-
Wizer drives. Peggy polishes the one-line descriptions on the second pass.
|
|
15
|
-
|
|
16
|
-
## When to run
|
|
17
|
-
|
|
18
|
-
- After any major artifact is created or moved.
|
|
19
|
-
- Before sprint planning (to confirm what exists).
|
|
20
|
-
- When onboarding a new team member.
|
|
21
|
-
|
|
22
|
-
## When NOT to run
|
|
23
|
-
|
|
24
|
-
- Inside an IDE target folder (`.claude/`, `.cursor/`, etc.) — out of scope.
|
|
25
|
-
- As a CI step on every commit (too noisy; manual).
|
|
26
|
-
|
|
27
|
-
## Inputs
|
|
28
|
-
|
|
29
|
-
- The `.wize/` tree (read-only scan).
|
|
30
|
-
- A user message: "Rebuild the index" or similar.
|
|
31
|
-
|
|
32
|
-
## Output
|
|
33
|
-
|
|
34
|
-
- `.wize/knowledge/index.md` with sections: Planning, Solutioning, Implementation, Knowledge, Custom.
|
|
35
|
-
|
|
36
|
-
## Steps
|
|
37
|
-
|
|
38
|
-
### 1. Scan
|
|
39
|
-
|
|
40
|
-
Walk `.wize/` recursively. Skip hidden directories (`.DS_Store` etc.). For each file:
|
|
41
|
-
|
|
42
|
-
- Read its YAML frontmatter.
|
|
43
|
-
- If `description` is present, use it.
|
|
44
|
-
- Else use the first `# Heading` line.
|
|
45
|
-
- Else use the file name (kebab-case to title case).
|
|
46
|
-
|
|
47
|
-
### 2. Group
|
|
48
|
-
|
|
49
|
-
Sort into 5 sections by file path:
|
|
50
|
-
|
|
51
|
-
| Section | Path prefix |
|
|
52
|
-
|---|---|
|
|
53
|
-
| Planning | `.wize/planning/` |
|
|
54
|
-
| Solutioning | `.wize/solutioning/` |
|
|
55
|
-
| Implementation | `.wize/implementation/` |
|
|
56
|
-
| Knowledge | `.wize/knowledge/` (excluding the index file itself) |
|
|
57
|
-
| Custom | `.wize/custom/` |
|
|
58
|
-
|
|
59
|
-
### 3. Write
|
|
60
|
-
|
|
61
|
-
Generate `.wize/knowledge/index.md` with:
|
|
62
|
-
|
|
63
|
-
- YAML frontmatter (`generated`, `last_updated`, `total_files`).
|
|
64
|
-
- One H2 per section.
|
|
65
|
-
- One bullet per file: `- [{title}]({relative_path}) — {one-line description}`.
|
|
66
|
-
- A footer with the total file count and the timestamp.
|
|
67
|
-
|
|
68
|
-
If a section is empty, omit the heading.
|
|
69
|
-
|
|
70
|
-
### 4. Hand off
|
|
71
|
-
|
|
72
|
-
Output is the index file. The user can review and adjust manually if the one-liners are stale. Re-run to overwrite.
|
|
73
|
-
|
|
74
|
-
## Output template
|
|
75
|
-
|
|
76
|
-
```markdown
|
|
77
|
-
---
|
|
78
|
-
generated: 2026-06-17
|
|
79
|
-
last_updated: 2026-06-17
|
|
80
|
-
total_files: 24
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
# Wize artifacts index
|
|
84
|
-
|
|
85
|
-
## Planning (5)
|
|
86
|
-
- [Brief — site-qwize](planning/brief.md) — Pepper's one-pager for the site.
|
|
87
|
-
- [PRD — site-qwize](planning/prd.md) — Maria Hill's PRD for v1.
|
|
88
|
-
- [Trigger map](planning/trigger-map.md) — WDS user-psychology map.
|
|
89
|
-
- [UX scenarios](planning/ux/ux-scenarios.md) — Mantis's 8-question dialog.
|
|
90
|
-
- [Tech vision](planning/tech-vision.md) — Fury's stack pick.
|
|
91
|
-
|
|
92
|
-
## Solutioning (4)
|
|
93
|
-
- [Architecture](solutioning/architecture.md) — Tony's 8-step architecture.
|
|
94
|
-
- [ADR-001](solutioning/adrs/ADR-001-...) — ...
|
|
95
|
-
...
|
|
96
|
-
|
|
97
|
-
## Implementation (8)
|
|
98
|
-
- [Sprint 1 status](implementation/sprint-status.md) — closed.
|
|
99
|
-
- [Risk profile](implementation/tea/risk-profile.md) — 13 risks mitigated.
|
|
100
|
-
...
|
|
101
|
-
|
|
102
|
-
## Knowledge (6)
|
|
103
|
-
- [Document project overview](knowledge/document-project/overview.md) — ...
|
|
104
|
-
...
|
|
105
|
-
|
|
106
|
-
## Custom (1)
|
|
107
|
-
- [Agent: runbooks](custom/agents/wize-agent-runbooks/agent.yaml) — ...
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
## Anti-patterns Wizer rejects
|
|
111
|
-
|
|
112
|
-
- Including IDE target folders (`.claude/`, `.cursor/`, `.kimi/`, etc.) in the index.
|
|
113
|
-
- Dumping file contents (just the description + link).
|
|
114
|
-
- Auto-running on every commit (manual or scheduled only).
|
|
115
|
-
- Mixing in files outside `.wize/`.
|
|
116
|
-
|
|
117
|
-
## Hand-off
|
|
118
|
-
|
|
119
|
-
> "Index rebuilt at `.wize/knowledge/index.md`. {N} files indexed across 5 sections. Next: `/wize` (or `/wize-help`) reads this file when answering."
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
code: wize-pre-pr-check
|
|
3
|
-
name: wize-pre-pr-check
|
|
4
|
-
module: core
|
|
5
|
-
description: "Quando for abrir um Pull Request ou PR leia"
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Pre-PR Check
|
|
9
|
-
|
|
10
|
-
**Goal.** Rodar os checks obrigatórios localmente antes de abrir um PR, falhando cedo e rápido. Evita ciclagem cara de CI no Actions — principalmente lint, format, build e testes rápidos. O objetivo é ser um portão (gate) antes de submeter código.
|
|
11
|
-
|
|
12
|
-
**Agnóstica de tecnologia.** Não prescreve ferramentas específicas; lê os comandos disponíveis no repositório e executa o que for aplicável.
|
|
13
|
-
|
|
14
|
-
## When to run
|
|
15
|
-
|
|
16
|
-
- Imediatamente antes de `git push` para uma branch de PR.
|
|
17
|
-
- Antes de abrir o PR no GitHub/GitLab.
|
|
18
|
-
- Após `git commit` na branch de feature, como sanity check.
|
|
19
|
-
- A qualquer momento durante o desenvolvimento — fail fast.
|
|
20
|
-
|
|
21
|
-
## When NOT to run
|
|
22
|
-
|
|
23
|
-
- Quando o CI já está verde e o PR está em revisão (o gate já passou).
|
|
24
|
-
- Quando o repositório não tem scripts/ferramentas de lint/test configurados.
|
|
25
|
-
|
|
26
|
-
## Operating contract
|
|
27
|
-
|
|
28
|
-
- **Leia o projeto antes de rodar.** Procura por `package.json`, `composer.json`, `Makefile`, `justfile`, `pyproject.toml`, `Cargo.toml`, etc. para descobrir os comandos de check existentes.
|
|
29
|
-
- **Só execute o que existir.** Se não houver `eslint`, pule o passo de lint. Se não houver `phpstan`, pule o passo de análise estática. Nunca exija uma ferramenta que não esteja configurada no repo.
|
|
30
|
-
- **Pare no primeiro erro.** A menos que o usuário peça `--continue`, um check que falha interrompe a cadeia — corrija antes de continuar.
|
|
31
|
-
- **Não seja um substituto completo do CI.** O CI continua sendo a fonte da verdade para testes de integração, e2e, banco de dados, Docker, etc. Este gate é para checks rápidos e baratos.
|
|
32
|
-
- **Custo zero no Actions.** Tudo roda localmente.
|
|
33
|
-
|
|
34
|
-
## Inputs
|
|
35
|
-
|
|
36
|
-
- Estado atual do working tree (staged + unstaged).
|
|
37
|
-
- Arquivos de config do projeto para descobrir comandos.
|
|
38
|
-
|
|
39
|
-
## Outputs
|
|
40
|
-
|
|
41
|
-
- Relatório compacto de quais checks passaram/falharam.
|
|
42
|
-
- Se falhou: mensagem de erro + arquivo(s) sugerido(s) para corrigir.
|
|
43
|
-
- Se passou: confirmação pronta para PR.
|
|
44
|
-
|
|
45
|
-
## Steps
|
|
46
|
-
|
|
47
|
-
### 1. Detectar stack
|
|
48
|
-
|
|
49
|
-
Procurar nos arquivos de config do projeto quais ferramentas estão disponíveis:
|
|
50
|
-
|
|
51
|
-
| Fonte | O que extrair |
|
|
52
|
-
|-------|---------------|
|
|
53
|
-
| `package.json` → `scripts` | `lint`, `format`, `format:check`, `type-check`, `build`, `test`, `test:unit` |
|
|
54
|
-
| `composer.json` → `scripts` | `test`, `phpstan`, `pint`, `phpcs` |
|
|
55
|
-
| `Makefile` / `justfile` | targets `lint`, `format`, `check`, `test` |
|
|
56
|
-
| `pyproject.toml` / `setup.cfg` | `flake8`, `black`, `mypy`, `pytest` |
|
|
57
|
-
| `Cargo.toml` | `cargo check`, `cargo test`, `cargo clippy`, `cargo fmt` |
|
|
58
|
-
| `.github/workflows/*.yml` | steps de `lint`, `format`, `build`, `test` (como referência, não para rodar) |
|
|
59
|
-
|
|
60
|
-
Heurística de prioridade: scripts do gerenciador de pacote local (`npm run`, `composer run`) > binários diretos (`vendor/bin/pint`) > comandos genéricos (`cargo clippy`).
|
|
61
|
-
|
|
62
|
-
### 2. Selecionar checks por velocidade
|
|
63
|
-
|
|
64
|
-
Separar em **rápido** (executa em segundos) e **lento** (minutos):
|
|
65
|
-
|
|
66
|
-
**Rápido (executar sempre):**
|
|
67
|
-
- Lint (ESLint, PHPStan, Clippy, Ruff, etc.)
|
|
68
|
-
- Format check (Prettier, Pint, Black, rustfmt)
|
|
69
|
-
- Type check (tsc, mypy)
|
|
70
|
-
- Análise estática (PHPStan, Psalm)
|
|
71
|
-
|
|
72
|
-
**Lento (executar quando houver mudanças relevantes):**
|
|
73
|
-
- Build (Vite, Webpack, Cargo build)
|
|
74
|
-
- Testes unitários (Vitest, Jest, Pest, pytest, `cargo test`)
|
|
75
|
-
- Guard-rails custom (scripts próprios do projeto, ex: `check:orphans`)
|
|
76
|
-
|
|
77
|
-
**Muito lento (opcional / em dia de merge):**
|
|
78
|
-
- Testes de integração
|
|
79
|
-
- E2E (Playwright, Cypress)
|
|
80
|
-
- Build de Docker
|
|
81
|
-
|
|
82
|
-
### 3. Rodar o gate
|
|
83
|
-
|
|
84
|
-
Na ordem: format → lint → type-check → build → testes unitários → guard-rails.
|
|
85
|
-
|
|
86
|
-
Comandos típicos por stack (detectados em tempo real, não hardcoded):
|
|
87
|
-
|
|
88
|
-
| Stack | Comandos comuns |
|
|
89
|
-
|-------|-----------------|
|
|
90
|
-
| Node/JS/TS | `npm run format:check`, `npm run lint`, `npm run check:type` (ou `tsc --noEmit`), `npm run build`, `npm run test` |
|
|
91
|
-
| PHP/Laravel | `vendor/bin/pint --test`, `vendor/bin/phpstan analyse`, `php artisan test` |
|
|
92
|
-
| Python | `black --check`, `ruff check`, `mypy`, `pytest` |
|
|
93
|
-
| Rust | `cargo fmt -- --check`, `cargo clippy`, `cargo check`, `cargo test` |
|
|
94
|
-
| Go | `gofmt -l`, `golangci-lint run`, `go test ./...` |
|
|
95
|
-
|
|
96
|
-
Se um check falhar, pare e reporte. Não prossiga para o próximo.
|
|
97
|
-
|
|
98
|
-
### 4. Reportar
|
|
99
|
-
|
|
100
|
-
Formato compacto, uma linha por check:
|
|
101
|
-
|
|
102
|
-
```
|
|
103
|
-
✓ format:check (npm run format:check) — 0.8s
|
|
104
|
-
✓ lint (vendor/bin/pint --test) — 2.1s
|
|
105
|
-
✗ phpstan (vendor/bin/phpstan) — 4.5s → FAIL
|
|
106
|
-
app/Http/Controllers/LegalController.php:11 — FQCN não importado
|
|
107
|
-
→ Corrija antes de abrir o PR.
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
Se tudo passar:
|
|
111
|
-
|
|
112
|
-
```
|
|
113
|
-
✓ format:check — PASS (0.8s)
|
|
114
|
-
✓ lint — PASS (2.1s)
|
|
115
|
-
✓ phpstan — PASS (4.5s)
|
|
116
|
-
✓ build — PASS (32s)
|
|
117
|
-
✓ test:unit — PASS (30s)
|
|
118
|
-
─────────────────────────────
|
|
119
|
-
Gate limpo. Pode abrir o PR.
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
## Anti-patterns
|
|
123
|
-
|
|
124
|
-
- **Rodar checks que não existem no repo.** Se não há `composer.json`, não tente `vendor/bin/pint`.
|
|
125
|
-
- **Ignorar falhas de lint.** Lint fail = PR fail. Corrija antes.
|
|
126
|
-
- **Executar E2E localmente toda vez.** E2E é caro; deixe para o CI ou rode antes de merge.
|
|
127
|
-
- **Substituir o CI.** Este gate é complementar, não substituto.
|
|
128
|
-
|
|
129
|
-
## Hand-off
|
|
130
|
-
|
|
131
|
-
> Gate `wize-pre-pr-check` concluído. `{passados}/{total}` checks passaram. `{tempo_total}s`. Pronto para PR.
|
|
132
|
-
|
|
133
|
-
Se houve falha:
|
|
134
|
-
> Gate `wize-pre-pr-check` interrompido em `{check_falho}`. Corrija e re-execute antes de abrir o PR.
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
|
|
3
|
-
code: wize-review-edge-case-hunter
|
|
4
|
-
description: "Use quando um código ou PR precisar de caça sistemática de edge cases ranqueados por probabilidade × impacto."
|
|
5
|
-
name: Edge Case Hunter
|
|
6
|
-
module: core
|
|
7
|
-
status: ready
|
|
8
|
-
subtask: true
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Edge Case Hunter
|
|
12
|
-
|
|
13
|
-
**Goal.** Focused edge-case pass on a code change. Returns a structured list of edge cases, ranked by likelihood × impact, with a hand-off to test or guard each one.
|
|
14
|
-
|
|
15
|
-
Shuri runs the hunt. Hawkeye on call for test design. Wizer on call for cross-cutting risk.
|
|
16
|
-
|
|
17
|
-
## When to use
|
|
18
|
-
|
|
19
|
-
- "Hunt edge cases in this PR."
|
|
20
|
-
- "What can break in this code?"
|
|
21
|
-
- "Give me the edge case list before I refactor."
|
|
22
|
-
|
|
23
|
-
## When NOT to use
|
|
24
|
-
|
|
25
|
-
- Full adversarial code review → use `wize-code-review`.
|
|
26
|
-
- Generate E2E test cases → use `wize-qa-generate-e2e-tests`.
|
|
27
|
-
- Quick-dev fix → use `wize-quick-dev`.
|
|
28
|
-
|
|
29
|
-
## Inputs
|
|
30
|
-
|
|
31
|
-
- A code change (diff, file, or story reference).
|
|
32
|
-
- A short scope statement (one sentence: what is this code trying to do?).
|
|
33
|
-
- Optional: the relevant story file (`.wize/solutioning/stories/{epic}/{story}.md`).
|
|
34
|
-
|
|
35
|
-
## Output
|
|
36
|
-
|
|
37
|
-
- A markdown list of edge cases, grouped by category, with line-level `file:line` references when possible.
|
|
38
|
-
- Suggested action per case: write a test, add a guard, accept, or defer.
|
|
39
|
-
|
|
40
|
-
## Steps
|
|
41
|
-
|
|
42
|
-
### 1. Scope
|
|
43
|
-
|
|
44
|
-
Read the change + the one-line scope statement. Confirm the boundary: what is in scope (changed code) and what is not (existing dependencies, framework). Reject if the scope is too broad (> 500 LOC); suggest slicing first.
|
|
45
|
-
|
|
46
|
-
### 2. Hunt (per area)
|
|
47
|
-
|
|
48
|
-
Walk 4 areas in order:
|
|
49
|
-
|
|
50
|
-
- **Input edges.** Empty, null, unicode, max length, malformed, wrong type, wrong encoding. Boundary values (0, 1, max, max+1).
|
|
51
|
-
- **State edges.** Concurrent writes, stale reads, missing state, mixed state (some fields set, others not), partial failure.
|
|
52
|
-
- **Time / race.** Timeouts, retries, clock skew, ordering, idempotency.
|
|
53
|
-
- **Integration edges.** Vendor down, slow vendor, malformed vendor response, network partition, version skew.
|
|
54
|
-
|
|
55
|
-
For each area, list specific cases in 1 line each. Cite `file:line` when relevant.
|
|
56
|
-
|
|
57
|
-
### 3. Rank
|
|
58
|
-
|
|
59
|
-
For each case, score:
|
|
60
|
-
|
|
61
|
-
- **Likelihood** (low / medium / high): probability of triggering.
|
|
62
|
-
- **Impact** (low / medium / high): what happens when it triggers.
|
|
63
|
-
|
|
64
|
-
Order cases by `(likelihood + impact)`. The top 5 are P0; the rest P1/P2.
|
|
65
|
-
|
|
66
|
-
### 4. Hand off
|
|
67
|
-
|
|
68
|
-
For each P0 case, propose an action:
|
|
69
|
-
|
|
70
|
-
- **Test** → the user adds a test.
|
|
71
|
-
- **Guard** → the user adds input validation or a defensive check.
|
|
72
|
-
- **Accept** → the user documents the risk and moves on.
|
|
73
|
-
- **Defer** → the user opens a follow-up story.
|
|
74
|
-
|
|
75
|
-
Output is a markdown table. The user picks what to apply.
|
|
76
|
-
|
|
77
|
-
## Output template
|
|
78
|
-
|
|
79
|
-
```markdown
|
|
80
|
-
---
|
|
81
|
-
date: 2026-06-17
|
|
82
|
-
scope: "Refactor of validateInviteEmail — split into 3 helpers"
|
|
83
|
-
author: Shuri
|
|
84
|
-
---
|
|
85
|
-
|
|
86
|
-
# Edge cases — {scope}
|
|
87
|
-
|
|
88
|
-
## Top 5 (P0)
|
|
89
|
-
|
|
90
|
-
| # | Case | Likelihood | Impact | Action | Location |
|
|
91
|
-
|---|---|---|---|---|---|
|
|
92
|
-
| 1 | Empty email string | high | medium | test | src/validate.ts:42 |
|
|
93
|
-
| 2 | Email with leading/trailing whitespace | high | low | guard | src/validate.ts:55 |
|
|
94
|
-
| 3 | Email with internationalized TLD (e.g. .中国) | medium | medium | test | src/validate.ts:48 |
|
|
95
|
-
| 4 | Email longer than 254 chars | low | medium | guard | src/validate.ts:48 |
|
|
96
|
-
| 5 | Null vs undefined | high | low | test | src/validate.ts:33 |
|
|
97
|
-
|
|
98
|
-
## Other (P1/P2)
|
|
99
|
-
|
|
100
|
-
- Unicode normalization mismatch — P1 — test
|
|
101
|
-
- Two plus signs in local part — P2 — accept
|
|
102
|
-
- Trailing dot in domain — P2 — defer (open E06-S05)
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## Anti-patterns Shuri rejects
|
|
106
|
-
|
|
107
|
-
- Listing 50 cases per area. (Top 5 P0; cap at 15 total.)
|
|
108
|
-
- Auto-fixing (hunt, don't fix).
|
|
109
|
-
- Skipping the rank step. (Without rank, the user cannot prioritize.)
|
|
110
|
-
- Skipping the action per case. (An edge case without an action is just noise.)
|
|
111
|
-
- Hunting only one area (e.g., only input). (All 4 areas.)
|
|
112
|
-
|
|
113
|
-
## Hand-off
|
|
114
|
-
|
|
115
|
-
> "Edge case hunt complete. {N} cases ranked. P0: {M}. Next: implement P0 (Shuri) or open follow-up stories (Hill)."
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# Headless response schemas for wize-spec
|
|
2
|
-
|
|
3
|
-
Used when `wize-spec` is invoked non-interactively (headless).
|
|
4
|
-
|
|
5
|
-
## Create / Update
|
|
6
|
-
|
|
7
|
-
```json
|
|
8
|
-
{
|
|
9
|
-
"error_code": null,
|
|
10
|
-
"spec_path": "{project-root}/.wize/specs/spec-{slug}/SPEC.md",
|
|
11
|
-
"slug": "{slug}",
|
|
12
|
-
"capabilities": ["CAP-1", "CAP-2"],
|
|
13
|
-
"companions": ["glossary.md"],
|
|
14
|
-
"assumptions": [],
|
|
15
|
-
"open_questions": [],
|
|
16
|
-
"verdict": "Coherence: pass. Preservation: pass."
|
|
17
|
-
}
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
## Error codes
|
|
21
|
-
|
|
22
|
-
- `missing_slug` — headless caller did not provide a slug and it could not be derived.
|
|
23
|
-
- `insufficient_intent` — no input content provided.
|
|
24
|
-
- `too_sparse` — input too thin to distill; suggest `wize-product-brief` or `wize-create-prd`.
|
|
25
|
-
|
|
26
|
-
## Validate
|
|
27
|
-
|
|
28
|
-
```json
|
|
29
|
-
{
|
|
30
|
-
"error_code": null,
|
|
31
|
-
"violations": [
|
|
32
|
-
{
|
|
33
|
-
"rule": "4",
|
|
34
|
-
"message": "No explicit non-goals found."
|
|
35
|
-
}
|
|
36
|
-
],
|
|
37
|
-
"verdict": "Coherence: 1 issue. Preservation: pass."
|
|
38
|
-
}
|
|
39
|
-
```
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
slug: "{{slug}}"
|
|
3
|
-
status: draft
|
|
4
|
-
owner: "{{owner}}"
|
|
5
|
-
companions: []
|
|
6
|
-
sources: []
|
|
7
|
-
assumptions: []
|
|
8
|
-
open_questions: []
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# SPEC — {{slug}}
|
|
12
|
-
|
|
13
|
-
## Why
|
|
14
|
-
|
|
15
|
-
{{One paragraph: what problem this thing exists to solve and for whom.}}
|
|
16
|
-
|
|
17
|
-
## Capabilities
|
|
18
|
-
|
|
19
|
-
| ID | Intent | Success |
|
|
20
|
-
|---|---|---|
|
|
21
|
-
| CAP-1 | {{what the system does for the user}} | {{observable outcome that proves it works}} |
|
|
22
|
-
| CAP-2 | … | … |
|
|
23
|
-
|
|
24
|
-
## Constraints
|
|
25
|
-
|
|
26
|
-
- {{Constraint that bends a design decision.}}
|
|
27
|
-
- …
|
|
28
|
-
|
|
29
|
-
## Non-goals
|
|
30
|
-
|
|
31
|
-
- {{Explicitly out of scope.}}
|
|
32
|
-
- …
|
|
33
|
-
|
|
34
|
-
## Success signal
|
|
35
|
-
|
|
36
|
-
{{Concrete, testable or demonstrable signal that the spec is satisfied.}}
|
|
37
|
-
|
|
38
|
-
## Decision log
|
|
39
|
-
|
|
40
|
-
See `.decision-log.md`.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# Wize Dev Kit — overrides for the built-in skill "wize-spec".
|
|
2
|
-
# DO NOT EDIT in the installed kit; copy to .wize/custom/skills/wize-spec/
|
|
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 skill 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 spec is finalized and the decision-log verdict is written.
|
|
19
|
-
# Override wins. Leave empty for no custom post-completion behavior.
|
|
20
|
-
on_complete = ""
|