@polymorphism-tech/morph-spec 4.3.3 → 4.3.4
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.
- package/.morph/analytics/threads-log.jsonl +9 -0
- package/{stacks/blazor-azure/.morph → .morph}/config/config.json +9 -9
- package/.morph/state.json +48 -0
- package/bin/detect-agents.js +1 -2
- package/bin/morph-spec.js +2 -15
- package/{stacks/blazor-azure/.morph/config → framework}/agents.json +948 -948
- package/{stacks/nextjs-supabase/.claude → framework}/commands/morph-infra.md +1 -1
- package/framework/hooks/README.md +282 -0
- package/framework/hooks/agent-stop/validate-and-continue.js +96 -0
- package/framework/hooks/agent-stop/validate-checkpoints.js +101 -0
- package/framework/hooks/agent-stop/validate-tests.js +109 -0
- package/framework/hooks/agent-teams/dispatch.js +67 -0
- package/framework/hooks/agent-teams/phase-advanced.js +80 -0
- package/framework/hooks/agent-teams/task-completed.js +76 -0
- package/framework/hooks/agent-teams/teammate-idle.js +70 -0
- package/framework/hooks/commit-msg/conventional-commits.sh +33 -0
- package/framework/hooks/pre-commit/agents.sh +25 -0
- package/framework/hooks/pre-commit/orchestrator.sh +64 -0
- package/framework/hooks/pre-commit/specs.sh +50 -0
- package/framework/hooks/pre-push/run-tests.sh +44 -0
- package/framework/index/troubleshooting-index.json +184 -0
- package/framework/memory/patterns-learned.md +766 -0
- package/framework/skills/level-0-meta/README.md +7 -0
- package/framework/skills/level-0-meta/code-review.md +226 -0
- package/framework/skills/level-0-meta/morph-checklist.md +117 -0
- package/framework/skills/level-0-meta/simulation-checklist.md +77 -0
- package/framework/skills/level-1-workflows/README.md +7 -0
- package/framework/skills/level-1-workflows/morph-replicate.md +213 -0
- package/framework/skills/level-1-workflows/phase-clarify.md +131 -0
- package/framework/skills/level-1-workflows/phase-design.md +213 -0
- package/framework/skills/level-1-workflows/phase-setup.md +106 -0
- package/framework/skills/level-1-workflows/phase-tasks.md +164 -0
- package/framework/skills/level-1-workflows/phase-uiux.md +169 -0
- package/framework/skills/level-2-domains/README.md +14 -0
- package/framework/skills/level-2-domains/ai-agents/ai-system-architect.md +192 -0
- package/framework/skills/level-2-domains/architecture/po-pm-advisor.md +197 -0
- package/framework/skills/level-2-domains/architecture/prompt-engineer.md +189 -0
- package/framework/skills/level-2-domains/architecture/seo-growth-hacker.md +320 -0
- package/framework/skills/level-2-domains/architecture/standards-architect.md +156 -0
- package/framework/skills/level-2-domains/backend/api-designer.md +59 -0
- package/framework/skills/level-2-domains/backend/dotnet-senior.md +77 -0
- package/framework/skills/level-2-domains/backend/ef-modeler.md +58 -0
- package/framework/skills/level-2-domains/backend/hangfire-orchestrator.md +126 -0
- package/framework/skills/level-2-domains/backend/ms-agent-expert.md +45 -0
- package/framework/skills/level-2-domains/frontend/blazor-builder.md +210 -0
- package/framework/skills/level-2-domains/frontend/nextjs-expert.md +154 -0
- package/framework/skills/level-2-domains/frontend/ui-ux-designer.md +191 -0
- package/framework/skills/level-2-domains/infrastructure/azure-architect.md +142 -0
- package/framework/skills/level-2-domains/infrastructure/azure-deploy-specialist.md +699 -0
- package/framework/skills/level-2-domains/infrastructure/bicep-architect.md +126 -0
- package/framework/skills/level-2-domains/infrastructure/container-specialist.md +131 -0
- package/framework/skills/level-2-domains/infrastructure/devops-engineer.md +119 -0
- package/framework/skills/level-2-domains/integrations/asaas-financial.md +130 -0
- package/framework/skills/level-2-domains/integrations/azure-identity.md +142 -0
- package/framework/skills/level-2-domains/integrations/clerk-auth.md +108 -0
- package/framework/skills/level-2-domains/integrations/hangfire-orchestrator.md +64 -0
- package/framework/skills/level-2-domains/integrations/resend-email.md +119 -0
- package/framework/skills/level-2-domains/quality/code-analyzer.md +235 -0
- package/framework/skills/level-2-domains/quality/testing-specialist.md +126 -0
- package/framework/skills/level-3-technologies/README.md +7 -0
- package/framework/skills/level-4-patterns/README.md +7 -0
- package/framework/squad-templates/backend-only.json +34 -0
- package/framework/squad-templates/frontend-only.json +34 -0
- package/framework/squad-templates/full-stack.json +52 -0
- package/framework/templates/.idea/morph-templates.xml +92 -0
- package/framework/templates/.vscode/morph-templates.code-snippets +186 -0
- package/framework/templates/IDE-SNIPPETS.md +266 -0
- package/framework/templates/README.md +814 -0
- package/framework/templates/REGISTRY.json +1677 -0
- package/framework/templates/code/dotnet/backend/repository.cs +141 -0
- package/framework/templates/code/dotnet/backend/service.cs +139 -0
- package/framework/templates/code/dotnet/contracts/Commands.cs +74 -0
- package/framework/templates/code/dotnet/contracts/Entities.cs +25 -0
- package/framework/templates/code/dotnet/contracts/Queries.cs +74 -0
- package/framework/templates/code/dotnet/contracts/README.md +74 -0
- package/framework/templates/code/dotnet/contracts/api-contracts.cs +173 -0
- package/framework/templates/code/dotnet/contracts/contracts.cs +217 -0
- package/framework/templates/code/dotnet/database/migration.cs +83 -0
- package/framework/templates/code/dotnet/frontend/component.razor +239 -0
- package/framework/templates/code/dotnet/jobs/agent.cs +163 -0
- package/framework/templates/code/dotnet/jobs/job.cs +171 -0
- package/framework/templates/code/dotnet/test.cs +239 -0
- package/framework/templates/code/sql/rls-policy.sql +57 -0
- package/framework/templates/code/sql/supabase-migration.sql +100 -0
- package/framework/templates/code/sql/supabase-migration.template.sql +113 -0
- package/framework/templates/code/typescript/contracts.ts +168 -0
- package/framework/templates/context/CONTEXT-FEATURE.md +276 -0
- package/framework/templates/context/CONTEXT.md +181 -0
- package/framework/templates/docs/proposal.md +182 -0
- package/framework/templates/docs/spec.md +149 -0
- package/framework/templates/examples/design-system-examples.md +357 -0
- package/framework/templates/examples/spec-examples.md +90 -0
- package/framework/templates/feature/decisions.md +187 -0
- package/framework/templates/feature/recap.md +146 -0
- package/framework/templates/feature/tasks.md +199 -0
- package/framework/templates/infrastructure/azure/Dockerfile.example +82 -0
- package/framework/templates/infrastructure/azure/README.md +286 -0
- package/framework/templates/infrastructure/azure/app-insights.bicep +63 -0
- package/framework/templates/infrastructure/azure/app-service.bicep +164 -0
- package/framework/templates/infrastructure/azure/container-app-env.bicep +49 -0
- package/framework/templates/infrastructure/azure/container-app.bicep +156 -0
- package/framework/templates/infrastructure/azure/deploy-checklist.md +426 -0
- package/framework/templates/infrastructure/azure/deploy.ps1 +229 -0
- package/framework/templates/infrastructure/azure/deploy.sh +208 -0
- package/framework/templates/infrastructure/azure/key-vault.bicep +91 -0
- package/framework/templates/infrastructure/azure/main.bicep +189 -0
- package/framework/templates/infrastructure/azure/parameters.dev.json +29 -0
- package/framework/templates/infrastructure/azure/parameters.prod.json +29 -0
- package/framework/templates/infrastructure/azure/parameters.staging.json +29 -0
- package/framework/templates/infrastructure/azure/sql-database.bicep +103 -0
- package/framework/templates/infrastructure/azure/storage.bicep +106 -0
- package/framework/templates/infrastructure/docker/Dockerfile.template +58 -0
- package/framework/templates/infrastructure/docker/docker-compose.template.yml +67 -0
- package/framework/templates/infrastructure/docker/dockerfile-api.dockerfile +38 -0
- package/framework/templates/infrastructure/docker/dockerfile-web.dockerfile +48 -0
- package/framework/templates/infrastructure/docker/easypanel.template.json +54 -0
- package/framework/templates/infrastructure/github/README.md +593 -0
- package/framework/templates/infrastructure/github/actions/azure-auth/action.yml.hbs +22 -0
- package/framework/templates/infrastructure/github/actions/docker-build-push/action.yml.hbs +45 -0
- package/framework/templates/infrastructure/github/actions/health-check/action.yml.hbs +27 -0
- package/framework/templates/infrastructure/github/workflows/deploy-azure-app-service.yml.hbs +61 -0
- package/framework/templates/infrastructure/github/workflows/deploy-easypanel.yml.hbs +31 -0
- package/framework/templates/infrastructure/github/workflows/docker-build-push.yml.hbs +59 -0
- package/framework/templates/infrastructure/github/workflows/dotnet-build.yml.hbs +39 -0
- package/framework/templates/integrations/asaas-client.cs +387 -0
- package/framework/templates/integrations/asaas-webhook.cs +351 -0
- package/framework/templates/integrations/azure-identity-config.cs +288 -0
- package/framework/templates/integrations/clerk-config.cs +258 -0
- package/framework/templates/meta-prompts/fusion/fusion-agent.md +76 -0
- package/framework/templates/meta-prompts/fusion/fusion-aggregator.md +100 -0
- package/framework/templates/meta-prompts/hops/hop-retry.md +78 -0
- package/framework/templates/meta-prompts/hops/hop-validation.md +97 -0
- package/framework/templates/meta-prompts/hops/hop-wrapper.md +36 -0
- package/framework/templates/meta-prompts/parallel-workers/parallel-coordinator.md +113 -0
- package/framework/templates/meta-prompts/parallel-workers/parallel-worker.md +80 -0
- package/framework/templates/meta-prompts/squad-leaders/backend-squad.md +90 -0
- package/framework/templates/meta-prompts/squad-leaders/frontend-squad.md +126 -0
- package/framework/templates/meta-prompts/squad-leaders/squad-leader.md +43 -0
- package/framework/templates/meta-prompts/validators/checkpoint-validator.md +107 -0
- package/framework/templates/meta-prompts/validators/pre-commit-validator.md +95 -0
- package/framework/templates/saas/subscription.cs +347 -0
- package/framework/templates/saas/tenant.cs +338 -0
- package/framework/templates/state.template.json +17 -0
- package/framework/templates/ui/FluentDesignTheme.cs +149 -0
- package/framework/templates/ui/MudTheme.cs +281 -0
- package/framework/templates/ui/design-system.css +226 -0
- package/framework/workflows/README.md +1041 -0
- package/framework/workflows/configs/design-impl.json +49 -0
- package/framework/workflows/configs/fast-track.json +42 -0
- package/framework/workflows/configs/full-morph.json +79 -0
- package/framework/workflows/configs/fusion.json +39 -0
- package/framework/workflows/configs/long-running.json +33 -0
- package/framework/workflows/configs/standard.json +60 -0
- package/framework/workflows/configs/ui-refresh.json +49 -0
- package/framework/workflows/configs/zero-touch.json +75 -0
- package/framework/workflows/docs/STORY-DRIVEN-DEVELOPMENT.md +392 -0
- package/framework/workflows/docs/design-impl.md +37 -0
- package/framework/workflows/docs/enforcement-pipeline.md +668 -0
- package/framework/workflows/docs/fast-track.md +29 -0
- package/framework/workflows/docs/full-morph.md +76 -0
- package/framework/workflows/docs/standard.md +44 -0
- package/framework/workflows/docs/ui-refresh.md +39 -0
- package/package.json +3 -3
- package/src/commands/feature/create-story.js +11 -7
- package/src/commands/project/detect-agents.js +1 -2
- package/src/commands/project/init.js +69 -32
- package/src/commands/project/update.js +2 -2
- package/src/commands/templates/template-customize.js +3 -17
- package/src/commands/templates/template-list.js +1 -15
- package/src/commands/templates/template-render.js +2 -3
- package/src/commands/templates/template-show.js +3 -5
- package/src/core/templates/template-registry.js +9 -23
- package/src/lib/detectors/structure-detector.js +3 -3
- package/src/lib/generators/context-generator.js +18 -6
- package/src/lib/hooks/hook-executor.js +0 -2
- package/src/lib/orchestration/team-orchestrator.js +1 -2
- package/src/lib/standards/standards-context-injector.js +3 -4
- package/src/lib/troubleshooting/troubleshoot-grep.js +3 -9
- package/src/lib/validators/validation-runner.js +1 -2
- package/src/utils/file-copier.js +1 -2
- package/docs/README.md +0 -144
- package/docs/api/fonts/Montserrat/Montserrat-Bold.eot +0 -0
- package/docs/api/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
- package/docs/api/fonts/Montserrat/Montserrat-Bold.woff +0 -0
- package/docs/api/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
- package/docs/api/fonts/Montserrat/Montserrat-Regular.eot +0 -0
- package/docs/api/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
- package/docs/api/fonts/Montserrat/Montserrat-Regular.woff +0 -0
- package/docs/api/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -978
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -1049
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
- package/docs/api/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
- package/docs/api/scripts/collapse.js +0 -39
- package/docs/api/scripts/commonNav.js +0 -28
- package/docs/api/scripts/linenumber.js +0 -25
- package/docs/api/scripts/nav.js +0 -12
- package/docs/api/scripts/polyfill.js +0 -4
- package/docs/api/scripts/prettify/Apache-License-2.0.txt +0 -202
- package/docs/api/scripts/prettify/lang-css.js +0 -2
- package/docs/api/scripts/prettify/prettify.js +0 -28
- package/docs/api/scripts/search.js +0 -99
- package/docs/api/styles/jsdoc.css +0 -776
- package/docs/api/styles/prettify.css +0 -80
- package/docs/cli-auto-detection.md +0 -219
- package/docs/getting-started.md +0 -296
- package/docs/installation.md +0 -361
- package/docs/next-generation/AGENTS.md +0 -521
- package/docs/next-generation/ANALYSIS.md +0 -555
- package/docs/next-generation/ARCHITECTURE.md +0 -436
- package/docs/next-generation/CONTEXT-OPTIMIZATION.md +0 -267
- package/docs/next-generation/EXECUTION-FLOW.md +0 -274
- package/docs/next-generation/FEATURES.md +0 -688
- package/docs/next-generation/META-PROMPTS.md +0 -235
- package/docs/next-generation/MIGRATION-GUIDE.md +0 -253
- package/docs/next-generation/README.md +0 -231
- package/docs/next-generation/ROADMAP.md +0 -801
- package/docs/next-generation/THREAD-MANAGEMENT.md +0 -240
- package/docs/templates.md +0 -418
- package/docs/troubleshooting.md +0 -269
- package/docs/validation-checklist.md +0 -264
- package/scripts/postinstall.js +0 -132
- package/src/lib/stacks/index.js +0 -7
- package/src/lib/stacks/stack-resolver.js +0 -180
- package/stacks/blazor-azure/.claude/commands/morph-deploy.md +0 -529
- package/stacks/blazor-azure/.claude/commands/morph-infra.md +0 -209
- package/stacks/blazor-azure/.morph/.morphversion +0 -5
- package/stacks/blazor-azure/.morph/project/context/README.md +0 -17
- package/stacks/blazor-azure/CLAUDE.md +0 -155
- package/stacks/blazor-azure/README.md +0 -79
- package/stacks/nextjs-supabase/.claude/commands/morph-apply.md +0 -221
- package/stacks/nextjs-supabase/.claude/commands/morph-archive.md +0 -79
- package/stacks/nextjs-supabase/.claude/commands/morph-deploy.md +0 -529
- package/stacks/nextjs-supabase/.claude/commands/morph-preflight.md +0 -227
- package/stacks/nextjs-supabase/.claude/commands/morph-proposal.md +0 -122
- package/stacks/nextjs-supabase/.claude/commands/morph-status.md +0 -86
- package/stacks/nextjs-supabase/.claude/commands/morph-troubleshoot.md +0 -122
- package/stacks/nextjs-supabase/.morph/.morphversion +0 -5
- package/stacks/nextjs-supabase/.morph/config/agents.json +0 -345
- package/stacks/nextjs-supabase/.morph/config/config.json +0 -9
- package/stacks/nextjs-supabase/.morph/project/context/README.md +0 -17
- package/stacks/nextjs-supabase/.morph/standards/ai-agents/blazor-ui.md +0 -364
- package/stacks/nextjs-supabase/.morph/standards/ai-agents/production.md +0 -415
- package/stacks/nextjs-supabase/.morph/standards/ai-agents/setup.md +0 -418
- package/stacks/nextjs-supabase/.morph/standards/ai-agents/team-orchestration.md +0 -479
- package/stacks/nextjs-supabase/.morph/standards/ai-agents/workflows.md +0 -354
- package/stacks/nextjs-supabase/.morph/standards/architecture/ddd/aggregates.md +0 -120
- package/stacks/nextjs-supabase/.morph/standards/architecture/ddd/entities.md +0 -99
- package/stacks/nextjs-supabase/.morph/standards/architecture/ddd/value-objects.md +0 -124
- package/stacks/nextjs-supabase/.morph/standards/backend/api/minimal-api.md +0 -494
- package/stacks/nextjs-supabase/.morph/standards/backend/api/rest.md +0 -492
- package/stacks/nextjs-supabase/.morph/standards/backend/api/validation.md +0 -88
- package/stacks/nextjs-supabase/.morph/standards/backend/authentication/passkeys.md +0 -428
- package/stacks/nextjs-supabase/.morph/standards/backend/database/ef-core.md +0 -199
- package/stacks/nextjs-supabase/.morph/standards/backend/database/migrations.md +0 -393
- package/stacks/nextjs-supabase/.morph/standards/backend/database/postgresql/database.md +0 -352
- package/stacks/nextjs-supabase/.morph/standards/backend/database/repository-patterns.md +0 -528
- package/stacks/nextjs-supabase/.morph/standards/backend/database/vector-search-rag.md +0 -541
- package/stacks/nextjs-supabase/.morph/standards/backend/dotnet/async.md +0 -366
- package/stacks/nextjs-supabase/.morph/standards/backend/dotnet/core.md +0 -117
- package/stacks/nextjs-supabase/.morph/standards/backend/dotnet/di.md +0 -439
- package/stacks/nextjs-supabase/.morph/standards/backend/dotnet/program-cs-checklist.md +0 -92
- package/stacks/nextjs-supabase/.morph/standards/backend/integrations/asaas/asaas-api.md +0 -216
- package/stacks/nextjs-supabase/.morph/standards/backend/integrations/clerk/clerk-auth.md +0 -290
- package/stacks/nextjs-supabase/.morph/standards/backend/integrations/hangfire/hangfire-jobs.md +0 -350
- package/stacks/nextjs-supabase/.morph/standards/backend/integrations/resend/resend-email.md +0 -385
- package/stacks/nextjs-supabase/.morph/standards/context/analytics.md +0 -96
- package/stacks/nextjs-supabase/.morph/standards/context/bundles.md +0 -110
- package/stacks/nextjs-supabase/.morph/standards/context/priming.md +0 -78
- package/stacks/nextjs-supabase/.morph/standards/core/architecture.md +0 -185
- package/stacks/nextjs-supabase/.morph/standards/core/coding.md +0 -214
- package/stacks/nextjs-supabase/.morph/standards/core/git-branching-strategy.md +0 -403
- package/stacks/nextjs-supabase/.morph/standards/core/git.md +0 -185
- package/stacks/nextjs-supabase/.morph/standards/core/testing.md +0 -295
- package/stacks/nextjs-supabase/.morph/standards/data/nosql/blob-storage.md +0 -102
- package/stacks/nextjs-supabase/.morph/standards/data/nosql/cache/redis.md +0 -97
- package/stacks/nextjs-supabase/.morph/standards/data/nosql/cosmos-db.md +0 -118
- package/stacks/nextjs-supabase/.morph/standards/data/vector-search/azure-ai-search.md +0 -121
- package/stacks/nextjs-supabase/.morph/standards/data/vector-search/rag-chunking.md +0 -104
- package/stacks/nextjs-supabase/.morph/standards/frontend/blazor/design-checklist.md +0 -222
- package/stacks/nextjs-supabase/.morph/standards/frontend/blazor/fluent-ui-setup.md +0 -595
- package/stacks/nextjs-supabase/.morph/standards/frontend/blazor/fluent-ui.md +0 -137
- package/stacks/nextjs-supabase/.morph/standards/frontend/blazor/html-conversion.md +0 -184
- package/stacks/nextjs-supabase/.morph/standards/frontend/blazor/lifecycle.md +0 -195
- package/stacks/nextjs-supabase/.morph/standards/frontend/blazor/pitfalls.md +0 -198
- package/stacks/nextjs-supabase/.morph/standards/frontend/blazor/state.md +0 -191
- package/stacks/nextjs-supabase/.morph/standards/frontend/design-system/animations.md +0 -151
- package/stacks/nextjs-supabase/.morph/standards/frontend/design-system/naming.md +0 -64
- package/stacks/nextjs-supabase/.morph/standards/frontend/nextjs/nextjs-patterns.md +0 -198
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/azure/azure.md +0 -624
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/azure/bicep/bicep-patterns.md +0 -422
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/azure/devops/azure-devops-setup.md +0 -516
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/azure/devops/local-development.md +0 -520
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/azure/services/functions.md +0 -486
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/azure/services/service-bus.md +0 -459
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/azure/services/storage.md +0 -407
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/docker/easypanel-deploy.md +0 -196
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/supabase/mcp-setup.md +0 -252
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/supabase/supabase-auth.md +0 -176
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/supabase/supabase-pgvector.md +0 -169
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/supabase/supabase-rls.md +0 -184
- package/stacks/nextjs-supabase/.morph/standards/infrastructure/supabase/supabase-storage.md +0 -153
- package/stacks/nextjs-supabase/.morph/standards/integration/api/graphql.md +0 -91
- package/stacks/nextjs-supabase/.morph/standards/integration/api/grpc.md +0 -114
- package/stacks/nextjs-supabase/.morph/standards/integration/api/rest-design.md +0 -95
- package/stacks/nextjs-supabase/.morph/standards/integration/event-driven/cqrs.md +0 -101
- package/stacks/nextjs-supabase/.morph/standards/integration/event-driven/event-sourcing.md +0 -124
- package/stacks/nextjs-supabase/.morph/standards/integration/event-driven/service-bus.md +0 -95
- package/stacks/nextjs-supabase/.morph/standards/observability/logging.md +0 -131
- package/stacks/nextjs-supabase/.morph/standards/observability/metrics.md +0 -121
- package/stacks/nextjs-supabase/.morph/standards/observability/monitoring.md +0 -114
- package/stacks/nextjs-supabase/.morph/standards/observability/tracing.md +0 -132
- package/stacks/nextjs-supabase/.morph/standards/workflows/parallel-execution.md +0 -112
- package/stacks/nextjs-supabase/.morph/standards/workflows/thread-management.md +0 -113
- package/stacks/nextjs-supabase/CLAUDE.md +0 -155
- package/stacks/nextjs-supabase/README.md +0 -103
- /package/{stacks/blazor-azure/.claude → framework}/commands/morph-apply.md +0 -0
- /package/{stacks/blazor-azure/.claude → framework}/commands/morph-archive.md +0 -0
- /package/{stacks/blazor-azure/.claude → framework}/commands/morph-preflight.md +0 -0
- /package/{stacks/blazor-azure/.claude → framework}/commands/morph-proposal.md +0 -0
- /package/{stacks/blazor-azure/.claude → framework}/commands/morph-status.md +0 -0
- /package/{stacks/blazor-azure/.claude → framework}/commands/morph-troubleshoot.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/ai-agents/blazor-ui.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/ai-agents/production.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/ai-agents/setup.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/ai-agents/team-orchestration.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/ai-agents/workflows.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/architecture/ddd/aggregates.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/architecture/ddd/entities.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/architecture/ddd/value-objects.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/api/minimal-api.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/api/rest.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/api/validation.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/authentication/passkeys.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/database/ef-core.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/database/migrations.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/database/postgresql/database.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/database/repository-patterns.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/database/vector-search-rag.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/dotnet/async.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/dotnet/core.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/dotnet/di.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/dotnet/program-cs-checklist.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/integrations/asaas/asaas-api.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/integrations/clerk/clerk-auth.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/integrations/hangfire/hangfire-jobs.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/backend/integrations/resend/resend-email.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/context/analytics.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/context/bundles.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/context/priming.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/core/architecture.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/core/coding.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/core/git-branching-strategy.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/core/git.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/core/testing.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/data/nosql/blob-storage.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/data/nosql/cache/redis.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/data/nosql/cosmos-db.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/data/vector-search/azure-ai-search.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/data/vector-search/rag-chunking.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/blazor/design-checklist.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/blazor/fluent-ui-setup.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/blazor/fluent-ui.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/blazor/html-conversion.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/blazor/lifecycle.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/blazor/pitfalls.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/blazor/state.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/design-system/animations.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/design-system/naming.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/frontend/nextjs/nextjs-patterns.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/azure/azure.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/azure/bicep/bicep-patterns.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/azure/devops/azure-devops-setup.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/azure/devops/local-development.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/azure/services/functions.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/azure/services/service-bus.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/azure/services/storage.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/docker/easypanel-deploy.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/supabase/mcp-setup.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/supabase/supabase-auth.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/supabase/supabase-pgvector.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/supabase/supabase-rls.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/infrastructure/supabase/supabase-storage.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/integration/api/graphql.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/integration/api/grpc.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/integration/api/rest-design.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/integration/event-driven/cqrs.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/integration/event-driven/event-sourcing.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/integration/event-driven/service-bus.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/observability/logging.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/observability/metrics.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/observability/monitoring.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/observability/tracing.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/workflows/parallel-execution.md +0 -0
- /package/{stacks/blazor-azure/.morph → framework}/standards/workflows/thread-management.md +0 -0
|
@@ -0,0 +1,1677 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft-07/schema#",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"description": "Template Registry for MORPH-SPEC Framework - Technology-based organization for multi-stack reusability",
|
|
5
|
+
"lastUpdated": "2026-02-18",
|
|
6
|
+
"migration": "v1 → v2: Migrated all templates to framework/, organized by technology (code/dotnet/, infrastructure/azure/, etc.) instead of by stack. This enables future stacks (vue-firebase, angular-mongodb) to reuse existing technology templates.",
|
|
7
|
+
"categories": [
|
|
8
|
+
"documentation",
|
|
9
|
+
"code",
|
|
10
|
+
"infrastructure",
|
|
11
|
+
"context",
|
|
12
|
+
"examples",
|
|
13
|
+
"integration",
|
|
14
|
+
"saas",
|
|
15
|
+
"ui"
|
|
16
|
+
],
|
|
17
|
+
"technologies": [
|
|
18
|
+
"dotnet",
|
|
19
|
+
"typescript",
|
|
20
|
+
"sql",
|
|
21
|
+
"azure",
|
|
22
|
+
"azure-devops",
|
|
23
|
+
"github-actions",
|
|
24
|
+
"docker",
|
|
25
|
+
"bicep",
|
|
26
|
+
"handlebars"
|
|
27
|
+
],
|
|
28
|
+
"templates": [
|
|
29
|
+
{
|
|
30
|
+
"id": "proposal",
|
|
31
|
+
"name": "Feature Proposal",
|
|
32
|
+
"path": "docs/proposal.md",
|
|
33
|
+
"location": "framework",
|
|
34
|
+
"category": "documentation",
|
|
35
|
+
"phase": "proposal",
|
|
36
|
+
"required": true,
|
|
37
|
+
"description": "Feature proposal with overview, problem statement, solution approach, and cost estimates",
|
|
38
|
+
"outputName": "proposal.md",
|
|
39
|
+
"placeholders": ["FEATURE_NAME", "STACK", "DATE", "AUTHOR"],
|
|
40
|
+
"stackSpecific": false,
|
|
41
|
+
"engine": "handlebars",
|
|
42
|
+
"deprecated": false,
|
|
43
|
+
"technology": "handlebars"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"id": "spec",
|
|
47
|
+
"name": "Technical Specification",
|
|
48
|
+
"path": "docs/spec.md",
|
|
49
|
+
"location": "framework",
|
|
50
|
+
"category": "documentation",
|
|
51
|
+
"phase": "design",
|
|
52
|
+
"required": true,
|
|
53
|
+
"description": "Detailed technical spec with architecture, data model, API contracts",
|
|
54
|
+
"outputName": "spec.md",
|
|
55
|
+
"placeholders": ["FEATURE_NAME", "STACK", "DATE"],
|
|
56
|
+
"stackSpecific": false,
|
|
57
|
+
"engine": "handlebars",
|
|
58
|
+
"deprecated": false,
|
|
59
|
+
"technology": "handlebars"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"id": "tasks",
|
|
63
|
+
"name": "Implementation Tasks",
|
|
64
|
+
"path": "feature/tasks.md",
|
|
65
|
+
"location": "framework",
|
|
66
|
+
"category": "documentation",
|
|
67
|
+
"phase": "tasks",
|
|
68
|
+
"required": true,
|
|
69
|
+
"description": "Task breakdown with IDs, dependencies, estimates, and checkpoints",
|
|
70
|
+
"outputName": "tasks.md",
|
|
71
|
+
"placeholders": ["FEATURE_NAME", "STACK"],
|
|
72
|
+
"stackSpecific": false,
|
|
73
|
+
"engine": "handlebars",
|
|
74
|
+
"deprecated": false,
|
|
75
|
+
"technology": "handlebars"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"id": "decisions",
|
|
79
|
+
"name": "Architecture Decision Records",
|
|
80
|
+
"path": "feature/decisions.md",
|
|
81
|
+
"location": "framework",
|
|
82
|
+
"category": "documentation",
|
|
83
|
+
"phase": "design",
|
|
84
|
+
"required": true,
|
|
85
|
+
"description": "ADR format for documenting architectural decisions with context, alternatives, consequences",
|
|
86
|
+
"outputName": "decisions.md",
|
|
87
|
+
"placeholders": ["FEATURE_NAME", "STACK", "DATE"],
|
|
88
|
+
"stackSpecific": false,
|
|
89
|
+
"engine": "handlebars",
|
|
90
|
+
"deprecated": false,
|
|
91
|
+
"technology": "handlebars"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"id": "recap",
|
|
95
|
+
"name": "Feature Recap",
|
|
96
|
+
"path": "feature/recap.md",
|
|
97
|
+
"location": "framework",
|
|
98
|
+
"category": "documentation",
|
|
99
|
+
"phase": "completed",
|
|
100
|
+
"required": true,
|
|
101
|
+
"description": "Post-implementation summary with deliverables, metrics, lessons learned",
|
|
102
|
+
"outputName": "recap.md",
|
|
103
|
+
"placeholders": ["FEATURE_NAME", "STACK", "DATE"],
|
|
104
|
+
"stackSpecific": false,
|
|
105
|
+
"engine": "handlebars",
|
|
106
|
+
"deprecated": false,
|
|
107
|
+
"technology": "handlebars"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"id": "context",
|
|
111
|
+
"name": "Project Context",
|
|
112
|
+
"path": "context/CONTEXT.md",
|
|
113
|
+
"location": "framework",
|
|
114
|
+
"category": "context",
|
|
115
|
+
"phase": "setup",
|
|
116
|
+
"required": false,
|
|
117
|
+
"description": "Project-level context with tech stack, active features, agents, standards",
|
|
118
|
+
"outputName": "CONTEXT.md",
|
|
119
|
+
"placeholders": ["PROJECT_NAME", "STACK", "TIMESTAMP"],
|
|
120
|
+
"stackSpecific": false,
|
|
121
|
+
"engine": "handlebars",
|
|
122
|
+
"deprecated": false,
|
|
123
|
+
"technology": "handlebars"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"id": "context-feature",
|
|
127
|
+
"name": "Feature Context",
|
|
128
|
+
"path": "context/CONTEXT-FEATURE.md",
|
|
129
|
+
"location": "framework",
|
|
130
|
+
"category": "context",
|
|
131
|
+
"phase": "setup",
|
|
132
|
+
"required": false,
|
|
133
|
+
"description": "Feature-level context with progress, agents, tasks, decisions, validations",
|
|
134
|
+
"outputName": "CONTEXT-FEATURE.md",
|
|
135
|
+
"placeholders": ["FEATURE_NAME", "PHASE", "STATUS", "COMPLEXITY"],
|
|
136
|
+
"stackSpecific": false,
|
|
137
|
+
"engine": "handlebars",
|
|
138
|
+
"deprecated": false,
|
|
139
|
+
"technology": "handlebars"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"id": "spec-examples",
|
|
143
|
+
"name": "Spec Examples",
|
|
144
|
+
"path": "examples/spec-examples.md",
|
|
145
|
+
"location": "framework",
|
|
146
|
+
"category": "examples",
|
|
147
|
+
"phase": null,
|
|
148
|
+
"required": false,
|
|
149
|
+
"description": "Example technical specs for reference",
|
|
150
|
+
"outputName": null,
|
|
151
|
+
"placeholders": [],
|
|
152
|
+
"stackSpecific": false,
|
|
153
|
+
"engine": null,
|
|
154
|
+
"deprecated": false,
|
|
155
|
+
"technology": null
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"id": "design-system-examples",
|
|
159
|
+
"name": "Design System Examples",
|
|
160
|
+
"path": "examples/design-system-examples.md",
|
|
161
|
+
"location": "framework",
|
|
162
|
+
"category": "examples",
|
|
163
|
+
"phase": null,
|
|
164
|
+
"required": false,
|
|
165
|
+
"description": "Example design system definitions",
|
|
166
|
+
"outputName": null,
|
|
167
|
+
"placeholders": [],
|
|
168
|
+
"stackSpecific": false,
|
|
169
|
+
"engine": null,
|
|
170
|
+
"deprecated": false,
|
|
171
|
+
"technology": null
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"id": "dotnet-backend-service",
|
|
175
|
+
"name": ".NET Service Class",
|
|
176
|
+
"path": "code/dotnet/backend/service.cs",
|
|
177
|
+
"location": "framework",
|
|
178
|
+
"category": "code",
|
|
179
|
+
"phase": "implement",
|
|
180
|
+
"required": false,
|
|
181
|
+
"description": "C# service class template with dependency injection and interface pattern",
|
|
182
|
+
"outputName": "{FeatureName}Service.cs",
|
|
183
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
184
|
+
"stackSpecific": false,
|
|
185
|
+
"engine": "handlebars",
|
|
186
|
+
"deprecated": false,
|
|
187
|
+
"technology": "dotnet",
|
|
188
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"id": "dotnet-backend-repository",
|
|
192
|
+
"name": ".NET Repository Class",
|
|
193
|
+
"path": "code/dotnet/backend/repository.cs",
|
|
194
|
+
"location": "framework",
|
|
195
|
+
"category": "code",
|
|
196
|
+
"phase": "implement",
|
|
197
|
+
"required": false,
|
|
198
|
+
"description": "C# repository class template with EF Core patterns",
|
|
199
|
+
"outputName": "{FeatureName}Repository.cs",
|
|
200
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
201
|
+
"stackSpecific": false,
|
|
202
|
+
"engine": "handlebars",
|
|
203
|
+
"deprecated": false,
|
|
204
|
+
"technology": "dotnet",
|
|
205
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"id": "dotnet-backend-test",
|
|
209
|
+
"name": ".NET Unit Test",
|
|
210
|
+
"path": "code/dotnet/test.cs",
|
|
211
|
+
"location": "framework",
|
|
212
|
+
"category": "code",
|
|
213
|
+
"phase": "implement",
|
|
214
|
+
"required": false,
|
|
215
|
+
"description": "xUnit test template with AAA pattern",
|
|
216
|
+
"outputName": "{FeatureName}Tests.cs",
|
|
217
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
218
|
+
"stackSpecific": false,
|
|
219
|
+
"engine": "handlebars",
|
|
220
|
+
"deprecated": false,
|
|
221
|
+
"technology": "dotnet",
|
|
222
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"id": "dotnet-frontend-component",
|
|
226
|
+
"name": "Blazor Component",
|
|
227
|
+
"path": "code/dotnet/frontend/component.razor",
|
|
228
|
+
"location": "framework",
|
|
229
|
+
"category": "code",
|
|
230
|
+
"phase": "implement",
|
|
231
|
+
"required": false,
|
|
232
|
+
"description": "Blazor component template with code-behind and lifecycle hooks",
|
|
233
|
+
"outputName": "{FeatureName}.razor",
|
|
234
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
235
|
+
"stackSpecific": false,
|
|
236
|
+
"engine": "handlebars",
|
|
237
|
+
"deprecated": false,
|
|
238
|
+
"technology": "dotnet",
|
|
239
|
+
"applicableStacks": ["blazor-azure"]
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"id": "dotnet-database-migration",
|
|
243
|
+
"name": "EF Core Migration",
|
|
244
|
+
"path": "code/dotnet/database/migration.cs",
|
|
245
|
+
"location": "framework",
|
|
246
|
+
"category": "code",
|
|
247
|
+
"phase": "implement",
|
|
248
|
+
"required": false,
|
|
249
|
+
"description": "EF Core migration template with Up/Down methods",
|
|
250
|
+
"outputName": "{Timestamp}_{FeatureName}.cs",
|
|
251
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
252
|
+
"stackSpecific": false,
|
|
253
|
+
"engine": "handlebars",
|
|
254
|
+
"deprecated": false,
|
|
255
|
+
"technology": "dotnet",
|
|
256
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
"id": "dotnet-jobs-hangfire",
|
|
260
|
+
"name": "Hangfire Background Job",
|
|
261
|
+
"path": "code/dotnet/jobs/job.cs",
|
|
262
|
+
"location": "framework",
|
|
263
|
+
"category": "code",
|
|
264
|
+
"phase": "implement",
|
|
265
|
+
"required": false,
|
|
266
|
+
"description": "Hangfire background job template with retry logic",
|
|
267
|
+
"outputName": "{FeatureName}Job.cs",
|
|
268
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
269
|
+
"stackSpecific": false,
|
|
270
|
+
"engine": "handlebars",
|
|
271
|
+
"deprecated": false,
|
|
272
|
+
"technology": "dotnet",
|
|
273
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
"id": "dotnet-jobs-agent",
|
|
277
|
+
"name": "MS Agent Framework Agent",
|
|
278
|
+
"path": "code/dotnet/jobs/agent.cs",
|
|
279
|
+
"location": "framework",
|
|
280
|
+
"category": "code",
|
|
281
|
+
"phase": "implement",
|
|
282
|
+
"required": false,
|
|
283
|
+
"description": "Microsoft Agent Framework agent template with prompt engineering",
|
|
284
|
+
"outputName": "{FeatureName}Agent.cs",
|
|
285
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
286
|
+
"stackSpecific": false,
|
|
287
|
+
"engine": "handlebars",
|
|
288
|
+
"deprecated": false,
|
|
289
|
+
"technology": "dotnet",
|
|
290
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"id": "dotnet-contracts-base",
|
|
294
|
+
"name": ".NET Base Contracts",
|
|
295
|
+
"path": "code/dotnet/contracts/contracts.cs",
|
|
296
|
+
"location": "framework",
|
|
297
|
+
"category": "code",
|
|
298
|
+
"phase": "design",
|
|
299
|
+
"required": true,
|
|
300
|
+
"description": "C# interface and DTO contracts (unified file)",
|
|
301
|
+
"outputName": "contracts.cs",
|
|
302
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
303
|
+
"stackSpecific": false,
|
|
304
|
+
"engine": "handlebars",
|
|
305
|
+
"deprecated": false,
|
|
306
|
+
"technology": "dotnet",
|
|
307
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
"id": "dotnet-contracts-commands",
|
|
311
|
+
"name": "CQRS Commands",
|
|
312
|
+
"path": "code/dotnet/contracts/Commands.cs",
|
|
313
|
+
"location": "framework",
|
|
314
|
+
"category": "code",
|
|
315
|
+
"phase": "design",
|
|
316
|
+
"required": false,
|
|
317
|
+
"description": "CQRS command contracts following command pattern",
|
|
318
|
+
"outputName": "Commands.cs",
|
|
319
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
320
|
+
"stackSpecific": false,
|
|
321
|
+
"engine": "handlebars",
|
|
322
|
+
"deprecated": false,
|
|
323
|
+
"technology": "dotnet",
|
|
324
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
"id": "dotnet-contracts-queries",
|
|
328
|
+
"name": "CQRS Queries",
|
|
329
|
+
"path": "code/dotnet/contracts/Queries.cs",
|
|
330
|
+
"location": "framework",
|
|
331
|
+
"category": "code",
|
|
332
|
+
"phase": "design",
|
|
333
|
+
"required": false,
|
|
334
|
+
"description": "CQRS query contracts following query pattern",
|
|
335
|
+
"outputName": "Queries.cs",
|
|
336
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
337
|
+
"stackSpecific": false,
|
|
338
|
+
"engine": "handlebars",
|
|
339
|
+
"deprecated": false,
|
|
340
|
+
"technology": "dotnet",
|
|
341
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
"id": "dotnet-contracts-entities",
|
|
345
|
+
"name": "Domain Entities",
|
|
346
|
+
"path": "code/dotnet/contracts/Entities.cs",
|
|
347
|
+
"location": "framework",
|
|
348
|
+
"category": "code",
|
|
349
|
+
"phase": "design",
|
|
350
|
+
"required": false,
|
|
351
|
+
"description": "Domain entity definitions with navigation properties",
|
|
352
|
+
"outputName": "Entities.cs",
|
|
353
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
354
|
+
"stackSpecific": false,
|
|
355
|
+
"engine": "handlebars",
|
|
356
|
+
"deprecated": false,
|
|
357
|
+
"technology": "dotnet",
|
|
358
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"id": "dotnet-contracts-api",
|
|
362
|
+
"name": "API Contracts",
|
|
363
|
+
"path": "code/dotnet/contracts/api-contracts.cs",
|
|
364
|
+
"location": "framework",
|
|
365
|
+
"category": "code",
|
|
366
|
+
"phase": "design",
|
|
367
|
+
"required": false,
|
|
368
|
+
"description": "REST API request/response contracts",
|
|
369
|
+
"outputName": "ApiContracts.cs",
|
|
370
|
+
"placeholders": ["FEATURE_NAME", "NAMESPACE"],
|
|
371
|
+
"stackSpecific": false,
|
|
372
|
+
"engine": "handlebars",
|
|
373
|
+
"deprecated": false,
|
|
374
|
+
"technology": "dotnet",
|
|
375
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
376
|
+
},
|
|
377
|
+
{
|
|
378
|
+
"id": "dotnet-contracts-readme",
|
|
379
|
+
"name": "Contracts README",
|
|
380
|
+
"path": "code/dotnet/contracts/README.md",
|
|
381
|
+
"location": "framework",
|
|
382
|
+
"category": "documentation",
|
|
383
|
+
"phase": "design",
|
|
384
|
+
"required": false,
|
|
385
|
+
"description": "Documentation for contract patterns and usage",
|
|
386
|
+
"outputName": "README.md",
|
|
387
|
+
"placeholders": ["FEATURE_NAME"],
|
|
388
|
+
"stackSpecific": false,
|
|
389
|
+
"engine": "handlebars",
|
|
390
|
+
"deprecated": false,
|
|
391
|
+
"technology": "dotnet",
|
|
392
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
"id": "typescript-contracts",
|
|
396
|
+
"name": "TypeScript Contracts",
|
|
397
|
+
"path": "code/typescript/contracts.ts",
|
|
398
|
+
"location": "framework",
|
|
399
|
+
"category": "code",
|
|
400
|
+
"phase": "design",
|
|
401
|
+
"required": false,
|
|
402
|
+
"description": "TypeScript type definitions and interfaces",
|
|
403
|
+
"outputName": "contracts.ts",
|
|
404
|
+
"placeholders": ["FEATURE_NAME"],
|
|
405
|
+
"stackSpecific": false,
|
|
406
|
+
"engine": "handlebars",
|
|
407
|
+
"deprecated": false,
|
|
408
|
+
"technology": "typescript",
|
|
409
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
"id": "sql-supabase-migration",
|
|
413
|
+
"name": "Supabase Migration",
|
|
414
|
+
"path": "code/sql/supabase-migration.sql",
|
|
415
|
+
"location": "framework",
|
|
416
|
+
"category": "code",
|
|
417
|
+
"phase": "implement",
|
|
418
|
+
"required": false,
|
|
419
|
+
"description": "Supabase SQL migration template (basic)",
|
|
420
|
+
"outputName": "{timestamp}_{feature_name}.sql",
|
|
421
|
+
"placeholders": ["FEATURE_NAME"],
|
|
422
|
+
"stackSpecific": false,
|
|
423
|
+
"engine": "handlebars",
|
|
424
|
+
"deprecated": false,
|
|
425
|
+
"technology": "sql",
|
|
426
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
427
|
+
},
|
|
428
|
+
{
|
|
429
|
+
"id": "sql-supabase-migration-enhanced",
|
|
430
|
+
"name": "Supabase Migration (Enhanced)",
|
|
431
|
+
"path": "code/sql/supabase-migration.template.sql",
|
|
432
|
+
"location": "framework",
|
|
433
|
+
"category": "code",
|
|
434
|
+
"phase": "implement",
|
|
435
|
+
"required": false,
|
|
436
|
+
"description": "Enhanced Supabase migration with RLS and indexes",
|
|
437
|
+
"outputName": "{timestamp}_{feature_name}.sql",
|
|
438
|
+
"placeholders": ["FEATURE_NAME"],
|
|
439
|
+
"stackSpecific": false,
|
|
440
|
+
"engine": "handlebars",
|
|
441
|
+
"deprecated": false,
|
|
442
|
+
"technology": "sql",
|
|
443
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
444
|
+
},
|
|
445
|
+
{
|
|
446
|
+
"id": "sql-rls-policy",
|
|
447
|
+
"name": "Row-Level Security Policy",
|
|
448
|
+
"path": "code/sql/rls-policy.sql",
|
|
449
|
+
"location": "framework",
|
|
450
|
+
"category": "code",
|
|
451
|
+
"phase": "implement",
|
|
452
|
+
"required": false,
|
|
453
|
+
"description": "Row-level security policy template for Supabase",
|
|
454
|
+
"outputName": "{table_name}_rls_policies.sql",
|
|
455
|
+
"placeholders": ["FEATURE_NAME", "TABLE_NAME"],
|
|
456
|
+
"stackSpecific": false,
|
|
457
|
+
"engine": "handlebars",
|
|
458
|
+
"deprecated": false,
|
|
459
|
+
"technology": "sql",
|
|
460
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
461
|
+
},
|
|
462
|
+
{
|
|
463
|
+
"id": "azure-bicep-main",
|
|
464
|
+
"name": "Main Bicep Orchestration",
|
|
465
|
+
"path": "infrastructure/azure/main.bicep",
|
|
466
|
+
"location": "framework",
|
|
467
|
+
"category": "infrastructure",
|
|
468
|
+
"phase": "implement",
|
|
469
|
+
"required": true,
|
|
470
|
+
"description": "Main Bicep orchestration file for Azure resources",
|
|
471
|
+
"outputName": "main.bicep",
|
|
472
|
+
"placeholders": ["PROJECT_NAME", "ENVIRONMENT"],
|
|
473
|
+
"stackSpecific": false,
|
|
474
|
+
"engine": "handlebars",
|
|
475
|
+
"deprecated": false,
|
|
476
|
+
"technology": "bicep",
|
|
477
|
+
"applicableStacks": ["blazor-azure"]
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
"id": "azure-bicep-container-app",
|
|
481
|
+
"name": "Azure Container App",
|
|
482
|
+
"path": "infrastructure/azure/container-app.bicep",
|
|
483
|
+
"location": "framework",
|
|
484
|
+
"category": "infrastructure",
|
|
485
|
+
"phase": "implement",
|
|
486
|
+
"required": false,
|
|
487
|
+
"description": "Azure Container App definition with scaling and secrets",
|
|
488
|
+
"outputName": "container-app.bicep",
|
|
489
|
+
"placeholders": ["PROJECT_NAME"],
|
|
490
|
+
"stackSpecific": false,
|
|
491
|
+
"engine": "handlebars",
|
|
492
|
+
"deprecated": false,
|
|
493
|
+
"technology": "bicep",
|
|
494
|
+
"applicableStacks": ["blazor-azure"]
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
"id": "azure-bicep-container-env",
|
|
498
|
+
"name": "Container Apps Environment",
|
|
499
|
+
"path": "infrastructure/azure/container-app-env.bicep",
|
|
500
|
+
"location": "framework",
|
|
501
|
+
"category": "infrastructure",
|
|
502
|
+
"phase": "implement",
|
|
503
|
+
"required": false,
|
|
504
|
+
"description": "Azure Container Apps environment with Log Analytics",
|
|
505
|
+
"outputName": "container-app-env.bicep",
|
|
506
|
+
"placeholders": ["PROJECT_NAME"],
|
|
507
|
+
"stackSpecific": false,
|
|
508
|
+
"engine": "handlebars",
|
|
509
|
+
"deprecated": false,
|
|
510
|
+
"technology": "bicep",
|
|
511
|
+
"applicableStacks": ["blazor-azure"]
|
|
512
|
+
},
|
|
513
|
+
{
|
|
514
|
+
"id": "azure-bicep-app-service",
|
|
515
|
+
"name": "Azure App Service",
|
|
516
|
+
"path": "infrastructure/azure/app-service.bicep",
|
|
517
|
+
"location": "framework",
|
|
518
|
+
"category": "infrastructure",
|
|
519
|
+
"phase": "implement",
|
|
520
|
+
"required": false,
|
|
521
|
+
"description": "Azure App Service definition (alternative to Container Apps)",
|
|
522
|
+
"outputName": "app-service.bicep",
|
|
523
|
+
"placeholders": ["PROJECT_NAME"],
|
|
524
|
+
"stackSpecific": false,
|
|
525
|
+
"engine": "handlebars",
|
|
526
|
+
"deprecated": false,
|
|
527
|
+
"technology": "bicep",
|
|
528
|
+
"applicableStacks": ["blazor-azure"]
|
|
529
|
+
},
|
|
530
|
+
{
|
|
531
|
+
"id": "azure-bicep-sql",
|
|
532
|
+
"name": "Azure SQL Database",
|
|
533
|
+
"path": "infrastructure/azure/sql-database.bicep",
|
|
534
|
+
"location": "framework",
|
|
535
|
+
"category": "infrastructure",
|
|
536
|
+
"phase": "implement",
|
|
537
|
+
"required": false,
|
|
538
|
+
"description": "Azure SQL Database with server and firewall rules",
|
|
539
|
+
"outputName": "sql-database.bicep",
|
|
540
|
+
"placeholders": ["PROJECT_NAME"],
|
|
541
|
+
"stackSpecific": false,
|
|
542
|
+
"engine": "handlebars",
|
|
543
|
+
"deprecated": false,
|
|
544
|
+
"technology": "bicep",
|
|
545
|
+
"applicableStacks": ["blazor-azure"]
|
|
546
|
+
},
|
|
547
|
+
{
|
|
548
|
+
"id": "azure-bicep-storage",
|
|
549
|
+
"name": "Azure Storage Account",
|
|
550
|
+
"path": "infrastructure/azure/storage.bicep",
|
|
551
|
+
"location": "framework",
|
|
552
|
+
"category": "infrastructure",
|
|
553
|
+
"phase": "implement",
|
|
554
|
+
"required": false,
|
|
555
|
+
"description": "Azure Storage Account with blob containers",
|
|
556
|
+
"outputName": "storage.bicep",
|
|
557
|
+
"placeholders": ["PROJECT_NAME"],
|
|
558
|
+
"stackSpecific": false,
|
|
559
|
+
"engine": "handlebars",
|
|
560
|
+
"deprecated": false,
|
|
561
|
+
"technology": "bicep",
|
|
562
|
+
"applicableStacks": ["blazor-azure"]
|
|
563
|
+
},
|
|
564
|
+
{
|
|
565
|
+
"id": "azure-bicep-key-vault",
|
|
566
|
+
"name": "Azure Key Vault",
|
|
567
|
+
"path": "infrastructure/azure/key-vault.bicep",
|
|
568
|
+
"location": "framework",
|
|
569
|
+
"category": "infrastructure",
|
|
570
|
+
"phase": "implement",
|
|
571
|
+
"required": false,
|
|
572
|
+
"description": "Azure Key Vault for secrets management",
|
|
573
|
+
"outputName": "key-vault.bicep",
|
|
574
|
+
"placeholders": ["PROJECT_NAME"],
|
|
575
|
+
"stackSpecific": false,
|
|
576
|
+
"engine": "handlebars",
|
|
577
|
+
"deprecated": false,
|
|
578
|
+
"technology": "bicep",
|
|
579
|
+
"applicableStacks": ["blazor-azure"]
|
|
580
|
+
},
|
|
581
|
+
{
|
|
582
|
+
"id": "azure-bicep-app-insights",
|
|
583
|
+
"name": "Application Insights",
|
|
584
|
+
"path": "infrastructure/azure/app-insights.bicep",
|
|
585
|
+
"location": "framework",
|
|
586
|
+
"category": "infrastructure",
|
|
587
|
+
"phase": "implement",
|
|
588
|
+
"required": false,
|
|
589
|
+
"description": "Application Insights for monitoring and telemetry",
|
|
590
|
+
"outputName": "app-insights.bicep",
|
|
591
|
+
"placeholders": ["PROJECT_NAME"],
|
|
592
|
+
"stackSpecific": false,
|
|
593
|
+
"engine": "handlebars",
|
|
594
|
+
"deprecated": false,
|
|
595
|
+
"technology": "bicep",
|
|
596
|
+
"applicableStacks": ["blazor-azure"]
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
"id": "azure-parameters-dev",
|
|
600
|
+
"name": "Parameters (Development)",
|
|
601
|
+
"path": "infrastructure/azure/parameters.dev.json",
|
|
602
|
+
"location": "framework",
|
|
603
|
+
"category": "infrastructure",
|
|
604
|
+
"phase": "implement",
|
|
605
|
+
"required": false,
|
|
606
|
+
"description": "Bicep parameters for development environment",
|
|
607
|
+
"outputName": "parameters.dev.json",
|
|
608
|
+
"placeholders": [],
|
|
609
|
+
"stackSpecific": false,
|
|
610
|
+
"engine": null,
|
|
611
|
+
"deprecated": false,
|
|
612
|
+
"technology": "azure",
|
|
613
|
+
"applicableStacks": ["blazor-azure"]
|
|
614
|
+
},
|
|
615
|
+
{
|
|
616
|
+
"id": "azure-parameters-staging",
|
|
617
|
+
"name": "Parameters (Staging)",
|
|
618
|
+
"path": "infrastructure/azure/parameters.staging.json",
|
|
619
|
+
"location": "framework",
|
|
620
|
+
"category": "infrastructure",
|
|
621
|
+
"phase": "implement",
|
|
622
|
+
"required": false,
|
|
623
|
+
"description": "Bicep parameters for staging environment",
|
|
624
|
+
"outputName": "parameters.staging.json",
|
|
625
|
+
"placeholders": [],
|
|
626
|
+
"stackSpecific": false,
|
|
627
|
+
"engine": null,
|
|
628
|
+
"deprecated": false,
|
|
629
|
+
"technology": "azure",
|
|
630
|
+
"applicableStacks": ["blazor-azure"]
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
"id": "azure-parameters-prod",
|
|
634
|
+
"name": "Parameters (Production)",
|
|
635
|
+
"path": "infrastructure/azure/parameters.prod.json",
|
|
636
|
+
"location": "framework",
|
|
637
|
+
"category": "infrastructure",
|
|
638
|
+
"phase": "implement",
|
|
639
|
+
"required": false,
|
|
640
|
+
"description": "Bicep parameters for production environment",
|
|
641
|
+
"outputName": "parameters.prod.json",
|
|
642
|
+
"placeholders": [],
|
|
643
|
+
"stackSpecific": false,
|
|
644
|
+
"engine": null,
|
|
645
|
+
"deprecated": false,
|
|
646
|
+
"technology": "azure",
|
|
647
|
+
"applicableStacks": ["blazor-azure"]
|
|
648
|
+
},
|
|
649
|
+
{
|
|
650
|
+
"id": "azure-deploy-ps1",
|
|
651
|
+
"name": "Deploy Script (PowerShell)",
|
|
652
|
+
"path": "infrastructure/azure/deploy.ps1",
|
|
653
|
+
"location": "framework",
|
|
654
|
+
"category": "infrastructure",
|
|
655
|
+
"phase": "implement",
|
|
656
|
+
"required": false,
|
|
657
|
+
"description": "PowerShell deployment script for Azure",
|
|
658
|
+
"outputName": "deploy.ps1",
|
|
659
|
+
"placeholders": [],
|
|
660
|
+
"stackSpecific": false,
|
|
661
|
+
"engine": null,
|
|
662
|
+
"deprecated": false,
|
|
663
|
+
"technology": "azure",
|
|
664
|
+
"applicableStacks": ["blazor-azure"]
|
|
665
|
+
},
|
|
666
|
+
{
|
|
667
|
+
"id": "azure-deploy-sh",
|
|
668
|
+
"name": "Deploy Script (Bash)",
|
|
669
|
+
"path": "infrastructure/azure/deploy.sh",
|
|
670
|
+
"location": "framework",
|
|
671
|
+
"category": "infrastructure",
|
|
672
|
+
"phase": "implement",
|
|
673
|
+
"required": false,
|
|
674
|
+
"description": "Bash deployment script for Azure",
|
|
675
|
+
"outputName": "deploy.sh",
|
|
676
|
+
"placeholders": [],
|
|
677
|
+
"stackSpecific": false,
|
|
678
|
+
"engine": null,
|
|
679
|
+
"deprecated": false,
|
|
680
|
+
"technology": "azure",
|
|
681
|
+
"applicableStacks": ["blazor-azure"]
|
|
682
|
+
},
|
|
683
|
+
{
|
|
684
|
+
"id": "azure-deploy-checklist",
|
|
685
|
+
"name": "Deployment Checklist",
|
|
686
|
+
"path": "infrastructure/azure/deploy-checklist.md",
|
|
687
|
+
"location": "framework",
|
|
688
|
+
"category": "infrastructure",
|
|
689
|
+
"phase": "implement",
|
|
690
|
+
"required": false,
|
|
691
|
+
"description": "Pre-deployment verification checklist",
|
|
692
|
+
"outputName": "deploy-checklist.md",
|
|
693
|
+
"placeholders": [],
|
|
694
|
+
"stackSpecific": false,
|
|
695
|
+
"engine": "handlebars",
|
|
696
|
+
"deprecated": false,
|
|
697
|
+
"technology": "azure",
|
|
698
|
+
"applicableStacks": ["blazor-azure"]
|
|
699
|
+
},
|
|
700
|
+
{
|
|
701
|
+
"id": "azure-pipelines",
|
|
702
|
+
"name": "Azure Pipelines YAML",
|
|
703
|
+
"path": "infrastructure/azure/azure-pipelines-deploy.yml",
|
|
704
|
+
"location": "framework",
|
|
705
|
+
"category": "infrastructure",
|
|
706
|
+
"phase": "implement",
|
|
707
|
+
"required": false,
|
|
708
|
+
"description": "[DEPRECATED] Replaced by GitHub Actions workflows",
|
|
709
|
+
"outputName": "azure-pipelines-deploy.yml",
|
|
710
|
+
"placeholders": ["PROJECT_NAME"],
|
|
711
|
+
"stackSpecific": false,
|
|
712
|
+
"engine": "handlebars",
|
|
713
|
+
"deprecated": true,
|
|
714
|
+
"deprecationReason": "CI/CD migrated from Azure DevOps to GitHub Actions",
|
|
715
|
+
"technology": "azure",
|
|
716
|
+
"applicableStacks": ["blazor-azure"]
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
"id": "azure-devops-build-dotnet",
|
|
720
|
+
"name": "Azure DevOps - Build .NET Template",
|
|
721
|
+
"path": "infrastructure/azure/pipelines/templates/build-dotnet.yml",
|
|
722
|
+
"location": "framework",
|
|
723
|
+
"category": "infrastructure",
|
|
724
|
+
"phase": "implement",
|
|
725
|
+
"required": false,
|
|
726
|
+
"description": "[DEPRECATED] Replaced by GitHub Actions workflows",
|
|
727
|
+
"outputName": "build-dotnet.yml",
|
|
728
|
+
"placeholders": [],
|
|
729
|
+
"stackSpecific": false,
|
|
730
|
+
"engine": "none",
|
|
731
|
+
"deprecated": true,
|
|
732
|
+
"deprecationReason": "CI/CD migrated from Azure DevOps to GitHub Actions",
|
|
733
|
+
"technology": "azure-devops",
|
|
734
|
+
"applicableStacks": ["blazor-azure"]
|
|
735
|
+
},
|
|
736
|
+
{
|
|
737
|
+
"id": "azure-devops-deploy-container-app",
|
|
738
|
+
"name": "Azure DevOps - Deploy Container Apps Template",
|
|
739
|
+
"path": "infrastructure/azure/pipelines/templates/deploy-container-app.yml",
|
|
740
|
+
"location": "framework",
|
|
741
|
+
"category": "infrastructure",
|
|
742
|
+
"phase": "implement",
|
|
743
|
+
"required": false,
|
|
744
|
+
"description": "[DEPRECATED] Replaced by GitHub Actions workflows",
|
|
745
|
+
"outputName": "deploy-container-app.yml",
|
|
746
|
+
"placeholders": [],
|
|
747
|
+
"stackSpecific": false,
|
|
748
|
+
"engine": "none",
|
|
749
|
+
"deprecated": true,
|
|
750
|
+
"deprecationReason": "CI/CD migrated from Azure DevOps to GitHub Actions",
|
|
751
|
+
"technology": "azure-devops",
|
|
752
|
+
"applicableStacks": ["blazor-azure"]
|
|
753
|
+
},
|
|
754
|
+
{
|
|
755
|
+
"id": "azure-devops-deploy-app-service",
|
|
756
|
+
"name": "Azure DevOps - Deploy App Service Template",
|
|
757
|
+
"path": "infrastructure/azure/pipelines/templates/deploy-app-service.yml",
|
|
758
|
+
"location": "framework",
|
|
759
|
+
"category": "infrastructure",
|
|
760
|
+
"phase": "implement",
|
|
761
|
+
"required": false,
|
|
762
|
+
"description": "[DEPRECATED] Replaced by GitHub Actions workflows",
|
|
763
|
+
"outputName": "deploy-app-service.yml",
|
|
764
|
+
"placeholders": [],
|
|
765
|
+
"stackSpecific": false,
|
|
766
|
+
"engine": "none",
|
|
767
|
+
"deprecated": true,
|
|
768
|
+
"deprecationReason": "CI/CD migrated from Azure DevOps to GitHub Actions",
|
|
769
|
+
"technology": "azure-devops",
|
|
770
|
+
"applicableStacks": ["blazor-azure"]
|
|
771
|
+
},
|
|
772
|
+
{
|
|
773
|
+
"id": "azure-devops-infra-deploy",
|
|
774
|
+
"name": "Azure DevOps - Infrastructure Deployment Template",
|
|
775
|
+
"path": "infrastructure/azure/pipelines/templates/infra-deploy.yml",
|
|
776
|
+
"location": "framework",
|
|
777
|
+
"category": "infrastructure",
|
|
778
|
+
"phase": "implement",
|
|
779
|
+
"required": false,
|
|
780
|
+
"description": "[DEPRECATED] Replaced by GitHub Actions workflows",
|
|
781
|
+
"outputName": "infra-deploy.yml",
|
|
782
|
+
"placeholders": [],
|
|
783
|
+
"stackSpecific": false,
|
|
784
|
+
"engine": "none",
|
|
785
|
+
"deprecated": true,
|
|
786
|
+
"deprecationReason": "CI/CD migrated from Azure DevOps to GitHub Actions",
|
|
787
|
+
"technology": "azure-devops",
|
|
788
|
+
"applicableStacks": ["blazor-azure"]
|
|
789
|
+
},
|
|
790
|
+
{
|
|
791
|
+
"id": "azure-dockerfile",
|
|
792
|
+
"name": "Dockerfile (Azure)",
|
|
793
|
+
"path": "infrastructure/azure/Dockerfile.example",
|
|
794
|
+
"location": "framework",
|
|
795
|
+
"category": "infrastructure",
|
|
796
|
+
"phase": "implement",
|
|
797
|
+
"required": false,
|
|
798
|
+
"description": "Example Dockerfile for Azure Container Apps",
|
|
799
|
+
"outputName": "Dockerfile",
|
|
800
|
+
"placeholders": [],
|
|
801
|
+
"stackSpecific": false,
|
|
802
|
+
"engine": null,
|
|
803
|
+
"deprecated": false,
|
|
804
|
+
"technology": "docker",
|
|
805
|
+
"applicableStacks": ["blazor-azure"]
|
|
806
|
+
},
|
|
807
|
+
{
|
|
808
|
+
"id": "azure-readme",
|
|
809
|
+
"name": "Infrastructure README",
|
|
810
|
+
"path": "infrastructure/azure/README.md",
|
|
811
|
+
"location": "framework",
|
|
812
|
+
"category": "infrastructure",
|
|
813
|
+
"phase": "implement",
|
|
814
|
+
"required": false,
|
|
815
|
+
"description": "Documentation for Azure infrastructure",
|
|
816
|
+
"outputName": "README.md",
|
|
817
|
+
"placeholders": [],
|
|
818
|
+
"stackSpecific": false,
|
|
819
|
+
"engine": "handlebars",
|
|
820
|
+
"deprecated": false,
|
|
821
|
+
"technology": "azure",
|
|
822
|
+
"applicableStacks": ["blazor-azure"]
|
|
823
|
+
},
|
|
824
|
+
{
|
|
825
|
+
"id": "docker-dockerfile-api",
|
|
826
|
+
"name": "Dockerfile (.NET API)",
|
|
827
|
+
"path": "infrastructure/docker/dockerfile-api.dockerfile",
|
|
828
|
+
"location": "framework",
|
|
829
|
+
"category": "infrastructure",
|
|
830
|
+
"phase": "implement",
|
|
831
|
+
"required": false,
|
|
832
|
+
"description": ".NET API Dockerfile for EasyPanel/Docker",
|
|
833
|
+
"outputName": "Dockerfile.api",
|
|
834
|
+
"placeholders": [],
|
|
835
|
+
"stackSpecific": false,
|
|
836
|
+
"engine": null,
|
|
837
|
+
"deprecated": false,
|
|
838
|
+
"technology": "docker",
|
|
839
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"id": "docker-dockerfile-web",
|
|
843
|
+
"name": "Dockerfile (Next.js Web)",
|
|
844
|
+
"path": "infrastructure/docker/dockerfile-web.dockerfile",
|
|
845
|
+
"location": "framework",
|
|
846
|
+
"category": "infrastructure",
|
|
847
|
+
"phase": "implement",
|
|
848
|
+
"required": false,
|
|
849
|
+
"description": "Next.js web Dockerfile for EasyPanel/Docker",
|
|
850
|
+
"outputName": "Dockerfile.web",
|
|
851
|
+
"placeholders": [],
|
|
852
|
+
"stackSpecific": false,
|
|
853
|
+
"engine": null,
|
|
854
|
+
"deprecated": false,
|
|
855
|
+
"technology": "docker",
|
|
856
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
857
|
+
},
|
|
858
|
+
{
|
|
859
|
+
"id": "docker-dockerfile-generic",
|
|
860
|
+
"name": "Dockerfile (Generic)",
|
|
861
|
+
"path": "infrastructure/docker/Dockerfile.template",
|
|
862
|
+
"location": "framework",
|
|
863
|
+
"category": "infrastructure",
|
|
864
|
+
"phase": "implement",
|
|
865
|
+
"required": false,
|
|
866
|
+
"description": "Generic multi-stage Dockerfile template",
|
|
867
|
+
"outputName": "Dockerfile",
|
|
868
|
+
"placeholders": ["PROJECT_NAME"],
|
|
869
|
+
"stackSpecific": false,
|
|
870
|
+
"engine": "handlebars",
|
|
871
|
+
"deprecated": false,
|
|
872
|
+
"technology": "docker",
|
|
873
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
874
|
+
},
|
|
875
|
+
{
|
|
876
|
+
"id": "docker-compose",
|
|
877
|
+
"name": "Docker Compose",
|
|
878
|
+
"path": "infrastructure/docker/docker-compose.template.yml",
|
|
879
|
+
"location": "framework",
|
|
880
|
+
"category": "infrastructure",
|
|
881
|
+
"phase": "implement",
|
|
882
|
+
"required": false,
|
|
883
|
+
"description": "Docker Compose for local development environment",
|
|
884
|
+
"outputName": "docker-compose.yml",
|
|
885
|
+
"placeholders": ["PROJECT_NAME"],
|
|
886
|
+
"stackSpecific": false,
|
|
887
|
+
"engine": "handlebars",
|
|
888
|
+
"deprecated": false,
|
|
889
|
+
"technology": "docker",
|
|
890
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
891
|
+
},
|
|
892
|
+
{
|
|
893
|
+
"id": "easypanel-config",
|
|
894
|
+
"name": "EasyPanel Configuration",
|
|
895
|
+
"path": "infrastructure/docker/easypanel.template.json",
|
|
896
|
+
"location": "framework",
|
|
897
|
+
"category": "infrastructure",
|
|
898
|
+
"phase": "implement",
|
|
899
|
+
"required": false,
|
|
900
|
+
"description": "EasyPanel deployment configuration",
|
|
901
|
+
"outputName": "easypanel.json",
|
|
902
|
+
"placeholders": ["PROJECT_NAME"],
|
|
903
|
+
"stackSpecific": false,
|
|
904
|
+
"engine": "handlebars",
|
|
905
|
+
"deprecated": false,
|
|
906
|
+
"technology": "docker",
|
|
907
|
+
"applicableStacks": ["nextjs-supabase"]
|
|
908
|
+
},
|
|
909
|
+
{
|
|
910
|
+
"id": "integration-asaas-client",
|
|
911
|
+
"name": "Asaas Financial Client",
|
|
912
|
+
"path": "integrations/asaas-client.cs",
|
|
913
|
+
"location": "framework",
|
|
914
|
+
"category": "integration",
|
|
915
|
+
"phase": "implement",
|
|
916
|
+
"required": false,
|
|
917
|
+
"description": "Asaas financial API client implementation",
|
|
918
|
+
"outputName": "AsaasClient.cs",
|
|
919
|
+
"placeholders": ["NAMESPACE"],
|
|
920
|
+
"stackSpecific": false,
|
|
921
|
+
"engine": "handlebars",
|
|
922
|
+
"deprecated": false,
|
|
923
|
+
"technology": "dotnet",
|
|
924
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
925
|
+
},
|
|
926
|
+
{
|
|
927
|
+
"id": "integration-asaas-webhook",
|
|
928
|
+
"name": "Asaas Webhook Handler",
|
|
929
|
+
"path": "integrations/asaas-webhook.cs",
|
|
930
|
+
"location": "framework",
|
|
931
|
+
"category": "integration",
|
|
932
|
+
"phase": "implement",
|
|
933
|
+
"required": false,
|
|
934
|
+
"description": "Asaas webhook handler for payment events",
|
|
935
|
+
"outputName": "AsaasWebhookHandler.cs",
|
|
936
|
+
"placeholders": ["NAMESPACE"],
|
|
937
|
+
"stackSpecific": false,
|
|
938
|
+
"engine": "handlebars",
|
|
939
|
+
"deprecated": false,
|
|
940
|
+
"technology": "dotnet",
|
|
941
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
942
|
+
},
|
|
943
|
+
{
|
|
944
|
+
"id": "integration-azure-identity",
|
|
945
|
+
"name": "Azure Identity Configuration",
|
|
946
|
+
"path": "integrations/azure-identity-config.cs",
|
|
947
|
+
"location": "framework",
|
|
948
|
+
"category": "integration",
|
|
949
|
+
"phase": "implement",
|
|
950
|
+
"required": false,
|
|
951
|
+
"description": "Azure AD/Entra ID authentication configuration",
|
|
952
|
+
"outputName": "AzureIdentityConfig.cs",
|
|
953
|
+
"placeholders": ["NAMESPACE"],
|
|
954
|
+
"stackSpecific": false,
|
|
955
|
+
"engine": "handlebars",
|
|
956
|
+
"deprecated": false,
|
|
957
|
+
"technology": "dotnet",
|
|
958
|
+
"applicableStacks": ["blazor-azure"]
|
|
959
|
+
},
|
|
960
|
+
{
|
|
961
|
+
"id": "integration-clerk",
|
|
962
|
+
"name": "Clerk Authentication",
|
|
963
|
+
"path": "integrations/clerk-config.cs",
|
|
964
|
+
"location": "framework",
|
|
965
|
+
"category": "integration",
|
|
966
|
+
"phase": "implement",
|
|
967
|
+
"required": false,
|
|
968
|
+
"description": "Clerk authentication configuration",
|
|
969
|
+
"outputName": "ClerkConfig.cs",
|
|
970
|
+
"placeholders": ["NAMESPACE"],
|
|
971
|
+
"stackSpecific": false,
|
|
972
|
+
"engine": "handlebars",
|
|
973
|
+
"deprecated": false,
|
|
974
|
+
"technology": "dotnet",
|
|
975
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
976
|
+
},
|
|
977
|
+
{
|
|
978
|
+
"id": "ui-design-system-css",
|
|
979
|
+
"name": "Design System CSS",
|
|
980
|
+
"path": "ui/design-system.css",
|
|
981
|
+
"location": "framework",
|
|
982
|
+
"category": "ui",
|
|
983
|
+
"phase": "uiux",
|
|
984
|
+
"required": false,
|
|
985
|
+
"description": "CSS design tokens and variables (colors, spacing, typography)",
|
|
986
|
+
"outputName": "design-system.css",
|
|
987
|
+
"placeholders": ["PROJECT_NAME"],
|
|
988
|
+
"stackSpecific": false,
|
|
989
|
+
"engine": "handlebars",
|
|
990
|
+
"deprecated": false,
|
|
991
|
+
"technology": "css",
|
|
992
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
993
|
+
},
|
|
994
|
+
{
|
|
995
|
+
"id": "ui-fluent-theme",
|
|
996
|
+
"name": "Fluent Design Theme",
|
|
997
|
+
"path": "ui/FluentDesignTheme.cs",
|
|
998
|
+
"location": "framework",
|
|
999
|
+
"category": "ui",
|
|
1000
|
+
"phase": "uiux",
|
|
1001
|
+
"required": false,
|
|
1002
|
+
"description": "FluentUI Blazor theme configuration (auto-generated)",
|
|
1003
|
+
"outputName": "FluentDesignTheme.cs",
|
|
1004
|
+
"placeholders": ["NAMESPACE"],
|
|
1005
|
+
"stackSpecific": false,
|
|
1006
|
+
"engine": "handlebars",
|
|
1007
|
+
"deprecated": false,
|
|
1008
|
+
"autoGenerated": true,
|
|
1009
|
+
"technology": "dotnet",
|
|
1010
|
+
"applicableStacks": ["blazor-azure"]
|
|
1011
|
+
},
|
|
1012
|
+
{
|
|
1013
|
+
"id": "ui-mud-theme",
|
|
1014
|
+
"name": "MudBlazor Theme",
|
|
1015
|
+
"path": "ui/MudTheme.cs",
|
|
1016
|
+
"location": "framework",
|
|
1017
|
+
"category": "ui",
|
|
1018
|
+
"phase": "uiux",
|
|
1019
|
+
"required": false,
|
|
1020
|
+
"description": "MudBlazor theme configuration (auto-generated)",
|
|
1021
|
+
"outputName": "MudTheme.cs",
|
|
1022
|
+
"placeholders": ["NAMESPACE"],
|
|
1023
|
+
"stackSpecific": false,
|
|
1024
|
+
"engine": "handlebars",
|
|
1025
|
+
"deprecated": false,
|
|
1026
|
+
"autoGenerated": true,
|
|
1027
|
+
"technology": "dotnet",
|
|
1028
|
+
"applicableStacks": ["blazor-azure"]
|
|
1029
|
+
},
|
|
1030
|
+
{
|
|
1031
|
+
"id": "saas-subscription",
|
|
1032
|
+
"name": "Subscription Model",
|
|
1033
|
+
"path": "saas/subscription.cs",
|
|
1034
|
+
"location": "framework",
|
|
1035
|
+
"category": "saas",
|
|
1036
|
+
"phase": "implement",
|
|
1037
|
+
"required": false,
|
|
1038
|
+
"description": "Multi-tenant subscription model with billing",
|
|
1039
|
+
"outputName": "Subscription.cs",
|
|
1040
|
+
"placeholders": ["NAMESPACE"],
|
|
1041
|
+
"stackSpecific": false,
|
|
1042
|
+
"engine": "handlebars",
|
|
1043
|
+
"deprecated": false,
|
|
1044
|
+
"technology": "dotnet",
|
|
1045
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
1046
|
+
},
|
|
1047
|
+
{
|
|
1048
|
+
"id": "saas-tenant",
|
|
1049
|
+
"name": "Tenant Model",
|
|
1050
|
+
"path": "saas/tenant.cs",
|
|
1051
|
+
"location": "framework",
|
|
1052
|
+
"category": "saas",
|
|
1053
|
+
"phase": "implement",
|
|
1054
|
+
"required": false,
|
|
1055
|
+
"description": "Multi-tenant tenant model with isolation",
|
|
1056
|
+
"outputName": "Tenant.cs",
|
|
1057
|
+
"placeholders": ["NAMESPACE"],
|
|
1058
|
+
"stackSpecific": false,
|
|
1059
|
+
"engine": "handlebars",
|
|
1060
|
+
"deprecated": false,
|
|
1061
|
+
"technology": "dotnet",
|
|
1062
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
1063
|
+
},
|
|
1064
|
+
{
|
|
1065
|
+
"id": "story",
|
|
1066
|
+
"name": "User Stories",
|
|
1067
|
+
"path": "story.md",
|
|
1068
|
+
"location": "framework",
|
|
1069
|
+
"category": "documentation",
|
|
1070
|
+
"phase": "clarify",
|
|
1071
|
+
"required": false,
|
|
1072
|
+
"description": "[DEPRECATED] Use create-story.js command instead",
|
|
1073
|
+
"outputName": "story.md",
|
|
1074
|
+
"placeholders": ["FEATURE_NAME"],
|
|
1075
|
+
"stackSpecific": true,
|
|
1076
|
+
"stacks": ["blazor-azure"],
|
|
1077
|
+
"engine": "custom",
|
|
1078
|
+
"deprecated": true,
|
|
1079
|
+
"deprecationReason": "Replaced by src/commands/create-story.js CLI command",
|
|
1080
|
+
"technology": null
|
|
1081
|
+
},
|
|
1082
|
+
{
|
|
1083
|
+
"id": "simulation",
|
|
1084
|
+
"name": "User Simulation",
|
|
1085
|
+
"path": "simulation.md",
|
|
1086
|
+
"location": "framework",
|
|
1087
|
+
"category": "documentation",
|
|
1088
|
+
"phase": "clarify",
|
|
1089
|
+
"required": false,
|
|
1090
|
+
"description": "[DEPRECATED] Never used in practice",
|
|
1091
|
+
"outputName": "simulation.md",
|
|
1092
|
+
"placeholders": ["FEATURE_NAME"],
|
|
1093
|
+
"stackSpecific": true,
|
|
1094
|
+
"stacks": ["blazor-azure"],
|
|
1095
|
+
"engine": "custom",
|
|
1096
|
+
"deprecated": true,
|
|
1097
|
+
"deprecationReason": "Template was never used in actual workflows",
|
|
1098
|
+
"technology": null
|
|
1099
|
+
},
|
|
1100
|
+
{
|
|
1101
|
+
"id": "ui-mockups",
|
|
1102
|
+
"name": "UI Mockups",
|
|
1103
|
+
"path": "ui-mockups.md",
|
|
1104
|
+
"location": "framework",
|
|
1105
|
+
"category": "documentation",
|
|
1106
|
+
"phase": "uiux",
|
|
1107
|
+
"required": false,
|
|
1108
|
+
"description": "[DEPRECATED] Never used in practice",
|
|
1109
|
+
"outputName": "ui-mockups.md",
|
|
1110
|
+
"placeholders": ["FEATURE_NAME"],
|
|
1111
|
+
"stackSpecific": true,
|
|
1112
|
+
"stacks": ["blazor-azure"],
|
|
1113
|
+
"engine": "custom",
|
|
1114
|
+
"deprecated": true,
|
|
1115
|
+
"deprecationReason": "Template was never used in actual workflows",
|
|
1116
|
+
"technology": null
|
|
1117
|
+
},
|
|
1118
|
+
{
|
|
1119
|
+
"id": "ui-flows",
|
|
1120
|
+
"name": "UI Flows",
|
|
1121
|
+
"path": "ui-flows.md",
|
|
1122
|
+
"location": "framework",
|
|
1123
|
+
"category": "documentation",
|
|
1124
|
+
"phase": "uiux",
|
|
1125
|
+
"required": false,
|
|
1126
|
+
"description": "[DEPRECATED] Never used in practice",
|
|
1127
|
+
"outputName": "ui-flows.md",
|
|
1128
|
+
"placeholders": ["FEATURE_NAME"],
|
|
1129
|
+
"stackSpecific": true,
|
|
1130
|
+
"stacks": ["blazor-azure"],
|
|
1131
|
+
"engine": "custom",
|
|
1132
|
+
"deprecated": true,
|
|
1133
|
+
"deprecationReason": "Template was never used in actual workflows",
|
|
1134
|
+
"technology": null
|
|
1135
|
+
},
|
|
1136
|
+
{
|
|
1137
|
+
"id": "ui-components",
|
|
1138
|
+
"name": "UI Components",
|
|
1139
|
+
"path": "ui-components.md",
|
|
1140
|
+
"location": "framework",
|
|
1141
|
+
"category": "documentation",
|
|
1142
|
+
"phase": "uiux",
|
|
1143
|
+
"required": false,
|
|
1144
|
+
"description": "[DEPRECATED] design-system.css is sufficient",
|
|
1145
|
+
"outputName": "ui-components.md",
|
|
1146
|
+
"placeholders": ["FEATURE_NAME"],
|
|
1147
|
+
"stackSpecific": true,
|
|
1148
|
+
"stacks": ["blazor-azure"],
|
|
1149
|
+
"engine": "custom",
|
|
1150
|
+
"deprecated": true,
|
|
1151
|
+
"deprecationReason": "Replaced by ui/design-system.css template",
|
|
1152
|
+
"technology": null
|
|
1153
|
+
},
|
|
1154
|
+
{
|
|
1155
|
+
"id": "ui-design-system-doc",
|
|
1156
|
+
"name": "UI Design System Documentation",
|
|
1157
|
+
"path": "ui-design-system.md",
|
|
1158
|
+
"location": "framework",
|
|
1159
|
+
"category": "documentation",
|
|
1160
|
+
"phase": "uiux",
|
|
1161
|
+
"required": false,
|
|
1162
|
+
"description": "[DEPRECATED] Replaced by design-system-examples.md",
|
|
1163
|
+
"outputName": "ui-design-system.md",
|
|
1164
|
+
"placeholders": ["PROJECT_NAME"],
|
|
1165
|
+
"stackSpecific": true,
|
|
1166
|
+
"stacks": ["blazor-azure"],
|
|
1167
|
+
"engine": "custom",
|
|
1168
|
+
"deprecated": true,
|
|
1169
|
+
"deprecationReason": "Replaced by examples/design-system-examples.md",
|
|
1170
|
+
"technology": null
|
|
1171
|
+
},
|
|
1172
|
+
{
|
|
1173
|
+
"id": "clarify-questions",
|
|
1174
|
+
"name": "Clarification Questions",
|
|
1175
|
+
"path": "clarify-questions.md",
|
|
1176
|
+
"location": "framework",
|
|
1177
|
+
"category": "documentation",
|
|
1178
|
+
"phase": "clarify",
|
|
1179
|
+
"required": false,
|
|
1180
|
+
"description": "[DEPRECATED] Use AskUserQuestion tool instead",
|
|
1181
|
+
"outputName": "clarify-questions.md",
|
|
1182
|
+
"placeholders": ["FEATURE_NAME"],
|
|
1183
|
+
"stackSpecific": true,
|
|
1184
|
+
"stacks": ["blazor-azure"],
|
|
1185
|
+
"engine": "custom",
|
|
1186
|
+
"deprecated": true,
|
|
1187
|
+
"deprecationReason": "Replaced by AskUserQuestion tool in Claude Code",
|
|
1188
|
+
"technology": null
|
|
1189
|
+
},
|
|
1190
|
+
{
|
|
1191
|
+
"id": "sprint-status",
|
|
1192
|
+
"name": "Sprint Status",
|
|
1193
|
+
"path": "sprint-status.yaml",
|
|
1194
|
+
"location": "framework",
|
|
1195
|
+
"category": "documentation",
|
|
1196
|
+
"phase": "implement",
|
|
1197
|
+
"required": false,
|
|
1198
|
+
"description": "[DEPRECATED] Generated by CLI, not a template",
|
|
1199
|
+
"outputName": "sprint-status.yaml",
|
|
1200
|
+
"placeholders": ["DATE"],
|
|
1201
|
+
"stackSpecific": true,
|
|
1202
|
+
"stacks": ["blazor-azure"],
|
|
1203
|
+
"engine": "custom",
|
|
1204
|
+
"deprecated": true,
|
|
1205
|
+
"deprecationReason": "Generated by create-story.js command, not a user template",
|
|
1206
|
+
"technology": null
|
|
1207
|
+
},
|
|
1208
|
+
{
|
|
1209
|
+
"id": "state-template",
|
|
1210
|
+
"name": "State Template",
|
|
1211
|
+
"path": "state.template.json",
|
|
1212
|
+
"location": "framework",
|
|
1213
|
+
"category": "code",
|
|
1214
|
+
"phase": "setup",
|
|
1215
|
+
"required": false,
|
|
1216
|
+
"description": "[DEPRECATED] Not a user template",
|
|
1217
|
+
"outputName": "state.json",
|
|
1218
|
+
"placeholders": [],
|
|
1219
|
+
"stackSpecific": true,
|
|
1220
|
+
"stacks": ["blazor-azure"],
|
|
1221
|
+
"engine": "custom",
|
|
1222
|
+
"deprecated": true,
|
|
1223
|
+
"deprecationReason": "Internal state file, not a user-facing template",
|
|
1224
|
+
"technology": null
|
|
1225
|
+
},
|
|
1226
|
+
{
|
|
1227
|
+
"id": "github-workflow-dotnet-build",
|
|
1228
|
+
"name": "GitHub Actions - .NET Build Workflow",
|
|
1229
|
+
"path": "infrastructure/github/workflows/dotnet-build.yml.hbs",
|
|
1230
|
+
"location": "framework",
|
|
1231
|
+
"category": "infrastructure",
|
|
1232
|
+
"technology": "github-actions",
|
|
1233
|
+
"phase": "build",
|
|
1234
|
+
"required": false,
|
|
1235
|
+
"description": "Reusable workflow for building .NET applications with restore, build, test, coverage",
|
|
1236
|
+
"outputName": "dotnet-build.yml",
|
|
1237
|
+
"placeholders": ["DOTNET_VERSION"],
|
|
1238
|
+
"stackSpecific": false,
|
|
1239
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"],
|
|
1240
|
+
"engine": "handlebars",
|
|
1241
|
+
"deprecated": false,
|
|
1242
|
+
"isFragment": true
|
|
1243
|
+
},
|
|
1244
|
+
{
|
|
1245
|
+
"id": "github-workflow-docker-build-push",
|
|
1246
|
+
"name": "GitHub Actions - Docker Build & Push",
|
|
1247
|
+
"path": "infrastructure/github/workflows/docker-build-push.yml.hbs",
|
|
1248
|
+
"location": "framework",
|
|
1249
|
+
"category": "infrastructure",
|
|
1250
|
+
"technology": "github-actions",
|
|
1251
|
+
"phase": "build",
|
|
1252
|
+
"required": false,
|
|
1253
|
+
"description": "Reusable workflow for building and pushing Docker images to registry",
|
|
1254
|
+
"outputName": "docker-build-push.yml",
|
|
1255
|
+
"placeholders": [],
|
|
1256
|
+
"stackSpecific": false,
|
|
1257
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"],
|
|
1258
|
+
"engine": "handlebars",
|
|
1259
|
+
"deprecated": false,
|
|
1260
|
+
"isFragment": true
|
|
1261
|
+
},
|
|
1262
|
+
{
|
|
1263
|
+
"id": "github-workflow-deploy-azure-app-service",
|
|
1264
|
+
"name": "GitHub Actions - Deploy to Azure App Service",
|
|
1265
|
+
"path": "infrastructure/github/workflows/deploy-azure-app-service.yml.hbs",
|
|
1266
|
+
"location": "framework",
|
|
1267
|
+
"category": "infrastructure",
|
|
1268
|
+
"technology": "github-actions",
|
|
1269
|
+
"phase": "deploy",
|
|
1270
|
+
"required": false,
|
|
1271
|
+
"description": "Reusable workflow for deploying .NET applications to Azure App Service with Bicep infrastructure",
|
|
1272
|
+
"outputName": "deploy-azure-app-service.yml",
|
|
1273
|
+
"placeholders": ["DOTNET_VERSION"],
|
|
1274
|
+
"stackSpecific": false,
|
|
1275
|
+
"applicableStacks": ["blazor-azure"],
|
|
1276
|
+
"engine": "handlebars",
|
|
1277
|
+
"deprecated": false,
|
|
1278
|
+
"isFragment": true
|
|
1279
|
+
},
|
|
1280
|
+
{
|
|
1281
|
+
"id": "github-workflow-deploy-easypanel",
|
|
1282
|
+
"name": "GitHub Actions - Deploy to EasyPanel",
|
|
1283
|
+
"path": "infrastructure/github/workflows/deploy-easypanel.yml.hbs",
|
|
1284
|
+
"location": "framework",
|
|
1285
|
+
"category": "infrastructure",
|
|
1286
|
+
"technology": "github-actions",
|
|
1287
|
+
"phase": "deploy",
|
|
1288
|
+
"required": false,
|
|
1289
|
+
"description": "Reusable workflow for deploying to EasyPanel via webhook",
|
|
1290
|
+
"outputName": "deploy-easypanel.yml",
|
|
1291
|
+
"placeholders": [],
|
|
1292
|
+
"stackSpecific": false,
|
|
1293
|
+
"applicableStacks": ["nextjs-supabase"],
|
|
1294
|
+
"engine": "handlebars",
|
|
1295
|
+
"deprecated": false,
|
|
1296
|
+
"isFragment": true
|
|
1297
|
+
},
|
|
1298
|
+
{
|
|
1299
|
+
"id": "github-action-docker-build-push",
|
|
1300
|
+
"name": "GitHub Composite Action - Docker Build & Push",
|
|
1301
|
+
"path": "infrastructure/github/actions/docker-build-push/action.yml.hbs",
|
|
1302
|
+
"location": "framework",
|
|
1303
|
+
"category": "infrastructure",
|
|
1304
|
+
"technology": "github-actions",
|
|
1305
|
+
"phase": "build",
|
|
1306
|
+
"required": false,
|
|
1307
|
+
"description": "Composite action for building and pushing Docker images",
|
|
1308
|
+
"outputName": "action.yml",
|
|
1309
|
+
"placeholders": [],
|
|
1310
|
+
"stackSpecific": false,
|
|
1311
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"],
|
|
1312
|
+
"engine": "handlebars",
|
|
1313
|
+
"deprecated": false,
|
|
1314
|
+
"isFragment": true
|
|
1315
|
+
},
|
|
1316
|
+
{
|
|
1317
|
+
"id": "github-action-health-check",
|
|
1318
|
+
"name": "GitHub Composite Action - Health Check",
|
|
1319
|
+
"path": "infrastructure/github/actions/health-check/action.yml.hbs",
|
|
1320
|
+
"location": "framework",
|
|
1321
|
+
"category": "infrastructure",
|
|
1322
|
+
"technology": "github-actions",
|
|
1323
|
+
"phase": "deploy",
|
|
1324
|
+
"required": false,
|
|
1325
|
+
"description": "Composite action for polling health endpoint until ready",
|
|
1326
|
+
"outputName": "action.yml",
|
|
1327
|
+
"placeholders": [],
|
|
1328
|
+
"stackSpecific": false,
|
|
1329
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"],
|
|
1330
|
+
"engine": "handlebars",
|
|
1331
|
+
"deprecated": false,
|
|
1332
|
+
"isFragment": true
|
|
1333
|
+
},
|
|
1334
|
+
{
|
|
1335
|
+
"id": "github-action-azure-auth",
|
|
1336
|
+
"name": "GitHub Composite Action - Azure OIDC Auth",
|
|
1337
|
+
"path": "infrastructure/github/actions/azure-auth/action.yml.hbs",
|
|
1338
|
+
"location": "framework",
|
|
1339
|
+
"category": "infrastructure",
|
|
1340
|
+
"technology": "github-actions",
|
|
1341
|
+
"phase": "deploy",
|
|
1342
|
+
"required": false,
|
|
1343
|
+
"description": "Composite action for Azure authentication using OIDC",
|
|
1344
|
+
"outputName": "action.yml",
|
|
1345
|
+
"placeholders": [],
|
|
1346
|
+
"stackSpecific": false,
|
|
1347
|
+
"applicableStacks": ["blazor-azure"],
|
|
1348
|
+
"engine": "handlebars",
|
|
1349
|
+
"deprecated": false,
|
|
1350
|
+
"isFragment": true
|
|
1351
|
+
},
|
|
1352
|
+
{
|
|
1353
|
+
"id": "blazor-azure-ci-build",
|
|
1354
|
+
"name": "Blazor-Azure CI Build Workflow",
|
|
1355
|
+
"path": "infrastructure/github/workflows/ci-build.yml.hbs",
|
|
1356
|
+
"location": "stack/blazor-azure",
|
|
1357
|
+
"category": "infrastructure",
|
|
1358
|
+
"technology": "github-actions",
|
|
1359
|
+
"phase": "build",
|
|
1360
|
+
"required": true,
|
|
1361
|
+
"description": "CI build workflow for Blazor-Azure stack with security checks",
|
|
1362
|
+
"outputName": "ci-build.yml",
|
|
1363
|
+
"placeholders": ["DOTNET_VERSION"],
|
|
1364
|
+
"stackSpecific": true,
|
|
1365
|
+
"applicableStacks": ["blazor-azure"],
|
|
1366
|
+
"engine": "handlebars",
|
|
1367
|
+
"deprecated": false
|
|
1368
|
+
},
|
|
1369
|
+
{
|
|
1370
|
+
"id": "blazor-azure-cd-staging",
|
|
1371
|
+
"name": "Blazor-Azure Staging Deployment",
|
|
1372
|
+
"path": "infrastructure/github/workflows/cd-staging.yml.hbs",
|
|
1373
|
+
"location": "stack/blazor-azure",
|
|
1374
|
+
"category": "infrastructure",
|
|
1375
|
+
"technology": "github-actions",
|
|
1376
|
+
"phase": "deploy",
|
|
1377
|
+
"required": true,
|
|
1378
|
+
"description": "Staging deployment workflow for Azure App Service",
|
|
1379
|
+
"outputName": "cd-staging.yml",
|
|
1380
|
+
"placeholders": ["APP_NAME", "DOTNET_VERSION"],
|
|
1381
|
+
"stackSpecific": true,
|
|
1382
|
+
"applicableStacks": ["blazor-azure"],
|
|
1383
|
+
"engine": "handlebars",
|
|
1384
|
+
"deprecated": false
|
|
1385
|
+
},
|
|
1386
|
+
{
|
|
1387
|
+
"id": "blazor-azure-cd-prod",
|
|
1388
|
+
"name": "Blazor-Azure Production Deployment",
|
|
1389
|
+
"path": "infrastructure/github/workflows/cd-prod.yml.hbs",
|
|
1390
|
+
"location": "stack/blazor-azure",
|
|
1391
|
+
"category": "infrastructure",
|
|
1392
|
+
"technology": "github-actions",
|
|
1393
|
+
"phase": "deploy",
|
|
1394
|
+
"required": true,
|
|
1395
|
+
"description": "Production deployment workflow for Azure App Service with security scanning",
|
|
1396
|
+
"outputName": "cd-prod.yml",
|
|
1397
|
+
"placeholders": ["APP_NAME", "DOTNET_VERSION"],
|
|
1398
|
+
"stackSpecific": true,
|
|
1399
|
+
"applicableStacks": ["blazor-azure"],
|
|
1400
|
+
"engine": "handlebars",
|
|
1401
|
+
"deprecated": false
|
|
1402
|
+
},
|
|
1403
|
+
{
|
|
1404
|
+
"id": "nextjs-supabase-ci-build",
|
|
1405
|
+
"name": "NextJS-Supabase CI Build Workflow",
|
|
1406
|
+
"path": "infrastructure/github/workflows/ci-build.yml.hbs",
|
|
1407
|
+
"location": "stack/nextjs-supabase",
|
|
1408
|
+
"category": "infrastructure",
|
|
1409
|
+
"technology": "github-actions",
|
|
1410
|
+
"phase": "build",
|
|
1411
|
+
"required": true,
|
|
1412
|
+
"description": "CI build workflow for NextJS-Supabase stack (Node.js + .NET combined)",
|
|
1413
|
+
"outputName": "ci-build.yml",
|
|
1414
|
+
"placeholders": ["DOTNET_VERSION"],
|
|
1415
|
+
"stackSpecific": true,
|
|
1416
|
+
"applicableStacks": ["nextjs-supabase"],
|
|
1417
|
+
"engine": "handlebars",
|
|
1418
|
+
"deprecated": false
|
|
1419
|
+
},
|
|
1420
|
+
{
|
|
1421
|
+
"id": "hop-squad-leader",
|
|
1422
|
+
"name": "Squad Leader HOP",
|
|
1423
|
+
"path": "meta-prompts/squad-leaders/squad-leader.md",
|
|
1424
|
+
"location": "framework",
|
|
1425
|
+
"category": "meta-prompts",
|
|
1426
|
+
"technology": "handlebars",
|
|
1427
|
+
"phase": "implement",
|
|
1428
|
+
"required": false,
|
|
1429
|
+
"description": "Generic squad leader higher-order prompt with mission, domain-leaders, standards, tasks, deliverables, constraints",
|
|
1430
|
+
"outputName": "squad-leader-prompt.md",
|
|
1431
|
+
"placeholders": ["AGENT_ID", "DOMAIN", "MISSION", "DOMAIN_LEADERS", "SPEC_SUMMARY", "STANDARDS", "TASKS", "DELIVERABLES", "CONSTRAINTS", "FEATURE_NAME"],
|
|
1432
|
+
"stackSpecific": false,
|
|
1433
|
+
"engine": "handlebars",
|
|
1434
|
+
"deprecated": false,
|
|
1435
|
+
"hopType": "squad-leader"
|
|
1436
|
+
},
|
|
1437
|
+
{
|
|
1438
|
+
"id": "hop-backend-squad",
|
|
1439
|
+
"name": "Backend Squad Leader HOP",
|
|
1440
|
+
"path": "meta-prompts/squad-leaders/backend-squad.md",
|
|
1441
|
+
"location": "framework",
|
|
1442
|
+
"category": "meta-prompts",
|
|
1443
|
+
"technology": "handlebars",
|
|
1444
|
+
"phase": "implement",
|
|
1445
|
+
"required": false,
|
|
1446
|
+
"description": "Backend squad leader HOP for dotnet-senior with backend domain leaders, .NET 10 standards, architecture and security guidelines",
|
|
1447
|
+
"outputName": "backend-squad-prompt.md",
|
|
1448
|
+
"placeholders": ["AGENT_ID", "MISSION", "SPEC_SUMMARY", "TASKS", "DELIVERABLES", "CONSTRAINTS", "FEATURE_NAME"],
|
|
1449
|
+
"stackSpecific": false,
|
|
1450
|
+
"engine": "handlebars",
|
|
1451
|
+
"deprecated": false,
|
|
1452
|
+
"hopType": "squad-leader",
|
|
1453
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
1454
|
+
},
|
|
1455
|
+
{
|
|
1456
|
+
"id": "hop-frontend-squad",
|
|
1457
|
+
"name": "Frontend Squad Leader HOP",
|
|
1458
|
+
"path": "meta-prompts/squad-leaders/frontend-squad.md",
|
|
1459
|
+
"location": "framework",
|
|
1460
|
+
"category": "meta-prompts",
|
|
1461
|
+
"technology": "handlebars",
|
|
1462
|
+
"phase": "implement",
|
|
1463
|
+
"required": false,
|
|
1464
|
+
"description": "Frontend squad leader HOP for ui-designer with Blazor or Next.js domain leaders and design system standards",
|
|
1465
|
+
"outputName": "frontend-squad-prompt.md",
|
|
1466
|
+
"placeholders": ["AGENT_ID", "DOMAIN", "MISSION", "SPEC_SUMMARY", "TASKS", "DELIVERABLES", "CONSTRAINTS", "FEATURE_NAME", "IS_BLAZOR", "IS_NEXTJS"],
|
|
1467
|
+
"stackSpecific": false,
|
|
1468
|
+
"engine": "handlebars",
|
|
1469
|
+
"deprecated": false,
|
|
1470
|
+
"hopType": "squad-leader",
|
|
1471
|
+
"applicableStacks": ["blazor-azure", "nextjs-supabase"]
|
|
1472
|
+
},
|
|
1473
|
+
{
|
|
1474
|
+
"id": "hop-parallel-worker",
|
|
1475
|
+
"name": "Parallel Worker HOP",
|
|
1476
|
+
"path": "meta-prompts/parallel-workers/parallel-worker.md",
|
|
1477
|
+
"location": "framework",
|
|
1478
|
+
"category": "meta-prompts",
|
|
1479
|
+
"technology": "handlebars",
|
|
1480
|
+
"phase": "implement",
|
|
1481
|
+
"required": false,
|
|
1482
|
+
"description": "P-Thread parallel worker HOP with isolation rules, assigned file scope, and structured completion report",
|
|
1483
|
+
"outputName": "parallel-worker-prompt.md",
|
|
1484
|
+
"placeholders": ["AGENT_ID", "THREAD_ID", "FEATURE_NAME", "MISSION", "SCOPE", "DELIVERABLES", "SPEC_SUMMARY", "STANDARDS", "TASKS"],
|
|
1485
|
+
"stackSpecific": false,
|
|
1486
|
+
"engine": "handlebars",
|
|
1487
|
+
"deprecated": false,
|
|
1488
|
+
"hopType": "parallel-worker"
|
|
1489
|
+
},
|
|
1490
|
+
{
|
|
1491
|
+
"id": "hop-parallel-coordinator",
|
|
1492
|
+
"name": "Parallel Coordinator HOP",
|
|
1493
|
+
"path": "meta-prompts/parallel-workers/parallel-coordinator.md",
|
|
1494
|
+
"location": "framework",
|
|
1495
|
+
"category": "meta-prompts",
|
|
1496
|
+
"technology": "handlebars",
|
|
1497
|
+
"phase": "implement",
|
|
1498
|
+
"required": false,
|
|
1499
|
+
"description": "P-Thread coordinator HOP for spawning, monitoring and merging parallel worker results",
|
|
1500
|
+
"outputName": "parallel-coordinator-prompt.md",
|
|
1501
|
+
"placeholders": ["AGENT_ID", "SESSION_ID", "FEATURE_NAME", "WORKER_COUNT", "WORKERS", "PARALLEL_STRATEGY", "MAX_CONCURRENT", "TIMEOUT_MINUTES", "MERGE_STRATEGY", "SPEC_SUMMARY", "PRE_SPAWN_TASKS", "POST_MERGE_TASKS", "CONSTRAINTS"],
|
|
1502
|
+
"stackSpecific": false,
|
|
1503
|
+
"engine": "handlebars",
|
|
1504
|
+
"deprecated": false,
|
|
1505
|
+
"hopType": "parallel-coordinator"
|
|
1506
|
+
},
|
|
1507
|
+
{
|
|
1508
|
+
"id": "hop-wrapper",
|
|
1509
|
+
"name": "HOP Wrapper",
|
|
1510
|
+
"path": "meta-prompts/hops/hop-wrapper.md",
|
|
1511
|
+
"location": "framework",
|
|
1512
|
+
"category": "meta-prompts",
|
|
1513
|
+
"technology": "handlebars",
|
|
1514
|
+
"phase": "implement",
|
|
1515
|
+
"required": false,
|
|
1516
|
+
"description": "Wraps any prompt with additional context, pre/post conditions, and HOP metadata injection",
|
|
1517
|
+
"outputName": "hop-wrapper-prompt.md",
|
|
1518
|
+
"placeholders": ["HOP_NAME", "INNER_PROMPT", "FEATURE_NAME", "PHASE", "AGENT_ID", "STANDARDS_OVERRIDE", "PRE_CONDITIONS", "POST_CONDITIONS", "HOP_VERSION", "DATE"],
|
|
1519
|
+
"stackSpecific": false,
|
|
1520
|
+
"engine": "handlebars",
|
|
1521
|
+
"deprecated": false,
|
|
1522
|
+
"hopType": "utility"
|
|
1523
|
+
},
|
|
1524
|
+
{
|
|
1525
|
+
"id": "hop-retry",
|
|
1526
|
+
"name": "HOP Retry",
|
|
1527
|
+
"path": "meta-prompts/hops/hop-retry.md",
|
|
1528
|
+
"location": "framework",
|
|
1529
|
+
"category": "meta-prompts",
|
|
1530
|
+
"technology": "handlebars",
|
|
1531
|
+
"phase": "implement",
|
|
1532
|
+
"required": false,
|
|
1533
|
+
"description": "Retry HOP with failure analysis, adjusted approach hints per attempt number (1=minor fix, 2=alternative, 3=escalation-ready)",
|
|
1534
|
+
"outputName": "hop-retry-prompt.md",
|
|
1535
|
+
"placeholders": ["FEATURE_NAME", "AGENT_ID", "RETRY_COUNT", "MAX_RETRIES", "TASK_ID", "FAILURE_DESCRIPTION", "ERROR_DETAILS", "PREVIOUS_ATTEMPTS", "ORIGINAL_TASK_DESCRIPTION", "CONSTRAINTS"],
|
|
1536
|
+
"stackSpecific": false,
|
|
1537
|
+
"engine": "handlebars",
|
|
1538
|
+
"deprecated": false,
|
|
1539
|
+
"hopType": "utility"
|
|
1540
|
+
},
|
|
1541
|
+
{
|
|
1542
|
+
"id": "hop-validation",
|
|
1543
|
+
"name": "HOP Validation",
|
|
1544
|
+
"path": "meta-prompts/hops/hop-validation.md",
|
|
1545
|
+
"location": "framework",
|
|
1546
|
+
"category": "meta-prompts",
|
|
1547
|
+
"technology": "handlebars",
|
|
1548
|
+
"phase": "implement",
|
|
1549
|
+
"required": false,
|
|
1550
|
+
"description": "Validation agent HOP with architecture, security, design-system, and packages checklists",
|
|
1551
|
+
"outputName": "hop-validation-prompt.md",
|
|
1552
|
+
"placeholders": ["VALIDATION_TYPE", "REVIEWED_AGENT", "FEATURE_NAME", "CHECKPOINT_NUM", "FILES_TO_REVIEW", "VALIDATION_CRITERIA", "IS_ARCHITECTURE", "IS_SECURITY", "IS_DESIGN_SYSTEM", "IS_PACKAGES"],
|
|
1553
|
+
"stackSpecific": false,
|
|
1554
|
+
"engine": "handlebars",
|
|
1555
|
+
"deprecated": false,
|
|
1556
|
+
"hopType": "validator"
|
|
1557
|
+
},
|
|
1558
|
+
{
|
|
1559
|
+
"id": "hop-checkpoint-validator",
|
|
1560
|
+
"name": "Checkpoint Validator HOP",
|
|
1561
|
+
"path": "meta-prompts/validators/checkpoint-validator.md",
|
|
1562
|
+
"location": "framework",
|
|
1563
|
+
"category": "meta-prompts",
|
|
1564
|
+
"technology": "handlebars",
|
|
1565
|
+
"phase": "implement",
|
|
1566
|
+
"required": false,
|
|
1567
|
+
"description": "Checkpoint validator HOP running architecture, security, design-system, and packages validators with pass/fail decision logic",
|
|
1568
|
+
"outputName": "checkpoint-validator-prompt.md",
|
|
1569
|
+
"placeholders": ["FEATURE_NAME", "CHECKPOINT_NUM", "CHECKPOINT_FREQUENCY", "TASKS_SINCE_LAST", "TASKS_COMPLETED", "TASKS_TOTAL", "RECENT_TASKS", "FILES_CHANGED", "HAS_UI_FILES", "HAS_CSPROJ_CHANGES"],
|
|
1570
|
+
"stackSpecific": false,
|
|
1571
|
+
"engine": "handlebars",
|
|
1572
|
+
"deprecated": false,
|
|
1573
|
+
"hopType": "validator"
|
|
1574
|
+
},
|
|
1575
|
+
{
|
|
1576
|
+
"id": "hop-pre-commit-validator",
|
|
1577
|
+
"name": "Pre-Commit Validator HOP",
|
|
1578
|
+
"path": "meta-prompts/validators/pre-commit-validator.md",
|
|
1579
|
+
"location": "framework",
|
|
1580
|
+
"category": "meta-prompts",
|
|
1581
|
+
"technology": "handlebars",
|
|
1582
|
+
"phase": "implement",
|
|
1583
|
+
"required": false,
|
|
1584
|
+
"description": "Pre-commit hook validator HOP checking conventional commits, secrets, agent spec validity, and stack-specific rules",
|
|
1585
|
+
"outputName": "pre-commit-validator-prompt.md",
|
|
1586
|
+
"placeholders": ["FEATURE_NAME", "BRANCH_NAME", "STAGED_FILE_COUNT", "STAGED_FILES", "IS_CSHARP", "IS_TYPESCRIPT"],
|
|
1587
|
+
"stackSpecific": false,
|
|
1588
|
+
"engine": "handlebars",
|
|
1589
|
+
"deprecated": false,
|
|
1590
|
+
"hopType": "validator"
|
|
1591
|
+
},
|
|
1592
|
+
{
|
|
1593
|
+
"id": "hop-fusion-agent",
|
|
1594
|
+
"name": "Fusion Agent HOP",
|
|
1595
|
+
"path": "meta-prompts/fusion/fusion-agent.md",
|
|
1596
|
+
"location": "framework",
|
|
1597
|
+
"category": "meta-prompts",
|
|
1598
|
+
"technology": "handlebars",
|
|
1599
|
+
"phase": "implement",
|
|
1600
|
+
"required": false,
|
|
1601
|
+
"description": "F-Thread fusion participant HOP with approach hints per thread index (standard, alternative, optimized) and self-assessment scoring",
|
|
1602
|
+
"outputName": "fusion-agent-prompt.md",
|
|
1603
|
+
"placeholders": ["AGENT_ID", "THREAD_INDEX", "THREAD_COUNT", "THREAD_COUNT_MINUS_ONE", "THREAD_ID", "FEATURE_NAME", "FUSION_STRATEGY", "TASK_DESCRIPTION", "SPEC_SUMMARY", "STANDARDS", "DELIVERABLES"],
|
|
1604
|
+
"stackSpecific": false,
|
|
1605
|
+
"engine": "handlebars",
|
|
1606
|
+
"deprecated": false,
|
|
1607
|
+
"hopType": "fusion"
|
|
1608
|
+
},
|
|
1609
|
+
{
|
|
1610
|
+
"id": "hop-fusion-aggregator",
|
|
1611
|
+
"name": "Fusion Aggregator HOP",
|
|
1612
|
+
"path": "meta-prompts/fusion/fusion-aggregator.md",
|
|
1613
|
+
"location": "framework",
|
|
1614
|
+
"category": "meta-prompts",
|
|
1615
|
+
"technology": "handlebars",
|
|
1616
|
+
"phase": "implement",
|
|
1617
|
+
"required": false,
|
|
1618
|
+
"description": "F-Thread aggregator HOP that scores and selects the winning implementation using best-of-n, consensus, or manual-select strategies",
|
|
1619
|
+
"outputName": "fusion-aggregator-prompt.md",
|
|
1620
|
+
"placeholders": ["SESSION_ID", "FEATURE_NAME", "THREAD_COUNT", "FUSION_STRATEGY", "FUSION_RESULTS"],
|
|
1621
|
+
"stackSpecific": false,
|
|
1622
|
+
"engine": "handlebars",
|
|
1623
|
+
"deprecated": false,
|
|
1624
|
+
"hopType": "fusion"
|
|
1625
|
+
}
|
|
1626
|
+
],
|
|
1627
|
+
"stats": {
|
|
1628
|
+
"total": 78,
|
|
1629
|
+
"framework": 69,
|
|
1630
|
+
"deprecated": 14,
|
|
1631
|
+
"byCategory": {
|
|
1632
|
+
"documentation": 5,
|
|
1633
|
+
"code": 25,
|
|
1634
|
+
"infrastructure": 23,
|
|
1635
|
+
"context": 2,
|
|
1636
|
+
"examples": 2,
|
|
1637
|
+
"integration": 4,
|
|
1638
|
+
"saas": 2,
|
|
1639
|
+
"ui": 3,
|
|
1640
|
+
"meta-prompts": 12
|
|
1641
|
+
},
|
|
1642
|
+
"byTechnology": {
|
|
1643
|
+
"dotnet": 26,
|
|
1644
|
+
"typescript": 1,
|
|
1645
|
+
"sql": 3,
|
|
1646
|
+
"bicep": 8,
|
|
1647
|
+
"azure": 10,
|
|
1648
|
+
"docker": 5,
|
|
1649
|
+
"handlebars": 19,
|
|
1650
|
+
"css": 1
|
|
1651
|
+
},
|
|
1652
|
+
"byPhase": {
|
|
1653
|
+
"setup": 2,
|
|
1654
|
+
"proposal": 1,
|
|
1655
|
+
"uiux": 3,
|
|
1656
|
+
"design": 10,
|
|
1657
|
+
"clarify": 0,
|
|
1658
|
+
"tasks": 1,
|
|
1659
|
+
"implement": 40,
|
|
1660
|
+
"completed": 1
|
|
1661
|
+
},
|
|
1662
|
+
"required": 5,
|
|
1663
|
+
"optional": 61,
|
|
1664
|
+
"applicableToMultipleStacks": 38
|
|
1665
|
+
},
|
|
1666
|
+
"migrationNotes": {
|
|
1667
|
+
"v1ToV2": {
|
|
1668
|
+
"breaking": true,
|
|
1669
|
+
"pathChanges": "All templates moved from stacks/{stack}/.morph/templates/ to framework/templates/ organized by technology",
|
|
1670
|
+
"organizationChange": "Stack-based → Technology-based (enables future stack reusability)",
|
|
1671
|
+
"deprecated": 9,
|
|
1672
|
+
"movedToFramework": 57,
|
|
1673
|
+
"newTechnologies": ["dotnet", "typescript", "sql", "bicep", "azure", "docker"],
|
|
1674
|
+
"actionRequired": "Delete stacks/{stack}/.morph/templates/ directories (Phase 6)"
|
|
1675
|
+
}
|
|
1676
|
+
}
|
|
1677
|
+
}
|