@polymorphism-tech/morph-spec 4.12.0 → 4.13.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 (314) hide show
  1. package/README.md +21 -29
  2. package/bin/morph-spec.js +41 -24
  3. package/bin/task-manager.js +962 -1341
  4. package/bin/validate.js +1 -1
  5. package/claude-plugin.json +1 -1
  6. package/docs/CHEATSHEET.md +10 -11
  7. package/docs/QUICKSTART.md +15 -15
  8. package/framework/CLAUDE.md +5 -2
  9. package/framework/agents/README.md +3 -4
  10. package/framework/agents/ai-agents/ai-system-architect.md +6 -10
  11. package/framework/agents/architecture/seo-growth-hacker.md +166 -326
  12. package/framework/agents/architecture/standards-architect.md +21 -31
  13. package/framework/agents/backend/dotnet-senior.md +160 -86
  14. package/framework/agents/backend/ef-modeler.md +2 -6
  15. package/framework/agents/backend/hangfire-orchestrator.md +8 -9
  16. package/framework/agents/backend/ms-agent-expert.md +1 -1
  17. package/framework/agents/frontend/nextjs-expert.md +198 -133
  18. package/framework/agents/frontend/ui-ux-designer.md +226 -267
  19. package/framework/agents/infrastructure/infra-architect.md +191 -27
  20. package/framework/agents/integrations/clerk-auth.md +19 -26
  21. package/framework/agents/integrations/hangfire-integration.md +1 -4
  22. package/framework/agents.json +215 -1453
  23. package/framework/commands/morph-apply.md +4 -4
  24. package/framework/commands/morph-preflight.md +4 -26
  25. package/framework/commands/morph-proposal.md +19 -19
  26. package/framework/commands/morph-status.md +2 -2
  27. package/framework/commands/morph-troubleshoot.md +6 -13
  28. package/framework/hooks/README.md +1 -6
  29. package/framework/hooks/claude-code/post-tool-use/validator-feedback.js +4 -6
  30. package/framework/hooks/claude-code/pre-compact/save-morph-context.js +12 -7
  31. package/framework/hooks/claude-code/pre-tool-use/enforce-phase-writes.js +2 -2
  32. package/framework/hooks/claude-code/pre-tool-use/protect-spec-files.js +2 -2
  33. package/framework/hooks/claude-code/pre-tool-use/task-tracking-guard.js +5 -10
  34. package/framework/hooks/claude-code/session-start/inject-morph-context.js +63 -30
  35. package/framework/hooks/claude-code/session-start/resume-context.js +77 -0
  36. package/framework/hooks/claude-code/statusline.py +4 -5
  37. package/framework/hooks/claude-code/stop/validate-completion.js +4 -4
  38. package/framework/hooks/claude-code/user-prompt/enrich-prompt.js +8 -8
  39. package/framework/hooks/shared/compact-restore.js +28 -5
  40. package/framework/hooks/shared/phase-utils.js +4 -8
  41. package/framework/hooks/shared/state-reader.js +34 -3
  42. package/framework/phases.json +7 -45
  43. package/framework/rules/ai-agents-standards.md +15 -0
  44. package/framework/rules/asaas-standards.md +13 -0
  45. package/framework/rules/clerk-standards.md +13 -0
  46. package/framework/rules/csharp-standards.md +8 -4
  47. package/framework/rules/data-standards.md +18 -0
  48. package/framework/rules/dotnet-templates.md +87 -0
  49. package/framework/rules/frontend-standards.md +13 -13
  50. package/framework/rules/hangfire-standards.md +13 -0
  51. package/framework/rules/infrastructure-standards.md +27 -16
  52. package/framework/rules/morph-workflow.md +73 -13
  53. package/framework/rules/nextjs-standards.md +1 -0
  54. package/framework/rules/nextjs-templates.md +40 -0
  55. package/framework/rules/resend-standards.md +12 -0
  56. package/framework/rules/supabase-standards.md +29 -0
  57. package/framework/skills/README.md +6 -8
  58. package/framework/skills/level-0-meta/mcp-registry.json +21 -99
  59. package/framework/{standards/ai-agents/team-orchestration.md → skills/level-0-meta/morph-agent-teams/SKILL.md} +472 -479
  60. package/framework/skills/level-0-meta/morph-brainstorming/SKILL.md +28 -1
  61. package/framework/skills/level-0-meta/morph-checklist/SKILL.md +2 -2
  62. package/framework/skills/level-0-meta/morph-code-review/SKILL.md +1 -5
  63. package/framework/skills/level-0-meta/morph-code-review/scripts/scan-csharp.mjs +1 -1
  64. package/framework/skills/level-0-meta/morph-frontend-review/SKILL.md +23 -41
  65. package/framework/skills/level-0-meta/morph-init/SKILL.md +18 -14
  66. package/framework/skills/level-0-meta/morph-parallel-dispatch/SKILL.md +225 -0
  67. package/framework/skills/level-0-meta/morph-post-implementation/SKILL.md +20 -0
  68. package/framework/skills/level-0-meta/morph-tool-usage-guide/SKILL.md +4 -8
  69. package/framework/skills/level-0-meta/morph-tool-usage-guide/references/tools-per-phase.md +15 -59
  70. package/framework/skills/level-0-meta/morph-verification-before-completion/SKILL.md +7 -19
  71. package/framework/skills/level-0-meta/morph-verification-before-completion/scripts/check-phase-outputs.mjs +8 -8
  72. package/framework/skills/level-1-workflows/README.md +1 -1
  73. package/framework/skills/level-1-workflows/morph-phase-codebase-analysis/SKILL.md +49 -50
  74. package/framework/skills/level-1-workflows/morph-phase-design/SKILL.md +58 -124
  75. package/framework/skills/level-1-workflows/morph-phase-design/references/architecture-analysis-guide.md +5 -50
  76. package/framework/skills/level-1-workflows/morph-phase-design/references/spec-example.md +1 -1
  77. package/framework/skills/level-1-workflows/morph-phase-implement/SKILL.md +127 -159
  78. package/framework/skills/level-1-workflows/morph-phase-implement/prompts/implementer-prompt.md +4 -3
  79. package/framework/skills/level-1-workflows/morph-phase-implement/prompts/spec-reviewer-prompt.md +2 -2
  80. package/framework/skills/level-1-workflows/morph-phase-implement/references/recap-example.md +1 -1
  81. package/framework/skills/level-1-workflows/morph-phase-plan/SKILL.md +17 -13
  82. package/framework/skills/level-1-workflows/morph-phase-tasks/SKILL.md +22 -40
  83. package/framework/skills/level-1-workflows/morph-phase-tasks/references/task-planning-patterns.md +0 -2
  84. package/framework/skills/level-1-workflows/morph-phase-tasks/references/tasks-example.md +5 -5
  85. package/framework/skills/level-1-workflows/morph-phase-uiux/SKILL.md +57 -77
  86. package/framework/skills/level-1-workflows/morph-scope-escalation/SKILL.md +1 -1
  87. package/framework/squad-templates/backend-only.json +6 -6
  88. package/framework/squad-templates/frontend-only.json +17 -8
  89. package/framework/squad-templates/full-stack.json +29 -24
  90. package/framework/standards/STANDARDS.json +1021 -2369
  91. package/framework/standards/backend/dotnet/fluent-validation-vsa.md +200 -0
  92. package/framework/standards/backend/dotnet/result-pattern.md +213 -0
  93. package/framework/standards/backend/dotnet/scalar-ui.md +172 -0
  94. package/framework/standards/backend/dotnet/scrutor.md +158 -0
  95. package/framework/standards/backend/dotnet/vsa-handler-patterns.md +274 -0
  96. package/framework/standards/frontend/nextjs/motion-patterns.md +1 -1
  97. package/framework/standards/infrastructure/supabase/mcp-setup.md +83 -193
  98. package/framework/standards/integration/mcp/mcp-tools.md +91 -77
  99. package/framework/templates/IDE-SNIPPETS.md +2 -6
  100. package/framework/templates/README.md +709 -814
  101. package/framework/templates/REGISTRY.json +223 -762
  102. package/framework/templates/code/dotnet/abstractions/api-endpoint.cs +7 -0
  103. package/framework/templates/code/dotnet/abstractions/error.cs +60 -0
  104. package/framework/templates/code/dotnet/abstractions/handler.cs +12 -0
  105. package/framework/templates/code/dotnet/abstractions/result.cs +74 -0
  106. package/framework/templates/code/dotnet/backend/repository.cs +148 -141
  107. package/framework/templates/code/dotnet/constants/api-tags.cs +6 -0
  108. package/framework/templates/code/dotnet/exceptions/exception-handler.cs +32 -0
  109. package/framework/templates/code/dotnet/extensions/database-extensions.cs +20 -0
  110. package/framework/templates/code/dotnet/extensions/handler-registration.cs +38 -0
  111. package/framework/templates/code/dotnet/extensions/health-checks.cs +24 -0
  112. package/framework/templates/code/dotnet/extensions/map-endpoints.cs +35 -0
  113. package/framework/templates/code/dotnet/extensions/result-extensions.cs +29 -0
  114. package/framework/templates/code/dotnet/feature/endpoint.cs.hbs +21 -0
  115. package/framework/templates/code/dotnet/feature/entity.cs.hbs +8 -0
  116. package/framework/templates/code/dotnet/feature/errors.cs.hbs +8 -0
  117. package/framework/templates/code/dotnet/feature/handler.cs.hbs +24 -0
  118. package/framework/templates/code/dotnet/feature/request.cs.hbs +4 -0
  119. package/framework/templates/code/dotnet/feature/response.cs.hbs +4 -0
  120. package/framework/templates/code/dotnet/feature/validator.cs.hbs +15 -0
  121. package/framework/templates/code/dotnet/jobs/job.cs +21 -17
  122. package/framework/templates/code/dotnet/pipelines/logging-decorator.cs +31 -0
  123. package/framework/templates/code/dotnet/pipelines/validation-decorator.cs +97 -0
  124. package/framework/templates/code/dotnet/test.cs +192 -106
  125. package/framework/templates/context/ARCHITECTURE.md +89 -0
  126. package/framework/templates/context/CONTEXT-FEATURE.md +2 -2
  127. package/framework/templates/context/CONTEXT.md +180 -181
  128. package/framework/templates/context/design-system.md +1 -5
  129. package/framework/templates/docs/onboarding.md +2 -3
  130. package/framework/templates/docs/proposal.md +171 -182
  131. package/framework/templates/docs/spec.md +1 -3
  132. package/framework/templates/docs/ui-components.md +0 -72
  133. package/framework/templates/examples/design-system-examples.md +4 -4
  134. package/framework/templates/feature/decisions.md +0 -66
  135. package/framework/templates/feature/recap.md +1 -2
  136. package/framework/templates/infrastructure/github/README.md +56 -593
  137. package/framework/templates/integrations/clerk-config.cs +0 -41
  138. package/framework/templates/meta-prompts/parallel-workers/parallel-worker.md +2 -2
  139. package/framework/templates/meta-prompts/squad-leaders/backend-squad.md +1 -2
  140. package/framework/templates/meta-prompts/squad-leaders/frontend-squad.md +83 -126
  141. package/framework/templates/meta-prompts/validators/pre-commit-validator.md +2 -2
  142. package/framework/templates/project/validate.js +2 -4
  143. package/framework/templates/ui/design-system.css +1 -1
  144. package/framework/workflows/README.md +8 -8
  145. package/framework/workflows/configs/fast-track.json +51 -0
  146. package/framework/workflows/configs/full.json +68 -0
  147. package/framework/workflows/configs/standard.json +7 -3
  148. package/framework/workflows/docs/STORY-DRIVEN-DEVELOPMENT.md +1 -1
  149. package/framework/workflows/docs/enforcement-pipeline.md +18 -19
  150. package/framework/workflows/docs/full-morph.md +69 -76
  151. package/framework/workflows/docs/standard.md +49 -44
  152. package/framework/workflows/docs/ui-refresh.md +1 -1
  153. package/package.json +3 -3
  154. package/src/commands/agents/dispatch-agents.js +55 -116
  155. package/src/commands/context/context-refresh.js +79 -0
  156. package/src/commands/phase/phase-reset.js +1 -1
  157. package/src/commands/project/doctor.js +10 -32
  158. package/src/commands/project/init.js +12 -0
  159. package/src/commands/project/status.js +6 -12
  160. package/src/commands/scaffold/scaffold.js +131 -0
  161. package/src/commands/scope/escalate.js +1 -1
  162. package/src/commands/state/advance-phase.js +15 -29
  163. package/src/commands/state/state.js +20 -5
  164. package/src/commands/tasks/task.js +0 -30
  165. package/src/commands/validation/validate-feature.js +3 -10
  166. package/src/core/paths/output-schema.js +12 -13
  167. package/src/core/state/phase-state-machine.js +211 -217
  168. package/src/core/state/state-manager.js +9 -9
  169. package/src/lib/agents/agents-manager.js +2 -2
  170. package/src/lib/agents/output-collector.js +1 -2
  171. package/src/lib/detectors/design-system-detector.js +4 -4
  172. package/src/lib/detectors/index.js +1 -11
  173. package/src/lib/generators/architecture-scanner.js +640 -0
  174. package/src/lib/generators/context-generator.js +3 -3
  175. package/src/lib/generators/design-system-generator.js +508 -587
  176. package/src/lib/generators/index.js +12 -10
  177. package/src/lib/generators/metadata-extractor.js +386 -387
  178. package/src/lib/generators/recap-generator.js +4 -4
  179. package/src/lib/generators/scaffold-generator.js +317 -0
  180. package/src/lib/generators/settings-generator.js +0 -1
  181. package/src/lib/phase-chain/phase-validator.js +64 -42
  182. package/src/lib/stack/stack-profile.js +2 -2
  183. package/src/lib/standards/digest-builder.js +72 -285
  184. package/src/lib/tasks/task-parser.js +11 -5
  185. package/src/lib/validators/architecture/architecture-validator.js +259 -387
  186. package/src/lib/validators/content/content-validator.js +287 -287
  187. package/src/lib/validators/css/css-validator.js +340 -352
  188. package/src/lib/validators/packages/package-validator.js +347 -360
  189. package/src/lib/validators/shared/issue-counter.js +14 -18
  190. package/src/lib/validators/validation-runner.js +3 -19
  191. package/src/scripts/setup-infra.js +1 -1
  192. package/src/utils/agents-installer.js +24 -3
  193. package/src/utils/file-copier.js +1 -0
  194. package/src/utils/hooks-installer.js +11 -19
  195. package/src/utils/skills-installer.js +178 -178
  196. package/framework/agents/architecture/prompt-engineer.md +0 -195
  197. package/framework/agents/backend/api-designer.md +0 -106
  198. package/framework/agents/frontend/blazor-builder.md +0 -229
  199. package/framework/agents/frontend/nextjs-ui-specialist.md +0 -218
  200. package/framework/agents/infrastructure/azure-architect.md +0 -150
  201. package/framework/agents/infrastructure/azure-deploy-specialist.md +0 -707
  202. package/framework/agents/infrastructure/bicep-architect.md +0 -132
  203. package/framework/agents/infrastructure/container-specialist.md +0 -137
  204. package/framework/agents/infrastructure/devops-engineer.md +0 -126
  205. package/framework/agents/integrations/azure-identity.md +0 -148
  206. package/framework/agents/quality/code-analyzer.md +0 -239
  207. package/framework/agents/quality/testing-specialist.md +0 -130
  208. package/framework/hooks/claude-code/notification/approval-reminder.js +0 -57
  209. package/framework/hooks/claude-code/post-tool-use/context-refresh.js +0 -109
  210. package/framework/hooks/claude-code/post-tool-use/skill-reminder.js +0 -78
  211. package/framework/index/troubleshooting-index.json +0 -184
  212. package/framework/rules/testing-standards.md +0 -14
  213. package/framework/skills/level-0-meta/morph-replicate/SKILL.md +0 -230
  214. package/framework/skills/level-0-meta/morph-replicate/references/blazor-html-mapping.md +0 -70
  215. package/framework/skills/level-1-workflows/morph-phase-clarify/SKILL.md +0 -256
  216. package/framework/skills/level-1-workflows/morph-phase-clarify/references/clarifications-example.md +0 -117
  217. package/framework/skills/level-1-workflows/morph-phase-setup/SKILL.md +0 -269
  218. package/framework/standards/ai-agents/blazor-ui.md +0 -364
  219. package/framework/standards/architecture/ddd/aggregates.md +0 -120
  220. package/framework/standards/architecture/ddd/bounded-contexts.md +0 -105
  221. package/framework/standards/architecture/ddd/complexity-levels.md +0 -108
  222. package/framework/standards/architecture/ddd/entities.md +0 -99
  223. package/framework/standards/architecture/ddd/ubiquitous-language.md +0 -58
  224. package/framework/standards/architecture/ddd/value-objects.md +0 -124
  225. package/framework/standards/backend/api/minimal-api.md +0 -494
  226. package/framework/standards/backend/api/rest.md +0 -492
  227. package/framework/standards/backend/authentication/passkeys.md +0 -428
  228. package/framework/standards/backend/database/ef-core.md +0 -199
  229. package/framework/standards/backend/database/migrations.md +0 -393
  230. package/framework/standards/backend/database/repository-patterns.md +0 -528
  231. package/framework/standards/backend/dotnet/async.md +0 -366
  232. package/framework/standards/backend/dotnet/core.md +0 -117
  233. package/framework/standards/backend/dotnet/di.md +0 -439
  234. package/framework/standards/backend/dotnet/program-cs-checklist.md +0 -92
  235. package/framework/standards/context/analytics.md +0 -96
  236. package/framework/standards/context/bundles.md +0 -110
  237. package/framework/standards/context/priming.md +0 -78
  238. package/framework/standards/core/architecture.md +0 -185
  239. package/framework/standards/core/coding.md +0 -214
  240. package/framework/standards/core/git-branching-strategy.md +0 -403
  241. package/framework/standards/core/git.md +0 -185
  242. package/framework/standards/core/testing.md +0 -295
  243. package/framework/standards/data/nosql/blob-storage.md +0 -102
  244. package/framework/standards/data/vector-search/azure-ai-search.md +0 -121
  245. package/framework/standards/frontend/blazor/design-checklist.md +0 -222
  246. package/framework/standards/frontend/blazor/fluent-ui-setup.md +0 -595
  247. package/framework/standards/frontend/blazor/fluent-ui.md +0 -137
  248. package/framework/standards/frontend/blazor/html-conversion.md +0 -184
  249. package/framework/standards/frontend/blazor/lifecycle.md +0 -195
  250. package/framework/standards/frontend/blazor/pitfalls.md +0 -198
  251. package/framework/standards/frontend/blazor/state.md +0 -191
  252. package/framework/standards/frontend/design-system/aesthetic-direction.md +0 -266
  253. package/framework/standards/frontend/design-system/design-trends.md +0 -171
  254. package/framework/standards/infrastructure/azure/azure.md +0 -624
  255. package/framework/standards/infrastructure/azure/bicep/bicep-patterns.md +0 -422
  256. package/framework/standards/infrastructure/azure/devops/azure-devops-setup.md +0 -516
  257. package/framework/standards/infrastructure/azure/devops/local-development.md +0 -520
  258. package/framework/standards/infrastructure/azure/services/functions.md +0 -486
  259. package/framework/standards/infrastructure/azure/services/service-bus.md +0 -459
  260. package/framework/standards/infrastructure/azure/services/storage.md +0 -407
  261. package/framework/standards/infrastructure/vercel/vercel-database.md +0 -106
  262. package/framework/standards/integration/api/graphql.md +0 -91
  263. package/framework/standards/integration/api/grpc.md +0 -114
  264. package/framework/standards/integration/api/rest-design.md +0 -95
  265. package/framework/standards/integration/event-driven/cqrs.md +0 -101
  266. package/framework/standards/integration/event-driven/event-sourcing.md +0 -124
  267. package/framework/standards/integration/event-driven/service-bus.md +0 -95
  268. package/framework/standards/observability/logging.md +0 -131
  269. package/framework/standards/observability/metrics.md +0 -121
  270. package/framework/standards/observability/monitoring.md +0 -114
  271. package/framework/standards/observability/tracing.md +0 -132
  272. package/framework/standards/workflows/parallel-execution.md +0 -112
  273. package/framework/standards/workflows/thread-management.md +0 -113
  274. package/framework/templates/code/dotnet/backend/service.cs +0 -139
  275. package/framework/templates/code/dotnet/contracts/Commands.cs +0 -74
  276. package/framework/templates/code/dotnet/contracts/Entities.cs +0 -25
  277. package/framework/templates/code/dotnet/contracts/Queries.cs +0 -74
  278. package/framework/templates/code/dotnet/contracts/api-contracts.cs +0 -173
  279. package/framework/templates/code/dotnet/contracts/contracts-level1.cs +0 -69
  280. package/framework/templates/code/dotnet/contracts/contracts-level2.cs +0 -86
  281. package/framework/templates/code/dotnet/contracts/contracts-level3.cs +0 -41
  282. package/framework/templates/code/dotnet/frontend/component.razor +0 -239
  283. package/framework/templates/infrastructure/azure/Dockerfile.example +0 -82
  284. package/framework/templates/infrastructure/azure/README.md +0 -286
  285. package/framework/templates/infrastructure/azure/app-insights.bicep +0 -63
  286. package/framework/templates/infrastructure/azure/app-service.bicep +0 -164
  287. package/framework/templates/infrastructure/azure/container-app-env.bicep +0 -49
  288. package/framework/templates/infrastructure/azure/container-app.bicep +0 -156
  289. package/framework/templates/infrastructure/azure/deploy-checklist.md +0 -426
  290. package/framework/templates/infrastructure/azure/deploy.ps1 +0 -229
  291. package/framework/templates/infrastructure/azure/deploy.sh +0 -208
  292. package/framework/templates/infrastructure/azure/key-vault.bicep +0 -91
  293. package/framework/templates/infrastructure/azure/main.bicep +0 -189
  294. package/framework/templates/infrastructure/azure/parameters.dev.json +0 -29
  295. package/framework/templates/infrastructure/azure/parameters.prod.json +0 -29
  296. package/framework/templates/infrastructure/azure/parameters.staging.json +0 -29
  297. package/framework/templates/infrastructure/azure/sql-database.bicep +0 -103
  298. package/framework/templates/infrastructure/azure/storage.bicep +0 -106
  299. package/framework/templates/infrastructure/github/actions/azure-auth/action.yml.hbs +0 -22
  300. package/framework/templates/infrastructure/github/workflows/deploy-azure-app-service.yml.hbs +0 -61
  301. package/framework/templates/integrations/azure-identity-config.cs +0 -288
  302. package/framework/templates/project-structure/dotnet-ddd.md +0 -70
  303. package/framework/templates/saas/subscription.cs +0 -347
  304. package/framework/templates/saas/tenant.cs +0 -338
  305. package/framework/templates/ui/FluentDesignTheme.cs +0 -149
  306. package/framework/templates/ui/MudTheme.cs +0 -281
  307. package/framework/workflows/configs/nodejs-cli.json +0 -40
  308. package/src/commands/standards/context-budget.js +0 -89
  309. package/src/lib/standards/index.js +0 -7
  310. package/src/lib/standards/standards-context-injector.js +0 -302
  311. package/src/lib/validators/blazor/blazor-concurrency-analyzer.js +0 -316
  312. package/src/lib/validators/blazor/blazor-state-validator.js +0 -279
  313. package/src/lib/validators/blazor/blazor-validator.js +0 -369
  314. package/src/lib/validators/blazor/index.js +0 -9
