@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,398 +0,0 @@
1
- # Estratégia de Branches - MORPH-SPEC
2
-
3
- > **Git Flow simplificado para one-person business**
4
-
5
- ---
6
-
7
- ## 🌳 Estrutura de Branches
8
-
9
- ```
10
- main/master (produção)
11
-
12
- │ PR (com aprovação)
13
-
14
- staging (homologação)
15
-
16
- │ PR (automático merge)
17
-
18
- feature/* (desenvolvimento)
19
- ```
20
-
21
- ###**Branches Principais**
22
-
23
- | Branch | Propósito | Deploy | Aprovação |
24
- |--------|-----------|--------|-----------|
25
- | **`main`** ou **`master`** | Produção | Container Apps (always-on) | ✅ Obrigatória |
26
- | **`staging`** | Homologação/QA | Container Apps (scale-to-zero) | ❌ Nenhuma |
27
-
28
- ### **Branches Temporárias**
29
-
30
- | Padrão | Exemplo | Propósito |
31
- |--------|---------|-----------|
32
- | `feature/*` | `feature/add-payments` | Nova funcionalidade |
33
- | `bugfix/*` | `bugfix/fix-login` | Correção de bug |
34
- | `hotfix/*` | `hotfix/critical-security` | Correção urgente em prod |
35
-
36
- ---
37
-
38
- ## 🔄 Workflow Completo
39
-
40
- ### 1. Nova Feature
41
-
42
- ```bash
43
- # Atualizar staging
44
- git checkout staging
45
- git pull origin staging
46
-
47
- # Criar feature branch
48
- git checkout -b feature/pagamentos-asaas
49
-
50
- # Desenvolver localmente
51
- # ... code, test, commit ...
52
-
53
- # Push
54
- git push origin feature/pagamentos-asaas
55
-
56
- # Criar PR para staging
57
- ```
58
-
59
- **Azure DevOps**:
60
- 1. **Repos** → **Pull Requests** → **New**
61
- 2. Source: `feature/pagamentos-asaas`
62
- 3. Target: `staging`
63
- 4. Title: "feat: integração com Asaas para pagamentos recorrentes"
64
- 5. Description: Detalhar mudanças
65
- 6. **Create**
66
- 7. **Approve** (você mesmo) e **Complete**
67
-
68
- **Resultado**: Pipeline staging triggado automaticamente
69
-
70
- ---
71
-
72
- ### 2. Bug Fix
73
-
74
- ```bash
75
- # Partir de staging
76
- git checkout staging
77
- git pull origin staging
78
-
79
- # Criar bugfix branch
80
- git checkout -b bugfix/corrigir-calculo-total
81
-
82
- # Corrigir + testar
83
- git add .
84
- git commit -m "fix: corrige cálculo de total no carrinho"
85
-
86
- # Push e PR para staging
87
- git push origin bugfix/corrigir-calculo-total
88
- ```
89
-
90
- ---
91
-
92
- ### 3. Hotfix (Produção)
93
-
94
- ```bash
95
- # Partir de main (produção)
96
- git checkout main
97
- git pull origin main
98
-
99
- # Criar hotfix branch
100
- git checkout -b hotfix/vulnerabilidade-critica
101
-
102
- # Corrigir urgentemente
103
- git add .
104
- git commit -m "fix: corrige vulnerabilidade SQL injection"
105
-
106
- # Push
107
- git push origin hotfix/vulnerabilidade-critica
108
-
109
- # Criar 2 PRs:
110
- # 1. hotfix → main (deploy imediato)
111
- # 2. hotfix → staging (manter ambientes sincronizados)
112
- ```
113
-
114
- **Atenção**: Hotfix é para emergências! Use com moderação.
115
-
116
- ---
117
-
118
- ### 4. Release (Staging → Produção)
119
-
120
- ```bash
121
- # Quando staging estiver estável e testado
122
-
123
- # Criar PR no Azure DevOps:
124
- # Source: staging
125
- # Target: main
126
-
127
- # Self-review checklist:
128
- # - [ ] Funcionalidades testadas em staging
129
- # - [ ] Performance OK
130
- # - [ ] Sem erros nos logs
131
- # - [ ] Migrations aplicadas
132
- # - [ ] Documentação atualizada
133
-
134
- # Approve e Complete
135
- # Pipeline prod triggará
136
- # ⏸️ Approval gate aparecerá
137
- # Aprovar após validar deployment summary
138
- ```
139
-
140
- ---
141
-
142
- ## ⚙️ Configuração Azure DevOps
143
-
144
- ### Branch Policies (Staging)
145
-
146
- **Repos** → **Branches** → `staging` → **Branch policies**:
147
-
148
- ```
149
- ✅ Require a minimum number of reviewers: 0
150
- (você pode fazer self-merge)
151
-
152
- ✅ Check for linked work items: Recommended
153
- (boa prática para rastreabilidade)
154
-
155
- ✅ Check for comment resolution: All
156
- (resolver comentários antes de merge)
157
-
158
- ✅ Build validation:
159
- - Pipeline: staging-pipeline
160
- - Trigger: Automatic
161
- - Policy requirement: Required
162
- ```
163
-
164
- ### Branch Policies (Main)
165
-
166
- **Repos** → **Branches** → `main` → **Branch policies**:
167
-
168
- ```
169
- ✅ Require a minimum number of reviewers: 0
170
- (você faz self-review com approval gate no pipeline)
171
-
172
- ✅ Check for linked work items: Required
173
- (obrigatório para rastreabilidade)
174
-
175
- ✅ Check for comment resolution: All
176
-
177
- ✅ Build validation:
178
- - Pipeline: prod-pipeline
179
- - Trigger: Automatic
180
- - Policy requirement: Required
181
-
182
- ❌ Limit merge types:
183
- ✅ Squash merge only (recomendado)
184
- (mantém histórico limpo)
185
- ```
186
-
187
- ---
188
-
189
- ## 🎯 Boas Práticas
190
-
191
- ### Commits
192
-
193
- ```bash
194
- # Use Conventional Commits
195
- feat: adiciona integração com Asaas
196
- fix: corrige cálculo de desconto
197
- docs: atualiza README com instruções de deploy
198
- refactor: simplifica lógica de autenticação
199
- test: adiciona testes para carrinho de compras
200
- chore: atualiza dependências do projeto
201
-
202
- # Seja descritivo no body (se necessário)
203
- git commit -m "feat: integração Asaas" -m "
204
- - Adiciona AsaasClient para chamadas API
205
- - Implementa webhook para notificações
206
- - Cria tabela Subscriptions para assinaturas
207
- - Adiciona testes de integração
208
- "
209
- ```
210
-
211
- ### Feature Branches
212
-
213
- ```bash
214
- # ✅ Bom
215
- feature/add-asaas-integration
216
- feature/user-dashboard
217
- bugfix/fix-login-redirect
218
-
219
- # ❌ Ruim
220
- my-changes
221
- temp
222
- test
223
- wip
224
- ```
225
-
226
- ### Merge vs Squash vs Rebase
227
-
228
- **Recomendação para one-person business**: **Squash merge**
229
-
230
- ```
231
- # Vantagens squash:
232
- - Histórico limpo em main/staging
233
- - Cada merge = 1 commit = 1 feature
234
- - Fácil reverter feature inteira
235
- - Fácil ler changelog
236
-
237
- # Configurar no Azure DevOps:
238
- Branch Policies → Limit merge types → Squash merge only
239
- ```
240
-
241
- ---
242
-
243
- ## 📊 Visualização do Fluxo
244
-
245
- ```
246
- ┌─────────────────────────────────────────────────────────┐
247
- │ Developer Local │
248
- │ │
249
- │ feature/pagamentos-asaas │
250
- │ │ │
251
- │ ├─ commit: adiciona AsaasClient │
252
- │ ├─ commit: implementa webhook │
253
- │ └─ commit: adiciona testes │
254
- └──────────────────────│──────────────────────────────────┘
255
-
256
- │ git push
257
- │ + PR para staging
258
-
259
- ┌─────────────────────────────────────────────────────────┐
260
- │ Staging Branch │
261
- │ │
262
- │ Squash merge │
263
- │ └─ feat: integração completa com Asaas │
264
- │ │
265
- │ Pipeline staging-pipeline triggado │
266
- │ └─ Deploy automático para staging │
267
- └──────────────────────│──────────────────────────────────┘
268
-
269
- │ Testes manuais OK
270
- │ PR staging → main
271
-
272
- ┌─────────────────────────────────────────────────────────┐
273
- │ Main Branch (Produção) │
274
- │ │
275
- │ Squash merge │
276
- │ └─ feat: integração completa com Asaas │
277
- │ │
278
- │ Pipeline prod-pipeline triggado │
279
- │ ├─ Build & Security Scan │
280
- │ ├─ ⏸️ Approval gate (você aprova) │
281
- │ └─ Deploy para produção │
282
- └─────────────────────────────────────────────────────────┘
283
- ```
284
-
285
- ---
286
-
287
- ## 🆘 Cenários Comuns
288
-
289
- ### Conflito de Merge
290
-
291
- ```bash
292
- # Atualizar feature branch com staging
293
- git checkout feature/minha-feature
294
- git fetch origin
295
- git merge origin/staging
296
-
297
- # Resolver conflitos manualmente
298
- # Editar arquivos, escolher versão correta
299
-
300
- git add .
301
- git commit -m "merge: resolve conflitos com staging"
302
- git push origin feature/minha-feature
303
- ```
304
-
305
- ### Reverter um Merge
306
-
307
- ```bash
308
- # Se merge em staging deu problema
309
- git checkout staging
310
- git revert -m 1 <commit-hash-do-merge>
311
- git push origin staging
312
-
313
- # Pipeline triggará e deployará versão sem a feature
314
- ```
315
-
316
- ### Sincronizar Branch Desatualizada
317
-
318
- ```bash
319
- # Sua feature ficou muito desatualizada
320
- git checkout feature/antiga
321
- git fetch origin
322
- git merge origin/staging
323
-
324
- # Ou, se preferir histórico limpo (rebase)
325
- git rebase origin/staging
326
-
327
- # Se houver conflitos, resolve e continua
328
- git rebase --continue
329
-
330
- git push origin feature/antiga --force-with-lease
331
- ```
332
-
333
- ### Deletar Branch Remota
334
-
335
- ```bash
336
- # Após merge, deletar feature branch
337
- git push origin --delete feature/minha-feature
338
-
339
- # Deletar local também
340
- git branch -d feature/minha-feature
341
- ```
342
-
343
- ---
344
-
345
- ## 📅 Cadência Recomendada
346
-
347
- ### Para One-Person Business
348
-
349
- | Atividade | Frequência | Descrição |
350
- |-----------|------------|-----------|
351
- | **Commits** | Várias vezes/dia | Commits pequenos e frequentes |
352
- | **Push** | 1-2x/dia | Push ao final do dia ou feature completa |
353
- | **PR → Staging** | 1-3x/semana | Quando feature está funcional |
354
- | **Deploy Staging** | Automático | Após merge no staging |
355
- | **PR → Prod** | 1x/semana ou quinzenal | Quando staging está estável |
356
- | **Deploy Prod** | Conforme necessário | Após aprovação manual |
357
-
358
- **Dica**: Não acumule muitas features antes de fazer release. Releases pequenos e frequentes são mais seguros.
359
-
360
- ---
361
-
362
- ## ✅ Checklist de PR
363
-
364
- ### Antes de Criar PR
365
-
366
- - [ ] Código testado localmente
367
- - [ ] Unit tests passando (`dotnet test`)
368
- - [ ] Sem warnings de compilação
369
- - [ ] Código formatado/lint OK
370
- - [ ] Commits com mensagens descritivas
371
- - [ ] Branch atualizada com target (staging ou main)
372
-
373
- ### Ao Criar PR
374
-
375
- - [ ] Título descritivo (feat/fix/docs/etc)
376
- - [ ] Descrição clara do que mudou
377
- - [ ] Linkar work item se houver
378
- - [ ] Adicionar screenshots se for UI
379
-
380
- ### Antes de Aprovar (Self-Review)
381
-
382
- - [ ] Revisar diff completo
383
- - [ ] Verificar se não commitou secrets/senhas
384
- - [ ] Verificar se não tem console.log/debug temporário
385
- - [ ] Pipeline de build passou
386
- - [ ] Sem conflitos
387
-
388
- ---
389
-
390
- ## 📚 Referências
391
-
392
- - [Git Flow](https://nvie.com/posts/a-successful-git-branching-model/)
393
- - [Conventional Commits](https://www.conventionalcommits.org/)
394
- - [Azure Repos Branch Policies](https://learn.microsoft.com/azure/devops/repos/git/branch-policies)
395
-
396
- ---
397
-
398
- *MORPH-SPEC by Polymorphism Tech*