@polymorphism-tech/morph-spec 4.3.3 → 4.3.5

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 (488) hide show
  1. package/.morph/.morphversion +5 -0
  2. package/.morph/analytics/threads-log.jsonl +9 -0
  3. package/{stacks/blazor-azure/.morph → .morph}/config/agents.json +948 -948
  4. package/.morph/config/config.json +9 -0
  5. package/{stacks/blazor-azure/.morph → .morph}/project/context/README.md +1 -1
  6. package/.morph/project/context/detection-log.md +16 -0
  7. package/.morph/project/standards/inferred.md +59 -0
  8. package/.morph/state.json +48 -0
  9. package/.morph/templates/.idea/morph-templates.xml +92 -0
  10. package/.morph/templates/.vscode/morph-templates.code-snippets +186 -0
  11. package/.morph/templates/IDE-SNIPPETS.md +266 -0
  12. package/.morph/templates/README.md +814 -0
  13. package/.morph/templates/REGISTRY.json +1677 -0
  14. package/.morph/templates/code/dotnet/backend/repository.cs +141 -0
  15. package/.morph/templates/code/dotnet/backend/service.cs +139 -0
  16. package/.morph/templates/code/dotnet/contracts/Commands.cs +74 -0
  17. package/.morph/templates/code/dotnet/contracts/Entities.cs +25 -0
  18. package/.morph/templates/code/dotnet/contracts/Queries.cs +74 -0
  19. package/.morph/templates/code/dotnet/contracts/README.md +74 -0
  20. package/.morph/templates/code/dotnet/contracts/api-contracts.cs +173 -0
  21. package/.morph/templates/code/dotnet/contracts/contracts.cs +217 -0
  22. package/.morph/templates/code/dotnet/database/migration.cs +83 -0
  23. package/.morph/templates/code/dotnet/frontend/component.razor +239 -0
  24. package/.morph/templates/code/dotnet/jobs/agent.cs +163 -0
  25. package/.morph/templates/code/dotnet/jobs/job.cs +171 -0
  26. package/.morph/templates/code/dotnet/test.cs +239 -0
  27. package/.morph/templates/code/sql/rls-policy.sql +57 -0
  28. package/.morph/templates/code/sql/supabase-migration.sql +100 -0
  29. package/.morph/templates/code/sql/supabase-migration.template.sql +113 -0
  30. package/.morph/templates/code/typescript/contracts.ts +168 -0
  31. package/.morph/templates/context/CONTEXT-FEATURE.md +276 -0
  32. package/.morph/templates/context/CONTEXT.md +181 -0
  33. package/.morph/templates/docs/proposal.md +182 -0
  34. package/.morph/templates/docs/spec.md +149 -0
  35. package/.morph/templates/examples/design-system-examples.md +357 -0
  36. package/.morph/templates/examples/spec-examples.md +90 -0
  37. package/.morph/templates/feature/decisions.md +187 -0
  38. package/.morph/templates/feature/recap.md +146 -0
  39. package/.morph/templates/feature/tasks.md +199 -0
  40. package/.morph/templates/infrastructure/azure/Dockerfile.example +82 -0
  41. package/.morph/templates/infrastructure/azure/README.md +286 -0
  42. package/.morph/templates/infrastructure/azure/app-insights.bicep +63 -0
  43. package/.morph/templates/infrastructure/azure/app-service.bicep +164 -0
  44. package/.morph/templates/infrastructure/azure/container-app-env.bicep +49 -0
  45. package/.morph/templates/infrastructure/azure/container-app.bicep +156 -0
  46. package/.morph/templates/infrastructure/azure/deploy-checklist.md +426 -0
  47. package/.morph/templates/infrastructure/azure/deploy.ps1 +229 -0
  48. package/.morph/templates/infrastructure/azure/deploy.sh +208 -0
  49. package/.morph/templates/infrastructure/azure/key-vault.bicep +91 -0
  50. package/.morph/templates/infrastructure/azure/main.bicep +189 -0
  51. package/.morph/templates/infrastructure/azure/parameters.dev.json +29 -0
  52. package/.morph/templates/infrastructure/azure/parameters.prod.json +29 -0
  53. package/.morph/templates/infrastructure/azure/parameters.staging.json +29 -0
  54. package/.morph/templates/infrastructure/azure/sql-database.bicep +103 -0
  55. package/.morph/templates/infrastructure/azure/storage.bicep +106 -0
  56. package/.morph/templates/infrastructure/docker/Dockerfile.template +58 -0
  57. package/.morph/templates/infrastructure/docker/docker-compose.template.yml +67 -0
  58. package/.morph/templates/infrastructure/docker/dockerfile-api.dockerfile +38 -0
  59. package/.morph/templates/infrastructure/docker/dockerfile-web.dockerfile +48 -0
  60. package/.morph/templates/infrastructure/docker/easypanel.template.json +54 -0
  61. package/.morph/templates/infrastructure/github/README.md +593 -0
  62. package/.morph/templates/infrastructure/github/actions/azure-auth/action.yml.hbs +22 -0
  63. package/.morph/templates/infrastructure/github/actions/docker-build-push/action.yml.hbs +45 -0
  64. package/.morph/templates/infrastructure/github/actions/health-check/action.yml.hbs +27 -0
  65. package/.morph/templates/infrastructure/github/workflows/deploy-azure-app-service.yml.hbs +61 -0
  66. package/.morph/templates/infrastructure/github/workflows/deploy-easypanel.yml.hbs +31 -0
  67. package/.morph/templates/infrastructure/github/workflows/docker-build-push.yml.hbs +59 -0
  68. package/.morph/templates/infrastructure/github/workflows/dotnet-build.yml.hbs +39 -0
  69. package/.morph/templates/integrations/asaas-client.cs +387 -0
  70. package/.morph/templates/integrations/asaas-webhook.cs +351 -0
  71. package/.morph/templates/integrations/azure-identity-config.cs +288 -0
  72. package/.morph/templates/integrations/clerk-config.cs +258 -0
  73. package/.morph/templates/meta-prompts/fusion/fusion-agent.md +76 -0
  74. package/.morph/templates/meta-prompts/fusion/fusion-aggregator.md +100 -0
  75. package/.morph/templates/meta-prompts/hops/hop-retry.md +78 -0
  76. package/.morph/templates/meta-prompts/hops/hop-validation.md +97 -0
  77. package/.morph/templates/meta-prompts/hops/hop-wrapper.md +36 -0
  78. package/.morph/templates/meta-prompts/parallel-workers/parallel-coordinator.md +113 -0
  79. package/.morph/templates/meta-prompts/parallel-workers/parallel-worker.md +80 -0
  80. package/.morph/templates/meta-prompts/squad-leaders/backend-squad.md +90 -0
  81. package/.morph/templates/meta-prompts/squad-leaders/frontend-squad.md +126 -0
  82. package/.morph/templates/meta-prompts/squad-leaders/squad-leader.md +43 -0
  83. package/.morph/templates/meta-prompts/validators/checkpoint-validator.md +107 -0
  84. package/.morph/templates/meta-prompts/validators/pre-commit-validator.md +95 -0
  85. package/.morph/templates/saas/subscription.cs +347 -0
  86. package/.morph/templates/saas/tenant.cs +338 -0
  87. package/.morph/templates/state.template.json +17 -0
  88. package/.morph/templates/ui/FluentDesignTheme.cs +149 -0
  89. package/.morph/templates/ui/MudTheme.cs +281 -0
  90. package/.morph/templates/ui/design-system.css +226 -0
  91. package/bin/detect-agents.js +1 -2
  92. package/bin/morph-spec.js +1 -14
  93. package/framework/agents.json +948 -0
  94. package/{stacks/nextjs-supabase/.claude → framework}/commands/morph-infra.md +1 -1
  95. package/framework/hooks/README.md +282 -0
  96. package/framework/hooks/agent-stop/validate-and-continue.js +96 -0
  97. package/framework/hooks/agent-stop/validate-checkpoints.js +101 -0
  98. package/framework/hooks/agent-stop/validate-tests.js +109 -0
  99. package/framework/hooks/agent-teams/dispatch.js +67 -0
  100. package/framework/hooks/agent-teams/phase-advanced.js +80 -0
  101. package/framework/hooks/agent-teams/task-completed.js +76 -0
  102. package/framework/hooks/agent-teams/teammate-idle.js +70 -0
  103. package/framework/hooks/commit-msg/conventional-commits.sh +33 -0
  104. package/framework/hooks/pre-commit/agents.sh +25 -0
  105. package/framework/hooks/pre-commit/orchestrator.sh +64 -0
  106. package/framework/hooks/pre-commit/specs.sh +50 -0
  107. package/framework/hooks/pre-push/run-tests.sh +44 -0
  108. package/framework/index/troubleshooting-index.json +184 -0
  109. package/framework/memory/patterns-learned.md +766 -0
  110. package/framework/skills/level-0-meta/README.md +7 -0
  111. package/framework/skills/level-0-meta/code-review.md +226 -0
  112. package/framework/skills/level-0-meta/morph-checklist.md +117 -0
  113. package/framework/skills/level-0-meta/simulation-checklist.md +77 -0
  114. package/framework/skills/level-1-workflows/README.md +7 -0
  115. package/framework/skills/level-1-workflows/morph-replicate.md +213 -0
  116. package/framework/skills/level-1-workflows/phase-clarify.md +131 -0
  117. package/framework/skills/level-1-workflows/phase-design.md +213 -0
  118. package/framework/skills/level-1-workflows/phase-setup.md +106 -0
  119. package/framework/skills/level-1-workflows/phase-tasks.md +164 -0
  120. package/framework/skills/level-1-workflows/phase-uiux.md +169 -0
  121. package/framework/skills/level-2-domains/README.md +14 -0
  122. package/framework/skills/level-2-domains/ai-agents/ai-system-architect.md +192 -0
  123. package/framework/skills/level-2-domains/architecture/po-pm-advisor.md +197 -0
  124. package/framework/skills/level-2-domains/architecture/prompt-engineer.md +189 -0
  125. package/framework/skills/level-2-domains/architecture/seo-growth-hacker.md +320 -0
  126. package/framework/skills/level-2-domains/architecture/standards-architect.md +156 -0
  127. package/framework/skills/level-2-domains/backend/api-designer.md +59 -0
  128. package/framework/skills/level-2-domains/backend/dotnet-senior.md +77 -0
  129. package/framework/skills/level-2-domains/backend/ef-modeler.md +58 -0
  130. package/framework/skills/level-2-domains/backend/hangfire-orchestrator.md +126 -0
  131. package/framework/skills/level-2-domains/backend/ms-agent-expert.md +45 -0
  132. package/framework/skills/level-2-domains/frontend/blazor-builder.md +210 -0
  133. package/framework/skills/level-2-domains/frontend/nextjs-expert.md +154 -0
  134. package/framework/skills/level-2-domains/frontend/ui-ux-designer.md +191 -0
  135. package/framework/skills/level-2-domains/infrastructure/azure-architect.md +142 -0
  136. package/framework/skills/level-2-domains/infrastructure/azure-deploy-specialist.md +699 -0
  137. package/framework/skills/level-2-domains/infrastructure/bicep-architect.md +126 -0
  138. package/framework/skills/level-2-domains/infrastructure/container-specialist.md +131 -0
  139. package/framework/skills/level-2-domains/infrastructure/devops-engineer.md +119 -0
  140. package/framework/skills/level-2-domains/integrations/asaas-financial.md +130 -0
  141. package/framework/skills/level-2-domains/integrations/azure-identity.md +142 -0
  142. package/framework/skills/level-2-domains/integrations/clerk-auth.md +108 -0
  143. package/framework/skills/level-2-domains/integrations/hangfire-orchestrator.md +64 -0
  144. package/framework/skills/level-2-domains/integrations/resend-email.md +119 -0
  145. package/framework/skills/level-2-domains/quality/code-analyzer.md +235 -0
  146. package/framework/skills/level-2-domains/quality/testing-specialist.md +126 -0
  147. package/framework/skills/level-3-technologies/README.md +7 -0
  148. package/framework/skills/level-4-patterns/README.md +7 -0
  149. package/framework/squad-templates/backend-only.json +34 -0
  150. package/framework/squad-templates/frontend-only.json +34 -0
  151. package/framework/squad-templates/full-stack.json +52 -0
  152. package/framework/templates/.idea/morph-templates.xml +92 -0
  153. package/framework/templates/.vscode/morph-templates.code-snippets +186 -0
  154. package/framework/templates/IDE-SNIPPETS.md +266 -0
  155. package/framework/templates/README.md +814 -0
  156. package/framework/templates/REGISTRY.json +1677 -0
  157. package/framework/templates/code/dotnet/backend/repository.cs +141 -0
  158. package/framework/templates/code/dotnet/backend/service.cs +139 -0
  159. package/framework/templates/code/dotnet/contracts/Commands.cs +74 -0
  160. package/framework/templates/code/dotnet/contracts/Entities.cs +25 -0
  161. package/framework/templates/code/dotnet/contracts/Queries.cs +74 -0
  162. package/framework/templates/code/dotnet/contracts/README.md +74 -0
  163. package/framework/templates/code/dotnet/contracts/api-contracts.cs +173 -0
  164. package/framework/templates/code/dotnet/contracts/contracts.cs +217 -0
  165. package/framework/templates/code/dotnet/database/migration.cs +83 -0
  166. package/framework/templates/code/dotnet/frontend/component.razor +239 -0
  167. package/framework/templates/code/dotnet/jobs/agent.cs +163 -0
  168. package/framework/templates/code/dotnet/jobs/job.cs +171 -0
  169. package/framework/templates/code/dotnet/test.cs +239 -0
  170. package/framework/templates/code/sql/rls-policy.sql +57 -0
  171. package/framework/templates/code/sql/supabase-migration.sql +100 -0
  172. package/framework/templates/code/sql/supabase-migration.template.sql +113 -0
  173. package/framework/templates/code/typescript/contracts.ts +168 -0
  174. package/framework/templates/context/CONTEXT-FEATURE.md +276 -0
  175. package/framework/templates/context/CONTEXT.md +181 -0
  176. package/framework/templates/docs/proposal.md +182 -0
  177. package/framework/templates/docs/spec.md +149 -0
  178. package/framework/templates/examples/design-system-examples.md +357 -0
  179. package/framework/templates/examples/spec-examples.md +90 -0
  180. package/framework/templates/feature/decisions.md +187 -0
  181. package/framework/templates/feature/recap.md +146 -0
  182. package/framework/templates/feature/tasks.md +199 -0
  183. package/framework/templates/infrastructure/azure/Dockerfile.example +82 -0
  184. package/framework/templates/infrastructure/azure/README.md +286 -0
  185. package/framework/templates/infrastructure/azure/app-insights.bicep +63 -0
  186. package/framework/templates/infrastructure/azure/app-service.bicep +164 -0
  187. package/framework/templates/infrastructure/azure/container-app-env.bicep +49 -0
  188. package/framework/templates/infrastructure/azure/container-app.bicep +156 -0
  189. package/framework/templates/infrastructure/azure/deploy-checklist.md +426 -0
  190. package/framework/templates/infrastructure/azure/deploy.ps1 +229 -0
  191. package/framework/templates/infrastructure/azure/deploy.sh +208 -0
  192. package/framework/templates/infrastructure/azure/key-vault.bicep +91 -0
  193. package/framework/templates/infrastructure/azure/main.bicep +189 -0
  194. package/framework/templates/infrastructure/azure/parameters.dev.json +29 -0
  195. package/framework/templates/infrastructure/azure/parameters.prod.json +29 -0
  196. package/framework/templates/infrastructure/azure/parameters.staging.json +29 -0
  197. package/framework/templates/infrastructure/azure/sql-database.bicep +103 -0
  198. package/framework/templates/infrastructure/azure/storage.bicep +106 -0
  199. package/framework/templates/infrastructure/docker/Dockerfile.template +58 -0
  200. package/framework/templates/infrastructure/docker/docker-compose.template.yml +67 -0
  201. package/framework/templates/infrastructure/docker/dockerfile-api.dockerfile +38 -0
  202. package/framework/templates/infrastructure/docker/dockerfile-web.dockerfile +48 -0
  203. package/framework/templates/infrastructure/docker/easypanel.template.json +54 -0
  204. package/framework/templates/infrastructure/github/README.md +593 -0
  205. package/framework/templates/infrastructure/github/actions/azure-auth/action.yml.hbs +22 -0
  206. package/framework/templates/infrastructure/github/actions/docker-build-push/action.yml.hbs +45 -0
  207. package/framework/templates/infrastructure/github/actions/health-check/action.yml.hbs +27 -0
  208. package/framework/templates/infrastructure/github/workflows/deploy-azure-app-service.yml.hbs +61 -0
  209. package/framework/templates/infrastructure/github/workflows/deploy-easypanel.yml.hbs +31 -0
  210. package/framework/templates/infrastructure/github/workflows/docker-build-push.yml.hbs +59 -0
  211. package/framework/templates/infrastructure/github/workflows/dotnet-build.yml.hbs +39 -0
  212. package/framework/templates/integrations/asaas-client.cs +387 -0
  213. package/framework/templates/integrations/asaas-webhook.cs +351 -0
  214. package/framework/templates/integrations/azure-identity-config.cs +288 -0
  215. package/framework/templates/integrations/clerk-config.cs +258 -0
  216. package/framework/templates/meta-prompts/fusion/fusion-agent.md +76 -0
  217. package/framework/templates/meta-prompts/fusion/fusion-aggregator.md +100 -0
  218. package/framework/templates/meta-prompts/hops/hop-retry.md +78 -0
  219. package/framework/templates/meta-prompts/hops/hop-validation.md +97 -0
  220. package/framework/templates/meta-prompts/hops/hop-wrapper.md +36 -0
  221. package/framework/templates/meta-prompts/parallel-workers/parallel-coordinator.md +113 -0
  222. package/framework/templates/meta-prompts/parallel-workers/parallel-worker.md +80 -0
  223. package/framework/templates/meta-prompts/squad-leaders/backend-squad.md +90 -0
  224. package/framework/templates/meta-prompts/squad-leaders/frontend-squad.md +126 -0
  225. package/framework/templates/meta-prompts/squad-leaders/squad-leader.md +43 -0
  226. package/framework/templates/meta-prompts/validators/checkpoint-validator.md +107 -0
  227. package/framework/templates/meta-prompts/validators/pre-commit-validator.md +95 -0
  228. package/framework/templates/saas/subscription.cs +347 -0
  229. package/framework/templates/saas/tenant.cs +338 -0
  230. package/framework/templates/state.template.json +17 -0
  231. package/framework/templates/ui/FluentDesignTheme.cs +149 -0
  232. package/framework/templates/ui/MudTheme.cs +281 -0
  233. package/framework/templates/ui/design-system.css +226 -0
  234. package/framework/workflows/README.md +1041 -0
  235. package/framework/workflows/configs/design-impl.json +49 -0
  236. package/framework/workflows/configs/fast-track.json +42 -0
  237. package/framework/workflows/configs/full-morph.json +79 -0
  238. package/framework/workflows/configs/fusion.json +39 -0
  239. package/framework/workflows/configs/long-running.json +33 -0
  240. package/framework/workflows/configs/standard.json +60 -0
  241. package/framework/workflows/configs/ui-refresh.json +49 -0
  242. package/framework/workflows/configs/zero-touch.json +75 -0
  243. package/framework/workflows/docs/STORY-DRIVEN-DEVELOPMENT.md +392 -0
  244. package/framework/workflows/docs/design-impl.md +37 -0
  245. package/framework/workflows/docs/enforcement-pipeline.md +668 -0
  246. package/framework/workflows/docs/fast-track.md +29 -0
  247. package/framework/workflows/docs/full-morph.md +76 -0
  248. package/framework/workflows/docs/standard.md +44 -0
  249. package/framework/workflows/docs/ui-refresh.md +39 -0
  250. package/package.json +3 -3
  251. package/src/commands/feature/create-story.js +11 -7
  252. package/src/commands/project/detect-agents.js +1 -2
  253. package/src/commands/project/init.js +69 -32
  254. package/src/commands/project/update.js +102 -15
  255. package/src/commands/templates/template-customize.js +3 -17
  256. package/src/commands/templates/template-list.js +1 -15
  257. package/src/commands/templates/template-render.js +2 -3
  258. package/src/commands/templates/template-show.js +3 -5
  259. package/src/core/templates/template-registry.js +9 -23
  260. package/src/lib/detectors/structure-detector.js +3 -3
  261. package/src/lib/generators/context-generator.js +18 -6
  262. package/src/lib/hooks/hook-executor.js +0 -2
  263. package/src/lib/orchestration/team-orchestrator.js +1 -2
  264. package/src/lib/standards/standards-context-injector.js +3 -4
  265. package/src/lib/troubleshooting/troubleshoot-grep.js +3 -9
  266. package/src/lib/validators/validation-runner.js +1 -2
  267. package/src/utils/file-copier.js +1 -2
  268. package/docs/README.md +0 -144
  269. package/docs/api/fonts/Montserrat/Montserrat-Bold.eot +0 -0
  270. package/docs/api/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
  271. package/docs/api/fonts/Montserrat/Montserrat-Bold.woff +0 -0
  272. package/docs/api/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
  273. package/docs/api/fonts/Montserrat/Montserrat-Regular.eot +0 -0
  274. package/docs/api/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
  275. package/docs/api/fonts/Montserrat/Montserrat-Regular.woff +0 -0
  276. package/docs/api/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
  277. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
  278. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -978
  279. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
  280. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
  281. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
  282. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
  283. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -1049
  284. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
  285. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
  286. package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
  287. package/docs/api/scripts/collapse.js +0 -39
  288. package/docs/api/scripts/commonNav.js +0 -28
  289. package/docs/api/scripts/linenumber.js +0 -25
  290. package/docs/api/scripts/nav.js +0 -12
  291. package/docs/api/scripts/polyfill.js +0 -4
  292. package/docs/api/scripts/prettify/Apache-License-2.0.txt +0 -202
  293. package/docs/api/scripts/prettify/lang-css.js +0 -2
  294. package/docs/api/scripts/prettify/prettify.js +0 -28
  295. package/docs/api/scripts/search.js +0 -99
  296. package/docs/api/styles/jsdoc.css +0 -776
  297. package/docs/api/styles/prettify.css +0 -80
  298. package/docs/cli-auto-detection.md +0 -219
  299. package/docs/getting-started.md +0 -296
  300. package/docs/installation.md +0 -361
  301. package/docs/next-generation/AGENTS.md +0 -521
  302. package/docs/next-generation/ANALYSIS.md +0 -555
  303. package/docs/next-generation/ARCHITECTURE.md +0 -436
  304. package/docs/next-generation/CONTEXT-OPTIMIZATION.md +0 -267
  305. package/docs/next-generation/EXECUTION-FLOW.md +0 -274
  306. package/docs/next-generation/FEATURES.md +0 -688
  307. package/docs/next-generation/META-PROMPTS.md +0 -235
  308. package/docs/next-generation/MIGRATION-GUIDE.md +0 -253
  309. package/docs/next-generation/README.md +0 -231
  310. package/docs/next-generation/ROADMAP.md +0 -801
  311. package/docs/next-generation/THREAD-MANAGEMENT.md +0 -240
  312. package/docs/templates.md +0 -418
  313. package/docs/troubleshooting.md +0 -269
  314. package/docs/validation-checklist.md +0 -264
  315. package/scripts/postinstall.js +0 -132
  316. package/src/lib/stacks/index.js +0 -7
  317. package/src/lib/stacks/stack-resolver.js +0 -180
  318. package/stacks/blazor-azure/.claude/commands/morph-deploy.md +0 -529
  319. package/stacks/blazor-azure/.claude/commands/morph-infra.md +0 -209
  320. package/stacks/blazor-azure/.morph/.morphversion +0 -5
  321. package/stacks/blazor-azure/.morph/config/config.json +0 -9
  322. package/stacks/blazor-azure/CLAUDE.md +0 -155
  323. package/stacks/blazor-azure/README.md +0 -79
  324. package/stacks/nextjs-supabase/.claude/commands/morph-apply.md +0 -221
  325. package/stacks/nextjs-supabase/.claude/commands/morph-archive.md +0 -79
  326. package/stacks/nextjs-supabase/.claude/commands/morph-deploy.md +0 -529
  327. package/stacks/nextjs-supabase/.claude/commands/morph-preflight.md +0 -227
  328. package/stacks/nextjs-supabase/.claude/commands/morph-proposal.md +0 -122
  329. package/stacks/nextjs-supabase/.claude/commands/morph-status.md +0 -86
  330. package/stacks/nextjs-supabase/.claude/commands/morph-troubleshoot.md +0 -122
  331. package/stacks/nextjs-supabase/.morph/.morphversion +0 -5
  332. package/stacks/nextjs-supabase/.morph/config/agents.json +0 -345
  333. package/stacks/nextjs-supabase/.morph/config/config.json +0 -9
  334. package/stacks/nextjs-supabase/.morph/project/context/README.md +0 -17
  335. package/stacks/nextjs-supabase/CLAUDE.md +0 -155
  336. package/stacks/nextjs-supabase/README.md +0 -103
  337. /package/{stacks/blazor-azure/.morph → .morph}/standards/ai-agents/blazor-ui.md +0 -0
  338. /package/{stacks/blazor-azure/.morph → .morph}/standards/ai-agents/production.md +0 -0
  339. /package/{stacks/blazor-azure/.morph → .morph}/standards/ai-agents/setup.md +0 -0
  340. /package/{stacks/blazor-azure/.morph → .morph}/standards/ai-agents/team-orchestration.md +0 -0
  341. /package/{stacks/blazor-azure/.morph → .morph}/standards/ai-agents/workflows.md +0 -0
  342. /package/{stacks/blazor-azure/.morph → .morph}/standards/architecture/ddd/aggregates.md +0 -0
  343. /package/{stacks/blazor-azure/.morph → .morph}/standards/architecture/ddd/entities.md +0 -0
  344. /package/{stacks/blazor-azure/.morph → .morph}/standards/architecture/ddd/value-objects.md +0 -0
  345. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/api/minimal-api.md +0 -0
  346. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/api/rest.md +0 -0
  347. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/api/validation.md +0 -0
  348. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/authentication/passkeys.md +0 -0
  349. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/database/ef-core.md +0 -0
  350. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/database/migrations.md +0 -0
  351. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/database/postgresql/database.md +0 -0
  352. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/database/repository-patterns.md +0 -0
  353. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/database/vector-search-rag.md +0 -0
  354. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/dotnet/async.md +0 -0
  355. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/dotnet/core.md +0 -0
  356. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/dotnet/di.md +0 -0
  357. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/dotnet/program-cs-checklist.md +0 -0
  358. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/integrations/asaas/asaas-api.md +0 -0
  359. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/integrations/clerk/clerk-auth.md +0 -0
  360. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/integrations/hangfire/hangfire-jobs.md +0 -0
  361. /package/{stacks/blazor-azure/.morph → .morph}/standards/backend/integrations/resend/resend-email.md +0 -0
  362. /package/{stacks/blazor-azure/.morph → .morph}/standards/context/analytics.md +0 -0
  363. /package/{stacks/blazor-azure/.morph → .morph}/standards/context/bundles.md +0 -0
  364. /package/{stacks/blazor-azure/.morph → .morph}/standards/context/priming.md +0 -0
  365. /package/{stacks/blazor-azure/.morph → .morph}/standards/core/architecture.md +0 -0
  366. /package/{stacks/blazor-azure/.morph → .morph}/standards/core/coding.md +0 -0
  367. /package/{stacks/blazor-azure/.morph → .morph}/standards/core/git-branching-strategy.md +0 -0
  368. /package/{stacks/blazor-azure/.morph → .morph}/standards/core/git.md +0 -0
  369. /package/{stacks/blazor-azure/.morph → .morph}/standards/core/testing.md +0 -0
  370. /package/{stacks/blazor-azure/.morph → .morph}/standards/data/nosql/blob-storage.md +0 -0
  371. /package/{stacks/blazor-azure/.morph → .morph}/standards/data/nosql/cache/redis.md +0 -0
  372. /package/{stacks/blazor-azure/.morph → .morph}/standards/data/nosql/cosmos-db.md +0 -0
  373. /package/{stacks/blazor-azure/.morph → .morph}/standards/data/vector-search/azure-ai-search.md +0 -0
  374. /package/{stacks/blazor-azure/.morph → .morph}/standards/data/vector-search/rag-chunking.md +0 -0
  375. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/blazor/design-checklist.md +0 -0
  376. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/blazor/fluent-ui-setup.md +0 -0
  377. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/blazor/fluent-ui.md +0 -0
  378. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/blazor/html-conversion.md +0 -0
  379. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/blazor/lifecycle.md +0 -0
  380. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/blazor/pitfalls.md +0 -0
  381. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/blazor/state.md +0 -0
  382. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/design-system/animations.md +0 -0
  383. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/design-system/naming.md +0 -0
  384. /package/{stacks/blazor-azure/.morph → .morph}/standards/frontend/nextjs/nextjs-patterns.md +0 -0
  385. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/azure/azure.md +0 -0
  386. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/azure/bicep/bicep-patterns.md +0 -0
  387. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/azure/devops/azure-devops-setup.md +0 -0
  388. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/azure/devops/local-development.md +0 -0
  389. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/azure/services/functions.md +0 -0
  390. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/azure/services/service-bus.md +0 -0
  391. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/azure/services/storage.md +0 -0
  392. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/docker/easypanel-deploy.md +0 -0
  393. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/supabase/mcp-setup.md +0 -0
  394. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/supabase/supabase-auth.md +0 -0
  395. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/supabase/supabase-pgvector.md +0 -0
  396. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/supabase/supabase-rls.md +0 -0
  397. /package/{stacks/blazor-azure/.morph → .morph}/standards/infrastructure/supabase/supabase-storage.md +0 -0
  398. /package/{stacks/blazor-azure/.morph → .morph}/standards/integration/api/graphql.md +0 -0
  399. /package/{stacks/blazor-azure/.morph → .morph}/standards/integration/api/grpc.md +0 -0
  400. /package/{stacks/blazor-azure/.morph → .morph}/standards/integration/api/rest-design.md +0 -0
  401. /package/{stacks/blazor-azure/.morph → .morph}/standards/integration/event-driven/cqrs.md +0 -0
  402. /package/{stacks/blazor-azure/.morph → .morph}/standards/integration/event-driven/event-sourcing.md +0 -0
  403. /package/{stacks/blazor-azure/.morph → .morph}/standards/integration/event-driven/service-bus.md +0 -0
  404. /package/{stacks/blazor-azure/.morph → .morph}/standards/observability/logging.md +0 -0
  405. /package/{stacks/blazor-azure/.morph → .morph}/standards/observability/metrics.md +0 -0
  406. /package/{stacks/blazor-azure/.morph → .morph}/standards/observability/monitoring.md +0 -0
  407. /package/{stacks/blazor-azure/.morph → .morph}/standards/observability/tracing.md +0 -0
  408. /package/{stacks/blazor-azure/.morph → .morph}/standards/workflows/parallel-execution.md +0 -0
  409. /package/{stacks/blazor-azure/.morph → .morph}/standards/workflows/thread-management.md +0 -0
  410. /package/{stacks/blazor-azure/.claude → framework}/commands/morph-apply.md +0 -0
  411. /package/{stacks/blazor-azure/.claude → framework}/commands/morph-archive.md +0 -0
  412. /package/{stacks/blazor-azure/.claude → framework}/commands/morph-preflight.md +0 -0
  413. /package/{stacks/blazor-azure/.claude → framework}/commands/morph-proposal.md +0 -0
  414. /package/{stacks/blazor-azure/.claude → framework}/commands/morph-status.md +0 -0
  415. /package/{stacks/blazor-azure/.claude → framework}/commands/morph-troubleshoot.md +0 -0
  416. /package/{stacks/nextjs-supabase/.morph → framework}/standards/ai-agents/blazor-ui.md +0 -0
  417. /package/{stacks/nextjs-supabase/.morph → framework}/standards/ai-agents/production.md +0 -0
  418. /package/{stacks/nextjs-supabase/.morph → framework}/standards/ai-agents/setup.md +0 -0
  419. /package/{stacks/nextjs-supabase/.morph → framework}/standards/ai-agents/team-orchestration.md +0 -0
  420. /package/{stacks/nextjs-supabase/.morph → framework}/standards/ai-agents/workflows.md +0 -0
  421. /package/{stacks/nextjs-supabase/.morph → framework}/standards/architecture/ddd/aggregates.md +0 -0
  422. /package/{stacks/nextjs-supabase/.morph → framework}/standards/architecture/ddd/entities.md +0 -0
  423. /package/{stacks/nextjs-supabase/.morph → framework}/standards/architecture/ddd/value-objects.md +0 -0
  424. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/api/minimal-api.md +0 -0
  425. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/api/rest.md +0 -0
  426. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/api/validation.md +0 -0
  427. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/authentication/passkeys.md +0 -0
  428. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/database/ef-core.md +0 -0
  429. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/database/migrations.md +0 -0
  430. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/database/postgresql/database.md +0 -0
  431. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/database/repository-patterns.md +0 -0
  432. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/database/vector-search-rag.md +0 -0
  433. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/dotnet/async.md +0 -0
  434. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/dotnet/core.md +0 -0
  435. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/dotnet/di.md +0 -0
  436. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/dotnet/program-cs-checklist.md +0 -0
  437. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/integrations/asaas/asaas-api.md +0 -0
  438. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/integrations/clerk/clerk-auth.md +0 -0
  439. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/integrations/hangfire/hangfire-jobs.md +0 -0
  440. /package/{stacks/nextjs-supabase/.morph → framework}/standards/backend/integrations/resend/resend-email.md +0 -0
  441. /package/{stacks/nextjs-supabase/.morph → framework}/standards/context/analytics.md +0 -0
  442. /package/{stacks/nextjs-supabase/.morph → framework}/standards/context/bundles.md +0 -0
  443. /package/{stacks/nextjs-supabase/.morph → framework}/standards/context/priming.md +0 -0
  444. /package/{stacks/nextjs-supabase/.morph → framework}/standards/core/architecture.md +0 -0
  445. /package/{stacks/nextjs-supabase/.morph → framework}/standards/core/coding.md +0 -0
  446. /package/{stacks/nextjs-supabase/.morph → framework}/standards/core/git-branching-strategy.md +0 -0
  447. /package/{stacks/nextjs-supabase/.morph → framework}/standards/core/git.md +0 -0
  448. /package/{stacks/nextjs-supabase/.morph → framework}/standards/core/testing.md +0 -0
  449. /package/{stacks/nextjs-supabase/.morph → framework}/standards/data/nosql/blob-storage.md +0 -0
  450. /package/{stacks/nextjs-supabase/.morph → framework}/standards/data/nosql/cache/redis.md +0 -0
  451. /package/{stacks/nextjs-supabase/.morph → framework}/standards/data/nosql/cosmos-db.md +0 -0
  452. /package/{stacks/nextjs-supabase/.morph → framework}/standards/data/vector-search/azure-ai-search.md +0 -0
  453. /package/{stacks/nextjs-supabase/.morph → framework}/standards/data/vector-search/rag-chunking.md +0 -0
  454. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/blazor/design-checklist.md +0 -0
  455. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/blazor/fluent-ui-setup.md +0 -0
  456. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/blazor/fluent-ui.md +0 -0
  457. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/blazor/html-conversion.md +0 -0
  458. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/blazor/lifecycle.md +0 -0
  459. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/blazor/pitfalls.md +0 -0
  460. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/blazor/state.md +0 -0
  461. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/design-system/animations.md +0 -0
  462. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/design-system/naming.md +0 -0
  463. /package/{stacks/nextjs-supabase/.morph → framework}/standards/frontend/nextjs/nextjs-patterns.md +0 -0
  464. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/azure/azure.md +0 -0
  465. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/azure/bicep/bicep-patterns.md +0 -0
  466. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/azure/devops/azure-devops-setup.md +0 -0
  467. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/azure/devops/local-development.md +0 -0
  468. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/azure/services/functions.md +0 -0
  469. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/azure/services/service-bus.md +0 -0
  470. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/azure/services/storage.md +0 -0
  471. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/docker/easypanel-deploy.md +0 -0
  472. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/supabase/mcp-setup.md +0 -0
  473. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/supabase/supabase-auth.md +0 -0
  474. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/supabase/supabase-pgvector.md +0 -0
  475. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/supabase/supabase-rls.md +0 -0
  476. /package/{stacks/nextjs-supabase/.morph → framework}/standards/infrastructure/supabase/supabase-storage.md +0 -0
  477. /package/{stacks/nextjs-supabase/.morph → framework}/standards/integration/api/graphql.md +0 -0
  478. /package/{stacks/nextjs-supabase/.morph → framework}/standards/integration/api/grpc.md +0 -0
  479. /package/{stacks/nextjs-supabase/.morph → framework}/standards/integration/api/rest-design.md +0 -0
  480. /package/{stacks/nextjs-supabase/.morph → framework}/standards/integration/event-driven/cqrs.md +0 -0
  481. /package/{stacks/nextjs-supabase/.morph → framework}/standards/integration/event-driven/event-sourcing.md +0 -0
  482. /package/{stacks/nextjs-supabase/.morph → framework}/standards/integration/event-driven/service-bus.md +0 -0
  483. /package/{stacks/nextjs-supabase/.morph → framework}/standards/observability/logging.md +0 -0
  484. /package/{stacks/nextjs-supabase/.morph → framework}/standards/observability/metrics.md +0 -0
  485. /package/{stacks/nextjs-supabase/.morph → framework}/standards/observability/monitoring.md +0 -0
  486. /package/{stacks/nextjs-supabase/.morph → framework}/standards/observability/tracing.md +0 -0
  487. /package/{stacks/nextjs-supabase/.morph → framework}/standards/workflows/parallel-execution.md +0 -0
  488. /package/{stacks/nextjs-supabase/.morph → framework}/standards/workflows/thread-management.md +0 -0
