@polymorphism-tech/morph-spec 2.2.0 → 2.4.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/CLAUDE.md +314 -1673
- package/LICENSE +72 -72
- package/README.md +515 -516
- package/bin/detect-agents.js +225 -225
- package/bin/morph-spec.js +358 -173
- package/bin/render-template.js +302 -302
- package/bin/semantic-detect-agents.js +246 -246
- package/bin/task-manager.js +429 -0
- package/bin/validate-agents-skills.js +251 -251
- package/bin/validate-agents.js +69 -69
- package/bin/validate-phase.js +263 -263
- package/bin/validate.js +369 -0
- package/content/.azure/README.md +293 -293
- package/content/.azure/docs/azure-devops-setup.md +454 -454
- package/content/.azure/docs/branch-strategy.md +398 -398
- package/content/.azure/docs/local-development.md +515 -515
- package/content/.azure/pipelines/pipeline-variables.yml +34 -34
- package/content/.azure/pipelines/prod-pipeline.yml +319 -319
- package/content/.azure/pipelines/staging-pipeline.yml +234 -234
- package/content/.azure/pipelines/templates/build-dotnet.yml +75 -75
- package/content/.azure/pipelines/templates/deploy-app-service.yml +94 -94
- package/content/.azure/pipelines/templates/deploy-container-app.yml +120 -120
- package/content/.azure/pipelines/templates/infra-deploy.yml +90 -90
- package/content/.claude/commands/morph-apply.md +221 -158
- package/content/.claude/commands/morph-archive.md +79 -79
- package/content/.claude/commands/morph-infra.md +209 -209
- package/content/.claude/commands/morph-preflight.md +227 -0
- package/content/.claude/commands/morph-proposal.md +122 -101
- package/content/.claude/commands/morph-status.md +86 -86
- package/content/.claude/commands/morph-troubleshoot.md +122 -0
- package/content/.claude/settings.local.json +15 -15
- package/content/.claude/skills/checklists/code-review.md +226 -0
- package/content/.claude/skills/checklists/morph-checklist.md +117 -0
- package/content/.claude/skills/checklists/simulation-checklist.md +77 -0
- package/content/.claude/skills/infra/bicep-architect.md +126 -419
- package/content/.claude/skills/infra/container-specialist.md +131 -437
- package/content/.claude/skills/infra/devops-engineer.md +119 -405
- package/content/.claude/skills/integrations/asaas-financial.md +130 -333
- package/content/.claude/skills/integrations/azure-identity.md +142 -309
- package/content/.claude/skills/integrations/clerk-auth.md +108 -290
- package/content/.claude/skills/integrations/resend-email.md +119 -0
- package/content/.claude/skills/specialists/ai-system-architect.md +192 -604
- package/content/.claude/skills/specialists/azure-architect.md +142 -142
- package/content/.claude/skills/specialists/code-analyzer.md +235 -0
- package/content/.claude/skills/specialists/dotnet-senior.md +287 -0
- package/content/.claude/skills/specialists/ef-modeler.md +113 -200
- package/content/.claude/skills/specialists/hangfire-orchestrator.md +126 -245
- package/content/.claude/skills/specialists/ms-agent-expert.md +109 -263
- package/content/.claude/skills/specialists/po-pm-advisor.md +197 -197
- package/content/.claude/skills/specialists/standards-architect.md +156 -78
- package/content/.claude/skills/specialists/testing-specialist.md +126 -0
- package/content/.claude/skills/specialists/ui-ux-designer.md +191 -1060
- package/content/.claude/skills/stacks/dotnet-blazor.md +210 -588
- package/content/.claude/skills/stacks/dotnet-nextjs.md +154 -402
- package/content/.claude/skills/workflows/morph-replicate.md +213 -0
- package/content/.claude/{commands/morph-clarify.md → skills/workflows/phase-clarify.md} +5 -58
- package/content/.claude/{commands/morph-design.md → skills/workflows/phase-design.md} +16 -86
- package/content/.claude/{commands/morph-setup.md → skills/workflows/phase-setup.md} +9 -17
- package/content/.claude/skills/workflows/phase-tasks.md +164 -0
- package/content/.claude/{commands/morph-uiux.md → skills/workflows/phase-uiux.md} +15 -88
- package/content/.morph/.morphversion +5 -5
- package/content/.morph/archive/.gitkeep +25 -25
- package/content/.morph/config/agents.json +378 -242
- package/content/.morph/config/config.template.json +89 -108
- package/content/.morph/docs/STORY-DRIVEN-DEVELOPMENT.md +392 -392
- package/content/.morph/docs/workflows/design-impl.md +37 -0
- package/content/.morph/docs/workflows/fast-track.md +29 -0
- package/content/.morph/docs/workflows/full-morph.md +76 -0
- package/content/.morph/docs/workflows/standard.md +44 -0
- package/content/.morph/docs/workflows/ui-refresh.md +39 -0
- package/content/.morph/examples/api-nextjs/README.md +241 -241
- package/content/.morph/examples/api-nextjs/contracts.ts +307 -307
- package/content/.morph/examples/api-nextjs/spec.md +399 -399
- package/content/.morph/examples/api-nextjs/tasks.md +168 -168
- package/content/.morph/examples/micro-saas/README.md +125 -125
- package/content/.morph/examples/micro-saas/contracts.cs +358 -358
- package/content/.morph/examples/micro-saas/decisions.md +246 -246
- package/content/.morph/examples/micro-saas/spec.md +236 -236
- package/content/.morph/examples/micro-saas/tasks.md +150 -150
- package/content/.morph/examples/multi-agent/README.md +309 -309
- package/content/.morph/examples/multi-agent/contracts.cs +433 -433
- package/content/.morph/examples/multi-agent/spec.md +479 -479
- package/content/.morph/examples/multi-agent/tasks.md +185 -185
- package/content/.morph/examples/scheduled-reports/decisions.md +158 -0
- package/content/.morph/examples/scheduled-reports/proposal.md +95 -0
- package/content/.morph/examples/scheduled-reports/spec.md +267 -0
- package/content/.morph/examples/state-v3.json +188 -0
- package/content/.morph/features/.gitkeep +25 -25
- package/content/.morph/hooks/README.md +190 -239
- package/content/.morph/hooks/pre-commit-agents.sh +24 -24
- package/content/.morph/hooks/pre-commit-all.sh +48 -48
- package/content/.morph/hooks/pre-commit-specs.sh +49 -49
- package/content/.morph/hooks/pre-commit-tests.sh +60 -60
- package/content/.morph/project.md +160 -160
- package/content/.morph/schemas/agent.schema.json +296 -296
- package/content/.morph/schemas/tasks.schema.json +220 -0
- package/content/.morph/specs/.gitkeep +20 -20
- package/content/.morph/standards/agent-framework-blazor-ui.md +359 -0
- package/content/.morph/standards/agent-framework-production.md +410 -0
- package/content/.morph/standards/agent-framework-setup.md +413 -453
- package/content/.morph/standards/agent-framework-workflows.md +349 -0
- package/content/.morph/standards/architecture.md +325 -325
- package/content/.morph/standards/azure.md +605 -379
- package/content/.morph/standards/coding.md +377 -377
- package/content/.morph/standards/dotnet10-migration.md +520 -494
- package/content/.morph/standards/fluent-ui-setup.md +590 -590
- package/content/.morph/standards/migration-guide.md +514 -514
- package/content/.morph/standards/passkeys-auth.md +423 -423
- package/content/.morph/standards/vector-search-rag.md +536 -536
- package/content/.morph/state.json +17 -17
- package/content/.morph/templates/FluentDesignTheme.cs +149 -149
- package/content/.morph/templates/MudTheme.cs +281 -281
- package/content/.morph/templates/agent.cs +163 -172
- package/content/.morph/templates/clarify-questions.md +159 -0
- package/content/.morph/templates/component.razor +239 -239
- package/content/.morph/templates/contracts/Commands.cs +74 -0
- package/content/.morph/templates/contracts/Entities.cs +25 -0
- package/content/.morph/templates/contracts/Queries.cs +74 -0
- package/content/.morph/templates/contracts/README.md +74 -0
- package/content/.morph/templates/contracts.cs +217 -217
- package/content/.morph/templates/decisions.md +123 -106
- package/content/.morph/templates/design-system.css +226 -226
- package/content/.morph/templates/infra/.dockerignore.example +89 -89
- package/content/.morph/templates/infra/Dockerfile.example +82 -82
- package/content/.morph/templates/infra/README.md +286 -286
- package/content/.morph/templates/infra/app-insights.bicep +63 -63
- package/content/.morph/templates/infra/app-service.bicep +164 -164
- package/content/.morph/templates/infra/container-app-env.bicep +49 -49
- package/content/.morph/templates/infra/container-app.bicep +156 -156
- package/content/.morph/templates/infra/deploy-checklist.md +426 -0
- package/content/.morph/templates/infra/deploy.ps1 +229 -229
- package/content/.morph/templates/infra/deploy.sh +208 -208
- package/content/.morph/templates/infra/key-vault.bicep +91 -91
- package/content/.morph/templates/infra/main.bicep +189 -189
- package/content/.morph/templates/infra/parameters.dev.json +29 -29
- package/content/.morph/templates/infra/parameters.prod.json +29 -29
- package/content/.morph/templates/infra/parameters.staging.json +29 -29
- package/content/.morph/templates/infra/sql-database.bicep +103 -103
- package/content/.morph/templates/infra/storage.bicep +106 -106
- package/content/.morph/templates/integrations/asaas-client.cs +387 -387
- package/content/.morph/templates/integrations/asaas-webhook.cs +351 -351
- package/content/.morph/templates/integrations/azure-identity-config.cs +288 -288
- package/content/.morph/templates/integrations/clerk-config.cs +258 -258
- package/content/.morph/templates/job.cs +171 -171
- package/content/.morph/templates/migration.cs +83 -83
- package/content/.morph/templates/proposal.md +141 -155
- package/content/.morph/templates/recap.md +94 -105
- package/content/.morph/templates/repository.cs +141 -141
- package/content/.morph/templates/saas/subscription.cs +347 -347
- package/content/.morph/templates/saas/tenant.cs +338 -338
- package/content/.morph/templates/service.cs +139 -139
- package/content/.morph/templates/simulation.md +353 -0
- package/content/.morph/templates/spec.md +149 -148
- package/content/.morph/templates/sprint-status.yaml +68 -68
- package/content/.morph/templates/state.template.json +222 -222
- package/content/.morph/templates/story.md +143 -143
- package/content/.morph/templates/tasks.md +257 -235
- package/content/.morph/templates/test.cs +239 -239
- package/content/.morph/templates/ui-components.md +362 -276
- package/content/.morph/templates/ui-design-system.md +286 -286
- package/content/.morph/templates/ui-flows.md +336 -336
- package/content/.morph/templates/ui-mockups.md +133 -133
- package/content/.morph/test-infra/example.bicep +59 -59
- package/content/CLAUDE.md +150 -442
- package/content/README.md +79 -79
- package/detectors/config-detector.js +223 -223
- package/detectors/conversation-analyzer.js +163 -163
- package/detectors/index.js +84 -84
- package/detectors/standards-generator.js +275 -275
- package/detectors/structure-detector.js +245 -250
- package/docs/README.md +144 -149
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +977 -977
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +1048 -1048
- package/docs/api/scripts/collapse.js +38 -38
- package/docs/api/scripts/commonNav.js +28 -28
- package/docs/api/scripts/linenumber.js +25 -25
- package/docs/api/scripts/nav.js +12 -12
- package/docs/api/scripts/polyfill.js +3 -3
- package/docs/api/scripts/prettify/Apache-License-2.0.txt +202 -202
- package/docs/api/scripts/prettify/lang-css.js +2 -2
- package/docs/api/scripts/prettify/prettify.js +28 -28
- package/docs/api/scripts/search.js +98 -98
- package/docs/api/styles/jsdoc.css +776 -776
- package/docs/api/styles/prettify.css +80 -80
- package/docs/examples.md +328 -328
- package/docs/getting-started.md +301 -302
- package/docs/installation.md +361 -361
- package/docs/templates.md +418 -418
- package/docs/validation-checklist.md +265 -266
- package/package.json +80 -80
- package/scripts/postinstall.js +132 -132
- package/src/commands/advance-phase.js +183 -0
- package/src/commands/analyze-blazor-concurrency.js +193 -0
- package/src/commands/create-story.js +351 -351
- package/src/commands/detect-agents.js +139 -0
- package/src/commands/detect.js +104 -104
- package/src/commands/doctor.js +356 -280
- package/src/commands/generate.js +149 -149
- package/src/commands/init.js +258 -245
- package/src/commands/lint-fluent.js +352 -0
- package/src/commands/rollback-phase.js +185 -0
- package/src/commands/session-summary.js +291 -0
- package/src/commands/shard-spec.js +224 -224
- package/src/commands/sprint-status.js +250 -250
- package/src/commands/state.js +333 -333
- package/src/commands/sync.js +167 -167
- package/src/commands/task.js +78 -0
- package/src/commands/troubleshoot.js +222 -0
- package/src/commands/update.js +192 -159
- package/src/commands/validate-blazor-state.js +210 -0
- package/src/commands/validate-blazor.js +156 -0
- package/src/commands/validate-css.js +84 -0
- package/src/commands/validate-phase.js +221 -0
- package/src/lib/blazor-concurrency-analyzer.js +288 -0
- package/src/lib/blazor-state-validator.js +291 -0
- package/src/lib/blazor-validator.js +374 -0
- package/src/lib/complexity-analyzer.js +441 -292
- package/src/lib/continuous-validator.js +421 -0
- package/src/lib/css-validator.js +352 -0
- package/src/lib/decision-constraint-loader.js +109 -0
- package/src/lib/design-system-generator.js +298 -298
- package/src/lib/learning-system.js +520 -0
- package/src/lib/mockup-generator.js +366 -0
- package/src/lib/recap-generator.js +205 -0
- package/src/lib/state-manager.js +397 -340
- package/src/lib/troubleshoot-grep.js +194 -0
- package/src/lib/troubleshoot-index.js +144 -0
- package/src/lib/ui-detector.js +350 -0
- package/src/lib/validation-runner.js +231 -0
- package/src/lib/validators/architecture-validator.js +387 -0
- package/src/lib/validators/contract-compliance-validator.js +273 -0
- package/src/lib/validators/package-validator.js +360 -0
- package/src/lib/validators/ui-contrast-validator.js +422 -0
- package/src/utils/file-copier.js +179 -139
- package/src/utils/logger.js +32 -32
- package/src/utils/version-checker.js +175 -175
- package/content/.claude/commands/morph-costs.md +0 -206
- package/content/.claude/commands/morph-tasks.md +0 -319
- package/content/.claude/skills/specialists/cost-guardian.md +0 -110
- package/content/.claude/skills/stacks/shopify.md +0 -445
- package/content/.morph/config/azure-pricing.json +0 -70
- package/content/.morph/config/azure-pricing.schema.json +0 -50
- package/content/.morph/hooks/pre-commit-costs.sh +0 -91
- package/docs/api/cost-calculator.js.html +0 -513
- package/docs/api/design-system-generator.js.html +0 -382
- package/docs/api/global.html +0 -5263
- package/docs/api/index.html +0 -96
- package/docs/api/state-manager.js.html +0 -423
- package/src/commands/cost.js +0 -181
- package/src/commands/update-pricing.js +0 -206
- package/src/lib/cost-calculator.js +0 -429
|
@@ -1,266 +1,265 @@
|
|
|
1
|
-
# MORPH-SPEC Validation Checklist
|
|
2
|
-
|
|
3
|
-
Checklist para validar o framework em um projeto real.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## 1. Setup Validation
|
|
8
|
-
|
|
9
|
-
### 1.1 Instalação
|
|
10
|
-
- [ ] Script `setup.ps1` ou `setup.sh` executa sem erros
|
|
11
|
-
- [ ] Pasta `.morph` criada corretamente
|
|
12
|
-
- [ ] Pasta `.claude` criada corretamente
|
|
13
|
-
- [ ] `CLAUDE.md` copiado para raiz do projeto
|
|
14
|
-
- [ ] Pasta `infra` criada com templates Bicep
|
|
15
|
-
|
|
16
|
-
### 1.2 Configuração
|
|
17
|
-
- [ ] `config.json` criado a partir do template
|
|
18
|
-
- [ ] Nome do projeto configurado
|
|
19
|
-
- [ ] Stack selecionada (blazor/nextjs
|
|
20
|
-
- [ ] Azure subscription configurada (se aplicável)
|
|
21
|
-
|
|
22
|
-
### 1.3 Estrutura de Arquivos
|
|
23
|
-
- [ ] `.morph/standards/` contém 3 arquivos (coding, architecture, azure)
|
|
24
|
-
- [ ] `.morph/templates/` contém todos os templates
|
|
25
|
-
- [ ] `.morph/templates/infra/` contém 9 arquivos Bicep
|
|
26
|
-
- [ ] `.morph/templates/integrations/` contém 4 arquivos
|
|
27
|
-
- [ ] `.morph/templates/saas/` contém 2 arquivos
|
|
28
|
-
- [ ] `.morph/examples/` contém 3 exemplos
|
|
29
|
-
- [ ] `.claude/commands/` contém 6 comandos
|
|
30
|
-
- [ ] `.claude/skills/` contém 17 skills
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## 2. Slash Commands Validation
|
|
35
|
-
|
|
36
|
-
### 2.1 /morph-proposal
|
|
37
|
-
- [ ] Comando reconhecido pelo Claude Code
|
|
38
|
-
- [ ] Carrega contexto do projeto
|
|
39
|
-
- [ ] Identifica agentes por keywords
|
|
40
|
-
- [ ] Gera `spec.md` na pasta correta
|
|
41
|
-
- [ ] Gera `contracts.cs` com interfaces/DTOs
|
|
42
|
-
- [ ] Gera `decisions.md` com ADRs
|
|
43
|
-
- [ ] Para e aguarda aprovação
|
|
44
|
-
|
|
45
|
-
### 2.2 /morph-apply
|
|
46
|
-
- [ ] Comando reconhecido pelo Claude Code
|
|
47
|
-
- [ ] Carrega spec existente
|
|
48
|
-
- [ ] Quebra em tasks
|
|
49
|
-
- [ ] Implementa task por task
|
|
50
|
-
- [ ] Executa testes
|
|
51
|
-
- [ ] Faz checkpoints a cada 3 tasks
|
|
52
|
-
- [ ] Gera `recap.md` ao final
|
|
53
|
-
|
|
54
|
-
### 2.3 /morph-status
|
|
55
|
-
- [ ] Mostra features em andamento
|
|
56
|
-
- [ ] Mostra fase atual de cada feature
|
|
57
|
-
- [ ] Lista agentes ativos
|
|
58
|
-
|
|
59
|
-
### 2.4 /morph-infra
|
|
60
|
-
- [ ] `init` cria estrutura de infra
|
|
61
|
-
- [ ] `validate` valida templates Bicep
|
|
62
|
-
- [ ] `plan` mostra recursos que serão criados
|
|
63
|
-
|
|
64
|
-
### 2.5 /morph-costs
|
|
65
|
-
- [ ] Estima custos dos recursos
|
|
66
|
-
- [ ] Mostra free tier vs paid
|
|
67
|
-
- [ ] Alerta sobre custos acima do limite
|
|
68
|
-
|
|
69
|
-
### 2.6 /morph-archive
|
|
70
|
-
- [ ] Move feature para archive
|
|
71
|
-
- [ ] Atualiza status
|
|
72
|
-
|
|
73
|
-
---
|
|
74
|
-
|
|
75
|
-
## 3. Agent Activation Validation
|
|
76
|
-
|
|
77
|
-
### 3.1 Core Agents (Sempre Ativos)
|
|
78
|
-
- [ ] Standards Architect ativado em todas as features
|
|
79
|
-
- [ ] Azure Architect ativado quando há infra
|
|
80
|
-
- [ ] Cost Guardian monitora custos
|
|
81
|
-
|
|
82
|
-
### 3.2 Stack Agents
|
|
83
|
-
| Keyword | Agente Esperado | Status |
|
|
84
|
-
|---------|-----------------|--------|
|
|
85
|
-
| "blazor", "razor" | Blazor Builder | [ ] |
|
|
86
|
-
| "nextjs", "react" | NextJS Expert | [ ] |
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
| "
|
|
93
|
-
| "
|
|
94
|
-
| "
|
|
95
|
-
| "
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
| "
|
|
102
|
-
| "
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
| "
|
|
109
|
-
| "
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
- [ ] `
|
|
118
|
-
- [ ] `
|
|
119
|
-
- [ ] `
|
|
120
|
-
- [ ] `
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
- [ ] `
|
|
125
|
-
- [ ] `
|
|
126
|
-
- [ ] `
|
|
127
|
-
- [ ] `
|
|
128
|
-
- [ ] `
|
|
129
|
-
- [ ] `
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
- [ ] `
|
|
134
|
-
- [ ] `container-app.bicep` valida
|
|
135
|
-
- [ ] `
|
|
136
|
-
- [ ] `
|
|
137
|
-
- [ ] `
|
|
138
|
-
- [ ] `
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
- [ ] `asaas-
|
|
143
|
-
- [ ] `
|
|
144
|
-
- [ ] `
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
- [ ] `
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
- [ ] Carrega `.morph/
|
|
157
|
-
- [ ]
|
|
158
|
-
- [ ]
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
- [ ]
|
|
163
|
-
- [ ]
|
|
164
|
-
- [ ]
|
|
165
|
-
- [ ]
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
- [ ]
|
|
170
|
-
- [ ]
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
- [ ]
|
|
175
|
-
- [ ]
|
|
176
|
-
- [ ]
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
- [ ]
|
|
181
|
-
- [ ]
|
|
182
|
-
- [ ]
|
|
183
|
-
- [ ]
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
- [ ]
|
|
192
|
-
- [ ]
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
- [ ]
|
|
197
|
-
- [ ]
|
|
198
|
-
- [ ]
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
- [ ]
|
|
213
|
-
- [ ] Gera
|
|
214
|
-
- [ ]
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
- [ ]
|
|
225
|
-
- [ ]
|
|
226
|
-
- [ ] Usa template `
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
- [ ]
|
|
237
|
-
- [ ]
|
|
238
|
-
- [ ]
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
|
248
|
-
|
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
|
258
|
-
|
|
|
259
|
-
|
|
|
260
|
-
|
|
|
261
|
-
|
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
*MORPH-SPEC by Polymorphism Tech*
|
|
1
|
+
# MORPH-SPEC Validation Checklist
|
|
2
|
+
|
|
3
|
+
Checklist para validar o framework em um projeto real.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Setup Validation
|
|
8
|
+
|
|
9
|
+
### 1.1 Instalação
|
|
10
|
+
- [ ] Script `setup.ps1` ou `setup.sh` executa sem erros
|
|
11
|
+
- [ ] Pasta `.morph` criada corretamente
|
|
12
|
+
- [ ] Pasta `.claude` criada corretamente
|
|
13
|
+
- [ ] `CLAUDE.md` copiado para raiz do projeto
|
|
14
|
+
- [ ] Pasta `infra` criada com templates Bicep
|
|
15
|
+
|
|
16
|
+
### 1.2 Configuração
|
|
17
|
+
- [ ] `config.json` criado a partir do template
|
|
18
|
+
- [ ] Nome do projeto configurado
|
|
19
|
+
- [ ] Stack selecionada (blazor/nextjs)
|
|
20
|
+
- [ ] Azure subscription configurada (se aplicável)
|
|
21
|
+
|
|
22
|
+
### 1.3 Estrutura de Arquivos
|
|
23
|
+
- [ ] `.morph/standards/` contém 3 arquivos (coding, architecture, azure)
|
|
24
|
+
- [ ] `.morph/templates/` contém todos os templates
|
|
25
|
+
- [ ] `.morph/templates/infra/` contém 9 arquivos Bicep
|
|
26
|
+
- [ ] `.morph/templates/integrations/` contém 4 arquivos
|
|
27
|
+
- [ ] `.morph/templates/saas/` contém 2 arquivos
|
|
28
|
+
- [ ] `.morph/examples/` contém 3 exemplos
|
|
29
|
+
- [ ] `.claude/commands/` contém 6 comandos
|
|
30
|
+
- [ ] `.claude/skills/` contém 17 skills
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## 2. Slash Commands Validation
|
|
35
|
+
|
|
36
|
+
### 2.1 /morph-proposal
|
|
37
|
+
- [ ] Comando reconhecido pelo Claude Code
|
|
38
|
+
- [ ] Carrega contexto do projeto
|
|
39
|
+
- [ ] Identifica agentes por keywords
|
|
40
|
+
- [ ] Gera `spec.md` na pasta correta
|
|
41
|
+
- [ ] Gera `contracts.cs` com interfaces/DTOs
|
|
42
|
+
- [ ] Gera `decisions.md` com ADRs
|
|
43
|
+
- [ ] Para e aguarda aprovação
|
|
44
|
+
|
|
45
|
+
### 2.2 /morph-apply
|
|
46
|
+
- [ ] Comando reconhecido pelo Claude Code
|
|
47
|
+
- [ ] Carrega spec existente
|
|
48
|
+
- [ ] Quebra em tasks
|
|
49
|
+
- [ ] Implementa task por task
|
|
50
|
+
- [ ] Executa testes
|
|
51
|
+
- [ ] Faz checkpoints a cada 3 tasks
|
|
52
|
+
- [ ] Gera `recap.md` ao final
|
|
53
|
+
|
|
54
|
+
### 2.3 /morph-status
|
|
55
|
+
- [ ] Mostra features em andamento
|
|
56
|
+
- [ ] Mostra fase atual de cada feature
|
|
57
|
+
- [ ] Lista agentes ativos
|
|
58
|
+
|
|
59
|
+
### 2.4 /morph-infra
|
|
60
|
+
- [ ] `init` cria estrutura de infra
|
|
61
|
+
- [ ] `validate` valida templates Bicep
|
|
62
|
+
- [ ] `plan` mostra recursos que serão criados
|
|
63
|
+
|
|
64
|
+
### 2.5 /morph-costs
|
|
65
|
+
- [ ] Estima custos dos recursos
|
|
66
|
+
- [ ] Mostra free tier vs paid
|
|
67
|
+
- [ ] Alerta sobre custos acima do limite
|
|
68
|
+
|
|
69
|
+
### 2.6 /morph-archive
|
|
70
|
+
- [ ] Move feature para archive
|
|
71
|
+
- [ ] Atualiza status
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 3. Agent Activation Validation
|
|
76
|
+
|
|
77
|
+
### 3.1 Core Agents (Sempre Ativos)
|
|
78
|
+
- [ ] Standards Architect ativado em todas as features
|
|
79
|
+
- [ ] Azure Architect ativado quando há infra
|
|
80
|
+
- [ ] Cost Guardian monitora custos
|
|
81
|
+
|
|
82
|
+
### 3.2 Stack Agents
|
|
83
|
+
| Keyword | Agente Esperado | Status |
|
|
84
|
+
|---------|-----------------|--------|
|
|
85
|
+
| "blazor", "razor" | Blazor Builder | [ ] |
|
|
86
|
+
| "nextjs", "react" | NextJS Expert | [ ] |
|
|
87
|
+
|
|
88
|
+
### 3.3 Specialist Agents
|
|
89
|
+
| Keyword | Agente Esperado | Status |
|
|
90
|
+
|---------|-----------------|--------|
|
|
91
|
+
| "database", "entity" | EF Modeler | [ ] |
|
|
92
|
+
| "agent", "ai" | MS Agent Expert | [ ] |
|
|
93
|
+
| "scheduled", "job" | Hangfire Orchestrator | [ ] |
|
|
94
|
+
| "wizard", "dashboard" | UI/UX Designer | [ ] |
|
|
95
|
+
| "unclear", "requirements" | PO/PM Advisor | [ ] |
|
|
96
|
+
|
|
97
|
+
### 3.4 Integration Agents
|
|
98
|
+
| Keyword | Agente Esperado | Status |
|
|
99
|
+
|---------|-----------------|--------|
|
|
100
|
+
| "asaas", "pix", "boleto" | Asaas Financial | [ ] |
|
|
101
|
+
| "clerk", "auth" | Clerk Auth | [ ] |
|
|
102
|
+
| "identity", "entra" | Azure Identity | [ ] |
|
|
103
|
+
|
|
104
|
+
### 3.5 Infra Agents
|
|
105
|
+
| Keyword | Agente Esperado | Status |
|
|
106
|
+
|---------|-----------------|--------|
|
|
107
|
+
| "bicep", "iac" | Bicep Architect | [ ] |
|
|
108
|
+
| "pipeline", "ci/cd" | DevOps Engineer | [ ] |
|
|
109
|
+
| "container", "docker" | Container Specialist | [ ] |
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## 4. Templates Validation
|
|
114
|
+
|
|
115
|
+
### 4.1 Feature Templates
|
|
116
|
+
- [ ] `spec.md` template funciona
|
|
117
|
+
- [ ] `tasks.md` template funciona
|
|
118
|
+
- [ ] `contracts.cs` template funciona
|
|
119
|
+
- [ ] `decisions.md` template funciona
|
|
120
|
+
- [ ] `recap.md` template funciona
|
|
121
|
+
|
|
122
|
+
### 4.2 Code Templates
|
|
123
|
+
- [ ] `component.razor` compila
|
|
124
|
+
- [ ] `service.cs` compila
|
|
125
|
+
- [ ] `repository.cs` compila
|
|
126
|
+
- [ ] `test.cs` compila
|
|
127
|
+
- [ ] `migration.cs` compila
|
|
128
|
+
- [ ] `agent.cs` compila
|
|
129
|
+
- [ ] `job.cs` compila
|
|
130
|
+
|
|
131
|
+
### 4.3 IaC Templates
|
|
132
|
+
- [ ] `main.bicep` valida (`az bicep build`)
|
|
133
|
+
- [ ] `container-app.bicep` valida
|
|
134
|
+
- [ ] `container-app-env.bicep` valida
|
|
135
|
+
- [ ] `sql-database.bicep` valida
|
|
136
|
+
- [ ] `storage.bicep` valida
|
|
137
|
+
- [ ] `key-vault.bicep` valida
|
|
138
|
+
- [ ] `app-insights.bicep` valida
|
|
139
|
+
|
|
140
|
+
### 4.4 Integration Templates
|
|
141
|
+
- [ ] `asaas-client.cs` compila
|
|
142
|
+
- [ ] `asaas-webhook.cs` compila
|
|
143
|
+
- [ ] `clerk-config.cs` compila
|
|
144
|
+
- [ ] `azure-identity-config.cs` compila
|
|
145
|
+
|
|
146
|
+
### 4.5 SaaS Templates
|
|
147
|
+
- [ ] `subscription.cs` compila
|
|
148
|
+
- [ ] `tenant.cs` compila
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## 5. Workflow Validation
|
|
153
|
+
|
|
154
|
+
### 5.1 Fase 1: SETUP
|
|
155
|
+
- [ ] Carrega `.morph/project.md`
|
|
156
|
+
- [ ] Carrega `.morph/config/config.json`
|
|
157
|
+
- [ ] Identifica stack do projeto
|
|
158
|
+
- [ ] Cria pasta em `.morph/features/<feature>`
|
|
159
|
+
|
|
160
|
+
### 5.2 Fase 2: DESIGN
|
|
161
|
+
- [ ] Gera spec baseado na descrição
|
|
162
|
+
- [ ] Consulta `.morph/standards/` para padrões
|
|
163
|
+
- [ ] Gera contracts.cs com DTOs corretos
|
|
164
|
+
- [ ] Estima custos e documenta
|
|
165
|
+
- [ ] PARA para aprovação
|
|
166
|
+
|
|
167
|
+
### 5.3 Fase 3: CLARIFY
|
|
168
|
+
- [ ] Identifica ambiguidades
|
|
169
|
+
- [ ] Faz perguntas relevantes
|
|
170
|
+
- [ ] Atualiza spec com respostas
|
|
171
|
+
|
|
172
|
+
### 5.4 Fase 4: TASKS
|
|
173
|
+
- [ ] Quebra spec em tasks numeradas
|
|
174
|
+
- [ ] Define dependências entre tasks
|
|
175
|
+
- [ ] Estabelece checkpoints
|
|
176
|
+
- [ ] PARA para aprovação
|
|
177
|
+
|
|
178
|
+
### 5.5 Fase 5: IMPLEMENT
|
|
179
|
+
- [ ] Implementa tasks na ordem
|
|
180
|
+
- [ ] Segue padrões de `coding.md`
|
|
181
|
+
- [ ] Executa testes após cada task
|
|
182
|
+
- [ ] Faz checkpoint a cada 3 tasks
|
|
183
|
+
- [ ] Gera recap ao final
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## 6. Cost Validation
|
|
188
|
+
|
|
189
|
+
### 6.1 Limites
|
|
190
|
+
- [ ] Alerta quando recurso ultrapassa free tier
|
|
191
|
+
- [ ] Bloqueia recursos > $10/mês sem aprovação
|
|
192
|
+
- [ ] Requer ADR para recursos > $10/mês
|
|
193
|
+
|
|
194
|
+
### 6.2 Estimativas
|
|
195
|
+
- [ ] Container Apps: $0 (scale-to-zero)
|
|
196
|
+
- [ ] SQL Database: $0 (Free tier 32GB)
|
|
197
|
+
- [ ] Storage: < $1/mês
|
|
198
|
+
- [ ] App Insights: $0 (5GB free)
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## 7. End-to-End Test
|
|
203
|
+
|
|
204
|
+
### 7.1 Cenário: Feature Simples
|
|
205
|
+
```
|
|
206
|
+
/morph-proposal user-profile
|
|
207
|
+
Descrição: "Adicionar página de perfil do usuário com edição de dados"
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
**Esperado**:
|
|
211
|
+
- [ ] Ativa: Standards Architect, Blazor Builder, EF Modeler
|
|
212
|
+
- [ ] Gera spec com requisitos de perfil
|
|
213
|
+
- [ ] Gera contracts com UserProfileDto
|
|
214
|
+
- [ ] Tasks incluem: criar entity, criar service, criar página
|
|
215
|
+
|
|
216
|
+
### 7.2 Cenário: Feature com Pagamento
|
|
217
|
+
```
|
|
218
|
+
/morph-proposal subscription-billing
|
|
219
|
+
Descrição: "Implementar cobrança de assinaturas com Asaas, PIX e boleto"
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
**Esperado**:
|
|
223
|
+
- [ ] Ativa: Asaas Financial, Cost Guardian
|
|
224
|
+
- [ ] Consulta skill `asaas-financial.md`
|
|
225
|
+
- [ ] Usa template `asaas-client.cs`
|
|
226
|
+
- [ ] Usa template `subscription.cs`
|
|
227
|
+
|
|
228
|
+
### 7.3 Cenário: Feature com Infra
|
|
229
|
+
```
|
|
230
|
+
/morph-proposal deploy-production
|
|
231
|
+
Descrição: "Configurar deploy para produção com Container Apps e SQL"
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
**Esperado**:
|
|
235
|
+
- [ ] Ativa: Bicep Architect, Container Specialist, Azure Architect
|
|
236
|
+
- [ ] Usa templates de `infra/`
|
|
237
|
+
- [ ] Estima custos
|
|
238
|
+
- [ ] Gera `parameters.prod.json`
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## 8. Issues Found
|
|
243
|
+
|
|
244
|
+
| # | Descrição | Severidade | Status |
|
|
245
|
+
|---|-----------|------------|--------|
|
|
246
|
+
| 1 | | | |
|
|
247
|
+
| 2 | | | |
|
|
248
|
+
| 3 | | | |
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
## 9. Sign-off
|
|
253
|
+
|
|
254
|
+
| Item | Responsável | Data | Status |
|
|
255
|
+
|------|-------------|------|--------|
|
|
256
|
+
| Setup | | | [ ] |
|
|
257
|
+
| Commands | | | [ ] |
|
|
258
|
+
| Agents | | | [ ] |
|
|
259
|
+
| Templates | | | [ ] |
|
|
260
|
+
| Workflow | | | [ ] |
|
|
261
|
+
| E2E Tests | | | [ ] |
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
*MORPH-SPEC by Polymorphism Tech*
|