@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
|
@@ -1,235 +0,0 @@
|
|
|
1
|
-
# Meta-Prompts (HOPs) — MORPH-SPEC v3.0
|
|
2
|
-
|
|
3
|
-
Higher-Order Prompts (HOPs) are Handlebars-powered prompt templates that generate consistent, context-rich system prompts for agent spawning. Instead of writing prompts from scratch each time, HOPs inject standards, mission context, and role definitions automatically.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## HOP Categories
|
|
8
|
-
|
|
9
|
-
### 1. Squad Leaders (`squad-leaders/`)
|
|
10
|
-
|
|
11
|
-
Prompts for orchestrating domain squads. Use when spawning the head of a multi-agent squad.
|
|
12
|
-
|
|
13
|
-
| HOP ID | File | Use Case |
|
|
14
|
-
|--------|------|----------|
|
|
15
|
-
| `hop-backend-squad` | `backend-squad.md` | .NET backend squad with dotnet-senior as lead |
|
|
16
|
-
| `hop-frontend-squad` | `frontend-squad.md` | Blazor or Next.js frontend squad |
|
|
17
|
-
|
|
18
|
-
### 2. Parallel Workers (`parallel-workers/`)
|
|
19
|
-
|
|
20
|
-
Prompts for P-Thread agents working in isolation.
|
|
21
|
-
|
|
22
|
-
| HOP ID | File | Use Case |
|
|
23
|
-
|--------|------|----------|
|
|
24
|
-
| `hop-parallel-worker` | `parallel-worker.md` | Individual domain worker in a parallel squad |
|
|
25
|
-
| `hop-parallel-coordinator` | `parallel-coordinator.md` | Coordinator managing multiple parallel workers |
|
|
26
|
-
|
|
27
|
-
### 3. Generic HOPs (`hops/`)
|
|
28
|
-
|
|
29
|
-
General-purpose prompt wrappers.
|
|
30
|
-
|
|
31
|
-
| HOP ID | File | Use Case |
|
|
32
|
-
|--------|------|----------|
|
|
33
|
-
| `hop-wrapper` | `hop-wrapper.md` | Wrap any agent prompt with standard context injection |
|
|
34
|
-
| `hop-retry` | `hop-retry.md` | Retry a failed task with per-attempt strategy hints |
|
|
35
|
-
| `hop-validation` | `hop-validation.md` | Spawn a validation agent for specific validator types |
|
|
36
|
-
|
|
37
|
-
### 4. Validators (`validators/`)
|
|
38
|
-
|
|
39
|
-
Prompts for checkpoint and pre-commit validation agents.
|
|
40
|
-
|
|
41
|
-
| HOP ID | File | Use Case |
|
|
42
|
-
|--------|------|----------|
|
|
43
|
-
| `hop-checkpoint-validator` | `checkpoint-validator.md` | Run full checkpoint validation (architecture, security, etc.) |
|
|
44
|
-
| `hop-pre-commit-validator` | `pre-commit-validator.md` | Pre-commit hook validation agent |
|
|
45
|
-
|
|
46
|
-
### 5. Fusion (`fusion/`)
|
|
47
|
-
|
|
48
|
-
Prompts for F-Thread fusion workflows.
|
|
49
|
-
|
|
50
|
-
| HOP ID | File | Use Case |
|
|
51
|
-
|--------|------|----------|
|
|
52
|
-
| `hop-fusion-agent` | `fusion-agent.md` | One of N agents in a fusion run |
|
|
53
|
-
| `hop-fusion-aggregator` | `fusion-aggregator.md` | Aggregates N fusion results into the best output |
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## Rendering HOPs
|
|
58
|
-
|
|
59
|
-
### CLI
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
# List all available HOPs
|
|
63
|
-
morph-spec hop list
|
|
64
|
-
|
|
65
|
-
# Render a HOP to stdout
|
|
66
|
-
morph-spec hop render hop-backend-squad \
|
|
67
|
-
--variables '{"AGENT_ID":"dotnet-senior","MISSION":"Implement auth API","FEATURE_NAME":"user-auth"}'
|
|
68
|
-
|
|
69
|
-
# Render and save to file
|
|
70
|
-
morph-spec hop render hop-backend-squad output.md \
|
|
71
|
-
--variables '{"AGENT_ID":"dotnet-senior","MISSION":"Implement auth API"}'
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### Programmatic (Node.js)
|
|
75
|
-
|
|
76
|
-
```javascript
|
|
77
|
-
import { renderHOP, listAvailableHOPs } from './src/lib/hop-composer.js';
|
|
78
|
-
import { join } from 'path';
|
|
79
|
-
|
|
80
|
-
const frameworkRoot = join(process.cwd(), 'framework');
|
|
81
|
-
|
|
82
|
-
// List HOPs
|
|
83
|
-
const hops = listAvailableHOPs(frameworkRoot);
|
|
84
|
-
console.log(hops); // [{ id, type, file, description }, ...]
|
|
85
|
-
|
|
86
|
-
// Render a HOP
|
|
87
|
-
const prompt = renderHOP('hop-backend-squad', {
|
|
88
|
-
AGENT_ID: 'dotnet-senior',
|
|
89
|
-
MISSION: 'Implement user authentication',
|
|
90
|
-
FEATURE_NAME: 'user-auth',
|
|
91
|
-
SPEC_SUMMARY: 'JWT auth with BCrypt, Supabase JWT validation',
|
|
92
|
-
TASKS: '- T001: User entity\n- T002: AuthService\n- T003: AuthController',
|
|
93
|
-
DELIVERABLES: 'Entities/User.cs, Services/AuthService.cs, Controllers/AuthController.cs',
|
|
94
|
-
CONSTRAINTS: 'IDbContextFactory, no direct DbContext injection'
|
|
95
|
-
}, { frameworkRoot });
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
---
|
|
99
|
-
|
|
100
|
-
## Variable Reference
|
|
101
|
-
|
|
102
|
-
### Standard Variables (auto-injected)
|
|
103
|
-
|
|
104
|
-
| Variable | Source | Example |
|
|
105
|
-
|----------|--------|---------|
|
|
106
|
-
| `{{FEATURE_NAME}}` | CLI arg | `user-auth` |
|
|
107
|
-
| `{{DATE}}` | System | `2026-02-19` |
|
|
108
|
-
| `{{TIMESTAMP}}` | System | `2026-02-19T10:00:00Z` |
|
|
109
|
-
| `{{STACK}}` | config.json | `Blazor` |
|
|
110
|
-
|
|
111
|
-
### Squad Leader Variables
|
|
112
|
-
|
|
113
|
-
| Variable | Required | Description |
|
|
114
|
-
|----------|----------|-------------|
|
|
115
|
-
| `{{AGENT_ID}}` | Yes | Agent identifier (e.g., `dotnet-senior`) |
|
|
116
|
-
| `{{MISSION}}` | Yes | One-sentence mission statement |
|
|
117
|
-
| `{{SPEC_SUMMARY}}` | Yes | 2-5 sentence spec summary |
|
|
118
|
-
| `{{ADDITIONAL_LEADERS}}` | No | Domain leader list (markdown bullets) |
|
|
119
|
-
| `{{TASKS}}` | Yes | Task list (markdown bullets with IDs) |
|
|
120
|
-
| `{{DELIVERABLES}}` | Yes | Expected output files |
|
|
121
|
-
| `{{CONSTRAINTS}}` | No | Architecture constraints |
|
|
122
|
-
|
|
123
|
-
### Parallel Worker Variables
|
|
124
|
-
|
|
125
|
-
| Variable | Required | Description |
|
|
126
|
-
|----------|----------|-------------|
|
|
127
|
-
| `{{THREAD_ID}}` | Yes | Unique thread identifier |
|
|
128
|
-
| `{{DOMAIN}}` | Yes | Domain name (backend, frontend, infra) |
|
|
129
|
-
| `{{ASSIGNED_FILES}}` | Yes | Files this worker owns |
|
|
130
|
-
| `{{SHARED_FILES}}` | No | Read-only shared context files |
|
|
131
|
-
| `{{TASKS}}` | Yes | Tasks assigned to this worker |
|
|
132
|
-
|
|
133
|
-
### Fusion Variables
|
|
134
|
-
|
|
135
|
-
| Variable | Required | Description |
|
|
136
|
-
|----------|----------|-------------|
|
|
137
|
-
| `{{FUSION_INDEX}}` | Yes | Agent number (1, 2, 3...) |
|
|
138
|
-
| `{{TOTAL_AGENTS}}` | Yes | Total agents in fusion run |
|
|
139
|
-
| `{{STRATEGY}}` | Yes | Aggregation strategy |
|
|
140
|
-
| `{{MISSION}}` | Yes | Shared mission for all agents |
|
|
141
|
-
|
|
142
|
-
### Retry Variables
|
|
143
|
-
|
|
144
|
-
| Variable | Required | Description |
|
|
145
|
-
|----------|----------|-------------|
|
|
146
|
-
| `{{ATTEMPT}}` | Yes | Current attempt number (1-3) |
|
|
147
|
-
| `{{MAX_ATTEMPTS}}` | Yes | Maximum retry count |
|
|
148
|
-
| `{{FAILURE_REASON}}` | Yes | Why the previous attempt failed |
|
|
149
|
-
| `{{ORIGINAL_TASK}}` | Yes | The task being retried |
|
|
150
|
-
|
|
151
|
-
---
|
|
152
|
-
|
|
153
|
-
## Handlebars Helpers
|
|
154
|
-
|
|
155
|
-
HOPs use Handlebars v2.0 helpers:
|
|
156
|
-
|
|
157
|
-
```handlebars
|
|
158
|
-
{{pascalCase FEATURE_NAME}} → UserAuth
|
|
159
|
-
{{camelCase FEATURE_NAME}} → userAuth
|
|
160
|
-
{{snakeCase FEATURE_NAME}} → user_auth
|
|
161
|
-
{{pluralize "entity"}} → entities
|
|
162
|
-
{{#if IS_BLAZOR}}...{{/if}} → Conditional blocks
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
Conditionals available in squad leader HOPs:
|
|
166
|
-
- `{{#if IS_BLAZOR}}` — Blazor-specific content
|
|
167
|
-
- `{{#if IS_NEXTJS}}` — Next.js-specific content
|
|
168
|
-
- `{{#if HAS_BACKEND}}` — Backend domain present
|
|
169
|
-
- `{{#if HAS_INFRA}}` — Infrastructure domain present
|
|
170
|
-
|
|
171
|
-
---
|
|
172
|
-
|
|
173
|
-
## HOP Composition Example
|
|
174
|
-
|
|
175
|
-
Combining HOPs for a full parallel execution:
|
|
176
|
-
|
|
177
|
-
```javascript
|
|
178
|
-
// 1. Render coordinator prompt
|
|
179
|
-
const coordinatorPrompt = renderHOP('hop-parallel-coordinator', {
|
|
180
|
-
FEATURE_NAME: 'user-auth',
|
|
181
|
-
SQUADS: 'backend, frontend',
|
|
182
|
-
TOTAL_THREADS: '2'
|
|
183
|
-
}, { frameworkRoot });
|
|
184
|
-
|
|
185
|
-
// 2. Render worker prompts per domain
|
|
186
|
-
const backendPrompt = renderHOP('hop-parallel-worker', {
|
|
187
|
-
THREAD_ID: 'thr_backend_001',
|
|
188
|
-
DOMAIN: 'backend',
|
|
189
|
-
ASSIGNED_FILES: 'Services/UserService.cs\nControllers/AuthController.cs',
|
|
190
|
-
TASKS: '- T001: UserService\n- T002: AuthController'
|
|
191
|
-
}, { frameworkRoot });
|
|
192
|
-
|
|
193
|
-
const frontendPrompt = renderHOP('hop-parallel-worker', {
|
|
194
|
-
THREAD_ID: 'thr_frontend_001',
|
|
195
|
-
DOMAIN: 'frontend',
|
|
196
|
-
ASSIGNED_FILES: 'components/LoginForm.tsx\npages/login.tsx',
|
|
197
|
-
TASKS: '- T003: LoginForm\n- T004: Login page'
|
|
198
|
-
}, { frameworkRoot });
|
|
199
|
-
|
|
200
|
-
// 3. Spawn via Task tool
|
|
201
|
-
// Use backendPrompt and frontendPrompt as subagent prompts
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
---
|
|
205
|
-
|
|
206
|
-
## REGISTRY.json
|
|
207
|
-
|
|
208
|
-
All HOPs are registered in `framework/templates/meta-prompts/REGISTRY.json`:
|
|
209
|
-
|
|
210
|
-
```json
|
|
211
|
-
{
|
|
212
|
-
"hops": [
|
|
213
|
-
{
|
|
214
|
-
"id": "hop-backend-squad",
|
|
215
|
-
"type": "squad-leader",
|
|
216
|
-
"file": "squad-leaders/backend-squad.md",
|
|
217
|
-
"description": "Backend squad leader for .NET implementation",
|
|
218
|
-
"variables": ["AGENT_ID", "MISSION", "SPEC_SUMMARY", "TASKS", "DELIVERABLES"]
|
|
219
|
-
}
|
|
220
|
-
]
|
|
221
|
-
}
|
|
222
|
-
```
|
|
223
|
-
|
|
224
|
-
To add a custom HOP:
|
|
225
|
-
1. Create your `.md` file in the appropriate category folder
|
|
226
|
-
2. Add an entry to `REGISTRY.json`
|
|
227
|
-
3. Use `morph-spec hop list` to verify it appears
|
|
228
|
-
|
|
229
|
-
---
|
|
230
|
-
|
|
231
|
-
## Related
|
|
232
|
-
|
|
233
|
-
- [Thread Management](THREAD-MANAGEMENT.md) — How HOPs are used in thread spawning
|
|
234
|
-
- [Context Optimization](CONTEXT-OPTIMIZATION.md) — Token-efficient prompt design
|
|
235
|
-
- `src/lib/hop-composer.js` — Rendering engine source
|
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
# Migration Guide — MORPH-SPEC v2.x → v3.0
|
|
2
|
-
|
|
3
|
-
This guide covers migrating an existing MORPH-SPEC v2.x installation to v3.0.0.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## What Changes in v3.0
|
|
8
|
-
|
|
9
|
-
### state.json Schema (breaking)
|
|
10
|
-
|
|
11
|
-
v3.0 adds required fields to `state.json`:
|
|
12
|
-
|
|
13
|
-
| Field | Where | Description |
|
|
14
|
-
|-------|-------|-------------|
|
|
15
|
-
| `version` | root | Updated from `2.x.x` → `3.0.0` |
|
|
16
|
-
| `threads` | root | New `{}` object for thread tracking |
|
|
17
|
-
| `features.*.threadMetrics` | per-feature | Thread statistics object |
|
|
18
|
-
| `features.*.trustConfig` | per-feature | Trust level and override |
|
|
19
|
-
| `features.*.contextBundles` | per-feature | Array of context bundle references |
|
|
20
|
-
| `features.*.checkpoints` | per-feature | Array (if not already present) |
|
|
21
|
-
| `metadata.migratedAt` | metadata | Migration timestamp |
|
|
22
|
-
|
|
23
|
-
### agents.json (additive, non-breaking)
|
|
24
|
-
|
|
25
|
-
v3.0 adds 4 new agents. Existing agents are preserved unchanged:
|
|
26
|
-
- `vector-search-expert` — Azure AI Search + RAG
|
|
27
|
-
- `thread-orchestrator` — Parallel execution coordination
|
|
28
|
-
- `context-optimizer` — Token efficiency
|
|
29
|
-
- `observability-expert` — App Insights, Serilog, OpenTelemetry
|
|
30
|
-
|
|
31
|
-
### New CLI Commands
|
|
32
|
-
|
|
33
|
-
All new — no existing commands changed:
|
|
34
|
-
- `morph-spec threads [list|status|kill|analytics|wait-all|wait-any]`
|
|
35
|
-
- `morph-spec trust [status|set|history|auto-calculate|clear]`
|
|
36
|
-
- `morph-spec migrate [status|v2-to-v3|rollback-to-v2]`
|
|
37
|
-
- `morph-spec hop [list|render]`
|
|
38
|
-
- `morph-spec analytics [feature|context|project]`
|
|
39
|
-
- `morph-spec core-four`
|
|
40
|
-
- `morph-spec parallel [plan|run|status]`
|
|
41
|
-
- `morph-spec fusion [run|aggregate]`
|
|
42
|
-
- `morph-spec mcp [optimize|list]`
|
|
43
|
-
- `morph-spec micro-agent [create|list|show]`
|
|
44
|
-
- `morph-spec prime`
|
|
45
|
-
|
|
46
|
-
### New Framework Files
|
|
47
|
-
|
|
48
|
-
83 new files added across:
|
|
49
|
-
- `src/lib/` — 15 new library files
|
|
50
|
-
- `src/commands/` — 11 new command files
|
|
51
|
-
- `src/migrations/` — 2 migration scripts
|
|
52
|
-
- `framework/templates/meta-prompts/` — 12 HOP templates
|
|
53
|
-
- `framework/standards/` — 23 new standards files
|
|
54
|
-
- `framework/workflows/configs/zero-touch.json`
|
|
55
|
-
- `test/integration/` — 4 integration test suites
|
|
56
|
-
- `docs/next-generation/` — 6 documentation files
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
## Prerequisites
|
|
61
|
-
|
|
62
|
-
Before migrating:
|
|
63
|
-
|
|
64
|
-
- [ ] MORPH-SPEC CLI version ≥ 4.2.0 (`morph-spec --version`)
|
|
65
|
-
- [ ] Node.js ≥ 18 (`node --version`)
|
|
66
|
-
- [ ] Git working tree clean (`git status`)
|
|
67
|
-
- [ ] Current `.morph/state.json` is valid JSON
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
# Verify CLI version
|
|
71
|
-
morph-spec --version
|
|
72
|
-
# Should show: 4.2.0 or higher
|
|
73
|
-
|
|
74
|
-
# Check migration status before starting
|
|
75
|
-
morph-spec migrate status
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
## Step-by-Step Migration
|
|
81
|
-
|
|
82
|
-
### Step 1: Check current state
|
|
83
|
-
|
|
84
|
-
```bash
|
|
85
|
-
morph-spec migrate status
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
Expected output:
|
|
89
|
-
```
|
|
90
|
-
📊 Migration Status
|
|
91
|
-
|
|
92
|
-
state.json
|
|
93
|
-
Version: ⚠ Needs migration (current: v2.1.1)
|
|
94
|
-
Needs update: Yes
|
|
95
|
-
Has backup: No
|
|
96
|
-
|
|
97
|
-
agents.json files
|
|
98
|
-
⚠ .morph/config/agents.json
|
|
99
|
-
Missing: vector-search-expert, thread-orchestrator, context-optimizer, observability-expert
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
### Step 2: Run the migration
|
|
103
|
-
|
|
104
|
-
```bash
|
|
105
|
-
morph-spec migrate v2-to-v3
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
This will:
|
|
109
|
-
1. Backup `state.json` → `state.v2.backup.json`
|
|
110
|
-
2. Update `state.json` version to `3.0.0`
|
|
111
|
-
3. Add `threads: {}` to root
|
|
112
|
-
4. Add `threadMetrics`, `trustConfig`, `contextBundles` to each feature
|
|
113
|
-
5. Add 4 new agents to each `agents.json` file found
|
|
114
|
-
|
|
115
|
-
Expected output:
|
|
116
|
-
```
|
|
117
|
-
🚀 Migrating MORPH-SPEC v2 → v3.0
|
|
118
|
-
|
|
119
|
-
Step 1: Migrating state.json (2.1.1 → 3.0.0)
|
|
120
|
-
✓ Migration complete: v2.1.1 → 3.0.0
|
|
121
|
-
Backup: .morph/state.v2.backup.json
|
|
122
|
-
Changes:
|
|
123
|
-
• Version: 2.1.1 → 3.0.0
|
|
124
|
-
• Added: threads: {}
|
|
125
|
-
• Feature "user-auth": added threadMetrics, trustConfig, contextBundles, checkpoints
|
|
126
|
-
• Updated metadata.lastUpdated and migratedAt
|
|
127
|
-
|
|
128
|
-
Step 2: Updating agents.json files
|
|
129
|
-
✓ .morph/config/agents.json: added vector-search-expert, thread-orchestrator, context-optimizer, observability-expert
|
|
130
|
-
– stacks/blazor-azure/.morph/config/agents.json: already up to date
|
|
131
|
-
|
|
132
|
-
✅ Migration complete! MORPH-SPEC is now on v3.0.0
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
### Step 3: Verify migration
|
|
136
|
-
|
|
137
|
-
```bash
|
|
138
|
-
morph-spec doctor --v3
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
All checks should pass:
|
|
142
|
-
```
|
|
143
|
-
✅ 8/8 — All v3.0 checks passed!
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
### Step 4: Commit the migration
|
|
147
|
-
|
|
148
|
-
```bash
|
|
149
|
-
git add .morph/state.json .morph/config/agents.json
|
|
150
|
-
git commit -m "chore(migration): upgrade MORPH-SPEC state to v3.0.0"
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
|
|
155
|
-
## Rollback
|
|
156
|
-
|
|
157
|
-
If the migration causes issues, restore the v2 backup:
|
|
158
|
-
|
|
159
|
-
```bash
|
|
160
|
-
morph-spec migrate rollback-to-v2 --force
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
This restores `state.v2.backup.json` → `state.json`.
|
|
164
|
-
|
|
165
|
-
**Note:** `agents.json` changes are NOT rolled back (additive only, safe to keep).
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
## Manual Migration (Fallback)
|
|
170
|
-
|
|
171
|
-
If the automated migration fails, update `state.json` manually:
|
|
172
|
-
|
|
173
|
-
```json
|
|
174
|
-
{
|
|
175
|
-
"version": "3.0.0",
|
|
176
|
-
"threads": {},
|
|
177
|
-
"features": {
|
|
178
|
-
"your-feature": {
|
|
179
|
-
"threadMetrics": {
|
|
180
|
-
"totalThreads": 0,
|
|
181
|
-
"completedThreads": 0,
|
|
182
|
-
"failedThreads": 0,
|
|
183
|
-
"parallelBatches": 0
|
|
184
|
-
},
|
|
185
|
-
"trustConfig": {
|
|
186
|
-
"level": "low",
|
|
187
|
-
"passRate": 0,
|
|
188
|
-
"lastCalculated": "2026-02-19T10:00:00.000Z"
|
|
189
|
-
},
|
|
190
|
-
"contextBundles": [],
|
|
191
|
-
"checkpoints": []
|
|
192
|
-
}
|
|
193
|
-
},
|
|
194
|
-
"metadata": {
|
|
195
|
-
"migratedAt": "2026-02-19T10:00:00.000Z",
|
|
196
|
-
"migratedFrom": "2.1.1"
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
---
|
|
202
|
-
|
|
203
|
-
## Post-Migration: Enable v3.0 Features
|
|
204
|
-
|
|
205
|
-
After migration, v3.0 features are available immediately:
|
|
206
|
-
|
|
207
|
-
```bash
|
|
208
|
-
# Check trust level (starts at "low")
|
|
209
|
-
morph-spec trust status
|
|
210
|
-
|
|
211
|
-
# View thread management
|
|
212
|
-
morph-spec threads list
|
|
213
|
-
|
|
214
|
-
# Try context priming
|
|
215
|
-
morph-spec prime feature
|
|
216
|
-
|
|
217
|
-
# Explore HOPs
|
|
218
|
-
morph-spec hop list
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
**Trust level** starts at `low` until checkpoints accumulate. To reach `maximum` trust (required for zero-touch), complete 10+ checkpoints with >95% pass rate.
|
|
222
|
-
|
|
223
|
-
---
|
|
224
|
-
|
|
225
|
-
## Troubleshooting
|
|
226
|
-
|
|
227
|
-
### "state.json not found"
|
|
228
|
-
|
|
229
|
-
Run `morph-spec state init` first to create the initial state.
|
|
230
|
-
|
|
231
|
-
### "agents.json: Failed to parse"
|
|
232
|
-
|
|
233
|
-
Check for JSON syntax errors: `cat .morph/config/agents.json | node -e "JSON.parse(require('fs').readFileSync('/dev/stdin','utf8'))"`
|
|
234
|
-
|
|
235
|
-
### "migration fails with unknown version"
|
|
236
|
-
|
|
237
|
-
The migration handles any version string that isn't `3.0.0`. If your version field is missing or corrupted, set it manually to `2.1.1` before running migration.
|
|
238
|
-
|
|
239
|
-
### Rollback backup missing
|
|
240
|
-
|
|
241
|
-
If `state.v2.backup.json` is gone but you need v2:
|
|
242
|
-
- Restore from git: `git show HEAD:.morph/state.json > .morph/state.json`
|
|
243
|
-
- Or re-run migration (it's idempotent for already-migrated files)
|
|
244
|
-
|
|
245
|
-
---
|
|
246
|
-
|
|
247
|
-
## Related
|
|
248
|
-
|
|
249
|
-
- [Thread Management](THREAD-MANAGEMENT.md) — New thread features in v3.0
|
|
250
|
-
- [Context Optimization](CONTEXT-OPTIMIZATION.md) — Using new context tools
|
|
251
|
-
- [Meta-Prompts](META-PROMPTS.md) — HOP system overview
|
|
252
|
-
- `src/migrations/v2-to-v3.js` — Migration script source
|
|
253
|
-
- `src/migrations/agents-update.js` — Agents update script source
|