@@ -0,0 +1,59 @@
1
+ # API Designer
2
+
3
+ **Tier:** 3 (Specialist)
4
+ **Always Active:** No
5
+ **Keywords:** api, endpoint, controller, rest, http, route, dto, request, response
6
+ **Reports to:** dotnet-senior
7
+
8
+ ---
9
+
10
+ ## Role
11
+
12
+ REST API design specialist for .NET Minimal API and controllers, focusing on clean endpoint design and DTO contracts.
13
+
14
+ ---
15
+
16
+ ## Standards Applied
17
+
18
+ ```
19
+ framework/standards/core/coding.md
20
+ framework/standards/backend/dotnet/core.md
21
+ framework/standards/backend/dotnet/async.md
22
+ framework/standards/backend/api/rest.md
23
+ framework/standards/backend/api/validation.md
24
+ ```
25
+
26
+ ---
27
+
28
+ ## Responsibilities
29
+
30
+ - Design REST API endpoints following conventions
31
+ - Create request/response DTOs
32
+ - Implement API controllers or Minimal API endpoints
33
+ - Apply proper HTTP status codes (200, 201, 400, 404, etc.)
34
+ - Implement input validation with FluentValidation
35
+ - Design API versioning strategy
36
+ - Create error response formats
37
+
38
+ ---
39
+
40
+ ## When to Use
41
+
42
+ - Creating new API endpoints
43
+ - Designing DTO contracts
44
+ - API refactoring
45
+ - Implementing validation logic
46
+ - Designing error responses
47
+
48
+ ---
49
+
50
+ ## Collaborates With
51
+
52
+ - **dotnet-senior** - Service layer consumed by endpoints
53
+ - **ef-modeler** - Entity → DTO mapping
54
+ - **blazor-builder** - Frontend consuming API
55
+ - **testing-specialist** - API integration tests
56
+
57
+ ---
58
+
59
+ *MORPH-SPEC by Polymorphism Tech*
@@ -0,0 +1,77 @@
1
+ # .NET Senior Engineer
2
+
3
+ **Tier:** 2 (Domain Leader)
4
+ **Always Active:** Yes
5
+ **Reports to:** standards-architect
6
+ **Coordinates:** ef-modeler, api-designer, event-architect, hangfire-orchestrator, ms-agent-expert, ddd-expert, nosql-cache-expert
7
+
8
+ ---
9
+
10
+ ## Role
11
+
12
+ Senior .NET engineer and Backend Squad Leader. Writes production-quality C# code and coordinates backend domain specialists for all .NET implementation tasks.
13
+
14
+ ---
15
+
16
+ ## Standards Applied
17
+
18
+ ```
19
+ framework/standards/core/coding.md
20
+ framework/standards/core/architecture.md
21
+ framework/standards/core/testing.md
22
+ framework/standards/backend/dotnet/core.md
23
+ framework/standards/backend/dotnet/async.md
24
+ framework/standards/backend/dotnet/di.md
25
+ framework/standards/backend/database/ef-core.md
26
+ framework/standards/backend/api/rest.md
27
+ ```
28
+
29
+ ---
30
+
31
+ ## Responsibilities
32
+
33
+ - Lead backend implementation (services, controllers, business logic)
34
+ - Coordinate backend squad (ef-modeler, api-designer, etc.)
35
+ - Ensure code follows all .NET standards
36
+ - Design service layer architecture
37
+ - Implement async patterns with CancellationToken
38
+ - Apply dependency injection correctly
39
+ - Write unit and integration tests
40
+
41
+ ---
42
+
43
+ ## When to Use
44
+
45
+ - Any .NET/C# code implementation
46
+ - Backend service layer development
47
+ - API controller implementation
48
+ - Business logic implementation
49
+ - Complex architectural decisions (Ultrathink mode)
50
+
51
+ ---
52
+
53
+ ## Ultrathink Mode
54
+
55
+ **Trigger:** Keywords like "ultrathink", "deep-think", "analyze deeply", "complex decision"
56
+
57
+ **Use for:**
58
+ - Technology/library selection
59
+ - Architecture pattern decisions (CQRS vs simple)
60
+ - Performance optimization strategy
61
+ - Migration planning
62
+ - Multi-system integration design
63
+
64
+ ---
65
+
66
+ ## Collaborates With
67
+
68
+ - **ef-modeler** - Database/EF Core layer
69
+ - **api-designer** - REST API contracts and endpoints
70
+ - **azure-architect** - Infrastructure provisioning
71
+ - **blazor-builder** - Backend API consumed by frontend
72
+ - **hangfire-orchestrator** - Background job coordination
73
+ - **testing-specialist** - Test coverage and quality
74
+
75
+ ---
76
+
77
+ *MORPH-SPEC by Polymorphism Tech*
@@ -0,0 +1,58 @@
1
+ # EF Modeler
2
+
3
+ **Tier:** 3 (Specialist)
4
+ **Always Active:** No
5
+ **Keywords:** entity, database, migration, ef core, dbcontext, table, column, relationship, query
6
+ **Reports to:** dotnet-senior
7
+
8
+ ---
9
+
10
+ ## Role
11
+
12
+ Entity Framework Core specialist for database modeling, entities, configurations, and migrations.
13
+
14
+ ---
15
+
16
+ ## Standards Applied
17
+
18
+ ```
19
+ framework/standards/core/coding.md
20
+ framework/standards/backend/dotnet/core.md
21
+ framework/standards/backend/database/ef-core.md
22
+ framework/standards/backend/database/migrations.md
23
+ framework/standards/backend/database/repository-patterns.md
24
+ framework/standards/backend/database/performance.md
25
+ ```
26
+
27
+ ---
28
+
29
+ ## Responsibilities
30
+
31
+ - Design entity models with private setters and factory methods
32
+ - Create IEntityTypeConfiguration for each entity
33
+ - Configure relationships, indexes, and constraints
34
+ - Generate and review EF Core migrations
35
+ - Optimize database queries (avoid N+1, use proper includes)
36
+ - Implement repository patterns with IDbContextFactory
37
+
38
+ ---
39
+
40
+ ## When to Use
41
+
42
+ - Creating/modifying entity classes
43
+ - Database schema changes
44
+ - Migration creation/review
45
+ - Query optimization
46
+ - DbContext configuration
47
+
48
+ ---
49
+
50
+ ## Collaborates With
51
+
52
+ - **dotnet-senior** - Service layer consuming repositories
53
+ - **api-designer** - DTO mapping from entities
54
+ - **azure-architect** - Database provisioning (Azure SQL, Cosmos DB)
55
+
56
+ ---
57
+
58
+ *MORPH-SPEC by Polymorphism Tech*
@@ -0,0 +1,126 @@
1
+ # Hangfire Orchestrator
2
+
3
+ > **Layer:** 2 | **Load:** on-keyword | **Keywords:** scheduled, job, background, cron, recurring, batch, queue, hangfire
4
+
5
+ Especialista em background jobs, tarefas agendadas e processamento assíncrono com Hangfire.
6
+
7
+ ## .NET 10 Compatibility
8
+ - Hangfire.AspNetCore: **>= 1.8.22** (required for .NET 10)
9
+
10
+ ## Why Hangfire (not Azure Functions)
11
+
12
+ | Aspect | Hangfire | Azure Functions |
13
+ |--------|----------|-----------------|
14
+ | Cost | Free (in-process) | Pay per execution |
15
+ | Dashboard | Built-in | App Insights separate |
16
+ | Debugging | Local easy | Emulator needed |
17
+ | Complexity | Low | Medium-High |
18
+
19
+ ---
20
+
21
+ ## Setup
22
+
23
+ ```csharp
24
+ // Program.cs
25
+ builder.Services.AddHangfire(config => config
26
+ .SetDataCompatibilityLevel(CompatibilityLevel.Version_180)
27
+ .UseSimpleAssemblyNameTypeSerializer()
28
+ .UseRecommendedSerializerSettings()
29
+ .UseSqlServerStorage(connString, new SqlServerStorageOptions
30
+ {
31
+ CommandBatchMaxTimeout = TimeSpan.FromMinutes(5),
32
+ QueuePollInterval = TimeSpan.Zero,
33
+ UseRecommendedIsolationLevel = true,
34
+ DisableGlobalLocks = true
35
+ }));
36
+
37
+ builder.Services.AddHangfireServer(options =>
38
+ {
39
+ options.WorkerCount = Environment.ProcessorCount * 2;
40
+ options.Queues = new[] { "critical", "default", "low" };
41
+ });
42
+
43
+ app.UseHangfireDashboard("/hangfire", new DashboardOptions
44
+ {
45
+ Authorization = new[] { new HangfireAuthorizationFilter() }
46
+ });
47
+ ```
48
+
49
+ ## Job Types
50
+
51
+ | Type | API | Example |
52
+ |------|-----|---------|
53
+ | **Fire-and-Forget** | `BackgroundJob.Enqueue<T>(...)` | Send email |
54
+ | **Delayed** | `BackgroundJob.Schedule<T>(..., TimeSpan)` | Abandoned cart check |
55
+ | **Recurring** | `RecurringJob.AddOrUpdate<T>(..., cron)` | Daily report |
56
+ | **Continuation** | `BackgroundJob.ContinueJobWith(id, ...)` | Post-import notify |
57
+
58
+ ### Common Cron Expressions
59
+ `"0 * * * *"` hourly | `"*/5 * * * *"` every 5m | `"0 8 * * 1-5"` 8am weekdays | `"0 0 1 * *"` monthly
60
+
61
+ ---
62
+
63
+ ## CRITICAL: Scoped Repository Pattern
64
+
65
+ > **Ref:** `framework/standards/blazor-efcore.md` — Repository Factory pattern
66
+
67
+ **Hangfire jobs run OUTSIDE the HTTP request.** The scoped DbContext does NOT exist.
68
+
69
+ ```csharp
70
+ // ✅ ALWAYS use Factory
71
+ public class OrderProcessorJob(IOrderRepositoryFactory repoFactory, ILogger<OrderProcessorJob> logger)
72
+ {
73
+ [AutomaticRetry(Attempts = 3, DelaysInSeconds = new[] { 60, 300, 900 })]
74
+ public async Task ProcessAsync(Guid orderId, CancellationToken ct)
75
+ {
76
+ await using var repo = repoFactory.CreateScoped(); // Isolated DbContext
77
+ var order = await repo.GetByIdAsync(orderId, ct);
78
+ if (order == null || order.Status >= OrderStatus.Completed) return; // Idempotent
79
+ order.MarkAsProcessed();
80
+ await repo.UpdateAsync(order, ct);
81
+ }
82
+ }
83
+
84
+ // ❌ NEVER inject repository directly — DbContext will be disposed
85
+ ```
86
+
87
+ ## Retry & Error Handling
88
+
89
+ ```csharp
90
+ [AutomaticRetry(Attempts = 5, DelaysInSeconds = new[] { 60, 300, 900, 3600, 7200 })]
91
+ [Queue("critical")]
92
+ public async Task ProcessPaymentAsync(int orderId)
93
+ {
94
+ try { await _paymentService.ProcessAsync(orderId); }
95
+ catch (PaymentGatewayException ex) { _logger.LogWarning(ex, "..."); throw; } // Rethrow for retry
96
+ }
97
+ ```
98
+
99
+ ## Dashboard Authorization
100
+
101
+ ```csharp
102
+ public class HangfireAuthorizationFilter : IDashboardAuthorizationFilter
103
+ {
104
+ public bool Authorize(DashboardContext context)
105
+ {
106
+ var http = context.GetHttpContext();
107
+ return http.User.Identity?.IsAuthenticated == true && http.User.IsInRole("Admin");
108
+ }
109
+ }
110
+ ```
111
+
112
+ ---
113
+
114
+ ## Checklist
115
+ - [ ] Uses `IRepositoryFactory` (NOT direct repository)
116
+ - [ ] `await using` for dispose
117
+ - [ ] Job is idempotent (safe to retry)
118
+ - [ ] AutomaticRetry configured
119
+ - [ ] Queue defined (critical/default/low)
120
+ - [ ] CancellationToken propagated
121
+ - [ ] Dashboard protected with auth
122
+ - [ ] Timezone set for recurring jobs
123
+
124
+ ---
125
+
126
+ *MORPH-SPEC by Polymorphism Tech*
@@ -0,0 +1,45 @@
1
+ # Agent Framework Expert
2
+
3
+ > **Layer:** 2 | **Load:** on-keyword | **Keywords:** agent, ai, llm, openai, chat, prompt, tool, function calling, rag, embedding, workflow, orchestration, mcp, a2a, middleware
4
+
5
+ ## Identity
6
+
7
+ Microsoft Agent Framework specialist for .NET 10. Implements AI agents, tools, workflows, and middleware.
8
+
9
+ ## Knowledge Base (Consult These)
10
+
11
+ - `framework/standards/ai-agents/setup.md` - Agent configuration, DI, tools, streaming
12
+ - `framework/standards/ai-agents/workflows.md` - Sequential, parallel, conditional workflows
13
+ - `framework/standards/ai-agents/production.md` - Middleware, A2A, MCP, caching, observability
14
+
15
+ ## Responsibilities
16
+
17
+ - Configure agents per setup.md patterns (ChatClientAgent, keyed services)
18
+ - Design workflows per workflows.md orchestration patterns
19
+ - Implement middleware per production.md (error handling, logging, retry)
20
+ - Use recommended models from setup.md (gpt-4o-mini default)
21
+
22
+ ## Prompt Template
23
+
24
+ When working on AI agent tasks:
25
+ 1. Consult `setup.md` for agent configuration, tools, and DI registration
26
+ 2. Follow `workflows.md` for orchestration (sequential, parallel, conditional)
27
+ 3. Apply `production.md` for middleware, observability, and production patterns
28
+ 4. NEVER use Semantic Kernel - use Microsoft.Agents.AI exclusively
29
+
30
+ ## When to Use
31
+
32
+ - AI/LLM integration requests
33
+ - Agent workflow design
34
+ - Tool/function calling implementation
35
+ - Agent middleware and observability
36
+
37
+ ## Collaborates With
38
+
39
+ - ai-system-architect - Overall AI strategy
40
+ - dotnet-senior - Backend integration
41
+ - azure-architect - Azure OpenAI provisioning
42
+
43
+ ---
44
+
45
+ *MORPH-SPEC by Polymorphism Tech*
@@ -0,0 +1,210 @@
1
+ # .NET + Blazor Stack
2
+
3
+ Stack principal para aplicações web com .NET e Blazor Server.
4
+
5
+ | Aspecto | Tecnologia |
6
+ |---------|------------|
7
+ | **Backend** | .NET 10 / C# 14 |
8
+ | **Frontend** | Blazor Server |
9
+ | **Database** | EF Core 10 + Azure SQL |
10
+ | **Hosting** | Azure Container Apps |
11
+ | **Background** | Hangfire |
12
+ | **AI** | Microsoft Agent Framework |
13
+
14
+ **Triggers:** `blazor`, `razor`, `server-side`, `.net`, `csharp`, `dotnet`
15
+
16
+ ---
17
+
18
+ ## Critical Standards (Read FIRST)
19
+
20
+ | Standard | What |
21
+ |----------|------|
22
+ | `framework/standards/coding.md` | **C# naming conventions, code style, .editorconfig template** |
23
+ | `framework/standards/architecture.md` | **Clean Architecture layers, SOLID, service patterns** |
24
+ | `framework/standards/blazor-efcore.md` | DbContext concurrency, Repository Factory, background ops, migrations |
25
+ | `framework/standards/blazor-pitfalls.md` | Common Blazor issues & solutions |
26
+ | `framework/standards/fluent-ui-blazor.md` | Fluent UI APIs, icon sizes, dialog patterns |
27
+ | `framework/standards/blazor-lifecycle.md` | Component lifecycle patterns |
28
+ | `framework/standards/program-cs-checklist.md` | Required Program.cs setup |
29
+
30
+ ### Quick Checklist
31
+ - [ ] Background ops: Use `IDbContextFactory` / Repository Factory (ref: blazor-efcore.md)
32
+ - [ ] JSRuntime: ONLY in `OnAfterRenderAsync(firstRender)`
33
+ - [ ] Program.cs: `UseStaticFiles()` BEFORE `UseAntiforgery()`
34
+ - [ ] File Upload: Specify `maxAllowedSize` in `OpenReadStream()`
35
+ - [ ] RenderMode: NO `@rendermode` on MainLayout
36
+ - [ ] Package Versions: MudBlazor >= 8.15.0 for .NET 10
37
+
38
+ ---
39
+
40
+ ## Mandatory Code Patterns
41
+
42
+ ### Status Validation
43
+
44
+ ```csharp
45
+ // ✅ Validate INVALID states (allows future extensions)
46
+ if (order.Status >= OrderStatus.Completed || order.Status == OrderStatus.Failed)
47
+ throw new InvalidOperationException("Cannot process completed or failed order");
48
+
49
+ // ❌ Never assume single valid flow
50
+ if (order.Status != OrderStatus.PendingPayment)
51
+ throw new InvalidOperationException("Invalid status");
52
+ ```
53
+
54
+ ### Enums with Logical Order
55
+
56
+ ```csharp
57
+ public enum OrderStatus
58
+ {
59
+ Created = 0, PendingPayment = 1, Processing = 2, Completed = 3, // Normal flow
60
+ Failed = 100, Cancelled = 101, Refunded = 102 // Error states (high values)
61
+ }
62
+ ```
63
+
64
+ ### Service Pattern
65
+
66
+ ```csharp
67
+ public async Task<Result<Order>> ProcessAsync(Guid orderId, CancellationToken ct)
68
+ {
69
+ _logger.LogInformation("Processing order {OrderId}", orderId);
70
+ var order = await _repository.GetByIdAsync(orderId, ct);
71
+ if (order == null) return Result.Failure<Order>("Order not found");
72
+ if (order.Status >= OrderStatus.Completed)
73
+ return Result.Failure<Order>("Order already completed");
74
+ // ... process ...
75
+ return Result.Success(order);
76
+ }
77
+ ```
78
+
79
+ **Rules:** Logging at critical points, CancellationToken propagated, Result pattern for business errors, exceptions for infrastructure.
80
+
81
+ **More patterns:** See `code-review.md` for DTOs/contracts naming and service checklists.
82
+
83
+ ---
84
+
85
+ ## Project Structure
86
+
87
+ ```
88
+ src/
89
+ ├── {App}.Domain/ # Entities, Value Objects, Enums, Exceptions
90
+ ├── {App}.Application/ # Services, DTOs, Interfaces, Validators
91
+ ├── {App}.Infrastructure/ # EF Core (DbContext, Configs, Migrations), External Services
92
+ ├── {App}.Web/ # Blazor Server (Program.cs, Components, Pages, wwwroot)
93
+ └── tests/ # UnitTests, IntegrationTests
94
+ ```
95
+
96
+ ### Program.cs Essentials
97
+
98
+ ```csharp
99
+ var builder = WebApplication.CreateBuilder(args);
100
+ builder.Services.AddRazorComponents().AddInteractiveServerComponents();
101
+ builder.Services.AddDbContext<AppDbContext>(o => o.UseSqlServer(connString));
102
+ builder.Services.AddDbContextFactory<AppDbContext>(o => o.UseSqlServer(connString));
103
+ // Register services, factories, Hangfire...
104
+
105
+ var app = builder.Build();
106
+ app.UseHttpsRedirection();
107
+ app.UseStaticFiles(); // BEFORE UseAntiforgery!
108
+ app.UseAntiforgery();
109
+ app.MapRazorComponents<App>().AddInteractiveServerRenderMode();
110
+ app.Run();
111
+ ```
112
+
113
+ ---
114
+
115
+ ## Blazor Component Patterns
116
+
117
+ ### Page with List
118
+
119
+ ```razor
120
+ @page "/orders"
121
+ @inject IOrderService OrderService
122
+
123
+ @if (_orders is null) { <Loading /> }
124
+ else if (!_orders.Any()) { <EmptyState Message="No orders found" /> }
125
+ else
126
+ {
127
+ @foreach (var order in _orders)
128
+ {
129
+ <FluentCard>@order.OrderNumber - @order.Total.ToString("C")</FluentCard>
130
+ }
131
+ }
132
+
133
+ @code {
134
+ private List<OrderDto>? _orders;
135
+ protected override async Task OnInitializedAsync()
136
+ => _orders = await OrderService.GetAllAsync();
137
+ }
138
+ ```
139
+
140
+ ### Form with Validation
141
+
142
+ ```razor
143
+ @page "/orders/new"
144
+ <EditForm Model="_model" OnValidSubmit="HandleSubmit">
145
+ <DataAnnotationsValidator />
146
+ <InputSelect @bind-Value="_model.CustomerId">...</InputSelect>
147
+ <ValidationMessage For="() => _model.CustomerId" />
148
+ <button type="submit" disabled="@_isSubmitting">Save</button>
149
+ </EditForm>
150
+ ```
151
+
152
+ ---
153
+
154
+ ## UI Libraries
155
+
156
+ > **Decision matrix:** See `ui-ux-designer.md` skill for full comparison.
157
+
158
+ | Library | When | Key Advantage |
159
+ |---------|------|---------------|
160
+ | **Fluent UI** | AI-first, Microsoft stack | Performance (~200KB), AI components |
161
+ | **MudBlazor** | Complex dashboards | 140+ components, charts |
162
+ | **Hybrid** | SaaS with AI + analytics | Best of both |
163
+
164
+ ---
165
+
166
+ ## .NET 10 Features
167
+
168
+ ### PersistentState (new)
169
+ ```razor
170
+ @code {
171
+ [PersistentState]
172
+ private int Count { get; set; } = 0; // Survives pre-rendering & circuit disconnections
173
+ }
174
+ ```
175
+
176
+ ### Circuit Pause/Resume (new)
177
+ ```javascript
178
+ document.addEventListener('visibilitychange', () => {
179
+ document.hidden ? Blazor.pauseCircuit() : Blazor.resumeCircuit();
180
+ });
181
+ ```
182
+
183
+ ### Nested Model Validation (new)
184
+ ```csharp
185
+ builder.Services.AddValidation(); // Enables automatic nested model validation
186
+ ```
187
+
188
+ ### Blazor Metrics
189
+ ```csharp
190
+ builder.Services.AddOpenTelemetry()
191
+ .WithTracing(t => t.AddSource("Microsoft.AspNetCore.Components.Server"))
192
+ .WithMetrics(m => m.AddMeter("Microsoft.AspNetCore.Components.Server"));
193
+ ```
194
+
195
+ ---
196
+
197
+ ## Project Checklist
198
+
199
+ - [ ] Clean Architecture layers (Domain, Application, Infrastructure, Web)
200
+ - [ ] EF Core with migrations + IDbContextFactory
201
+ - [ ] Repository Factory for background ops (ref: blazor-efcore.md)
202
+ - [ ] Blazor Server with reusable components
203
+ - [ ] Services with DI + structured logging
204
+ - [ ] Validation (FluentValidation or DataAnnotations)
205
+ - [ ] Hangfire for background jobs
206
+ - [ ] Dockerfile for containerization
207
+
208
+ ---
209
+
210
+ *MORPH-SPEC by Polymorphism Tech*