@polymorphism-tech/morph-spec 3.1.0 → 4.2.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 (333) hide show
  1. package/CLAUDE.md +882 -3
  2. package/README.md +79 -18
  3. package/bin/detect-agents.js +1 -1
  4. package/bin/morph-spec.js +163 -26
  5. package/bin/task-manager.cjs +101 -7
  6. package/bin/validate.js +1 -1
  7. package/docs/cli-auto-detection.md +219 -0
  8. package/docs/getting-started.md +0 -5
  9. package/docs/llm-interaction-config.md +735 -0
  10. package/docs/troubleshooting.md +269 -0
  11. package/docs/v3.0/AGENTS.md +521 -0
  12. package/docs/v3.0/ANALYSIS.md +555 -0
  13. package/docs/v3.0/ARCHITECTURE.md +436 -0
  14. package/docs/v3.0/EXECUTION-FLOW.md +1304 -0
  15. package/docs/v3.0/FEATURES.md +688 -0
  16. package/docs/v3.0/README.md +231 -0
  17. package/docs/v3.0/ROADMAP.md +801 -0
  18. package/docs/validation-checklist.md +0 -1
  19. package/package.json +5 -1
  20. package/src/commands/agents/index.js +4 -0
  21. package/src/commands/agents/spawn-team.js +172 -0
  22. package/src/commands/{create-story.js → feature/create-story.js} +357 -354
  23. package/src/commands/feature/index.js +6 -0
  24. package/src/commands/{shard-spec.js → feature/shard-spec.js} +2 -2
  25. package/src/commands/{sprint-status.js → feature/sprint-status.js} +1 -1
  26. package/src/commands/{generate-context.js → generation/generate-context.js} +40 -40
  27. package/src/commands/{generate.js → generation/generate.js} +130 -3
  28. package/src/commands/generation/index.js +5 -0
  29. package/src/commands/index.js +16 -0
  30. package/src/commands/learning/capture-pattern.js +121 -0
  31. package/src/commands/learning/index.js +5 -0
  32. package/src/commands/learning/search-patterns.js +126 -0
  33. package/src/commands/{detect-agents.js → project/detect-agents.js} +178 -178
  34. package/src/commands/project/detect-workflow.js +174 -0
  35. package/src/commands/{detect.js → project/detect.js} +104 -104
  36. package/src/commands/{doctor.js → project/doctor.js} +356 -356
  37. package/src/commands/project/index.js +10 -0
  38. package/src/commands/{init.js → project/init.js} +305 -258
  39. package/src/commands/{sync.js → project/sync.js} +167 -167
  40. package/src/commands/{update.js → project/update.js} +240 -204
  41. package/src/commands/{advance-phase.js → state/advance-phase.js} +416 -266
  42. package/src/commands/state/approve.js +221 -0
  43. package/src/commands/state/index.js +8 -0
  44. package/src/commands/{rollback-phase.js → state/rollback-phase.js} +185 -185
  45. package/src/commands/{state.js → state/state.js} +334 -334
  46. package/src/commands/{validate-phase.js → state/validate-phase.js} +221 -221
  47. package/src/commands/tasks/index.js +4 -0
  48. package/src/commands/{task.js → tasks/task.js} +78 -78
  49. package/src/commands/templates/index.js +8 -0
  50. package/src/commands/templates/template-customize.js +101 -0
  51. package/src/commands/templates/template-list.js +128 -0
  52. package/src/commands/templates/template-render.js +95 -0
  53. package/src/commands/templates/template-show.js +131 -0
  54. package/src/commands/templates/template-validate.js +91 -0
  55. package/src/commands/utils/index.js +7 -0
  56. package/src/commands/utils/migrate-state.js +158 -0
  57. package/src/commands/{session-summary.js → utils/session-summary.js} +291 -291
  58. package/src/commands/{troubleshoot.js → utils/troubleshoot.js} +222 -222
  59. package/src/commands/utils/upgrade.js +346 -0
  60. package/src/commands/{analyze-blazor-concurrency.js → validation/analyze-blazor-concurrency.js} +193 -193
  61. package/src/commands/validation/index.js +8 -0
  62. package/src/commands/{lint-fluent.js → validation/lint-fluent.js} +352 -352
  63. package/src/commands/{validate-blazor-state.js → validation/validate-blazor-state.js} +210 -210
  64. package/src/commands/{validate-blazor.js → validation/validate-blazor.js} +156 -156
  65. package/src/commands/{validate-css.js → validation/validate-css.js} +84 -84
  66. package/src/core/index.js +10 -0
  67. package/src/core/registry/command-registry.js +302 -0
  68. package/src/core/registry/index.js +8 -0
  69. package/src/core/registry/validator-registry.js +204 -0
  70. package/src/core/state/index.js +8 -0
  71. package/src/core/state/phase-state-machine.js +214 -0
  72. package/src/{lib → core/state}/state-manager.js +572 -414
  73. package/src/core/templates/index.js +9 -0
  74. package/src/core/templates/template-data-sources.js +325 -0
  75. package/src/core/templates/template-registry.js +335 -0
  76. package/src/core/templates/template-renderer.js +477 -0
  77. package/src/core/templates/template-validator.js +296 -0
  78. package/src/core/workflows/index.js +7 -0
  79. package/src/core/workflows/workflow-detector.js +354 -0
  80. package/src/generator/config-generator.js +206 -0
  81. package/src/generator/templates/config.json.template +40 -0
  82. package/src/generator/templates/project.md.template +67 -0
  83. package/src/lib/{complexity-analyzer.js → analysis/complexity-analyzer.js} +441 -441
  84. package/src/lib/analysis/index.js +7 -0
  85. package/src/lib/checkpoints/checkpoint-hooks.js +258 -0
  86. package/src/lib/checkpoints/index.js +7 -0
  87. package/src/lib/detectors/config-detector.js +223 -223
  88. package/src/lib/detectors/conversation-analyzer.js +163 -163
  89. package/src/lib/{design-system-detector.js → detectors/design-system-detector.js} +187 -187
  90. package/src/lib/detectors/index.js +87 -84
  91. package/src/lib/detectors/standards-generator.js +275 -275
  92. package/src/lib/detectors/structure-detector.js +245 -245
  93. package/src/lib/{context-generator.js → generators/context-generator.js} +526 -516
  94. package/src/lib/generators/index.js +10 -0
  95. package/src/lib/generators/metadata-extractor.js +387 -0
  96. package/src/lib/{recap-generator.js → generators/recap-generator.js} +205 -205
  97. package/src/lib/learning/index.js +7 -0
  98. package/src/lib/orchestration/index.js +7 -0
  99. package/src/lib/{team-orchestrator.js → orchestration/team-orchestrator.js} +323 -323
  100. package/src/lib/stacks/index.js +7 -0
  101. package/src/lib/{stack-resolver.js → stacks/stack-resolver.js} +180 -148
  102. package/src/lib/standards/index.js +7 -0
  103. package/src/lib/{standards-context-injector.js → standards/standards-context-injector.js} +298 -288
  104. package/src/lib/troubleshooting/index.js +8 -0
  105. package/src/lib/{troubleshoot-grep.js → troubleshooting/troubleshoot-grep.js} +204 -204
  106. package/src/lib/{troubleshoot-index.js → troubleshooting/troubleshoot-index.js} +144 -144
  107. package/src/lib/validators/architecture/architecture-validator.js +387 -0
  108. package/src/lib/validators/architecture/index.js +7 -0
  109. package/src/lib/validators/architecture-validator.js +40 -367
  110. package/src/lib/{blazor-concurrency-analyzer.js → validators/blazor/blazor-concurrency-analyzer.js} +277 -288
  111. package/src/lib/{blazor-state-validator.js → validators/blazor/blazor-state-validator.js} +279 -291
  112. package/src/lib/{blazor-validator.js → validators/blazor/blazor-validator.js} +369 -374
  113. package/src/lib/validators/blazor/index.js +9 -0
  114. package/src/lib/validators/content/content-validator.js +351 -0
  115. package/src/lib/validators/content/index.js +7 -0
  116. package/src/lib/validators/content-validator.js +164 -0
  117. package/src/lib/validators/{contract-compliance-validator.js → contracts/contract-compliance-validator.js} +273 -273
  118. package/src/lib/validators/contracts/index.js +7 -0
  119. package/src/lib/{css-validator.js → validators/css/css-validator.js} +352 -352
  120. package/src/lib/validators/css/index.js +7 -0
  121. package/src/lib/validators/{design-system-validator.js → design-system/design-system-validator.js} +231 -231
  122. package/src/lib/validators/design-system/index.js +7 -0
  123. package/src/lib/validators/package-validator.js +41 -340
  124. package/src/lib/validators/packages/index.js +7 -0
  125. package/src/lib/validators/packages/package-validator.js +360 -0
  126. package/src/lib/validators/shared/index.js +12 -0
  127. package/src/lib/validators/shared/issue-counter.js +18 -0
  128. package/src/lib/validators/shared/result-formatter.js +124 -0
  129. package/src/lib/{spec-validator.js → validators/spec-validator.js} +258 -258
  130. package/src/lib/validators/ui/index.js +7 -0
  131. package/src/lib/validators/ui/ui-contrast-validator.js +422 -0
  132. package/src/lib/validators/ui-contrast-validator.js +31 -409
  133. package/src/lib/{validation-runner.js → validators/validation-runner.js} +286 -284
  134. package/src/llm/analyzer.js +215 -0
  135. package/src/llm/environment-detector.js +43 -0
  136. package/src/llm/few-shot-examples.js +216 -0
  137. package/src/llm/project-config-schema.json +188 -0
  138. package/src/llm/prompt-builder.js +96 -0
  139. package/src/orchestrator.js +206 -0
  140. package/src/sanitizer/context-sanitizer.js +221 -0
  141. package/src/sanitizer/patterns.js +163 -0
  142. package/src/scanner/project-scanner.js +242 -0
  143. package/src/ui/diff-display.js +91 -0
  144. package/src/ui/interactive-wizard.js +96 -0
  145. package/src/ui/user-review.js +211 -0
  146. package/src/ui/wizard-questions.js +188 -0
  147. package/src/utils/color-utils.js +70 -0
  148. package/src/utils/file-copier.js +188 -189
  149. package/src/utils/process-handler.js +97 -0
  150. package/src/writer/file-writer.js +86 -0
  151. package/stacks/blazor-azure/.claude/skills/level-2-domains/ai-agents/ai-system-architect.md +3 -3
  152. package/stacks/blazor-azure/.claude/skills/level-2-domains/backend/api-designer.md +59 -0
  153. package/stacks/blazor-azure/.claude/skills/level-2-domains/backend/dotnet-senior.md +45 -255
  154. package/stacks/blazor-azure/.claude/skills/level-2-domains/backend/ef-modeler.md +33 -88
  155. package/stacks/blazor-azure/.claude/skills/level-2-domains/backend/ms-agent-expert.md +25 -89
  156. package/stacks/blazor-azure/.claude/skills/level-2-domains/integrations/hangfire-orchestrator.md +64 -0
  157. package/stacks/blazor-azure/.morph/config/agents.json +879 -764
  158. package/stacks/blazor-azure/.morph/hooks/{pre-commit-tests.sh → pre-commit/tests-csharp.sh} +3 -2
  159. package/stacks/blazor-azure/.morph/templates/.gitkeep +0 -0
  160. package/stacks/blazor-azure/.morph/templates/infrastructure/github/workflows/cd-prod.yml.hbs +41 -0
  161. package/stacks/blazor-azure/.morph/templates/infrastructure/github/workflows/cd-staging.yml.hbs +24 -0
  162. package/stacks/blazor-azure/.morph/templates/infrastructure/github/workflows/ci-build.yml.hbs +23 -0
  163. package/stacks/nextjs-supabase/.claude/commands/morph-apply.md +221 -0
  164. package/stacks/nextjs-supabase/.claude/commands/morph-archive.md +79 -0
  165. package/stacks/nextjs-supabase/.claude/commands/morph-deploy.md +529 -0
  166. package/stacks/nextjs-supabase/.claude/commands/morph-infra.md +209 -0
  167. package/stacks/nextjs-supabase/.claude/commands/morph-preflight.md +227 -0
  168. package/stacks/nextjs-supabase/.claude/commands/morph-proposal.md +122 -0
  169. package/stacks/nextjs-supabase/.claude/commands/morph-status.md +86 -0
  170. package/stacks/nextjs-supabase/.claude/commands/morph-troubleshoot.md +122 -0
  171. package/stacks/nextjs-supabase/.claude/settings.local.json +6 -0
  172. package/stacks/nextjs-supabase/.claude/skills/level-2-domains/integrations/supabase-expert.md +30 -150
  173. package/stacks/nextjs-supabase/.morph/config/agents.json +345 -345
  174. package/stacks/nextjs-supabase/.morph/hooks/pre-commit/tests-typescript.sh +61 -0
  175. package/stacks/nextjs-supabase/.morph/templates/.gitkeep +0 -0
  176. package/stacks/nextjs-supabase/.morph/templates/infrastructure/github/workflows/cd-prod.yml.hbs +22 -0
  177. package/stacks/nextjs-supabase/.morph/templates/infrastructure/github/workflows/cd-staging.yml.hbs +22 -0
  178. package/stacks/nextjs-supabase/.morph/templates/infrastructure/github/workflows/ci-build.yml.hbs +35 -0
  179. package/stacks/nextjs-supabase/README.md +6 -15
  180. package/bin/render-template.js +0 -303
  181. package/bin/semantic-detect-agents.js +0 -247
  182. package/bin/validate-agents-skills.js +0 -257
  183. package/bin/validate-agents.js +0 -70
  184. package/bin/validate-phase.js +0 -263
  185. package/docs/examples.md +0 -328
  186. package/scripts/reorganize-skills.cjs +0 -175
  187. package/scripts/validate-agents-structure.cjs +0 -52
  188. package/scripts/validate-skills.cjs +0 -180
  189. package/src/commands/deploy.js +0 -780
  190. package/src/lib/continuous-validator.js +0 -421
  191. package/src/lib/decision-constraint-loader.js +0 -109
  192. package/src/lib/design-system-scaffolder.js +0 -299
  193. package/src/lib/hook-executor.js +0 -257
  194. package/src/lib/mockup-generator.js +0 -366
  195. package/src/lib/ui-detector.js +0 -350
  196. package/stacks/blazor-azure/.azure/README.md +0 -293
  197. package/stacks/blazor-azure/.azure/docs/azure-devops-setup.md +0 -454
  198. package/stacks/blazor-azure/.azure/docs/branch-strategy.md +0 -398
  199. package/stacks/blazor-azure/.azure/docs/local-development.md +0 -515
  200. package/stacks/blazor-azure/.azure/pipelines/pipeline-variables.yml +0 -34
  201. package/stacks/blazor-azure/.azure/pipelines/prod-pipeline.yml +0 -319
  202. package/stacks/blazor-azure/.azure/pipelines/staging-pipeline.yml +0 -234
  203. package/stacks/blazor-azure/.azure/pipelines/templates/build-dotnet.yml +0 -75
  204. package/stacks/blazor-azure/.azure/pipelines/templates/deploy-app-service.yml +0 -94
  205. package/stacks/blazor-azure/.azure/pipelines/templates/deploy-container-app.yml +0 -120
  206. package/stacks/blazor-azure/.azure/pipelines/templates/infra-deploy.yml +0 -90
  207. package/stacks/blazor-azure/.claude/settings.local.json +0 -15
  208. package/stacks/blazor-azure/.morph/docs/STORY-DRIVEN-DEVELOPMENT.md +0 -392
  209. package/stacks/blazor-azure/.morph/docs/workflows/design-impl.md +0 -37
  210. package/stacks/blazor-azure/.morph/docs/workflows/enforcement-pipeline.md +0 -668
  211. package/stacks/blazor-azure/.morph/docs/workflows/fast-track.md +0 -29
  212. package/stacks/blazor-azure/.morph/docs/workflows/full-morph.md +0 -76
  213. package/stacks/blazor-azure/.morph/docs/workflows/standard.md +0 -44
  214. package/stacks/blazor-azure/.morph/docs/workflows/ui-refresh.md +0 -39
  215. package/stacks/blazor-azure/.morph/examples/api-nextjs/README.md +0 -241
  216. package/stacks/blazor-azure/.morph/examples/api-nextjs/contracts.ts +0 -307
  217. package/stacks/blazor-azure/.morph/examples/api-nextjs/spec.md +0 -399
  218. package/stacks/blazor-azure/.morph/examples/api-nextjs/tasks.md +0 -168
  219. package/stacks/blazor-azure/.morph/examples/micro-saas/README.md +0 -125
  220. package/stacks/blazor-azure/.morph/examples/micro-saas/contracts.cs +0 -358
  221. package/stacks/blazor-azure/.morph/examples/micro-saas/decisions.md +0 -246
  222. package/stacks/blazor-azure/.morph/examples/micro-saas/spec.md +0 -236
  223. package/stacks/blazor-azure/.morph/examples/micro-saas/tasks.md +0 -150
  224. package/stacks/blazor-azure/.morph/examples/multi-agent/README.md +0 -309
  225. package/stacks/blazor-azure/.morph/examples/multi-agent/contracts.cs +0 -433
  226. package/stacks/blazor-azure/.morph/examples/multi-agent/spec.md +0 -479
  227. package/stacks/blazor-azure/.morph/examples/multi-agent/tasks.md +0 -185
  228. package/stacks/blazor-azure/.morph/examples/scheduled-reports/decisions.md +0 -158
  229. package/stacks/blazor-azure/.morph/examples/scheduled-reports/proposal.md +0 -95
  230. package/stacks/blazor-azure/.morph/examples/scheduled-reports/spec.md +0 -267
  231. package/stacks/blazor-azure/.morph/examples/state-v3.json +0 -188
  232. package/stacks/blazor-azure/.morph/hooks/README.md +0 -348
  233. package/stacks/blazor-azure/.morph/hooks/pre-commit-agents.sh +0 -24
  234. package/stacks/blazor-azure/.morph/hooks/pre-commit-all.sh +0 -48
  235. package/stacks/blazor-azure/.morph/hooks/pre-commit-specs.sh +0 -49
  236. package/stacks/blazor-azure/.morph/hooks/task-completed.js +0 -73
  237. package/stacks/blazor-azure/.morph/hooks/teammate-idle.js +0 -68
  238. package/stacks/blazor-azure/.morph/standards/agent-framework-blazor-ui.md +0 -359
  239. package/stacks/blazor-azure/.morph/standards/agent-framework-production.md +0 -410
  240. package/stacks/blazor-azure/.morph/standards/agent-framework-setup.md +0 -413
  241. package/stacks/blazor-azure/.morph/standards/agent-framework-workflows.md +0 -349
  242. package/stacks/blazor-azure/.morph/standards/agent-teams-workflow.md +0 -474
  243. package/stacks/blazor-azure/.morph/standards/architecture.md +0 -325
  244. package/stacks/blazor-azure/.morph/standards/azure.md +0 -605
  245. package/stacks/blazor-azure/.morph/standards/coding.md +0 -377
  246. package/stacks/blazor-azure/.morph/standards/dotnet10-migration.md +0 -520
  247. package/stacks/blazor-azure/.morph/standards/fluent-ui-setup.md +0 -590
  248. package/stacks/blazor-azure/.morph/standards/migration-guide.md +0 -514
  249. package/stacks/blazor-azure/.morph/standards/passkeys-auth.md +0 -423
  250. package/stacks/blazor-azure/.morph/standards/vector-search-rag.md +0 -536
  251. package/stacks/blazor-azure/.morph/templates/CONTEXT-FEATURE.md +0 -276
  252. package/stacks/blazor-azure/.morph/templates/CONTEXT.md +0 -170
  253. package/stacks/blazor-azure/.morph/templates/FluentDesignTheme.cs +0 -149
  254. package/stacks/blazor-azure/.morph/templates/MudTheme.cs +0 -281
  255. package/stacks/blazor-azure/.morph/templates/agent.cs +0 -163
  256. package/stacks/blazor-azure/.morph/templates/clarify-questions.md +0 -159
  257. package/stacks/blazor-azure/.morph/templates/component.razor +0 -239
  258. package/stacks/blazor-azure/.morph/templates/contracts/Commands.cs +0 -74
  259. package/stacks/blazor-azure/.morph/templates/contracts/Entities.cs +0 -25
  260. package/stacks/blazor-azure/.morph/templates/contracts/Queries.cs +0 -74
  261. package/stacks/blazor-azure/.morph/templates/contracts/README.md +0 -74
  262. package/stacks/blazor-azure/.morph/templates/contracts.cs +0 -217
  263. package/stacks/blazor-azure/.morph/templates/decisions.md +0 -123
  264. package/stacks/blazor-azure/.morph/templates/design-system.css +0 -226
  265. package/stacks/blazor-azure/.morph/templates/infra/.dockerignore.example +0 -89
  266. package/stacks/blazor-azure/.morph/templates/infra/Dockerfile.example +0 -82
  267. package/stacks/blazor-azure/.morph/templates/infra/README.md +0 -286
  268. package/stacks/blazor-azure/.morph/templates/infra/app-insights.bicep +0 -63
  269. package/stacks/blazor-azure/.morph/templates/infra/app-service.bicep +0 -164
  270. package/stacks/blazor-azure/.morph/templates/infra/azure-pipelines-deploy.yml +0 -480
  271. package/stacks/blazor-azure/.morph/templates/infra/container-app-env.bicep +0 -49
  272. package/stacks/blazor-azure/.morph/templates/infra/container-app.bicep +0 -156
  273. package/stacks/blazor-azure/.morph/templates/infra/deploy-checklist.md +0 -426
  274. package/stacks/blazor-azure/.morph/templates/infra/deploy.ps1 +0 -229
  275. package/stacks/blazor-azure/.morph/templates/infra/deploy.sh +0 -208
  276. package/stacks/blazor-azure/.morph/templates/infra/key-vault.bicep +0 -91
  277. package/stacks/blazor-azure/.morph/templates/infra/main.bicep +0 -189
  278. package/stacks/blazor-azure/.morph/templates/infra/parameters.dev.json +0 -29
  279. package/stacks/blazor-azure/.morph/templates/infra/parameters.prod.json +0 -29
  280. package/stacks/blazor-azure/.morph/templates/infra/parameters.staging.json +0 -29
  281. package/stacks/blazor-azure/.morph/templates/infra/sql-database.bicep +0 -103
  282. package/stacks/blazor-azure/.morph/templates/infra/storage.bicep +0 -106
  283. package/stacks/blazor-azure/.morph/templates/integrations/asaas-client.cs +0 -387
  284. package/stacks/blazor-azure/.morph/templates/integrations/asaas-webhook.cs +0 -351
  285. package/stacks/blazor-azure/.morph/templates/integrations/azure-identity-config.cs +0 -288
  286. package/stacks/blazor-azure/.morph/templates/integrations/clerk-config.cs +0 -258
  287. package/stacks/blazor-azure/.morph/templates/job.cs +0 -171
  288. package/stacks/blazor-azure/.morph/templates/migration.cs +0 -83
  289. package/stacks/blazor-azure/.morph/templates/proposal.md +0 -141
  290. package/stacks/blazor-azure/.morph/templates/recap.md +0 -94
  291. package/stacks/blazor-azure/.morph/templates/repository.cs +0 -141
  292. package/stacks/blazor-azure/.morph/templates/saas/subscription.cs +0 -347
  293. package/stacks/blazor-azure/.morph/templates/saas/tenant.cs +0 -338
  294. package/stacks/blazor-azure/.morph/templates/service.cs +0 -139
  295. package/stacks/blazor-azure/.morph/templates/simulation.md +0 -353
  296. package/stacks/blazor-azure/.morph/templates/spec.md +0 -149
  297. package/stacks/blazor-azure/.morph/templates/sprint-status.yaml +0 -68
  298. package/stacks/blazor-azure/.morph/templates/state.template.json +0 -222
  299. package/stacks/blazor-azure/.morph/templates/story.md +0 -143
  300. package/stacks/blazor-azure/.morph/templates/tasks.md +0 -257
  301. package/stacks/blazor-azure/.morph/templates/test.cs +0 -239
  302. package/stacks/blazor-azure/.morph/templates/ui-components.md +0 -362
  303. package/stacks/blazor-azure/.morph/templates/ui-design-system.md +0 -286
  304. package/stacks/blazor-azure/.morph/templates/ui-flows.md +0 -336
  305. package/stacks/blazor-azure/.morph/templates/ui-mockups.md +0 -133
  306. package/stacks/nextjs-supabase/.morph/docs/easypanel-setup.md +0 -169
  307. package/stacks/nextjs-supabase/.morph/docs/supabase-mcp-setup.md +0 -247
  308. package/stacks/nextjs-supabase/.morph/examples/crud-nextjs-supabase/README.md +0 -697
  309. package/stacks/nextjs-supabase/.morph/examples/crud-nextjs-supabase/spec.md +0 -85
  310. package/stacks/nextjs-supabase/.morph/examples/crud-nextjs-supabase/tasks.md +0 -86
  311. package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/README.md +0 -498
  312. package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/decisions.md +0 -121
  313. package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/spec.md +0 -138
  314. package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/tasks.md +0 -162
  315. package/stacks/nextjs-supabase/.morph/standards/easypanel-deploy.md +0 -191
  316. package/stacks/nextjs-supabase/.morph/standards/nextjs-patterns.md +0 -193
  317. package/stacks/nextjs-supabase/.morph/standards/supabase-auth.md +0 -171
  318. package/stacks/nextjs-supabase/.morph/standards/supabase-pgvector.md +0 -164
  319. package/stacks/nextjs-supabase/.morph/standards/supabase-rls.md +0 -179
  320. package/stacks/nextjs-supabase/.morph/standards/supabase-storage.md +0 -148
  321. package/stacks/nextjs-supabase/.morph/templates/contracts.cs +0 -173
  322. package/stacks/nextjs-supabase/.morph/templates/contracts.ts +0 -168
  323. package/stacks/nextjs-supabase/.morph/templates/decisions.md +0 -115
  324. package/stacks/nextjs-supabase/.morph/templates/dockerfile-api.dockerfile +0 -38
  325. package/stacks/nextjs-supabase/.morph/templates/dockerfile-web.dockerfile +0 -48
  326. package/stacks/nextjs-supabase/.morph/templates/proposal.md +0 -145
  327. package/stacks/nextjs-supabase/.morph/templates/recap.md +0 -134
  328. package/stacks/nextjs-supabase/.morph/templates/rls-policy.sql +0 -57
  329. package/stacks/nextjs-supabase/.morph/templates/spec.md +0 -231
  330. package/stacks/nextjs-supabase/.morph/templates/supabase-migration.sql +0 -100
  331. package/stacks/nextjs-supabase/.morph/templates/tasks.md +0 -257
  332. /package/src/lib/{design-system-generator.js → generators/design-system-generator.js} +0 -0
  333. /package/src/lib/{learning-system.js → learning/learning-system.js} +0 -0
