@polymorphism-tech/morph-spec 2.3.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/CLAUDE.md +446 -1730
  2. package/README.md +515 -516
  3. package/bin/morph-spec.js +366 -294
  4. package/bin/task-manager.js +429 -368
  5. package/bin/validate.js +369 -268
  6. package/content/.claude/commands/morph-apply.md +221 -158
  7. package/content/.claude/commands/morph-deploy.md +529 -0
  8. package/content/.claude/commands/morph-preflight.md +227 -0
  9. package/content/.claude/commands/morph-proposal.md +122 -101
  10. package/content/.claude/commands/morph-status.md +86 -86
  11. package/content/.claude/commands/morph-troubleshoot.md +122 -0
  12. package/content/.claude/skills/infra/azure-deploy-specialist.md +699 -0
  13. package/content/.claude/skills/level-0-meta/README.md +7 -0
  14. package/content/.claude/skills/level-0-meta/code-review.md +226 -0
  15. package/content/.claude/skills/level-0-meta/morph-checklist.md +117 -0
  16. package/content/.claude/skills/level-0-meta/simulation-checklist.md +77 -0
  17. package/content/.claude/skills/level-1-workflows/README.md +7 -0
  18. package/content/.claude/skills/level-1-workflows/morph-replicate.md +213 -0
  19. package/content/.claude/{commands/morph-clarify.md → skills/level-1-workflows/phase-clarify.md} +131 -184
  20. package/content/.claude/{commands/morph-design.md → skills/level-1-workflows/phase-design.md} +213 -275
  21. package/content/.claude/skills/level-1-workflows/phase-setup.md +106 -0
  22. package/content/.claude/skills/level-1-workflows/phase-tasks.md +164 -0
  23. package/content/.claude/{commands/morph-uiux.md → skills/level-1-workflows/phase-uiux.md} +169 -211
  24. package/content/.claude/skills/level-2-domains/README.md +14 -0
  25. package/content/.claude/skills/level-2-domains/ai-agents/ai-system-architect.md +192 -0
  26. package/content/.claude/skills/{specialists → level-2-domains/architecture}/po-pm-advisor.md +197 -197
  27. package/content/.claude/skills/level-2-domains/architecture/standards-architect.md +156 -0
  28. package/content/.claude/skills/level-2-domains/backend/dotnet-senior.md +287 -0
  29. package/content/.claude/skills/level-2-domains/backend/ef-modeler.md +113 -0
  30. package/content/.claude/skills/level-2-domains/backend/hangfire-orchestrator.md +126 -0
  31. package/content/.claude/skills/level-2-domains/backend/ms-agent-expert.md +109 -0
  32. package/content/.claude/skills/level-2-domains/frontend/blazor-builder.md +210 -0
  33. package/content/.claude/skills/level-2-domains/frontend/nextjs-expert.md +154 -0
  34. package/content/.claude/skills/level-2-domains/frontend/ui-ux-designer.md +191 -0
  35. package/content/.claude/skills/{specialists → level-2-domains/infrastructure}/azure-architect.md +142 -142
  36. package/content/.claude/skills/level-2-domains/infrastructure/bicep-architect.md +126 -0
  37. package/content/.claude/skills/level-2-domains/infrastructure/container-specialist.md +131 -0
  38. package/content/.claude/skills/level-2-domains/infrastructure/devops-engineer.md +119 -0
  39. package/content/.claude/skills/level-2-domains/integrations/asaas-financial.md +130 -0
  40. package/content/.claude/skills/level-2-domains/integrations/azure-identity.md +142 -0
  41. package/content/.claude/skills/level-2-domains/integrations/clerk-auth.md +108 -0
  42. package/content/.claude/skills/level-2-domains/integrations/resend-email.md +119 -0
  43. package/content/.claude/skills/level-2-domains/quality/code-analyzer.md +235 -0
  44. package/content/.claude/skills/level-2-domains/quality/testing-specialist.md +126 -0
  45. package/content/.claude/skills/level-3-technologies/README.md +7 -0
  46. package/content/.claude/skills/level-4-patterns/README.md +7 -0
  47. package/content/.claude/skills/specialists/prompt-engineer.md +189 -0
  48. package/content/.claude/skills/specialists/seo-growth-hacker.md +320 -0
  49. package/content/.morph/config/agents.json +762 -242
  50. package/content/.morph/config/config.template.json +122 -108
  51. package/content/.morph/docs/workflows/design-impl.md +37 -0
  52. package/content/.morph/docs/workflows/enforcement-pipeline.md +668 -0
  53. package/content/.morph/docs/workflows/fast-track.md +29 -0
  54. package/content/.morph/docs/workflows/full-morph.md +76 -0
  55. package/content/.morph/docs/workflows/standard.md +44 -0
  56. package/content/.morph/docs/workflows/ui-refresh.md +39 -0
  57. package/content/.morph/examples/scheduled-reports/decisions.md +158 -0
  58. package/content/.morph/examples/scheduled-reports/proposal.md +95 -0
  59. package/content/.morph/examples/scheduled-reports/spec.md +267 -0
  60. package/content/.morph/hooks/README.md +348 -239
  61. package/content/.morph/hooks/pre-commit-agents.sh +24 -24
  62. package/content/.morph/hooks/task-completed.js +73 -0
  63. package/content/.morph/hooks/teammate-idle.js +68 -0
  64. package/content/.morph/schemas/tasks.schema.json +220 -0
  65. package/content/.morph/standards/agent-framework-blazor-ui.md +359 -0
  66. package/content/.morph/standards/agent-framework-production.md +410 -0
  67. package/content/.morph/standards/agent-framework-setup.md +413 -453
  68. package/content/.morph/standards/agent-framework-workflows.md +349 -0
  69. package/content/.morph/standards/agent-teams-workflow.md +474 -0
  70. package/content/.morph/standards/architecture.md +325 -325
  71. package/content/.morph/standards/azure.md +605 -379
  72. package/content/.morph/standards/dotnet10-migration.md +520 -494
  73. package/content/.morph/templates/CONTEXT-FEATURE.md +276 -0
  74. package/content/.morph/templates/CONTEXT.md +170 -0
  75. package/content/.morph/templates/agent.cs +163 -172
  76. package/content/.morph/templates/clarify-questions.md +159 -0
  77. package/content/.morph/templates/contracts/Commands.cs +74 -0
  78. package/content/.morph/templates/contracts/Entities.cs +25 -0
  79. package/content/.morph/templates/contracts/Queries.cs +74 -0
  80. package/content/.morph/templates/contracts/README.md +74 -0
  81. package/content/.morph/templates/decisions.md +123 -106
  82. package/content/.morph/templates/infra/azure-pipelines-deploy.yml +480 -0
  83. package/content/.morph/templates/infra/deploy-checklist.md +426 -0
  84. package/content/.morph/templates/proposal.md +141 -155
  85. package/content/.morph/templates/recap.md +94 -105
  86. package/content/.morph/templates/simulation.md +353 -0
  87. package/content/.morph/templates/spec.md +149 -148
  88. package/content/.morph/templates/state.template.json +222 -222
  89. package/content/.morph/templates/tasks.md +257 -235
  90. package/content/.morph/templates/ui-components.md +362 -276
  91. package/content/CLAUDE.md +150 -442
  92. package/detectors/structure-detector.js +245 -250
  93. package/docs/README.md +144 -149
  94. package/docs/getting-started.md +301 -302
  95. package/docs/installation.md +361 -361
  96. package/docs/validation-checklist.md +265 -266
  97. package/package.json +80 -80
  98. package/src/commands/advance-phase.js +266 -0
  99. package/src/commands/analyze-blazor-concurrency.js +193 -0
  100. package/src/commands/deploy.js +780 -0
  101. package/src/commands/detect-agents.js +167 -0
  102. package/src/commands/doctor.js +356 -280
  103. package/src/commands/generate-context.js +40 -0
  104. package/src/commands/init.js +258 -245
  105. package/src/commands/lint-fluent.js +352 -0
  106. package/src/commands/rollback-phase.js +185 -0
  107. package/src/commands/session-summary.js +291 -0
  108. package/src/commands/task.js +78 -75
  109. package/src/commands/troubleshoot.js +222 -0
  110. package/src/commands/update.js +192 -159
  111. package/src/commands/validate-blazor-state.js +210 -0
  112. package/src/commands/validate-blazor.js +156 -0
  113. package/src/commands/validate-css.js +84 -0
  114. package/src/commands/validate-phase.js +221 -0
  115. package/src/lib/blazor-concurrency-analyzer.js +288 -0
  116. package/src/lib/blazor-state-validator.js +291 -0
  117. package/src/lib/blazor-validator.js +374 -0
  118. package/src/lib/complexity-analyzer.js +441 -292
  119. package/src/lib/context-generator.js +513 -0
  120. package/src/lib/continuous-validator.js +421 -440
  121. package/src/lib/css-validator.js +352 -0
  122. package/src/lib/decision-constraint-loader.js +109 -0
  123. package/src/lib/design-system-detector.js +187 -0
  124. package/src/lib/design-system-scaffolder.js +299 -0
  125. package/src/lib/hook-executor.js +256 -0
  126. package/src/lib/recap-generator.js +205 -0
  127. package/src/lib/spec-validator.js +258 -0
  128. package/src/lib/standards-context-injector.js +287 -0
  129. package/src/lib/state-manager.js +397 -340
  130. package/src/lib/team-orchestrator.js +322 -0
  131. package/src/lib/troubleshoot-grep.js +194 -0
  132. package/src/lib/troubleshoot-index.js +144 -0
  133. package/src/lib/validation-runner.js +283 -0
  134. package/src/lib/validators/contract-compliance-validator.js +273 -0
  135. package/src/lib/validators/design-system-validator.js +231 -0
  136. package/src/utils/file-copier.js +187 -139
  137. package/content/.claude/commands/morph-costs.md +0 -206
  138. package/content/.claude/commands/morph-setup.md +0 -100
  139. package/content/.claude/commands/morph-tasks.md +0 -319
  140. package/content/.claude/skills/infra/bicep-architect.md +0 -419
  141. package/content/.claude/skills/infra/container-specialist.md +0 -437
  142. package/content/.claude/skills/infra/devops-engineer.md +0 -405
  143. package/content/.claude/skills/integrations/asaas-financial.md +0 -333
  144. package/content/.claude/skills/integrations/azure-identity.md +0 -309
  145. package/content/.claude/skills/integrations/clerk-auth.md +0 -290
  146. package/content/.claude/skills/specialists/ai-system-architect.md +0 -604
  147. package/content/.claude/skills/specialists/cost-guardian.md +0 -110
  148. package/content/.claude/skills/specialists/ef-modeler.md +0 -211
  149. package/content/.claude/skills/specialists/hangfire-orchestrator.md +0 -255
  150. package/content/.claude/skills/specialists/ms-agent-expert.md +0 -263
  151. package/content/.claude/skills/specialists/standards-architect.md +0 -78
  152. package/content/.claude/skills/specialists/ui-ux-designer.md +0 -1100
  153. package/content/.claude/skills/stacks/dotnet-blazor.md +0 -606
  154. package/content/.claude/skills/stacks/dotnet-nextjs.md +0 -402
  155. package/content/.claude/skills/stacks/shopify.md +0 -445
  156. package/content/.morph/config/azure-pricing.json +0 -70
  157. package/content/.morph/config/azure-pricing.schema.json +0 -50
  158. package/content/.morph/hooks/pre-commit-costs.sh +0 -91
  159. package/docs/api/cost-calculator.js.html +0 -513
  160. package/docs/api/design-system-generator.js.html +0 -382
  161. package/docs/api/global.html +0 -5263
  162. package/docs/api/index.html +0 -96
  163. package/docs/api/state-manager.js.html +0 -423
  164. package/src/commands/cost.js +0 -181
  165. package/src/commands/update-pricing.js +0 -206
  166. package/src/lib/cost-calculator.js +0 -429
