@atlashub/smartstack-cli 3.39.0 → 3.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.documentation/apex.html +644 -644
- package/.documentation/css/styles.css +2320 -2320
- package/.documentation/init.html +1377 -1377
- package/.documentation/js/app.js +780 -780
- package/.documentation/prd-json-v2.0.0.md +396 -396
- package/.documentation/testing-ba-e2e.md +462 -462
- package/config/default-config.json +95 -95
- package/config/mcp-defaults.json +62 -62
- package/config/settings.json +53 -53
- package/config/settings.local.example.json +16 -16
- package/dist/index.js.map +1 -1
- package/dist/mcp-entry.mjs +6 -4
- package/dist/mcp-entry.mjs.map +1 -1
- package/package.json +115 -115
- package/scripts/extract-api-endpoints.ts +325 -325
- package/scripts/extract-business-rules.ts +440 -440
- package/scripts/generate-doc-with-mock-ui.ts +804 -804
- package/scripts/health-check.sh +168 -168
- package/scripts/postinstall.js +18 -18
- package/templates/agents/action.md +37 -37
- package/templates/agents/ba-reader.md +378 -378
- package/templates/agents/ba-writer.md +861 -861
- package/templates/agents/code-reviewer.md +163 -163
- package/templates/agents/db-reader.md +149 -149
- package/templates/agents/docs-context-reader.md +143 -143
- package/templates/agents/docs-sync-checker.md +122 -122
- package/templates/agents/efcore/conflicts.md +84 -84
- package/templates/agents/efcore/db-deploy.md +74 -74
- package/templates/agents/efcore/db-reset.md +85 -85
- package/templates/agents/efcore/db-seed.md +61 -61
- package/templates/agents/efcore/db-status.md +86 -86
- package/templates/agents/efcore/migration.md +186 -186
- package/templates/agents/efcore/rebase-snapshot.md +108 -108
- package/templates/agents/efcore/scan.md +92 -92
- package/templates/agents/efcore/squash.md +161 -161
- package/templates/agents/explore-codebase.md +66 -66
- package/templates/agents/explore-docs.md +98 -98
- package/templates/agents/fix-grammar.md +50 -50
- package/templates/agents/gitflow/abort.md +45 -45
- package/templates/agents/gitflow/cleanup.md +96 -96
- package/templates/agents/gitflow/commit.md +236 -236
- package/templates/agents/gitflow/exec.md +48 -48
- package/templates/agents/gitflow/finish.md +146 -146
- package/templates/agents/gitflow/init-clone.md +199 -199
- package/templates/agents/gitflow/init-detect.md +137 -137
- package/templates/agents/gitflow/init-validate.md +225 -225
- package/templates/agents/gitflow/init.md +340 -340
- package/templates/agents/gitflow/merge.md +145 -145
- package/templates/agents/gitflow/plan.md +42 -42
- package/templates/agents/gitflow/pr.md +191 -191
- package/templates/agents/gitflow/review.md +49 -49
- package/templates/agents/gitflow/start.md +147 -147
- package/templates/agents/gitflow/status.md +95 -95
- package/templates/agents/mcp-healthcheck.md +163 -163
- package/templates/agents/snipper.md +37 -37
- package/templates/agents/websearch.md +46 -46
- package/templates/hooks/appsettings-guard.sh +76 -76
- package/templates/hooks/docs-drift-check.md +96 -96
- package/templates/hooks/ef-migration-check.md +139 -139
- package/templates/hooks/hooks.json +58 -58
- package/templates/hooks/mcp-check.md +64 -64
- package/templates/hooks/ralph-mcp-logger.sh +46 -46
- package/templates/hooks/ralph-session-end.sh +69 -69
- package/templates/hooks/stop-hook.sh +177 -177
- package/templates/hooks/wsl-dotnet-cleanup.sh +24 -24
- package/templates/mcp-scaffolding/component.tsx.hbs +318 -318
- package/templates/mcp-scaffolding/controller.cs.hbs +192 -192
- package/templates/mcp-scaffolding/entity-extension.cs.hbs +239 -239
- package/templates/mcp-scaffolding/frontend/api-client.ts.hbs +116 -116
- package/templates/mcp-scaffolding/frontend/nav-routes.ts.hbs +133 -133
- package/templates/mcp-scaffolding/frontend/routes.tsx.hbs +126 -126
- package/templates/mcp-scaffolding/migrations/seed-roles.cs.hbs +261 -261
- package/templates/mcp-scaffolding/service-extension.cs.hbs +53 -53
- package/templates/mcp-scaffolding/tests/controller.test.cs.hbs +436 -436
- package/templates/mcp-scaffolding/tests/entity.test.cs.hbs +239 -239
- package/templates/mcp-scaffolding/tests/repository.test.cs.hbs +441 -441
- package/templates/mcp-scaffolding/tests/security.test.cs.hbs +442 -442
- package/templates/mcp-scaffolding/tests/service.test.cs.hbs +402 -402
- package/templates/mcp-scaffolding/tests/validator.test.cs.hbs +428 -428
- package/templates/project/DependencyInjection.Application.cs.template +25 -25
- package/templates/project/DependencyInjection.Infrastructure.cs.template +61 -61
- package/templates/project/DesignTimeExtensionsDbContextFactory.cs.template +70 -70
- package/templates/project/ExampleEntity.cs.template +116 -116
- package/templates/project/ExampleEntityConfiguration.cs.template +64 -64
- package/templates/project/ExampleService.cs.template +146 -146
- package/templates/project/ExtensionsDbContext.cs.template +41 -41
- package/templates/project/IExtensionsDbContext.cs.template +22 -22
- package/templates/project/Program.cs.template +47 -47
- package/templates/project/README.md +79 -79
- package/templates/project/api.ts.template +12 -12
- package/templates/project/appsettings.json.template +170 -170
- package/templates/project/claude-settings.json.template +5 -5
- package/templates/project/test-frontend/msw/handlers.ts +58 -58
- package/templates/project/test-frontend/msw/server.ts +25 -25
- package/templates/project/test-frontend/setup.ts +16 -16
- package/templates/project/test-frontend/test-utils.tsx +59 -59
- package/templates/project/test-frontend/vitest.config.ts +31 -31
- package/templates/ralph/README.md +93 -93
- package/templates/ralph/ralph.config.yaml +113 -113
- package/templates/scripts/setup-ralph-loop.sh +173 -173
- package/templates/skills/_resources/config-safety.md +61 -61
- package/templates/skills/_resources/context-digest-template.md +53 -53
- package/templates/skills/_resources/doc-context-cache.md +60 -60
- package/templates/skills/_resources/docs-manifest-schema.md +155 -155
- package/templates/skills/_resources/formatting-guide.md +124 -124
- package/templates/skills/_resources/mcp-validate-documentation-spec.md +181 -181
- package/templates/skills/_shared.md +228 -228
- package/templates/skills/admin/SKILL.md +48 -48
- package/templates/skills/ai-prompt/SKILL.md +107 -107
- package/templates/skills/ai-prompt/steps/step-00-init.md +47 -47
- package/templates/skills/ai-prompt/steps/step-01-implementation.md +122 -122
- package/templates/skills/apex/SKILL.md +168 -168
- package/templates/skills/apex/_shared.md +141 -141
- package/templates/skills/apex/references/agent-teams-protocol.md +164 -164
- package/templates/skills/apex/references/analysis-methods.md +141 -141
- package/templates/skills/apex/references/challenge-questions.md +145 -145
- package/templates/skills/apex/references/code-generation.md +412 -412
- package/templates/skills/apex/references/core-seed-data.md +1437 -1437
- package/templates/skills/apex/references/error-classification.md +144 -144
- package/templates/skills/apex/references/examine-build-validation.md +82 -82
- package/templates/skills/apex/references/execution-frontend-gates.md +177 -177
- package/templates/skills/apex/references/execution-frontend-patterns.md +105 -105
- package/templates/skills/apex/references/execution-layer1-rules.md +96 -96
- package/templates/skills/apex/references/initialization-challenge-flow.md +110 -110
- package/templates/skills/apex/references/planning-layer-mapping.md +151 -151
- package/templates/skills/apex/references/post-checks.md +1584 -1584
- package/templates/skills/apex/references/smartstack-api.md +1053 -1053
- package/templates/skills/apex/references/smartstack-frontend.md +1571 -1571
- package/templates/skills/apex/references/smartstack-layers.md +402 -402
- package/templates/skills/apex/steps/step-00-init.md +307 -307
- package/templates/skills/apex/steps/step-01-analyze.md +165 -165
- package/templates/skills/apex/steps/step-02-plan.md +144 -144
- package/templates/skills/apex/steps/step-03-execute.md +328 -328
- package/templates/skills/apex/steps/step-04-examine.md +263 -263
- package/templates/skills/apex/steps/step-05-deep-review.md +129 -129
- package/templates/skills/apex/steps/step-06-resolve.md +101 -101
- package/templates/skills/apex/steps/step-07-tests.md +238 -238
- package/templates/skills/apex/steps/step-08-run-tests.md +125 -125
- package/templates/skills/application/SKILL.md +4 -4
- package/templates/skills/application/references/application-roles-template.md +227 -227
- package/templates/skills/application/references/backend-controller-hierarchy.md +58 -58
- package/templates/skills/application/references/backend-entity-seeding.md +72 -72
- package/templates/skills/application/references/backend-seeding-and-dto-output.md +83 -83
- package/templates/skills/application/references/backend-table-prefix-mapping.md +79 -79
- package/templates/skills/application/references/backend-verification.md +88 -88
- package/templates/skills/application/references/frontend-i18n-and-output.md +67 -67
- package/templates/skills/application/references/frontend-route-naming.md +117 -117
- package/templates/skills/application/references/frontend-route-wiring-app-tsx.md +107 -107
- package/templates/skills/application/references/frontend-verification.md +156 -156
- package/templates/skills/application/references/migration-checklist-troubleshooting.md +1 -1
- package/templates/skills/application/references/provider-template.md +177 -177
- package/templates/skills/application/references/roles-client-project-handling.md +55 -55
- package/templates/skills/application/references/roles-fallback-procedure.md +149 -149
- package/templates/skills/application/references/test-coverage-requirements.md +213 -213
- package/templates/skills/application/references/test-frontend.md +73 -73
- package/templates/skills/application/references/test-prerequisites.md +72 -72
- package/templates/skills/application/steps/step-05-frontend.md +176 -176
- package/templates/skills/application/steps/step-06-migration.md +193 -193
- package/templates/skills/application/steps/step-07-tests.md +356 -356
- package/templates/skills/application/steps/step-08-documentation.md +137 -137
- package/templates/skills/application/templates-backend.md +463 -463
- package/templates/skills/application/templates-frontend.md +685 -685
- package/templates/skills/application/templates-i18n.md +520 -520
- package/templates/skills/application/templates-seed.md +1096 -1096
- package/templates/skills/business-analyse/SKILL.md +327 -327
- package/templates/skills/business-analyse/_architecture.md +123 -123
- package/templates/skills/business-analyse/_elicitation.md +206 -206
- package/templates/skills/business-analyse/_module-loop.md +115 -115
- package/templates/skills/business-analyse/_shared.md +383 -383
- package/templates/skills/business-analyse/_suggestions.md +34 -34
- package/templates/skills/business-analyse/html/ba-interactive.html +4477 -4477
- package/templates/skills/business-analyse/html/build-html.js +77 -77
- package/templates/skills/business-analyse/html/src/scripts/01-data-init.js +150 -150
- package/templates/skills/business-analyse/html/src/scripts/02-navigation.js +227 -227
- package/templates/skills/business-analyse/html/src/scripts/03-render-cadrage.js +199 -199
- package/templates/skills/business-analyse/html/src/scripts/04-render-modules.js +205 -205
- package/templates/skills/business-analyse/html/src/scripts/05-render-specs.js +647 -647
- package/templates/skills/business-analyse/html/src/scripts/06-render-consolidation.js +195 -195
- package/templates/skills/business-analyse/html/src/scripts/07-render-handoff.js +92 -92
- package/templates/skills/business-analyse/html/src/scripts/08-editing.js +135 -135
- package/templates/skills/business-analyse/html/src/scripts/09-export.js +168 -168
- package/templates/skills/business-analyse/html/src/scripts/10-comments.js +171 -171
- package/templates/skills/business-analyse/html/src/scripts/11-review-panel.js +166 -166
- package/templates/skills/business-analyse/html/src/styles/01-variables.css +38 -38
- package/templates/skills/business-analyse/html/src/styles/02-layout.css +101 -101
- package/templates/skills/business-analyse/html/src/styles/03-navigation.css +120 -120
- package/templates/skills/business-analyse/html/src/styles/04-cards.css +196 -196
- package/templates/skills/business-analyse/html/src/styles/05-modules.css +454 -454
- package/templates/skills/business-analyse/html/src/styles/06-wireframes.css +272 -272
- package/templates/skills/business-analyse/html/src/styles/07-comments.css +184 -184
- package/templates/skills/business-analyse/html/src/styles/08-review-panel.css +241 -241
- package/templates/skills/business-analyse/html/src/template.html +516 -516
- package/templates/skills/business-analyse/patterns/suggestion-catalog.md +546 -546
- package/templates/skills/business-analyse/questionnaire/00-application.md +160 -160
- package/templates/skills/business-analyse/questionnaire/00b-project.md +85 -85
- package/templates/skills/business-analyse/questionnaire/01-context.md +185 -185
- package/templates/skills/business-analyse/questionnaire/02-stakeholders.md +189 -189
- package/templates/skills/business-analyse/questionnaire/03-scope.md +164 -164
- package/templates/skills/business-analyse/questionnaire/04-data.md +88 -88
- package/templates/skills/business-analyse/questionnaire/05-integrations.md +58 -58
- package/templates/skills/business-analyse/questionnaire/06-security.md +68 -68
- package/templates/skills/business-analyse/questionnaire/07-ui.md +76 -76
- package/templates/skills/business-analyse/questionnaire/08-performance.md +42 -42
- package/templates/skills/business-analyse/questionnaire/09-constraints.md +45 -45
- package/templates/skills/business-analyse/questionnaire/10-documentation.md +43 -43
- package/templates/skills/business-analyse/questionnaire/11-data-lifecycle.md +59 -59
- package/templates/skills/business-analyse/questionnaire/12-migration.md +58 -58
- package/templates/skills/business-analyse/questionnaire/13-cross-module.md +69 -69
- package/templates/skills/business-analyse/questionnaire/14-risk-assumptions.md +135 -135
- package/templates/skills/business-analyse/questionnaire/15-success-metrics.md +136 -136
- package/templates/skills/business-analyse/questionnaire.md +337 -337
- package/templates/skills/business-analyse/react/application-viewer.md +242 -242
- package/templates/skills/business-analyse/react/components.md +551 -551
- package/templates/skills/business-analyse/react/i18n-template.md +306 -306
- package/templates/skills/business-analyse/references/acceptance-criteria.md +169 -169
- package/templates/skills/business-analyse/references/agent-module-prompt.md +362 -362
- package/templates/skills/business-analyse/references/agent-pooling-best-practices.md +557 -557
- package/templates/skills/business-analyse/references/analysis-semantic-checks.md +190 -190
- package/templates/skills/business-analyse/references/cache-warming-strategy.md +566 -566
- package/templates/skills/business-analyse/references/cadrage-challenge-patterns.md +41 -41
- package/templates/skills/business-analyse/references/cadrage-coverage-matrix.md +74 -74
- package/templates/skills/business-analyse/references/cadrage-pre-analysis.md +115 -115
- package/templates/skills/business-analyse/references/cadrage-shared-modules.md +68 -69
- package/templates/skills/business-analyse/references/cadrage-structure-cards.md +85 -85
- package/templates/skills/business-analyse/references/compilation-structure-cards.md +297 -297
- package/templates/skills/business-analyse/references/consolidation-structural-checks.md +107 -107
- package/templates/skills/business-analyse/references/deploy-data-build.md +180 -180
- package/templates/skills/business-analyse/references/deploy-modes.md +118 -118
- package/templates/skills/business-analyse/references/detection-strategies.md +424 -424
- package/templates/skills/business-analyse/references/entity-architecture-decision.md +218 -218
- package/templates/skills/business-analyse/references/handoff-file-templates.md +120 -120
- package/templates/skills/business-analyse/references/handoff-mappings.md +81 -81
- package/templates/skills/business-analyse/references/handoff-seeddata-generation.md +312 -312
- package/templates/skills/business-analyse/references/html-data-mapping.md +299 -299
- package/templates/skills/business-analyse/references/init-schema-deployment.md +65 -65
- package/templates/skills/business-analyse/references/naming-conventions.md +243 -243
- package/templates/skills/business-analyse/references/prd-generation.md +258 -258
- package/templates/skills/business-analyse/references/review-data-mapping.md +363 -363
- package/templates/skills/business-analyse/references/robustness-checks.md +542 -542
- package/templates/skills/business-analyse/references/spec-auto-inference.md +111 -111
- package/templates/skills/business-analyse/references/team-orchestration.md +1022 -1022
- package/templates/skills/business-analyse/references/ui-dashboard-spec.md +85 -85
- package/templates/skills/business-analyse/references/ui-resource-cards.md +259 -259
- package/templates/skills/business-analyse/references/validate-incremental-html.md +121 -121
- package/templates/skills/business-analyse/references/validation-checklist.md +347 -347
- package/templates/skills/business-analyse/references/wireframe-svg-style-guide.md +335 -335
- package/templates/skills/business-analyse/schemas/application-schema.json +453 -453
- package/templates/skills/business-analyse/schemas/feature-schema.json +53 -53
- package/templates/skills/business-analyse/schemas/project-schema.json +485 -485
- package/templates/skills/business-analyse/schemas/sections/analysis-schema.json +201 -201
- package/templates/skills/business-analyse/schemas/sections/discovery-schema.json +82 -82
- package/templates/skills/business-analyse/schemas/sections/handoff-schema.json +80 -80
- package/templates/skills/business-analyse/schemas/sections/metadata-schema.json +70 -70
- package/templates/skills/business-analyse/schemas/sections/specification-schema.json +547 -547
- package/templates/skills/business-analyse/schemas/sections/validation-schema.json +93 -93
- package/templates/skills/business-analyse/schemas/shared/common-defs.json +226 -226
- package/templates/skills/business-analyse/steps/step-00-init.md +575 -576
- package/templates/skills/business-analyse/steps/step-01-cadrage.md +767 -767
- package/templates/skills/business-analyse/steps/step-01b-applications.md +419 -419
- package/templates/skills/business-analyse/steps/step-02-decomposition.md +387 -387
- package/templates/skills/business-analyse/steps/step-03a-data.md +16 -16
- package/templates/skills/business-analyse/steps/step-03a1-setup.md +506 -506
- package/templates/skills/business-analyse/steps/step-03a2-analysis.md +252 -252
- package/templates/skills/business-analyse/steps/step-03b-ui.md +425 -425
- package/templates/skills/business-analyse/steps/step-03c-compile.md +611 -611
- package/templates/skills/business-analyse/steps/step-03d-validate.md +783 -783
- package/templates/skills/business-analyse/steps/step-04-consolidation.md +17 -17
- package/templates/skills/business-analyse/steps/step-04a-collect.md +415 -415
- package/templates/skills/business-analyse/steps/step-04b-analyze.md +163 -163
- package/templates/skills/business-analyse/steps/step-04c-decide.md +186 -186
- package/templates/skills/business-analyse/steps/step-05a-handoff.md +840 -840
- package/templates/skills/business-analyse/steps/step-05b-deploy.md +522 -522
- package/templates/skills/business-analyse/steps/step-05c-ralph-readiness.md +703 -703
- package/templates/skills/business-analyse/steps/step-06-review.md +278 -278
- package/templates/skills/business-analyse/templates/tpl-frd.md +168 -168
- package/templates/skills/business-analyse/templates/tpl-handoff.md +186 -186
- package/templates/skills/business-analyse/templates/tpl-launch-displays.md +59 -59
- package/templates/skills/business-analyse/templates/tpl-progress.md +172 -172
- package/templates/skills/business-analyse/templates-frd.md +476 -476
- package/templates/skills/business-analyse/templates-react.md +574 -574
- package/templates/skills/cc-agent/SKILL.md +129 -129
- package/templates/skills/cc-agent/references/agent-behavior-patterns.md +95 -95
- package/templates/skills/cc-agent/references/agent-frontmatter.md +213 -213
- package/templates/skills/cc-agent/references/permission-modes.md +102 -102
- package/templates/skills/cc-agent/references/tools-reference.md +144 -144
- package/templates/skills/cc-agent/steps/step-00-init.md +134 -134
- package/templates/skills/cc-agent/steps/step-01-design.md +186 -186
- package/templates/skills/cc-agent/steps/step-02-generate.md +131 -131
- package/templates/skills/cc-agent/steps/step-03-validate.md +130 -130
- package/templates/skills/cc-agent/templates/agent-categorized.md +67 -67
- package/templates/skills/cc-agent/templates/agent-standalone.md +56 -56
- package/templates/skills/cc-agent/templates/agent-with-skills.md +94 -94
- package/templates/skills/cc-audit/SKILL.md +108 -108
- package/templates/skills/cc-audit/references/agent-checklist.md +91 -91
- package/templates/skills/cc-audit/references/hook-checklist.md +110 -110
- package/templates/skills/cc-audit/references/skill-checklist.md +70 -70
- package/templates/skills/cc-audit/steps/step-00-init.md +98 -98
- package/templates/skills/cc-audit/steps/step-01-scan.md +142 -142
- package/templates/skills/cc-audit/steps/step-02-analyze.md +158 -158
- package/templates/skills/cc-audit/steps/step-03-report.md +142 -142
- package/templates/skills/cc-skill/SKILL.md +134 -134
- package/templates/skills/cc-skill/references/best-practices.md +167 -167
- package/templates/skills/cc-skill/references/frontmatter-reference.md +182 -182
- package/templates/skills/cc-skill/references/skill-patterns.md +199 -199
- package/templates/skills/cc-skill/steps/step-00-init.md +119 -119
- package/templates/skills/cc-skill/steps/step-01-design.md +199 -199
- package/templates/skills/cc-skill/steps/step-02-generate.md +145 -145
- package/templates/skills/cc-skill/steps/step-03-steps.md +151 -151
- package/templates/skills/cc-skill/steps/step-04-validate.md +124 -124
- package/templates/skills/cc-skill/templates/skill-forked.md +85 -85
- package/templates/skills/cc-skill/templates/skill-progressive.md +102 -102
- package/templates/skills/cc-skill/templates/skill-simple.md +75 -75
- package/templates/skills/cc-skill/templates/step-template.md +82 -82
- package/templates/skills/check-version/SKILL.md +196 -196
- package/templates/skills/controller/SKILL.md +162 -162
- package/templates/skills/controller/postman-templates.md +614 -614
- package/templates/skills/controller/references/controller-code-templates.md +159 -159
- package/templates/skills/controller/references/mcp-scaffold-workflow.md +209 -209
- package/templates/skills/controller/references/permission-sync-templates.md +149 -149
- package/templates/skills/controller/steps/step-00-init.md +193 -191
- package/templates/skills/controller/steps/step-01-analyze.md +146 -146
- package/templates/skills/controller/steps/step-02-plan.md +176 -176
- package/templates/skills/controller/steps/step-03-generate.md +189 -189
- package/templates/skills/controller/steps/step-04-perms.md +80 -80
- package/templates/skills/controller/steps/step-05-validate.md +107 -107
- package/templates/skills/controller/templates.md +1555 -1555
- package/templates/skills/debug/SKILL.md +70 -70
- package/templates/skills/debug/references/team-protocol.md +232 -232
- package/templates/skills/debug/steps/step-00-init.md +57 -57
- package/templates/skills/debug/steps/step-01-analyze.md +219 -219
- package/templates/skills/debug/steps/step-02-resolve.md +85 -85
- package/templates/skills/documentation/SKILL.md +132 -132
- package/templates/skills/documentation/data-schema.md +227 -227
- package/templates/skills/documentation/steps/step-00-init.md +70 -70
- package/templates/skills/documentation/steps/step-01-scan.md +113 -113
- package/templates/skills/documentation/steps/step-02-generate.md +231 -231
- package/templates/skills/documentation/steps/step-03-validate.md +251 -238
- package/templates/skills/documentation/templates.md +662 -663
- package/templates/skills/efcore/SKILL.md +167 -167
- package/templates/skills/efcore/references/both-contexts.md +32 -32
- package/templates/skills/efcore/references/database-operations.md +67 -67
- package/templates/skills/efcore/references/destructive-operations.md +38 -38
- package/templates/skills/efcore/references/reset-operations.md +81 -81
- package/templates/skills/efcore/references/seed-methods.md +86 -86
- package/templates/skills/efcore/references/shared-init-functions.md +250 -250
- package/templates/skills/efcore/references/sql-objects-injection.md +61 -61
- package/templates/skills/efcore/references/troubleshooting.md +81 -81
- package/templates/skills/efcore/references/zero-downtime-patterns.md +227 -227
- package/templates/skills/efcore/steps/db/step-deploy.md +217 -217
- package/templates/skills/efcore/steps/db/step-reset.md +186 -186
- package/templates/skills/efcore/steps/db/step-seed.md +166 -166
- package/templates/skills/efcore/steps/db/step-status.md +173 -173
- package/templates/skills/efcore/steps/migration/step-00-init.md +102 -102
- package/templates/skills/efcore/steps/migration/step-01-check.md +164 -164
- package/templates/skills/efcore/steps/migration/step-02-create.md +160 -160
- package/templates/skills/efcore/steps/migration/step-03-validate.md +168 -168
- package/templates/skills/efcore/steps/rebase-snapshot/step-00-init.md +173 -173
- package/templates/skills/efcore/steps/rebase-snapshot/step-01-backup.md +100 -100
- package/templates/skills/efcore/steps/rebase-snapshot/step-02-fetch.md +115 -115
- package/templates/skills/efcore/steps/rebase-snapshot/step-03-create.md +112 -112
- package/templates/skills/efcore/steps/rebase-snapshot/step-04-validate.md +157 -157
- package/templates/skills/efcore/steps/shared/step-00-init.md +131 -131
- package/templates/skills/efcore/steps/squash/step-00-init.md +141 -141
- package/templates/skills/efcore/steps/squash/step-01-backup.md +120 -120
- package/templates/skills/efcore/steps/squash/step-02-fetch.md +168 -168
- package/templates/skills/efcore/steps/squash/step-03-create.md +184 -184
- package/templates/skills/efcore/steps/squash/step-04-validate.md +174 -174
- package/templates/skills/explore/SKILL.md +98 -98
- package/templates/skills/feature-full/SKILL.md +111 -111
- package/templates/skills/feature-full/steps/step-00-init.md +57 -57
- package/templates/skills/feature-full/steps/step-01-implementation.md +120 -120
- package/templates/skills/gitflow/SKILL.md +377 -377
- package/templates/skills/gitflow/_shared.md +620 -620
- package/templates/skills/gitflow/phases/abort.md +189 -189
- package/templates/skills/gitflow/phases/cleanup.md +234 -234
- package/templates/skills/gitflow/phases/status.md +192 -192
- package/templates/skills/gitflow/references/commit-message-generation.md +58 -58
- package/templates/skills/gitflow/references/commit-migration-validation.md +49 -49
- package/templates/skills/gitflow/references/finish-cleanup.md +55 -55
- package/templates/skills/gitflow/references/finish-version-bumping.md +45 -45
- package/templates/skills/gitflow/references/init-config-template.md +135 -135
- package/templates/skills/gitflow/references/init-environment-detection.md +41 -41
- package/templates/skills/gitflow/references/init-name-normalization.md +103 -103
- package/templates/skills/gitflow/references/init-questions.md +185 -185
- package/templates/skills/gitflow/references/init-structure-creation.md +75 -75
- package/templates/skills/gitflow/references/init-version-detection.md +21 -21
- package/templates/skills/gitflow/references/init-workspace-detection.md +43 -43
- package/templates/skills/gitflow/references/merge-ci-status.md +36 -36
- package/templates/skills/gitflow/references/merge-execution.md +62 -62
- package/templates/skills/gitflow/references/merge-pr-context.md +76 -76
- package/templates/skills/gitflow/references/plan-template.md +69 -69
- package/templates/skills/gitflow/references/pr-build-checks.md +60 -60
- package/templates/skills/gitflow/references/pr-generation.md +58 -58
- package/templates/skills/gitflow/references/start-branch-normalization.md +28 -28
- package/templates/skills/gitflow/references/start-efcore-preflight.md +70 -70
- package/templates/skills/gitflow/references/start-local-config.md +113 -113
- package/templates/skills/gitflow/references/start-worktree-creation.md +50 -50
- package/templates/skills/gitflow/references/sync-push-verify.md +44 -44
- package/templates/skills/gitflow/references/sync-rebase-conflicts.md +38 -38
- package/templates/skills/gitflow/steps/step-commit.md +199 -199
- package/templates/skills/gitflow/steps/step-finish.md +147 -147
- package/templates/skills/gitflow/steps/step-init.md +190 -190
- package/templates/skills/gitflow/steps/step-merge.md +85 -85
- package/templates/skills/gitflow/steps/step-plan.md +151 -151
- package/templates/skills/gitflow/steps/step-pr.md +199 -199
- package/templates/skills/gitflow/steps/step-start.md +195 -195
- package/templates/skills/gitflow/steps/step-sync.md +161 -161
- package/templates/skills/gitflow/templates/config.json +72 -72
- package/templates/skills/mcp/SKILL.md +62 -62
- package/templates/skills/mcp/steps/step-01-healthcheck.md +108 -108
- package/templates/skills/mcp/steps/step-02-tools.md +73 -73
- package/templates/skills/notification/SKILL.md +173 -173
- package/templates/skills/quick-search/SKILL.md +99 -99
- package/templates/skills/ralph-loop/SKILL.md +234 -234
- package/templates/skills/ralph-loop/references/category-completeness.md +185 -185
- package/templates/skills/ralph-loop/references/category-rules.md +96 -96
- package/templates/skills/ralph-loop/references/compact-loop.md +300 -300
- package/templates/skills/ralph-loop/references/init-resume-recovery.md +127 -127
- package/templates/skills/ralph-loop/references/module-transition.md +151 -151
- package/templates/skills/ralph-loop/references/multi-module-queue.md +171 -171
- package/templates/skills/ralph-loop/references/parallel-execution.md +246 -246
- package/templates/skills/ralph-loop/references/section-splitting.md +439 -439
- package/templates/skills/ralph-loop/references/task-transform-legacy.md +256 -256
- package/templates/skills/ralph-loop/references/team-orchestration.md +547 -547
- package/templates/skills/ralph-loop/steps/step-00-init.md +150 -150
- package/templates/skills/ralph-loop/steps/step-01-task.md +174 -174
- package/templates/skills/ralph-loop/steps/step-02-execute.md +177 -177
- package/templates/skills/ralph-loop/steps/step-03-commit.md +92 -92
- package/templates/skills/ralph-loop/steps/step-04-check.md +207 -207
- package/templates/skills/ralph-loop/steps/step-05-report.md +175 -175
- package/templates/skills/refactor/SKILL.md +56 -56
- package/templates/skills/refactor/steps/step-01-discover.md +60 -60
- package/templates/skills/refactor/steps/step-02-execute.md +67 -67
- package/templates/skills/review-code/SKILL.md +94 -94
- package/templates/skills/review-code/references/clean-code-principles.md +292 -292
- package/templates/skills/review-code/references/code-quality-metrics.md +174 -174
- package/templates/skills/review-code/references/feedback-patterns.md +149 -149
- package/templates/skills/review-code/references/owasp-api-top10.md +243 -243
- package/templates/skills/review-code/references/security-checklist.md +212 -212
- package/templates/skills/review-code/steps/step-01-smartstack.md +96 -96
- package/templates/skills/review-code/steps/step-02-detailed-review.md +80 -80
- package/templates/skills/review-code/steps/step-03-react.md +44 -44
- package/templates/skills/ui-components/SKILL.md +137 -137
- package/templates/skills/ui-components/accessibility.md +170 -170
- package/templates/skills/ui-components/patterns/dashboard-chart.md +327 -327
- package/templates/skills/ui-components/patterns/data-table.md +39 -39
- package/templates/skills/ui-components/patterns/entity-card.md +77 -77
- package/templates/skills/ui-components/patterns/grid-layout.md +91 -91
- package/templates/skills/ui-components/patterns/kanban.md +43 -43
- package/templates/skills/ui-components/responsive-guidelines.md +278 -278
- package/templates/skills/ui-components/style-guide.md +113 -113
- package/templates/skills/utils/SKILL.md +44 -44
- package/templates/skills/utils/subcommands/test-web-config.md +152 -152
- package/templates/skills/utils/subcommands/test-web.md +123 -123
- package/templates/skills/validate/SKILL.md +181 -181
- package/templates/skills/validate-feature/SKILL.md +101 -101
- package/templates/skills/validate-feature/references/api-smoke-tests.md +140 -140
- package/templates/skills/validate-feature/references/db-validation-checks.md +180 -180
- package/templates/skills/validate-feature/steps/step-00-dependencies.md +121 -121
- package/templates/skills/validate-feature/steps/step-01-compile.md +39 -39
- package/templates/skills/validate-feature/steps/step-02-unit-tests.md +45 -45
- package/templates/skills/validate-feature/steps/step-03-integration-tests.md +53 -53
- package/templates/skills/validate-feature/steps/step-04-api-smoke.md +94 -94
- package/templates/skills/validate-feature/steps/step-05-db-validation.md +149 -149
- package/templates/skills/workflow/SKILL.md +127 -127
- package/templates/skills/workflow/steps/step-00-init.md +57 -57
- package/templates/skills/workflow/steps/step-01-implementation.md +84 -84
- package/templates/test-web/api-health.json +38 -38
- package/templates/test-web/minimal.json +19 -19
- package/templates/test-web/npm-package.json +46 -46
- package/templates/test-web/seo-check.json +54 -54
|
@@ -1,307 +1,307 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: step-00-init
|
|
3
|
-
description: Parse flags, detect application, verify MCP, define hierarchy (4 levels), challenge the need
|
|
4
|
-
model: sonnet
|
|
5
|
-
next_step: steps/step-01-analyze.md
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Step 0: Initialize
|
|
9
|
-
|
|
10
|
-
**Before anything else**, display the version banner:
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
═══════════════════════════════════════════════════════════════
|
|
14
|
-
SmartStack APEX — v{{SMARTSTACK_VERSION}}
|
|
15
|
-
═══════════════════════════════════════════════════════════════
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## LOAD SHARED
|
|
19
|
-
|
|
20
|
-
Read `_shared.md` for SmartStack detection patterns and MCP tools reference.
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## 1. Parse Flags
|
|
25
|
-
|
|
26
|
-
Extract flags from the raw input:
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
Input: "{raw_input}"
|
|
30
|
-
|
|
31
|
-
Flags to detect: -a, -x, -s, -e, -r, -pr, -d {path}, --foundation
|
|
32
|
-
Remaining text after flag removal = {task_description}
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
**Defaults:**
|
|
36
|
-
|
|
37
|
-
```yaml
|
|
38
|
-
auto_mode: false
|
|
39
|
-
examine_mode: false
|
|
40
|
-
save_mode: false
|
|
41
|
-
economy_mode: false
|
|
42
|
-
pr_mode: false
|
|
43
|
-
resume_mode: false
|
|
44
|
-
delegate_mode: false
|
|
45
|
-
delegate_prd_path: null
|
|
46
|
-
foundation_mode: false
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
**If `-d {path}` detected:** set `delegate_mode = true`, `delegate_prd_path = {path}`, force `auto_mode = true`, `economy_mode = true`.
|
|
50
|
-
|
|
51
|
-
**If `--foundation` detected:** set `foundation_mode = true`, force `auto_mode = true`. Foundation mode generates ONLY entities + EF configs + migration (domain + infrastructure layers). Skip application/api/frontend/tests.
|
|
52
|
-
|
|
53
|
-
---
|
|
54
|
-
|
|
55
|
-
## 1b. Delegate Mode Fast Path (if -d)
|
|
56
|
-
|
|
57
|
-
> **When `/ralph-loop` invokes `/apex -d {prd_path}`, all context is extracted from the PRD file.**
|
|
58
|
-
> Skip interactive sections (hierarchy definition, challenge questions).
|
|
59
|
-
|
|
60
|
-
```
|
|
61
|
-
IF delegate_mode:
|
|
62
|
-
Read prd.json from {delegate_prd_path}
|
|
63
|
-
|
|
64
|
-
Extract context:
|
|
65
|
-
{app_name} = prd.project.application (e.g., "HumanResources")
|
|
66
|
-
{module_code} = prd.project.module (e.g., "EmployeeManagement")
|
|
67
|
-
{prd_path} = {delegate_prd_path}
|
|
68
|
-
{feature_path} = prd.source.feature_json_path (if exists)
|
|
69
|
-
|
|
70
|
-
Extract sections from infrastructure tasks with _seedDataMeta:
|
|
71
|
-
Find task where _seedDataMeta.coreSeedData.navigationSections exists
|
|
72
|
-
{sections} = _seedDataMeta.coreSeedData.navigationSections[]
|
|
73
|
-
→ map to: { code, label, description, route, displayOrder, navigation }
|
|
74
|
-
|
|
75
|
-
Extract entities from domain tasks:
|
|
76
|
-
{entities} = prd.tasks.filter(t => t.category == 'domain').map(t => entity name from t.description)
|
|
77
|
-
|
|
78
|
-
Extract complexity:
|
|
79
|
-
{module_complexity} = heuristic from task count:
|
|
80
|
-
<= 10 tasks → "simple-crud"
|
|
81
|
-
<= 20 tasks → "crud-rules"
|
|
82
|
-
<= 30 tasks → "crud-workflow"
|
|
83
|
-
> 30 tasks → "complex"
|
|
84
|
-
|
|
85
|
-
Set needs:
|
|
86
|
-
{needs_seed_data} = prd.tasks.some(t => t.category == 'seedData' || t.category == 'infrastructure')
|
|
87
|
-
{needs_migration} = prd.tasks.some(t => t._migrationMeta != null)
|
|
88
|
-
{has_dependencies} = prd.tasks.some(t => t.dependencies.length > 0) ? "references" : "none"
|
|
89
|
-
{key_properties} = [] (extracted during step-01 from feature.json if available)
|
|
90
|
-
|
|
91
|
-
SKIP sections 2 (detect application), 4 (hierarchy), 5 (challenge questions)
|
|
92
|
-
Jump to section 3 (MCP verify) → then section 6 (determine needs, already set) → section 9 (summary)
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## 2. Detect SmartStack Application
|
|
98
|
-
|
|
99
|
-
Scan the project to identify the SmartStack hierarchy:
|
|
100
|
-
|
|
101
|
-
```
|
|
102
|
-
1. Glob("*.sln") → confirm .NET project
|
|
103
|
-
2. Glob("docs/business/**/*") → list existing BA artifacts
|
|
104
|
-
3. Glob(".ralph/prd-*.json") → list existing PRDs
|
|
105
|
-
4. Glob("src/pages/**/*.tsx") → confirm frontend exists
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
**From task description, infer:**
|
|
109
|
-
- `{app_name}`: application name
|
|
110
|
-
- `{module_code}`: target module
|
|
111
|
-
- `{sections}`: sections being added/modified
|
|
112
|
-
|
|
113
|
-
**From existing artifacts:**
|
|
114
|
-
- `{prd_path}`: `.ralph/prd-{module_code}.json` if exists
|
|
115
|
-
- `{feature_path}`: `docs/business/{app}/{module}/business-analyse/*/feature.json` if exists
|
|
116
|
-
|
|
117
|
-
If hierarchy cannot be inferred → load application question from `references/challenge-questions.md`.
|
|
118
|
-
|
|
119
|
-
---
|
|
120
|
-
|
|
121
|
-
## 3. Verify MCP Availability
|
|
122
|
-
|
|
123
|
-
```
|
|
124
|
-
Call: mcp__smartstack__validate_conventions (quick connectivity test)
|
|
125
|
-
|
|
126
|
-
IF success → MCP available, proceed normally
|
|
127
|
-
IF failure → warn user, continue in degraded mode (manual tools only)
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
---
|
|
131
|
-
|
|
132
|
-
## 4. Define Navigation Hierarchy (4 Levels)
|
|
133
|
-
|
|
134
|
-
> **Reference:** Load `references/initialization-challenge-flow.md` for detailed challenge flow:
|
|
135
|
-
> - 4-level hierarchy structure (Application → Module → Section → Resource)
|
|
136
|
-
> - Challenge questions (4a: Application, 4b: Module, 4c: Sections)
|
|
137
|
-
> - Validation rules (sections MUST have at least one entry)
|
|
138
|
-
> - Storage format for each level
|
|
139
|
-
> - Delegate mode skip (if -d)
|
|
140
|
-
|
|
141
|
-
### 4d. Resources (Optional)
|
|
142
|
-
|
|
143
|
-
If the task or feature.json mentions specific resources (export, import, bulk actions):
|
|
144
|
-
```
|
|
145
|
-
For each section, check if resources are needed.
|
|
146
|
-
Resources are OPTIONAL — only define if explicitly mentioned or inferred.
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
### 4e. Hierarchy Summary
|
|
150
|
-
|
|
151
|
-
Display before proceeding:
|
|
152
|
-
|
|
153
|
-
```
|
|
154
|
-
{app_name} ({app_code}) → {module_code} → [{sections[].code}]
|
|
155
|
-
Routes: /{app-kebab}/{module-kebab}/{section-kebab}
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
---
|
|
159
|
-
|
|
160
|
-
## 5. Challenge the Need
|
|
161
|
-
|
|
162
|
-
> **Objective:** Even without a formal Business Analysis (`/business-analyse`), the need MUST be challenged to avoid obvious gaps. This is a rapid scope validation — 3-4 targeted questions to ensure the developer has thought through the fundamentals.
|
|
163
|
-
|
|
164
|
-
### 5a. Entity Scope & Relationships
|
|
165
|
-
|
|
166
|
-
Load and execute entity questions from `references/challenge-questions.md` section 5a.
|
|
167
|
-
|
|
168
|
-
### 5b. Dependencies & Key Properties
|
|
169
|
-
|
|
170
|
-
Load and execute dependency questions from `references/challenge-questions.md` section 5b.
|
|
171
|
-
|
|
172
|
-
### 5c. Store Responses
|
|
173
|
-
|
|
174
|
-
```yaml
|
|
175
|
-
{entities}: string[] # Main entities to manage
|
|
176
|
-
{module_complexity}: string # "simple-crud" | "crud-rules" | "crud-workflow" | "complex"
|
|
177
|
-
{has_dependencies}: string # "none" | "references" | "unknown"
|
|
178
|
-
{key_properties}: string[] # Key business properties mentioned by user
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
These values are propagated to:
|
|
182
|
-
- **step-01 (Analyze):** Guide code exploration focus
|
|
183
|
-
- **step-02 (Plan):** Inform layer mapping (e.g., workflow → needs /workflow skill)
|
|
184
|
-
- **step-03 (Execute):** Entity scaffolding with correct properties and relationships
|
|
185
|
-
|
|
186
|
-
---
|
|
187
|
-
|
|
188
|
-
## 5d. Scope Complexity Guard (BLOCKING)
|
|
189
|
-
|
|
190
|
-
> **Root cause (test-apex-007):** `/apex` was invoked with 3 applications and 7 entities.
|
|
191
|
-
> The model's context window saturated, causing: incomplete migrations, lost conventions,
|
|
192
|
-
> missing pages, unregistered i18n, forgotten DI registrations.
|
|
193
|
-
>
|
|
194
|
-
> `/apex` is designed for **incremental** development (1 module at a time).
|
|
195
|
-
> Multi-module projects should use `/ralph-loop` which calls `/apex -d` per module.
|
|
196
|
-
|
|
197
|
-
### Scope Detection
|
|
198
|
-
|
|
199
|
-
```
|
|
200
|
-
entity_count = {entities}.length
|
|
201
|
-
section_count = {sections}.length
|
|
202
|
-
app_count = number of DISTINCT applications detected in {task_description}
|
|
203
|
-
(heuristics: "application X et application Y", "module X, module Y, module Z"
|
|
204
|
-
with different app names, "3 apps", etc.)
|
|
205
|
-
|
|
206
|
-
scope_score = entity_count + (section_count * 0.5) + (app_count * 3)
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
### Guard Rules
|
|
210
|
-
|
|
211
|
-
```
|
|
212
|
-
IF delegate_mode (-d flag):
|
|
213
|
-
→ SKIP guard (ralph-loop already handles scope per module)
|
|
214
|
-
|
|
215
|
-
ELSE IF app_count > 1:
|
|
216
|
-
→ BLOCKING: "Multiple applications detected ({app_count} apps, {entity_count} entities).
|
|
217
|
-
/apex handles 1 module at a time. For multi-module projects, use:
|
|
218
|
-
- /ralph-loop (automated: reads PRD, generates all modules sequentially)
|
|
219
|
-
- Multiple /apex calls (manual: one /apex per module)
|
|
220
|
-
|
|
221
|
-
To override this guard, split your request:
|
|
222
|
-
/apex -e add HR employee management
|
|
223
|
-
/apex -e add CRM client management
|
|
224
|
-
/apex -e add Project management"
|
|
225
|
-
|
|
226
|
-
ELSE IF scope_score > 8:
|
|
227
|
-
→ WARNING: "Large scope detected ({entity_count} entities, {section_count} sections).
|
|
228
|
-
/apex works best with ≤ 4 entities per invocation.
|
|
229
|
-
Consider splitting into smaller iterations.
|
|
230
|
-
Proceeding, but expect higher risk of omissions."
|
|
231
|
-
|
|
232
|
-
AskUserQuestion:
|
|
233
|
-
header: "Scope"
|
|
234
|
-
question: "Le périmètre est large ({entity_count} entités). Réduire le scope ou continuer ?"
|
|
235
|
-
options:
|
|
236
|
-
- label: "Continue anyway"
|
|
237
|
-
description: "Proceed with full scope (higher risk of omissions)"
|
|
238
|
-
- label: "Split into iterations"
|
|
239
|
-
description: "Focus on the first module/app, then run /apex again for the rest"
|
|
240
|
-
- label: "Use /ralph-loop"
|
|
241
|
-
description: "Switch to /ralph-loop for automated multi-module orchestration"
|
|
242
|
-
|
|
243
|
-
IF "Split" → ask user which module to focus on first, update {entities}/{sections}
|
|
244
|
-
IF "/ralph-loop" → display command to run, STOP execution
|
|
245
|
-
|
|
246
|
-
ELSE:
|
|
247
|
-
→ PASS (scope is manageable)
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
### Recommended Scope per /apex Invocation
|
|
251
|
-
|
|
252
|
-
| Metric | Safe | Warning | Blocking |
|
|
253
|
-
|--------|------|---------|----------|
|
|
254
|
-
| Applications | 1 | 1 (large) | >1 |
|
|
255
|
-
| Entities | 1-4 | 5-6 | >6 without -d |
|
|
256
|
-
| Sections | 1-3 | 4-5 | >5 without -d |
|
|
257
|
-
| Sub-resources | 0-2 | 3-4 | >4 without -d |
|
|
258
|
-
|
|
259
|
-
---
|
|
260
|
-
|
|
261
|
-
## 6. Determine Needs
|
|
262
|
-
|
|
263
|
-
```
|
|
264
|
-
needs_seed_data = {sections}.length > 0 OR task mentions navigation/permissions/roles/seed
|
|
265
|
-
needs_migration = {entities}.length > 0 OR task mentions entity/field/table/column/migration
|
|
266
|
-
needs_workflow = {module_complexity} == "crud-workflow" OR task mentions workflow/email/approval
|
|
267
|
-
needs_notification = {module_complexity} in ["crud-workflow","complex"] OR task mentions notification/alert
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
---
|
|
271
|
-
|
|
272
|
-
## 7. Resume Mode (if -r)
|
|
273
|
-
|
|
274
|
-
```
|
|
275
|
-
IF resume_mode:
|
|
276
|
-
Read .claude/output/apex/ → find latest task → restore state from 00-context.md → SKIP to next step
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
---
|
|
280
|
-
|
|
281
|
-
## 8. Save Mode Setup (if -s)
|
|
282
|
-
|
|
283
|
-
```
|
|
284
|
-
IF save_mode:
|
|
285
|
-
Generate task_id → create .claude/output/apex/{task_id}/ → write 00-context.md
|
|
286
|
-
(timestamp, state variables, flags, hierarchy, challenge responses)
|
|
287
|
-
```
|
|
288
|
-
|
|
289
|
-
---
|
|
290
|
-
|
|
291
|
-
## 9. Display Context Summary
|
|
292
|
-
|
|
293
|
-
```
|
|
294
|
-
APEX INIT COMPLETE — v{{SMARTSTACK_VERSION}}
|
|
295
|
-
Task: {task_description}
|
|
296
|
-
Hierarchy: {app_name} → {module_code} → {sections[].code}
|
|
297
|
-
Entities: {entities} | Complexity: {module_complexity} | Deps: {has_dependencies}
|
|
298
|
-
PRD: {prd_path||none} | Feature: {feature_path||none} | Flags: {active_flags}
|
|
299
|
-
MCP: {available|degraded} | Needs: migration/seed/workflow/notification = {yes|no}
|
|
300
|
-
NEXT STEP: step-01-analyze
|
|
301
|
-
```
|
|
302
|
-
|
|
303
|
-
---
|
|
304
|
-
|
|
305
|
-
## NEXT STEP
|
|
306
|
-
|
|
307
|
-
Load `steps/step-01-analyze.md`
|
|
1
|
+
---
|
|
2
|
+
name: step-00-init
|
|
3
|
+
description: Parse flags, detect application, verify MCP, define hierarchy (4 levels), challenge the need
|
|
4
|
+
model: sonnet
|
|
5
|
+
next_step: steps/step-01-analyze.md
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Step 0: Initialize
|
|
9
|
+
|
|
10
|
+
**Before anything else**, display the version banner:
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
═══════════════════════════════════════════════════════════════
|
|
14
|
+
SmartStack APEX — v{{SMARTSTACK_VERSION}}
|
|
15
|
+
═══════════════════════════════════════════════════════════════
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## LOAD SHARED
|
|
19
|
+
|
|
20
|
+
Read `_shared.md` for SmartStack detection patterns and MCP tools reference.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## 1. Parse Flags
|
|
25
|
+
|
|
26
|
+
Extract flags from the raw input:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
Input: "{raw_input}"
|
|
30
|
+
|
|
31
|
+
Flags to detect: -a, -x, -s, -e, -r, -pr, -d {path}, --foundation
|
|
32
|
+
Remaining text after flag removal = {task_description}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Defaults:**
|
|
36
|
+
|
|
37
|
+
```yaml
|
|
38
|
+
auto_mode: false
|
|
39
|
+
examine_mode: false
|
|
40
|
+
save_mode: false
|
|
41
|
+
economy_mode: false
|
|
42
|
+
pr_mode: false
|
|
43
|
+
resume_mode: false
|
|
44
|
+
delegate_mode: false
|
|
45
|
+
delegate_prd_path: null
|
|
46
|
+
foundation_mode: false
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**If `-d {path}` detected:** set `delegate_mode = true`, `delegate_prd_path = {path}`, force `auto_mode = true`, `economy_mode = true`.
|
|
50
|
+
|
|
51
|
+
**If `--foundation` detected:** set `foundation_mode = true`, force `auto_mode = true`. Foundation mode generates ONLY entities + EF configs + migration (domain + infrastructure layers). Skip application/api/frontend/tests.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 1b. Delegate Mode Fast Path (if -d)
|
|
56
|
+
|
|
57
|
+
> **When `/ralph-loop` invokes `/apex -d {prd_path}`, all context is extracted from the PRD file.**
|
|
58
|
+
> Skip interactive sections (hierarchy definition, challenge questions).
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
IF delegate_mode:
|
|
62
|
+
Read prd.json from {delegate_prd_path}
|
|
63
|
+
|
|
64
|
+
Extract context:
|
|
65
|
+
{app_name} = prd.project.application (e.g., "HumanResources")
|
|
66
|
+
{module_code} = prd.project.module (e.g., "EmployeeManagement")
|
|
67
|
+
{prd_path} = {delegate_prd_path}
|
|
68
|
+
{feature_path} = prd.source.feature_json_path (if exists)
|
|
69
|
+
|
|
70
|
+
Extract sections from infrastructure tasks with _seedDataMeta:
|
|
71
|
+
Find task where _seedDataMeta.coreSeedData.navigationSections exists
|
|
72
|
+
{sections} = _seedDataMeta.coreSeedData.navigationSections[]
|
|
73
|
+
→ map to: { code, label, description, route, displayOrder, navigation }
|
|
74
|
+
|
|
75
|
+
Extract entities from domain tasks:
|
|
76
|
+
{entities} = prd.tasks.filter(t => t.category == 'domain').map(t => entity name from t.description)
|
|
77
|
+
|
|
78
|
+
Extract complexity:
|
|
79
|
+
{module_complexity} = heuristic from task count:
|
|
80
|
+
<= 10 tasks → "simple-crud"
|
|
81
|
+
<= 20 tasks → "crud-rules"
|
|
82
|
+
<= 30 tasks → "crud-workflow"
|
|
83
|
+
> 30 tasks → "complex"
|
|
84
|
+
|
|
85
|
+
Set needs:
|
|
86
|
+
{needs_seed_data} = prd.tasks.some(t => t.category == 'seedData' || t.category == 'infrastructure')
|
|
87
|
+
{needs_migration} = prd.tasks.some(t => t._migrationMeta != null)
|
|
88
|
+
{has_dependencies} = prd.tasks.some(t => t.dependencies.length > 0) ? "references" : "none"
|
|
89
|
+
{key_properties} = [] (extracted during step-01 from feature.json if available)
|
|
90
|
+
|
|
91
|
+
SKIP sections 2 (detect application), 4 (hierarchy), 5 (challenge questions)
|
|
92
|
+
Jump to section 3 (MCP verify) → then section 6 (determine needs, already set) → section 9 (summary)
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## 2. Detect SmartStack Application
|
|
98
|
+
|
|
99
|
+
Scan the project to identify the SmartStack hierarchy:
|
|
100
|
+
|
|
101
|
+
```
|
|
102
|
+
1. Glob("*.sln") → confirm .NET project
|
|
103
|
+
2. Glob("docs/business/**/*") → list existing BA artifacts
|
|
104
|
+
3. Glob(".ralph/prd-*.json") → list existing PRDs
|
|
105
|
+
4. Glob("src/pages/**/*.tsx") → confirm frontend exists
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
**From task description, infer:**
|
|
109
|
+
- `{app_name}`: application name
|
|
110
|
+
- `{module_code}`: target module
|
|
111
|
+
- `{sections}`: sections being added/modified
|
|
112
|
+
|
|
113
|
+
**From existing artifacts:**
|
|
114
|
+
- `{prd_path}`: `.ralph/prd-{module_code}.json` if exists
|
|
115
|
+
- `{feature_path}`: `docs/business/{app}/{module}/business-analyse/*/feature.json` if exists
|
|
116
|
+
|
|
117
|
+
If hierarchy cannot be inferred → load application question from `references/challenge-questions.md`.
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## 3. Verify MCP Availability
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
Call: mcp__smartstack__validate_conventions (quick connectivity test)
|
|
125
|
+
|
|
126
|
+
IF success → MCP available, proceed normally
|
|
127
|
+
IF failure → warn user, continue in degraded mode (manual tools only)
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## 4. Define Navigation Hierarchy (4 Levels)
|
|
133
|
+
|
|
134
|
+
> **Reference:** Load `references/initialization-challenge-flow.md` for detailed challenge flow:
|
|
135
|
+
> - 4-level hierarchy structure (Application → Module → Section → Resource)
|
|
136
|
+
> - Challenge questions (4a: Application, 4b: Module, 4c: Sections)
|
|
137
|
+
> - Validation rules (sections MUST have at least one entry)
|
|
138
|
+
> - Storage format for each level
|
|
139
|
+
> - Delegate mode skip (if -d)
|
|
140
|
+
|
|
141
|
+
### 4d. Resources (Optional)
|
|
142
|
+
|
|
143
|
+
If the task or feature.json mentions specific resources (export, import, bulk actions):
|
|
144
|
+
```
|
|
145
|
+
For each section, check if resources are needed.
|
|
146
|
+
Resources are OPTIONAL — only define if explicitly mentioned or inferred.
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### 4e. Hierarchy Summary
|
|
150
|
+
|
|
151
|
+
Display before proceeding:
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
{app_name} ({app_code}) → {module_code} → [{sections[].code}]
|
|
155
|
+
Routes: /{app-kebab}/{module-kebab}/{section-kebab}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## 5. Challenge the Need
|
|
161
|
+
|
|
162
|
+
> **Objective:** Even without a formal Business Analysis (`/business-analyse`), the need MUST be challenged to avoid obvious gaps. This is a rapid scope validation — 3-4 targeted questions to ensure the developer has thought through the fundamentals.
|
|
163
|
+
|
|
164
|
+
### 5a. Entity Scope & Relationships
|
|
165
|
+
|
|
166
|
+
Load and execute entity questions from `references/challenge-questions.md` section 5a.
|
|
167
|
+
|
|
168
|
+
### 5b. Dependencies & Key Properties
|
|
169
|
+
|
|
170
|
+
Load and execute dependency questions from `references/challenge-questions.md` section 5b.
|
|
171
|
+
|
|
172
|
+
### 5c. Store Responses
|
|
173
|
+
|
|
174
|
+
```yaml
|
|
175
|
+
{entities}: string[] # Main entities to manage
|
|
176
|
+
{module_complexity}: string # "simple-crud" | "crud-rules" | "crud-workflow" | "complex"
|
|
177
|
+
{has_dependencies}: string # "none" | "references" | "unknown"
|
|
178
|
+
{key_properties}: string[] # Key business properties mentioned by user
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
These values are propagated to:
|
|
182
|
+
- **step-01 (Analyze):** Guide code exploration focus
|
|
183
|
+
- **step-02 (Plan):** Inform layer mapping (e.g., workflow → needs /workflow skill)
|
|
184
|
+
- **step-03 (Execute):** Entity scaffolding with correct properties and relationships
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## 5d. Scope Complexity Guard (BLOCKING)
|
|
189
|
+
|
|
190
|
+
> **Root cause (test-apex-007):** `/apex` was invoked with 3 applications and 7 entities.
|
|
191
|
+
> The model's context window saturated, causing: incomplete migrations, lost conventions,
|
|
192
|
+
> missing pages, unregistered i18n, forgotten DI registrations.
|
|
193
|
+
>
|
|
194
|
+
> `/apex` is designed for **incremental** development (1 module at a time).
|
|
195
|
+
> Multi-module projects should use `/ralph-loop` which calls `/apex -d` per module.
|
|
196
|
+
|
|
197
|
+
### Scope Detection
|
|
198
|
+
|
|
199
|
+
```
|
|
200
|
+
entity_count = {entities}.length
|
|
201
|
+
section_count = {sections}.length
|
|
202
|
+
app_count = number of DISTINCT applications detected in {task_description}
|
|
203
|
+
(heuristics: "application X et application Y", "module X, module Y, module Z"
|
|
204
|
+
with different app names, "3 apps", etc.)
|
|
205
|
+
|
|
206
|
+
scope_score = entity_count + (section_count * 0.5) + (app_count * 3)
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
### Guard Rules
|
|
210
|
+
|
|
211
|
+
```
|
|
212
|
+
IF delegate_mode (-d flag):
|
|
213
|
+
→ SKIP guard (ralph-loop already handles scope per module)
|
|
214
|
+
|
|
215
|
+
ELSE IF app_count > 1:
|
|
216
|
+
→ BLOCKING: "Multiple applications detected ({app_count} apps, {entity_count} entities).
|
|
217
|
+
/apex handles 1 module at a time. For multi-module projects, use:
|
|
218
|
+
- /ralph-loop (automated: reads PRD, generates all modules sequentially)
|
|
219
|
+
- Multiple /apex calls (manual: one /apex per module)
|
|
220
|
+
|
|
221
|
+
To override this guard, split your request:
|
|
222
|
+
/apex -e add HR employee management
|
|
223
|
+
/apex -e add CRM client management
|
|
224
|
+
/apex -e add Project management"
|
|
225
|
+
|
|
226
|
+
ELSE IF scope_score > 8:
|
|
227
|
+
→ WARNING: "Large scope detected ({entity_count} entities, {section_count} sections).
|
|
228
|
+
/apex works best with ≤ 4 entities per invocation.
|
|
229
|
+
Consider splitting into smaller iterations.
|
|
230
|
+
Proceeding, but expect higher risk of omissions."
|
|
231
|
+
|
|
232
|
+
AskUserQuestion:
|
|
233
|
+
header: "Scope"
|
|
234
|
+
question: "Le périmètre est large ({entity_count} entités). Réduire le scope ou continuer ?"
|
|
235
|
+
options:
|
|
236
|
+
- label: "Continue anyway"
|
|
237
|
+
description: "Proceed with full scope (higher risk of omissions)"
|
|
238
|
+
- label: "Split into iterations"
|
|
239
|
+
description: "Focus on the first module/app, then run /apex again for the rest"
|
|
240
|
+
- label: "Use /ralph-loop"
|
|
241
|
+
description: "Switch to /ralph-loop for automated multi-module orchestration"
|
|
242
|
+
|
|
243
|
+
IF "Split" → ask user which module to focus on first, update {entities}/{sections}
|
|
244
|
+
IF "/ralph-loop" → display command to run, STOP execution
|
|
245
|
+
|
|
246
|
+
ELSE:
|
|
247
|
+
→ PASS (scope is manageable)
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
### Recommended Scope per /apex Invocation
|
|
251
|
+
|
|
252
|
+
| Metric | Safe | Warning | Blocking |
|
|
253
|
+
|--------|------|---------|----------|
|
|
254
|
+
| Applications | 1 | 1 (large) | >1 |
|
|
255
|
+
| Entities | 1-4 | 5-6 | >6 without -d |
|
|
256
|
+
| Sections | 1-3 | 4-5 | >5 without -d |
|
|
257
|
+
| Sub-resources | 0-2 | 3-4 | >4 without -d |
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## 6. Determine Needs
|
|
262
|
+
|
|
263
|
+
```
|
|
264
|
+
needs_seed_data = {sections}.length > 0 OR task mentions navigation/permissions/roles/seed
|
|
265
|
+
needs_migration = {entities}.length > 0 OR task mentions entity/field/table/column/migration
|
|
266
|
+
needs_workflow = {module_complexity} == "crud-workflow" OR task mentions workflow/email/approval
|
|
267
|
+
needs_notification = {module_complexity} in ["crud-workflow","complex"] OR task mentions notification/alert
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## 7. Resume Mode (if -r)
|
|
273
|
+
|
|
274
|
+
```
|
|
275
|
+
IF resume_mode:
|
|
276
|
+
Read .claude/output/apex/ → find latest task → restore state from 00-context.md → SKIP to next step
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
## 8. Save Mode Setup (if -s)
|
|
282
|
+
|
|
283
|
+
```
|
|
284
|
+
IF save_mode:
|
|
285
|
+
Generate task_id → create .claude/output/apex/{task_id}/ → write 00-context.md
|
|
286
|
+
(timestamp, state variables, flags, hierarchy, challenge responses)
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 9. Display Context Summary
|
|
292
|
+
|
|
293
|
+
```
|
|
294
|
+
APEX INIT COMPLETE — v{{SMARTSTACK_VERSION}}
|
|
295
|
+
Task: {task_description}
|
|
296
|
+
Hierarchy: {app_name} → {module_code} → {sections[].code}
|
|
297
|
+
Entities: {entities} | Complexity: {module_complexity} | Deps: {has_dependencies}
|
|
298
|
+
PRD: {prd_path||none} | Feature: {feature_path||none} | Flags: {active_flags}
|
|
299
|
+
MCP: {available|degraded} | Needs: migration/seed/workflow/notification = {yes|no}
|
|
300
|
+
NEXT STEP: step-01-analyze
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
---
|
|
304
|
+
|
|
305
|
+
## NEXT STEP
|
|
306
|
+
|
|
307
|
+
Load `steps/step-01-analyze.md`
|