@@ -1,222 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "title": "MORPH-SPEC State Schema",
4
- "description": "Schema for tracking project state, features, and progress in MORPH-SPEC framework",
5
- "type": "object",
6
- "properties": {
7
- "version": {
8
- "type": "string",
9
- "description": "MORPH-SPEC framework version",
10
- "pattern": "^\\d+\\.\\d+\\.\\d+$"
11
- },
12
- "project": {
13
- "type": "object",
14
- "description": "Project information",
15
- "properties": {
16
- "name": {
17
- "type": "string",
18
- "description": "Project name"
19
- },
20
- "type": {
21
- "type": "string",
22
- "enum": ["blazor-server", "nextjs"],
23
- "description": "Primary stack type"
24
- },
25
- "createdAt": {
26
- "type": ["string", "null"],
27
- "format": "date-time",
28
- "description": "Project creation timestamp"
29
- },
30
- "updatedAt": {
31
- "type": ["string", "null"],
32
- "format": "date-time",
33
- "description": "Last update timestamp"
34
- }
35
- },
36
- "required": ["name", "type"]
37
- },
38
- "features": {
39
- "type": "object",
40
- "description": "Dictionary of features by name",
41
- "patternProperties": {
42
- "^[a-z0-9-]+$": {
43
- "type": "object",
44
- "properties": {
45
- "status": {
46
- "type": "string",
47
- "enum": ["draft", "in_review", "approved", "in_progress", "done", "archived"],
48
- "description": "Current feature status"
49
- },
50
- "phase": {
51
- "type": "string",
52
- "enum": ["proposal", "setup", "ui-ux-design", "design", "clarify", "tasks", "implement"],
53
- "description": "Current workflow phase"
54
- },
55
- "createdAt": {
56
- "type": "string",
57
- "format": "date-time"
58
- },
59
- "updatedAt": {
60
- "type": "string",
61
- "format": "date-time"
62
- },
63
- "activeAgents": {
64
- "type": "array",
65
- "description": "List of currently active agent IDs",
66
- "items": {
67
- "type": "string"
68
- }
69
- },
70
- "outputs": {
71
- "type": "object",
72
- "description": "Generated outputs for this feature",
73
- "properties": {
74
- "proposal": {
75
- "type": "object",
76
- "properties": {
77
- "created": { "type": "boolean" },
78
- "path": { "type": "string" }
79
- }
80
- },
81
- "spec": {
82
- "type": "object",
83
- "properties": {
84
- "created": { "type": "boolean" },
85
- "path": { "type": "string" }
86
- }
87
- },
88
- "contracts": {
89
- "type": "object",
90
- "properties": {
91
- "created": { "type": "boolean" },
92
- "path": { "type": "string" }
93
- }
94
- },
95
- "tasks": {
96
- "type": "object",
97
- "properties": {
98
- "created": { "type": "boolean" },
99
- "path": { "type": "string" }
100
- }
101
- },
102
- "uiDesignSystem": {
103
- "type": "object",
104
- "properties": {
105
- "created": { "type": "boolean" },
106
- "path": { "type": "string" }
107
- }
108
- },
109
- "uiMockups": {
110
- "type": "object",
111
- "properties": {
112
- "created": { "type": "boolean" },
113
- "path": { "type": "string" }
114
- }
115
- },
116
- "uiComponents": {
117
- "type": "object",
118
- "properties": {
119
- "created": { "type": "boolean" },
120
- "path": { "type": "string" }
121
- }
122
- },
123
- "uiFlows": {
124
- "type": "object",
125
- "properties": {
126
- "created": { "type": "boolean" },
127
- "path": { "type": "string" }
128
- }
129
- },
130
- "decisions": {
131
- "type": "object",
132
- "properties": {
133
- "created": { "type": "boolean" },
134
- "path": { "type": "string" }
135
- }
136
- },
137
- "recap": {
138
- "type": "object",
139
- "properties": {
140
- "created": { "type": "boolean" },
141
- "path": { "type": "string" }
142
- }
143
- }
144
- }
145
- },
146
- "tasks": {
147
- "type": "object",
148
- "description": "Task progress counters",
149
- "properties": {
150
- "total": { "type": "integer", "minimum": 0 },
151
- "completed": { "type": "integer", "minimum": 0 },
152
- "inProgress": { "type": "integer", "minimum": 0 },
153
- "pending": { "type": "integer", "minimum": 0 }
154
- }
155
- },
156
- "checkpoints": {
157
- "type": "array",
158
- "description": "List of checkpoints recorded",
159
- "items": {
160
- "type": "object",
161
- "properties": {
162
- "timestamp": {
163
- "type": "string",
164
- "format": "date-time"
165
- },
166
- "phase": { "type": "string" },
167
- "completedTasks": { "type": "integer" },
168
- "note": { "type": "string" }
169
- },
170
- "required": ["timestamp", "phase", "completedTasks"]
171
- }
172
- },
173
- "costs": {
174
- "type": "object",
175
- "description": "Cost tracking information",
176
- "properties": {
177
- "estimated": {
178
- "type": "number",
179
- "description": "Estimated monthly cost in USD"
180
- },
181
- "approved": { "type": "boolean" },
182
- "approvedBy": { "type": "string" },
183
- "approvedAt": {
184
- "type": ["string", "null"],
185
- "format": "date-time"
186
- }
187
- }
188
- }
189
- },
190
- "required": ["status", "phase", "createdAt", "updatedAt", "activeAgents", "outputs", "tasks"]
191
- }
192
- }
193
- },
194
- "metadata": {
195
- "type": "object",
196
- "description": "Global project metadata",
197
- "properties": {
198
- "totalFeatures": {
199
- "type": "integer",
200
- "description": "Total number of features ever created"
201
- },
202
- "completedFeatures": {
203
- "type": "integer",
204
- "description": "Number of completed features"
205
- },
206
- "totalCostEstimated": {
207
- "type": "number",
208
- "description": "Sum of all estimated costs"
209
- },
210
- "totalTimeSpent": {
211
- "type": "number",
212
- "description": "Total hours spent on all features"
213
- },
214
- "lastUpdated": {
215
- "type": ["string", "null"],
216
- "format": "date-time"
217
- }
218
- }
219
- }
220
- },
221
- "required": ["version", "project", "features", "metadata"]
222
- }
@@ -1,143 +0,0 @@
1
- # Story {{STORY_ID}}: {{STORY_TITLE}}
2
-
3
- > **Feature:** {{FEATURE_NAME_TITLE}}
4
- > **Epic:** {{EPIC_NAME}}
5
- > **Created:** {{DATE}}
6
-
7
- ---
8
-
9
- ## 📋 Context
10
-
11
- {{STORY_CONTEXT}}
12
-
13
- **Related Spec Section:** `.morph/outputs/{{FEATURE_NAME}}/spec/{{SPEC_SHARD}}.md`
14
-
15
- ---
16
-
17
- ## 🔗 Dependencies
18
-
19
- ### Architecture References
20
- {{#ARCHITECTURE_REFS}}
21
- - {{.}}
22
- {{/ARCHITECTURE_REFS}}
23
-
24
- ### Contract References
25
- {{#CONTRACT_REFS}}
26
- - {{.}}
27
- {{/CONTRACT_REFS}}
28
-
29
- ### Related Stories
30
- {{#RELATED_STORIES}}
31
- - [ ] {{.}}
32
- {{/RELATED_STORIES}}
33
-
34
- ---
35
-
36
- ## ✅ Tasks
37
-
38
- {{#TASKS}}
39
- - [ ] {{.}}
40
- {{/TASKS}}
41
-
42
- **Estimated Effort:** {{EFFORT}} (max 1 developer-day)
43
-
44
- ---
45
-
46
- ## 💡 Dev Notes (Auto-Injected by SM)
47
-
48
- {{#DEV_NOTES}}
49
- - {{.}}
50
- {{/DEV_NOTES}}
51
-
52
- ### Standards to Follow
53
- - **Coding:** `.morph/standards/coding.md#{{CODING_PATTERN}}`
54
- - **Architecture:** `.morph/standards/architecture.md#{{ARCH_PATTERN}}`
55
- {{#AZURE_PATTERN}}
56
- - **Azure/IaC:** `.morph/standards/azure.md#{{AZURE_PATTERN}}`
57
- {{/AZURE_PATTERN}}
58
-
59
- ---
60
-
61
- ## 🎯 Acceptance Criteria (Gherkin Format)
62
-
63
- {{#ACCEPTANCE_CRITERIA}}
64
- - [ ] **GIVEN** {{given}} **WHEN** {{when}} **THEN** {{then}}
65
- {{/ACCEPTANCE_CRITERIA}}
66
-
67
- ---
68
-
69
- ## 🛠️ Implementation Notes
70
-
71
- ### Dev Notes (Added by Dev Agent)
72
- ```
73
- [Dev agent adds notes here after implementation]
74
-
75
- Example:
76
- ✅ Implemented ScheduledReport.cs with Primary Constructor
77
- ✅ EF mapping configured in ReportDbContext.cs (line 45)
78
- ✅ Migration: 20251209_AddScheduledReports.cs
79
- ⚠️ ATTENTION QA: RecurrencePattern uses complex regex (validate edge cases line 67)
80
- ✅ Tests: 12 unit tests, 95% coverage in ScheduledReportTests.cs
81
- ```
82
-
83
- ### QA Notes (Added by QA Agent)
84
- ```
85
- [QA agent adds notes here after review]
86
-
87
- Example:
88
- ✅ Review complete - code follows standards
89
- ✅ Refactored: extracted ValidateRecurrence() method (line 89)
90
- ✅ Added 3 edge case tests (invalid cron expressions)
91
- ✅ Documented regex pattern in decisions.md (ADR-007)
92
- ⚠️ TODO: Add integration test for full CRUD cycle
93
- ```
94
-
95
- ---
96
-
97
- ## 📊 Status Tracking
98
-
99
- **Current Status:** {{STATUS}}
100
-
101
- | Status | Date | Agent | Notes |
102
- |--------|------|-------|-------|
103
- | Created | {{CREATED_DATE}} | SM | Story created from epic |
104
- | Ready | {{READY_DATE}} | SM | Prerequisites met, ready for dev |
105
- | In Progress | {{IN_PROGRESS_DATE}} | Dev | Implementation started |
106
- | Ready for QA | {{QA_DATE}} | Dev | Implementation complete, awaiting review |
107
- | Done | {{DONE_DATE}} | QA | Approved, ready for merge |
108
-
109
- ---
110
-
111
- ## 🔄 Handoff Protocol
112
-
113
- ### SM → Dev Handoff
114
- - ✅ Story file created with complete context
115
- - ✅ Dev Notes injected with architectural guidance
116
- - ✅ Acceptance criteria defined and verifiable
117
- - ✅ Dependencies documented
118
- - ✅ Status: **Ready for Dev**
119
-
120
- ### Dev → QA Handoff
121
- - [ ] All tasks checked off
122
- - [ ] Dev Notes added with implementation details
123
- - [ ] Tests written (unit + integration as needed)
124
- - [ ] Code follows standards (validated via pre-commit hooks)
125
- - [ ] Status updated to: **Ready for QA**
126
-
127
- ### QA → Done
128
- - [ ] QA Notes added with review findings
129
- - [ ] Code reviewed and refactored if needed
130
- - [ ] All acceptance criteria validated
131
- - [ ] Documentation updated (if applicable)
132
- - [ ] Status updated to: **Done**
133
-
134
- ---
135
-
136
- ## 📝 Additional Notes
137
-
138
- {{ADDITIONAL_NOTES}}
139
-
140
- ---
141
-
142
- *Generated by MORPH-SPEC Framework - Story-Driven Development*
143
- *Inspired by BMAD Method: Self-contained stories for AI agents*
@@ -1,257 +0,0 @@
1
- # Tasks - {{FEATURE_NAME_TITLE}}
2
-
3
- > Checklist de implementação para a feature.
4
- > Atualize o status conforme progresso.
5
-
6
- ## Summary
7
-
8
- | Metric | Value |
9
- |--------|-------|
10
- | **Total Tasks** | 0 |
11
- | **Completed** | 0 |
12
- | **In Progress** | 0 |
13
- | **Pending** | 0 |
14
- | **Estimated** | 0h |
15
- | **Actual** | 0h |
16
-
17
- ---
18
-
19
- ## Granularidade de Tasks
20
-
21
- ### Task Ideal
22
- - 15-60 minutos de implementacao
23
- - 1-5 arquivos modificados
24
- - Testavel isoladamente
25
- - Commit independente possivel
26
-
27
- ### Sinais de Task Muito Ampla (Dividir)
28
- **Exemplo ruim:** "Implementar upload de imagens"
29
- **Dividir em:**
30
- - T001: Criar UploadImageRequest/Response DTOs
31
- - T002: Implementar IBlobStorageService.UploadAsync
32
- - T003: Implementar OrderService.UploadImageAsync
33
- - T004: Criar componente de upload na UI
34
-
35
- ### Sinais de Task Muito Granular (Agrupar)
36
- **Exemplo ruim:** "Criar propriedade Name", "Criar propriedade Email"
37
- **Agrupar em:** "Criar entidade Customer com propriedades"
38
-
39
- ---
40
-
41
- ## Checkpoints
42
-
43
- | After | Type | Description | Status |
44
- |-------|------|-------------|--------|
45
- | T003 | Review | Review contracts and data model | Pending |
46
- | T006 | Review | Review service implementation | Pending |
47
- | T009 | Approval | Approve UI before tests | Pending |
48
-
49
- ---
50
-
51
- ## Phase 1: Contracts & Data Model
52
-
53
- ### T001: Define service interfaces
54
- - **Type:** Contract
55
- - **Priority:** 1
56
- - **Estimate:** 30min
57
- - **Status:** [ ] Pending
58
-
59
- **Description:**
60
- Create I{Feature}Service interface with all required methods.
61
-
62
- **Acceptance Criteria:**
63
- - [ ] Interface follows naming conventions
64
- - [ ] All CRUD methods defined
65
- - [ ] Async methods with CancellationToken
66
-
67
- **Files:**
68
- - [ ] Create: `Application/Features/{Feature}/Services/I{Feature}Service.cs`
69
-
70
- ---
71
-
72
- ### T002: Define repository interfaces
73
- - **Type:** Contract
74
- - **Priority:** 1
75
- - **Estimate:** 20min
76
- - **Status:** [ ] Pending
77
-
78
- **Description:**
79
- Create I{Feature}Repository interface.
80
-
81
- **Files:**
82
- - [ ] Create: `Application/Features/{Feature}/Services/I{Feature}Repository.cs`
83
-
84
- ---
85
-
86
- ### T003: Create domain entities
87
- - **Type:** Domain
88
- - **Priority:** 1
89
- - **Estimate:** 45min
90
- - **Status:** [ ] Pending
91
- - **Checkpoint:** Review after this task
92
-
93
- **Description:**
94
- Create {Feature} entity with factory methods.
95
-
96
- **Files:**
97
- - [ ] Create: `Domain/Entities/{Feature}.cs`
98
-
99
- ---
100
-
101
- ## Phase 2: Infrastructure
102
-
103
- ### T004: Create EF configuration and migration
104
- - **Type:** Infrastructure
105
- - **Priority:** 2
106
- - **Estimate:** 30min
107
- - **Status:** [ ] Pending
108
- - **Dependencies:** T003
109
-
110
- **Description:**
111
- Configure entity mapping and create migration.
112
-
113
- **Files:**
114
- - [ ] Create: `Infrastructure/Data/Configurations/{Feature}Configuration.cs`
115
- - [ ] Create: `Infrastructure/Data/Migrations/{timestamp}_Add{Feature}.cs`
116
- - [ ] Modify: `Infrastructure/Data/AppDbContext.cs`
117
-
118
- ---
119
-
120
- ### T005: Implement repository
121
- - **Type:** Infrastructure
122
- - **Priority:** 2
123
- - **Estimate:** 45min
124
- - **Status:** [ ] Pending
125
- - **Dependencies:** T002, T004
126
-
127
- **Description:**
128
- Implement I{Feature}Repository.
129
-
130
- **Files:**
131
- - [ ] Create: `Infrastructure/Data/Repositories/{Feature}Repository.cs`
132
-
133
- ---
134
-
135
- ## Phase 3: Implementation
136
-
137
- ### T006: Implement service layer
138
- - **Type:** Service
139
- - **Priority:** 2
140
- - **Estimate:** 1h
141
- - **Status:** [ ] Pending
142
- - **Dependencies:** T001, T005
143
- - **Checkpoint:** Review after this task
144
-
145
- **Description:**
146
- Implement I{Feature}Service with business logic.
147
-
148
- **Files:**
149
- - [ ] Create: `Application/Features/{Feature}/Services/{Feature}Service.cs`
150
-
151
- ---
152
-
153
- ### T007: Implement AI agent (if applicable)
154
- - **Type:** Agent
155
- - **Priority:** 3
156
- - **Estimate:** 1h
157
- - **Status:** [ ] Pending
158
- - **Dependencies:** T006
159
-
160
- **Description:**
161
- Create AI agent for analysis/processing.
162
-
163
- **Files:**
164
- - [ ] Create: `Agents/{Feature}Analyzer/{Feature}AnalyzerAgent.cs`
165
-
166
- ---
167
-
168
- ### T008: Implement background job (if applicable)
169
- - **Type:** Job
170
- - **Priority:** 3
171
- - **Estimate:** 45min
172
- - **Status:** [ ] Pending
173
- - **Dependencies:** T006
174
-
175
- **Description:**
176
- Create Hangfire job for scheduled processing.
177
-
178
- **Files:**
179
- - [ ] Create: `Application/Features/{Feature}/Jobs/{Feature}ProcessorJob.cs`
180
-
181
- ---
182
-
183
- ## Phase 4: UI Components
184
-
185
- ### T009: Create list component
186
- - **Type:** UI
187
- - **Priority:** 2
188
- - **Estimate:** 1h
189
- - **Status:** [ ] Pending
190
- - **Dependencies:** T006
191
- - **Checkpoint:** Approval after this task
192
-
193
- **Description:**
194
- Create Blazor component to list items.
195
-
196
- **Files:**
197
- - [ ] Create: `Web/Components/Pages/{Feature}/{Feature}List.razor`
198
-
199
- ---
200
-
201
- ### T010: Create form component
202
- - **Type:** UI
203
- - **Priority:** 2
204
- - **Estimate:** 1h
205
- - **Status:** [ ] Pending
206
- - **Dependencies:** T009
207
-
208
- **Description:**
209
- Create Blazor component for create/edit.
210
-
211
- **Files:**
212
- - [ ] Create: `Web/Components/Pages/{Feature}/{Feature}Form.razor`
213
-
214
- ---
215
-
216
- ## Phase 5: Testing
217
-
218
- ### T011: Write unit tests
219
- - **Type:** Test
220
- - **Priority:** 2
221
- - **Estimate:** 1h
222
- - **Status:** [ ] Pending
223
- - **Dependencies:** T006
224
-
225
- **Description:**
226
- Unit tests for service layer.
227
-
228
- **Files:**
229
- - [ ] Create: `Tests/Unit/{Feature}ServiceTests.cs`
230
-
231
- ---
232
-
233
- ### T012: Write integration tests
234
- - **Type:** Test
235
- - **Priority:** 3
236
- - **Estimate:** 1h
237
- - **Status:** [ ] Pending
238
- - **Dependencies:** T011
239
-
240
- **Description:**
241
- Integration tests for repository and API.
242
-
243
- **Files:**
244
- - [ ] Create: `Tests/Integration/{Feature}IntegrationTests.cs`
245
-
246
- ---
247
-
248
- ## Status Legend
249
-
250
- - [ ] Pending
251
- - [~] In Progress
252
- - [x] Completed
253
- - [!] Blocked
254
-
255
- ---
256
-
257
- *Generated by MORPH Framework*