@@ -1,108 +1,122 @@
1
- {
2
- "project": {
3
- "name": "MyProject",
4
- "description": "Descrição do projeto",
5
- "type": "blazor-server",
6
- "repository": "https://dev.azure.com/org/project/_git/repo"
7
- },
8
- "azure": {
9
- "subscription": "subscription-id",
10
- "resourceGroup": "rg-myproject-dev",
11
- "location": "eastus2",
12
- "resources": {
13
- "containerApps": {
14
- "enabled": true,
15
- "environment": "cae-myproject-dev",
16
- "minReplicas": 0,
17
- "maxReplicas": 2
18
- },
19
- "sql": {
20
- "enabled": true,
21
- "server": "sql-myproject-dev",
22
- "database": "sqldb-myproject-dev",
23
- "tier": "Free",
24
- "maxSizeGB": 32
25
- },
26
- "openai": {
27
- "enabled": true,
28
- "endpoint": "https://oai-myproject.openai.azure.com/",
29
- "model": "gpt-4o-mini",
30
- "maxTokensPerRequest": 4000
31
- },
32
- "monitoring": {
33
- "enabled": true,
34
- "appInsights": "appi-myproject-dev",
35
- "logLevel": "Information"
36
- }
37
- }
38
- },
39
- "devops": {
40
- "organization": "https://dev.azure.com/myorg",
41
- "project": "MyProject",
42
- "boards": {
43
- "enabled": true,
44
- "areaPath": "MyProject\\Features",
45
- "iterationPath": "MyProject\\Sprint 1"
46
- },
47
- "repos": {
48
- "defaultBranch": "main",
49
- "featureBranchPrefix": "feature/"
50
- },
51
- "pipelines": {
52
- "buildPipeline": "myproject-ci",
53
- "releasePipeline": "myproject-cd"
54
- },
55
- "wiki": {
56
- "enabled": true,
57
- "wikiName": "MyProject.wiki"
58
- }
59
- },
60
- "agents": {
61
- "core": {
62
- "standardsArchitect": { "enabled": true },
63
- "azureArchitect": { "enabled": true },
64
- "blazorBuilder": { "enabled": true },
65
- "efModeler": { "enabled": true },
66
- "costGuardian": { "enabled": true },
67
- "msAgentExpert": { "enabled": true }
68
- },
69
- "specialists": {
70
- "hangfireOrchestrator": {
71
- "enabled": true,
72
- "autoActivation": ["scheduled", "job", "background", "recurring", "batch", "cron"]
73
- },
74
- "uiuxDesigner": {
75
- "enabled": true,
76
- "autoActivation": ["wizard", "dashboard", "complex", "drag", "drop", "multi-step"]
77
- },
78
- "popmAdvisor": {
79
- "enabled": true,
80
- "autoActivation": ["unclear", "requirements", "priority", "ROI", "business", "value"]
81
- }
82
- }
83
- },
84
- "checkpoints": {
85
- "afterDesign": true,
86
- "afterTasks": true,
87
- "everyNTasks": 3,
88
- "beforeDeploy": true
89
- },
90
- "costs": {
91
- "monthlyBudget": 15,
92
- "currency": "USD",
93
- "limits": {
94
- "freeTierOnly": 0,
95
- "withApproval": 10,
96
- "requiresADR": 10
97
- },
98
- "enforcement": {
99
- "blockCommitsAboveLimit": true,
100
- "requireADRInDecisionsMd": true,
101
- "alertOnApproach": 0.8
102
- },
103
- "pricing": {
104
- "region": "eastus2",
105
- "lastUpdated": "2024-01-01"
106
- }
107
- }
108
- }
1
+ {
2
+ "project": {
3
+ "name": "MyProject",
4
+ "description": "Descrição do projeto",
5
+ "type": "blazor-server",
6
+ "repository": "https://dev.azure.com/org/project/_git/repo"
7
+ },
8
+ "azure": {
9
+ "subscription": "subscription-id",
10
+ "resourceGroup": "rg-myproject-dev",
11
+ "location": "eastus2",
12
+ "resources": {
13
+ "containerApps": {
14
+ "enabled": true,
15
+ "environment": "cae-myproject-dev",
16
+ "minReplicas": 0,
17
+ "maxReplicas": 2
18
+ },
19
+ "sql": {
20
+ "enabled": true,
21
+ "server": "sql-myproject-dev",
22
+ "database": "sqldb-myproject-dev",
23
+ "tier": "Free",
24
+ "maxSizeGB": 32
25
+ },
26
+ "openai": {
27
+ "enabled": true,
28
+ "endpoint": "https://oai-myproject.openai.azure.com/",
29
+ "model": "gpt-4o-mini",
30
+ "maxTokensPerRequest": 4000
31
+ },
32
+ "monitoring": {
33
+ "enabled": true,
34
+ "appInsights": "appi-myproject-dev",
35
+ "logLevel": "Information"
36
+ }
37
+ }
38
+ },
39
+ "devops": {
40
+ "organization": "https://dev.azure.com/myorg",
41
+ "project": "MyProject",
42
+ "boards": {
43
+ "enabled": true,
44
+ "areaPath": "MyProject\\Features",
45
+ "iterationPath": "MyProject\\Sprint 1"
46
+ },
47
+ "repos": {
48
+ "defaultBranch": "main",
49
+ "featureBranchPrefix": "feature/"
50
+ },
51
+ "pipelines": {
52
+ "buildPipeline": "myproject-ci",
53
+ "releasePipeline": "myproject-cd"
54
+ },
55
+ "wiki": {
56
+ "enabled": true,
57
+ "wikiName": "MyProject.wiki"
58
+ }
59
+ },
60
+ "agents": {
61
+ "core": {
62
+ "standardsArchitect": { "enabled": true },
63
+ "azureArchitect": { "enabled": true },
64
+ "blazorBuilder": { "enabled": true },
65
+ "efModeler": { "enabled": true },
66
+ "msAgentExpert": { "enabled": true }
67
+ },
68
+ "specialists": {
69
+ "hangfireOrchestrator": {
70
+ "enabled": true,
71
+ "autoActivation": ["scheduled", "job", "background", "recurring", "batch", "cron"]
72
+ },
73
+ "uiuxDesigner": {
74
+ "enabled": true,
75
+ "autoActivation": ["wizard", "dashboard", "complex", "drag", "drop", "multi-step"]
76
+ },
77
+ "popmAdvisor": {
78
+ "enabled": true,
79
+ "autoActivation": ["unclear", "requirements", "priority", "ROI", "business", "value"]
80
+ }
81
+ }
82
+ },
83
+ "checkpoints": {
84
+ "afterDesign": true,
85
+ "afterTasks": true,
86
+ "everyNTasks": 3,
87
+ "beforeDeploy": true
88
+ },
89
+ "agentTeams": {
90
+ "enabled": false,
91
+ "experimental": {
92
+ "claudeCodeFlag": "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS",
93
+ "requiresOptIn": true
94
+ },
95
+ "displayMode": "auto",
96
+ "spawnThresholds": {
97
+ "complexity": ["high", "critical"],
98
+ "estimatedFiles": 15,
99
+ "activeAgents": 5,
100
+ "multiDomain": true
101
+ },
102
+ "teamStructure": {
103
+ "maxTeammates": 10,
104
+ "includeValidators": false,
105
+ "validatorsRunInHooks": true
106
+ }
107
+ },
108
+ "context": {
109
+ "enabled": true,
110
+ "autoGenerate": true,
111
+ "templates": {
112
+ "project": "CONTEXT.md",
113
+ "feature": "CONTEXT-{feature}.md"
114
+ },
115
+ "sources": [
116
+ "project.md",
117
+ "state.json",
118
+ "config.json",
119
+ "standards/*.md"
120
+ ]
121
+ }
122
+ }
@@ -0,0 +1,37 @@
1
+ # Workflow: DESIGN IMPLEMENTATION (Protótipo → Código)
2
+
3
+ > **Layer:** 1 | **Load:** on-keyword | **Keywords:** prototipo, prototype, figma, html para, converter design, replicar, from design
4
+
5
+ ## Critérios
6
+
7
+ - Protótipo HTML existente (pasta com arquivos .html) ou mockups/screenshots
8
+ - Conversão de design visual para código Blazor funcional
9
+
10
+ ## Fases
11
+
12
+ ### 1. ANÁLISE DO PROTÓTIPO
13
+ - Ler todos os arquivos HTML do protótipo
14
+ - Extrair padrões: cores, fontes, espaçamentos, componentes
15
+ - Mapear HTML classes → CSS classes do Design System
16
+ - **PAUSA:** Confirmar mapeamento
17
+
18
+ ### 2. TASKS (lista de telas)
19
+ - Gerar lista de telas para implementar com ordem de dependências
20
+ - **PAUSA:** Aprovar lista
21
+
22
+ ### 3. IMPLEMENT (por tela)
23
+ - Ler HTML do protótipo + arquivo .razor atual (se existir)
24
+ - Reescrever .razor usando Fluent UI/MudBlazor
25
+ - Adicionar CSS ao design-system.css
26
+ - Build para validar + `morph-spec validate-css`
27
+
28
+ ## Outputs
29
+ recap.md, código .razor implementado, CSS atualizado
30
+
31
+ ## Fases Puladas
32
+ Proposal, Design técnico, Clarify, Sync
33
+
34
+ ## Exemplos
35
+ - "Implementar telas baseado no protótipo em /prototipo/"
36
+ - "Converter HTML do Figma para Blazor"
37
+ - "Replicar design do mockup"