@@ -28,9 +28,9 @@ Files you OWN (safe to create/modify):
28
28
  {{DELIVERABLES}}
29
29
 
30
30
  Files you can READ (shared, do not modify):
31
- - `.morph/features/{{FEATURE_NAME}}/1-design/spec.md`
31
+ - `.morph/features/{{FEATURE_NAME}}/2-design/spec.md`
32
32
  - `framework/standards/` (all)
33
- - `.morph/features/{{FEATURE_NAME}}/1-design/contracts.*`
33
+ - `.morph/features/{{FEATURE_NAME}}/2-design/contracts.*`
34
34
 
35
35
  ## Spec Summary
36
36
  {{SPEC_SUMMARY}}
@@ -14,8 +14,7 @@ You are the **Backend Squad Leader** (dotnet-senior) in the MORPH-SPEC agent hie
14
14
 
15
15
  You coordinate the following backend specialists:
16
16
  - **ef-modeler** — Entity Framework Core, database schema, migrations
17
- - **api-designer** — REST endpoints, DTOs, OpenAPI contracts
18
- - **event-architect** — Domain events, background jobs (Hangfire), CQRS
17
+ - **hangfire-orchestrator** — Background jobs, scheduled tasks, async processing
19
18
 
20
19
  {{#if ADDITIONAL_LEADERS}}
21
20
  Additional domain leaders for this feature:
@@ -1,126 +1,83 @@
1
- # Frontend Squad Leader — {{AGENT_ID}}
2
-
3
- You are the **Frontend Squad Leader** in the MORPH-SPEC agent hierarchy.
4
-
5
- ## Your Identity
6
- - Agent: {{AGENT_ID}}
7
- - Role: Frontend Squad Leader (Tier 2)
8
- - Domain: {{DOMAIN}} (UI / Components / UX)
9
-
10
- ## Your Mission
11
- {{MISSION}}
12
-
13
- ## Your Domain Leaders
14
-
15
- {{#if IS_BLAZOR}}
16
- You coordinate the following Blazor specialists:
17
- - **component-designer** — Razor components, Blazor lifecycle, state management
18
- - **ui-styler** — CSS, design system compliance, Fluent UI / MudBlazor
19
- - **blazor-forms** — Forms, validation, EditContext, FluentValidation integration
20
- {{/if}}
21
-
22
- {{#if IS_NEXTJS}}
23
- You coordinate the following Next.js specialists:
24
- - **react-architect** — Next.js 15 App Router, Server/Client components, RSC patterns
25
- - **ui-styler** — Tailwind CSS, design tokens, shadcn/ui components
26
- - **form-specialist** — React Hook Form, Zod validation, server actions
27
- {{/if}}
28
-
29
- {{#if ADDITIONAL_LEADERS}}
30
- Additional domain leaders for this feature:
31
- {{ADDITIONAL_LEADERS}}
32
- {{/if}}
33
-
34
- ## Spec Summary
35
- {{SPEC_SUMMARY}}
36
-
37
- ## Frontend Standards to Follow
38
-
39
- {{#if IS_BLAZOR}}
40
- ### Blazor (.NET 10)
41
- - Components use `@rendermode InteractiveServer` (not static SSR by default)
42
- - Use `IDbContextFactory` if components need DB access (via injected services)
43
- - `@implements IAsyncDisposable` when component holds disposable resources
44
- - `OnInitializedAsync` for data loading (not `OnParametersSetAsync` unless watching params)
45
- - `StateHasChanged()` only after async operations that update UI
46
- - `IJSRuntime` for JS interop — wrap in try/catch for prerender safety
47
-
48
- ### Component Architecture (Blazor)
49
- - Pages in `Pages/` with `@page` directive
50
- - Reusable components in `Components/Shared/`
51
- - Feature components in `Components/{Feature}/`
52
- - Services injected via `[Inject]` or `@inject`
53
-
54
- ### Design System (Blazor)
55
- - Use Fluent UI Blazor or MudBlazor components (per project config)
56
- - Follow CSS design tokens from `wwwroot/css/design-tokens.css`
57
- - Typography: `var(--font-size-base)`, `var(--font-weight-medium)`, etc.
58
- - Colors: ONLY use CSS variables — no hex codes directly
59
- - Spacing: multiples of 4px (4, 8, 12, 16, 24, 32, 48, 64)
60
- {{/if}}
61
-
62
- {{#if IS_NEXTJS}}
63
- ### Next.js 15 (App Router)
64
- - Default to Server Components — use `'use client'` only when needed
65
- - Server Actions for mutations (not separate API routes for simple CRUD)
66
- - Data fetching in Server Components with `fetch()` or ORM calls
67
- - `Suspense` boundaries for async data with `loading.tsx` fallbacks
68
- - `error.tsx` for error boundaries per route segment
69
-
70
- ### Component Architecture (Next.js)
71
- - Pages in `app/` directory (App Router)
72
- - Shared components in `components/` (Server Components by default)
73
- - Client-side interactive components in `components/client/`
74
- - Types in `types/` or co-located with components
75
-
76
- ### Design System (Next.js)
77
- - Tailwind CSS utility classes — prefer over custom CSS
78
- - Design tokens in `tailwind.config.ts` (colors, spacing, typography)
79
- - shadcn/ui components as base — customize via `components/ui/`
80
- - Responsive: mobile-first with `sm:`, `md:`, `lg:` breakpoints
81
- {{/if}}
82
-
83
- ## Your Tasks
84
- {{TASKS}}
85
-
86
- ## Deliverables Expected
87
- {{DELIVERABLES}}
88
-
89
- Frontend deliverables typically include:
90
- {{#if IS_BLAZOR}}
91
- - `Pages/` — Blazor page components with `@page` routes
92
- - `Components/{Feature}/` — Feature-specific components
93
- - `Components/Shared/` — Reusable UI components
94
- - CSS files (if custom styles needed)
95
- {{/if}}
96
- {{#if IS_NEXTJS}}
97
- - `app/{routes}/` — Next.js page and layout files
98
- - `components/{Feature}/` — Feature-specific components
99
- - `components/ui/` — Base UI components (shadcn overrides)
100
- - TypeScript type definitions
101
- {{/if}}
102
-
103
- ## Constraints
104
- {{CONSTRAINTS}}
105
-
106
- - Follow design system strictly — no ad-hoc colors or spacing
107
- - Components must be accessible (ARIA attributes where needed)
108
- - Loading states required for all async operations
109
- - Error states required for all data-fetching components
110
-
111
- ## How to Work
112
- 1. Start with page layout and routing structure
113
- 2. Build reusable sub-components before composing pages
114
- 3. Wire up API calls/services last (after UI is structured)
115
- 4. Test each component with loading + error + empty states
116
- 5. After every 3 tasks, run: `morph-spec task done {{FEATURE_NAME}} <task-id>`
117
- 6. If design system validator blocks you, check `framework/standards/frontend/design-system/aesthetic-direction.md` and `framework/standards/frontend/design-system/design-trends.md`
118
-
119
- ## Report Back When Done
120
- Provide a summary of:
121
- - Files created/modified (with paths)
122
- - Pages/routes implemented
123
- - Components created (with brief description)
124
- - Design system compliance status
125
- - Any accessibility concerns
126
- - Checkpoint pass/fail status
1
+ # Frontend Squad Leader — {{AGENT_ID}}
2
+
3
+ You are the **Frontend Squad Leader** in the MORPH-SPEC agent hierarchy.
4
+
5
+ ## Your Identity
6
+ - Agent: {{AGENT_ID}}
7
+ - Role: Frontend Squad Leader (Tier 2)
8
+ - Domain: {{DOMAIN}} (UI / Components / UX)
9
+
10
+ ## Your Mission
11
+ {{MISSION}}
12
+
13
+ ## Your Domain Leaders
14
+
15
+ You coordinate the following Next.js specialists:
16
+ - **react-architect** — Next.js 15 App Router, Server/Client components, RSC patterns
17
+ - **ui-styler** — Tailwind CSS, design tokens, shadcn/ui components
18
+ - **form-specialist** — React Hook Form, Zod validation, server actions
19
+
20
+ {{#if ADDITIONAL_LEADERS}}
21
+ Additional domain leaders for this feature:
22
+ {{ADDITIONAL_LEADERS}}
23
+ {{/if}}
24
+
25
+ ## Spec Summary
26
+ {{SPEC_SUMMARY}}
27
+
28
+ ## Frontend Standards to Follow
29
+
30
+ ### Next.js 15 (App Router)
31
+ - Default to Server Components — use `'use client'` only when needed
32
+ - Server Actions for mutations (not separate API routes for simple CRUD)
33
+ - Data fetching in Server Components with `fetch()` or ORM calls
34
+ - `Suspense` boundaries for async data with `loading.tsx` fallbacks
35
+ - `error.tsx` for error boundaries per route segment
36
+
37
+ ### Component Architecture (Next.js)
38
+ - Pages in `app/` directory (App Router)
39
+ - Shared components in `components/` (Server Components by default)
40
+ - Client-side interactive components in `components/client/`
41
+ - Types in `types/` or co-located with components
42
+
43
+ ### Design System (Next.js)
44
+ - Tailwind CSS utility classes — prefer over custom CSS
45
+ - Design tokens in `tailwind.config.ts` (colors, spacing, typography)
46
+ - shadcn/ui components as base — customize via `components/ui/`
47
+ - Responsive: mobile-first with `sm:`, `md:`, `lg:` breakpoints
48
+
49
+ ## Your Tasks
50
+ {{TASKS}}
51
+
52
+ ## Deliverables Expected
53
+ {{DELIVERABLES}}
54
+
55
+ Frontend deliverables typically include:
56
+ - `app/{routes}/` — Next.js page and layout files
57
+ - `components/{Feature}/` — Feature-specific components
58
+ - `components/ui/` — Base UI components (shadcn overrides)
59
+ - TypeScript type definitions
60
+
61
+ ## Constraints
62
+ {{CONSTRAINTS}}
63
+
64
+ - Follow design system strictly — no ad-hoc colors or spacing
65
+ - Components must be accessible (ARIA attributes where needed)
66
+ - Loading states required for all async operations
67
+ - Error states required for all data-fetching components
68
+
69
+ ## How to Work
70
+ 1. Start with page layout and routing structure
71
+ 2. Build reusable sub-components before composing pages
72
+ 3. Wire up API calls/services last (after UI is structured)
73
+ 4. Test each component with loading + error + empty states
74
+ 5. After every 3 tasks, run: `morph-spec task done {{FEATURE_NAME}} <task-id>`
75
+
76
+ ## Report Back When Done
77
+ Provide a summary of:
78
+ - Files created/modified (with paths)
79
+ - Pages/routes implemented
80
+ - Components created (with brief description)
81
+ - Design system compliance status
82
+ - Any accessibility concerns
83
+ - Checkpoint pass/fail status
@@ -24,8 +24,8 @@ Types: feat, fix, docs, style, refactor, test, chore, perf, ci, build
24
24
 
25
25
  Valid examples:
26
26
  - `feat(auth): add JWT refresh token rotation`
27
- - `fix(blazor): resolve DbContext lifecycle in reports component`
28
- - `chore(deps): update MudBlazor to 6.12.0`
27
+ - `fix(api): resolve handler lifecycle in reports endpoint`
28
+ - `chore(deps): update TanStack Query to 5.x`
29
29
 
30
30
  ### 2. Secret Scan
31
31
  Check staged files for accidental secrets:
@@ -5,7 +5,7 @@
5
5
  * Thin validator entry-point called by morph-spec validate-completion hook:
6
6
  * node bin/validate.js <validator> [--json]
7
7
  *
8
- * Supported validators: architecture, blazor, blazor-concurrency, nextjs-component,
8
+ * Supported validators: architecture, nextjs-component,
9
9
  * packages, design-system, ui-contrast, css
10
10
  *
11
11
  * Exits 0 on pass, 1 on validation errors.
@@ -64,9 +64,7 @@ const backendDir = existsSync(join(cwd, 'src/backend')) ? 'src/backend' : 'ba
64
64
  // ── Validator dispatch ────────────────────────────────────────────────────────
65
65
 
66
66
  switch (validator) {
67
- case 'architecture':
68
- case 'blazor':
69
- case 'blazor-concurrency': {
67
+ case 'architecture': {
70
68
  if (hasBackend && hasSln) {
71
69
  const slnFile = hasSln ? (
72
70
  existsSync(join(cwd, 'src/backend/backend.sln')) ? 'backend.sln' : 'Backend.sln'
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Design System - {Project Name}
3
3
  *
4
- * CSS Variables generated from ui-design-system.md
4
+ * CSS Variables generated from design-system.md
5
5
  * Use estas variáveis em todo o projeto para manter consistência visual.
6
6
  *
7
7
  * Template MORPH-SPEC by Polymorphism Tech
@@ -169,10 +169,10 @@ Different types of changes require different levels of planning and documentatio
169
169
 
170
170
  **Outputs:**
171
171
  - proposal.md
172
- - ui-design-system.md
173
- - ui-mockups.md
174
- - ui-components.md
175
- - ui-flows.md
172
+ - design-system.md
173
+ - mockups.md
174
+ - components.md
175
+ - flows.md
176
176
  - spec.md
177
177
  - contracts.cs
178
178
  - tasks.json
@@ -575,7 +575,7 @@ Create `framework/workflows/configs/my-workflow.json`:
575
575
  "keywords": ["custom-keyword", "my-use-case"],
576
576
  "phases": {
577
577
  "run": ["proposal", "design", "implement"],
578
- "skip": ["setup", "clarify", "tasks"]
578
+ "skip": ["uiux", "plan", "tasks"]
579
579
  },
580
580
  "pausePoints": [
581
581
  { "phase": "design", "question": "Approve custom design?" }
@@ -686,7 +686,7 @@ morph-spec feature create login-typo --request "fix typo in login button"
686
686
  morph-spec phase advance login-typo
687
687
 
688
688
  # Output:
689
- ⏩ Skipping: setup, uiux, design, clarify, tasks, sync
689
+ ⏩ Skipping: uiux, design, plan, sync
690
690
  ➡️ Next phase: implement
691
691
  ```
692
692
 
@@ -878,7 +878,7 @@ Create `framework/workflows/configs/blazor-standard.json`:
878
878
  "keywords": ["pagination", "filter"],
879
879
  "phases": {
880
880
  "run": ["proposal", "uiux", "design", "tasks", "implement"],
881
- "skip": ["setup", "clarify", "sync"]
881
+ "skip": ["sync"]
882
882
  },
883
883
  "priority": 2
884
884
  }
@@ -993,7 +993,7 @@ projectPath?: string // Optional: Project path (default: '.')
993
993
  import { getWorkflowConfig } from './src/lib/workflow-detector.js';
994
994
 
995
995
  const config = getWorkflowConfig('standard');
996
- console.log(config.phases.skip); // ["setup", "uiux", "clarify", "sync"]
996
+ console.log(config.phases.skip); // []
997
997
  ```
998
998
 
999
999
  ### listWorkflows(projectPath?)
@@ -0,0 +1,51 @@
1
+ {
2
+ "id": "fast-track",
3
+ "name": "Fast-Track (Low Complexity)",
4
+ "description": "Simple features - CRUD, isolated endpoints, UI components, bug fixes",
5
+ "criteria": {
6
+ "maxFiles": 3,
7
+ "maxLines": 50,
8
+ "maxComponents": 1,
9
+ "noInfrastructure": true
10
+ },
11
+ "keywords": [
12
+ "crud",
13
+ "endpoint",
14
+ "button",
15
+ "fix",
16
+ "typo",
17
+ "add field",
18
+ "simple",
19
+ "component",
20
+ "quick",
21
+ "small",
22
+ "ajuste",
23
+ "correção",
24
+ "campo",
25
+ "rename",
26
+ "toggle",
27
+ "flag",
28
+ "label",
29
+ "icon",
30
+ "badge",
31
+ "tooltip"
32
+ ],
33
+ "phases": {
34
+ "run": ["proposal", "tasks", "implement"],
35
+ "skip": ["uiux", "design", "plan", "sync"],
36
+ "skipIfCondition": {},
37
+ "combined": {}
38
+ },
39
+ "pausePoints": [
40
+ {
41
+ "phase": "tasks",
42
+ "question": "Approve task breakdown?"
43
+ }
44
+ ],
45
+ "outputs": {
46
+ "required": ["proposal.md", "tasks.md"],
47
+ "optional": ["recap.md"],
48
+ "skip": ["spec.md", "contracts.cs", "contracts.ts", "plan.md", "design-system.md", "schema-analysis.md"]
49
+ },
50
+ "priority": 1
51
+ }
@@ -0,0 +1,68 @@
1
+ {
2
+ "id": "full",
3
+ "name": "Full (High Complexity)",
4
+ "description": "Complex features - multi-domain, new entities, integrations, infrastructure",
5
+ "criteria": {
6
+ "minFiles": 10,
7
+ "minLines": 500,
8
+ "minComponents": 2
9
+ },
10
+ "keywords": [
11
+ "system",
12
+ "integration",
13
+ "architecture",
14
+ "migrate",
15
+ "infrastructure",
16
+ "platform",
17
+ "multi",
18
+ "subsystem",
19
+ "security",
20
+ "auth",
21
+ "deploy",
22
+ "pipeline",
23
+ "redesign",
24
+ "rewrite",
25
+ "overhaul",
26
+ "migração",
27
+ "plataforma",
28
+ "arquitetura",
29
+ "integração"
30
+ ],
31
+ "phases": {
32
+ "run": ["proposal", "uiux", "design", "plan", "tasks", "implement", "sync"],
33
+ "skip": [],
34
+ "skipIfCondition": {
35
+ "uiux": "!hasUIAgents"
36
+ },
37
+ "combined": {}
38
+ },
39
+ "pausePoints": [
40
+ {
41
+ "phase": "proposal",
42
+ "question": "Approve feature proposal?"
43
+ },
44
+ {
45
+ "phase": "uiux",
46
+ "question": "Approve UI/UX designs?",
47
+ "condition": "hasUIAgents"
48
+ },
49
+ {
50
+ "phase": "design",
51
+ "question": "Approve technical specification?"
52
+ },
53
+ {
54
+ "phase": "plan",
55
+ "question": "Approve implementation plan?"
56
+ },
57
+ {
58
+ "phase": "tasks",
59
+ "question": "Approve task breakdown?"
60
+ }
61
+ ],
62
+ "outputs": {
63
+ "required": ["proposal.md", "spec.md", "plan.md", "tasks.md", "recap.md"],
64
+ "optional": ["contracts.cs", "contracts.ts", "schema-analysis.md", "decisions.md"],
65
+ "skip": []
66
+ },
67
+ "priority": 3
68
+ }
@@ -29,8 +29,8 @@
29
29
  "busca"
30
30
  ],
31
31
  "phases": {
32
- "run": ["proposal", "design", "tasks", "implement"],
33
- "skip": ["setup", "clarify", "sync"],
32
+ "run": ["proposal", "design", "plan", "tasks", "implement", "sync"],
33
+ "skip": [],
34
34
  "skipIfCondition": {
35
35
  "uiux": "!hasUIAgents"
36
36
  },
@@ -45,6 +45,10 @@
45
45
  "phase": "design",
46
46
  "question": "Approve spec (concise, 1-2 pages)?"
47
47
  },
48
+ {
49
+ "phase": "plan",
50
+ "question": "Approve implementation plan?"
51
+ },
48
52
  {
49
53
  "phase": "tasks",
50
54
  "question": "Approve task breakdown?",
@@ -52,7 +56,7 @@
52
56
  }
53
57
  ],
54
58
  "outputs": {
55
- "required": ["proposal.md", "spec.md", "recap.md"],
59
+ "required": ["proposal.md", "spec.md", "plan.md", "recap.md"],
56
60
  "optional": ["decisions.md"],
57
61
  "skip": ["contracts.cs"]
58
62
  },
@@ -33,7 +33,7 @@ morph-spec story shard scheduled-reports
33
33
  # ├── index.md
34
34
  # ├── entity-design.md
35
35
  # ├── service-layer.md
36
- # └── ui-components.md
36
+ # └── components.md
37
37
 
38
38
  # 1.2 - Criar primeira story
39
39
  morph-spec story create scheduled-reports SR-001 \
@@ -12,10 +12,10 @@ The enforcement pipeline consists of **6 integrated phases** that work together
12
12
 
13
13
  | Phase | Component | When | What |
14
14
  |-------|-----------|------|------|
15
- | **1** | Data-Driven Validators | FASE 5 (task done) | Maps agents → validators via agents.json |
15
+ | **1** | Data-Driven Validators | FASE 7 (task done) | Maps agents → validators via agents.json |
16
16
  | **2** | Standards Context Injector | Agent detection | Auto-loads 55k+ chars of standards per agent |
17
- | **3** | Design System Enforcement | FASE 5 gate | Blocks UI features without design system |
18
- | **4** | Spec-Time Validation | FASE 2 gate | Validates contracts.cs before implementation |
17
+ | **3** | Design System Enforcement | FASE 7 gate | Blocks UI features without design system |
18
+ | **4** | Spec-Time Validation | FASE 3 gate | Validates contracts.cs before implementation |
19
19
  | **5** | Standards Optimization | N/A | Optimized standards (23% token reduction) |
20
20
  | **6** | Comprehensive Testing | All phases | 242 tests, 100% pass rate |
21
21
 
@@ -37,8 +37,8 @@ Before: Hardcoded AGENT_VALIDATOR_MAP in validation-runner.js made it impossible
37
37
  ```json
38
38
  {
39
39
  "agents": {
40
- "blazor-builder": {
41
- "validators": ["architecture", "blazor", "blazor-concurrency", "blazor-state", "css", "design-system"]
40
+ "nextjs-expert": {
41
+ "validators": ["architecture", "nextjs", "css", "design-system"]
42
42
  },
43
43
  "standards-architect": {
44
44
  "validators": ["architecture", "packages"]
@@ -80,7 +80,7 @@ morph-spec task done my-feature T001
80
80
 
81
81
  Before: Specialists had to manually read standards files, often missing relevant patterns.
82
82
 
83
- **After:** All relevant standards automatically loaded into agent context (55k+ chars for blazor-builder).
83
+ **After:** All relevant standards automatically loaded into agent context (55k+ chars for nextjs-expert).
84
84
 
85
85
  ### Implementation
86
86
 
@@ -103,22 +103,21 @@ export function loadStandardsForAgent(agentId, projectPath) {
103
103
  **Agent → Standards Mapping:**
104
104
  | Agent | Standards Loaded |
105
105
  |-------|------------------|
106
- | `blazor-builder` | blazor-lifecycle, blazor-state, blazor-efcore, blazor-pitfalls, html-to-blazor, fluent-ui-blazor, css-*, coding, architecture |
106
+ | `nextjs-expert` | nextjs-*, css-*, coding, architecture |
107
107
  | `ai-system-architect` | agent-framework-*, architecture, coding |
108
108
  | `infra-architect` | azure, architecture, dotnet10-compatibility, infrastructure (tier-2 Infrastructure Squad Leader) |
109
- | `azure-architect` | azure, architecture, dotnet10-compatibility (tier-3 specialist) |
110
109
  | `ms-agent-expert` | agent-framework-*, coding, architecture |
111
110
 
112
111
  ### Usage
113
112
 
114
113
  ```bash
115
114
  # Standards auto-injected when running detect-agents with --json
116
- morph-spec detect-agents --json "create blazor dashboard"
115
+ morph-spec detect-agents --json "create user dashboard"
117
116
 
118
117
  # Output includes standardsSummary for each agent:
119
118
  {
120
119
  "standardsSummary": {
121
- "blazor-builder": {
120
+ "nextjs-expert": {
122
121
  "fullContent": "... 55304 characters ...",
123
122
  "sections": [...]
124
123
  }
@@ -146,7 +145,7 @@ Before: UI features implemented with hardcoded colors, inconsistent styling, no
146
145
 
147
146
  **1. design-system-detector.js**
148
147
  - Checks 4 levels (priority order):
149
- 1. Feature-level: `.morph/features/{feature}/ui-design-system.md`
148
+ 1. Feature-level: `.morph/features/{feature}/design-system.md`
150
149
  2. Project-level: `.morph/context/design-system.md`
151
150
  3. Generated CSS: `wwwroot/css/design-system.css`
152
151
  4. Existing CSS variables: scans `.css` files for `--app-*` tokens
@@ -184,7 +183,7 @@ morph-spec phase advance my-ui-feature
184
183
  #
185
184
  # Create a design system with one of these options:
186
185
  # 1. Project-level: .morph/context/design-system.md
187
- # 2. Feature-level: .morph/features/my-ui-feature/ui-design-system.md
186
+ # 2. Feature-level: .morph/features/my-ui-feature/design-system.md
188
187
  # 3. Auto-generate: morph-spec generate design-system
189
188
 
190
189
  # Auto-scaffold design system
@@ -206,7 +205,7 @@ morph-spec generate design-system my-ui-feature # Feature-level
206
205
 
207
206
  Before: C# coding violations only discovered during code review or runtime.
208
207
 
209
- **After:** contracts.cs validated at FASE 2 (design phase) before any implementation.
208
+ **After:** contracts.cs validated at FASE 3 (design phase) before any implementation.
210
209
 
211
210
  ### Validation Rules
212
211
 
@@ -277,7 +276,7 @@ Before: C# coding violations only discovered during code review or runtime.
277
276
 
278
277
  ```javascript
279
278
  // advance-phase.js
280
- if (currentPhase === 'design' && (nextPhase === 'clarify' || nextPhase === 'tasks')) {
279
+ if (currentPhase === 'design' && nextPhase === 'plan') {
281
280
  const specValidation = await validateSpec('.', feature);
282
281
  if (specValidation.errors > 0) {
283
282
  // Block advancement + show violations
@@ -419,7 +418,7 @@ Before: Standards files verbose (1761 lines total), wasting tokens on redundant
419
418
  3. ✅ Decision Wiring (decisions.md → constraints → validators)
420
419
  4. ✅ Design System Gate (blocks UI features without design system)
421
420
  5. ✅ Spec Validator (detects 9 C# violations in test)
422
- 6. ✅ Standards Injector (55k+ chars loaded for blazor-builder)
421
+ 6. ✅ Standards Injector (55k+ chars loaded for nextjs-expert)
423
422
 
424
423
  ---
425
424
 
@@ -433,14 +432,14 @@ Before: Standards files verbose (1761 lines total), wasting tokens on redundant
433
432
  2. detect-agents --json → agents registered in state.json
434
433
  ↓ (standards-context-injector loads 55k+ chars per agent)
435
434
  ↓
436
- 3. FASE 2: Design → spec.md + contracts.cs created
435
+ 3. FASE 3: Design → spec.md + contracts.cs created
437
436
  ↓
438
437
  4. Spec validator runs → blocks if C# violations found
439
438
  ↓ (decisions.md ADRs parsed → constraints extracted)
440
439
  ↓
441
- 5. FASE 4: Tasks → advance-phase checks prerequisites
440
+ 5. FASE 6: Tasks → advance-phase checks prerequisites
442
441
  ↓
443
- 6. FASE 5: Implement → design system gate blocks if UI agents + no design system
442
+ 6. FASE 7: Implement → design system gate blocks if UI agents + no design system
444
443
  ↓
445
444
  7. Each `task done` → validation-runner orchestrates validators
446
445
  ↓ (validators use: agents.json mapping + decision constraints + standards content)
@@ -535,7 +534,7 @@ morph-spec state add-agent {feature} {agent-id}
535
534
 
536
535
  **Check:**
537
536
  1. Detection order: feature > project > generated > existing CSS
538
- 2. File location: `.morph/context/design-system.md` or `.morph/features/{feature}/ui-design-system.md`
537
+ 2. File location: `.morph/context/design-system.md` or `.morph/features/{feature}/design-system.md`
539
538
  3. Format: Must have `# Design System` or `## Colors` sections
540
539
 
541
540
  **Fix:**