@atlashub/smartstack-cli 3.39.0 → 3.41.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 +6 -3
- 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 +95 -84
- package/templates/agents/efcore/db-deploy.md +85 -74
- package/templates/agents/efcore/db-reset.md +96 -85
- package/templates/agents/efcore/db-seed.md +72 -61
- package/templates/agents/efcore/db-status.md +97 -86
- package/templates/agents/efcore/migration.md +197 -186
- package/templates/agents/efcore/rebase-snapshot.md +119 -108
- package/templates/agents/efcore/scan.md +103 -92
- package/templates/agents/efcore/squash.md +172 -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 +168 -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 +95 -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,96 +1,96 @@
|
|
|
1
|
-
# Layer 1: Execution Rules — Application + API + Seed Data
|
|
2
|
-
|
|
3
|
-
> **Loaded by:** step-03-execute.md (section: Layer 1)
|
|
4
|
-
> **Purpose:** Critical rules for Layer 1 execution — NavRoute, permissions, validators, code generation, frontend patterns.
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## NavRoute and Permission Kebab-Case (CRITICAL)
|
|
9
|
-
|
|
10
|
-
**ALL NavRoute segments and permission codes MUST use kebab-case for multi-word identifiers.**
|
|
11
|
-
|
|
12
|
-
Root cause (test-apex-007): Controllers had `[NavRoute("humanresources.employees")]` instead of `[NavRoute("human-resources.employees")]`. This mismatched seed data routes and permission codes, causing 404s and permission denials at runtime.
|
|
13
|
-
|
|
14
|
-
**Rules:**
|
|
15
|
-
- NavRoute: `human-resources.employees` (NEVER `humanresources.employees`)
|
|
16
|
-
- Permissions: `human-resources.employees.read` (segments MATCH NavRoute exactly)
|
|
17
|
-
- Seed data codes: `human-resources` (NEVER `humanresources`)
|
|
18
|
-
- C# class names stay PascalCase (`HumanResourcesController`) — only route/permission strings use kebab-case
|
|
19
|
-
- POST-CHECKs 41 + 48 validate this. Fix BEFORE committing.
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## Controller Route Attribute (BLOCKING)
|
|
24
|
-
|
|
25
|
-
**Controllers with `[NavRoute]` must NOT have `[Route]` attribute.**
|
|
26
|
-
|
|
27
|
-
Root cause (test-apex-007): ALL 7 controllers had BOTH `[Route("api/...")]` AND `[NavRoute("...")]`. In SmartStack, `[NavRoute]` resolves routes dynamically from Navigation entities in the database at startup. Having `[Route]` alongside causes route conflicts → all endpoints return 404.
|
|
28
|
-
|
|
29
|
-
**Rules:**
|
|
30
|
-
- `[NavRoute("app.module")]` is the ONLY route attribute needed on controllers
|
|
31
|
-
- **FORBIDDEN:** `[Route("api/human-resources/employees")]` alongside `[NavRoute]`
|
|
32
|
-
- **FORBIDDEN:** `[Route("api/[controller]")]` alongside `[NavRoute]`
|
|
33
|
-
- If generating via MCP `scaffold_extension` with `navRoute` option → output is correct (NavRoute only)
|
|
34
|
-
- If generating via `/controller` skill → verify NO `[Route]` is added
|
|
35
|
-
- POST-CHECK 50 validates this. Fix BEFORE committing.
|
|
36
|
-
|
|
37
|
-
---
|
|
38
|
-
|
|
39
|
-
## Validators DI Registration (CRITICAL)
|
|
40
|
-
|
|
41
|
-
After creating validators, they MUST be registered in DI. Without registration, `[FromBody]` DTOs are never validated.
|
|
42
|
-
|
|
43
|
-
```csharp
|
|
44
|
-
In DependencyInjection.cs (or ServiceCollectionExtensions.cs):
|
|
45
|
-
services.AddValidatorsFromAssemblyContaining<Create{Entity}DtoValidator>();
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
POST-CHECK 46 validates this. If validators exist but no DI registration → BLOCKING.
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
## Date Fields — Use DateOnly (CRITICAL)
|
|
53
|
-
|
|
54
|
-
**ALL date-only fields in DTOs MUST use `DateOnly`, NEVER `string`.**
|
|
55
|
-
|
|
56
|
-
Root cause (test-apex-007): WorkLog DTO had `string Date` instead of `DateOnly Date`. This causes: no date validation, inconsistent date formats, parsing errors.
|
|
57
|
-
|
|
58
|
-
**Type mapping for DTOs:**
|
|
59
|
-
|
|
60
|
-
| Domain type | DTO type | Example |
|
|
61
|
-
|-------------|----------|---------|
|
|
62
|
-
| `DateTime` | `DateTime` | `CreatedAt`, `UpdatedAt` |
|
|
63
|
-
| Date-only field | `DateOnly` | `Date`, `StartDate`, `EndDate`, `BirthDate` |
|
|
64
|
-
| `string` for date | **FORBIDDEN** | Never use `string` for dates |
|
|
65
|
-
| `DateTime` for date-only | **Avoid** | Use `DateOnly` when no time component needed |
|
|
66
|
-
|
|
67
|
-
POST-CHECK 47 validates this. If a DTO has `string` type for a property named `*Date*` → BLOCKING.
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
## Code Generation (if entities have codePattern != "manual")
|
|
72
|
-
|
|
73
|
-
For each entity with auto-generated code pattern (from feature.json or step-02 decisions):
|
|
74
|
-
|
|
75
|
-
```
|
|
76
|
-
1. Create CodePatternConfig for the entity (strategy, prefix, digits from codePattern)
|
|
77
|
-
2. Register ICodeGenerator<TEntity> in DependencyInjection.cs (Infrastructure layer)
|
|
78
|
-
→ See references/code-generation.md for DI registration pattern
|
|
79
|
-
3. Update CreateDto: REMOVE Code property (auto-generated, not user-provided)
|
|
80
|
-
4. Update CreateDtoValidator: REMOVE Code regex rule (not in DTO anymore)
|
|
81
|
-
5. Update service CreateAsync: inject ICodeGenerator<TEntity>, call NextCodeAsync()
|
|
82
|
-
→ Code is auto-generated BEFORE entity creation
|
|
83
|
-
→ See references/code-generation.md for service integration pattern
|
|
84
|
-
6. Keep Code in ResponseDto (returned to frontend after creation)
|
|
85
|
-
7. Keep Code in UpdateDto ONLY if code is mutable (rare — discuss with user)
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
**CRITICAL:** If `codePattern.strategy == "manual"` (or no codePattern), keep the current behavior: Code stays in CreateDto, user provides it, validator has regex rule.
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## Sequential vs Parallel Execution
|
|
93
|
-
|
|
94
|
-
**If economy_mode:** Execute each item from the plan sequentially using skills and MCP.
|
|
95
|
-
|
|
96
|
-
**If NOT economy_mode:** See `references/agent-teams-protocol.md` for parallel team-based execution with exec-backend and exec-frontend teammates.
|
|
1
|
+
# Layer 1: Execution Rules — Application + API + Seed Data
|
|
2
|
+
|
|
3
|
+
> **Loaded by:** step-03-execute.md (section: Layer 1)
|
|
4
|
+
> **Purpose:** Critical rules for Layer 1 execution — NavRoute, permissions, validators, code generation, frontend patterns.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## NavRoute and Permission Kebab-Case (CRITICAL)
|
|
9
|
+
|
|
10
|
+
**ALL NavRoute segments and permission codes MUST use kebab-case for multi-word identifiers.**
|
|
11
|
+
|
|
12
|
+
Root cause (test-apex-007): Controllers had `[NavRoute("humanresources.employees")]` instead of `[NavRoute("human-resources.employees")]`. This mismatched seed data routes and permission codes, causing 404s and permission denials at runtime.
|
|
13
|
+
|
|
14
|
+
**Rules:**
|
|
15
|
+
- NavRoute: `human-resources.employees` (NEVER `humanresources.employees`)
|
|
16
|
+
- Permissions: `human-resources.employees.read` (segments MATCH NavRoute exactly)
|
|
17
|
+
- Seed data codes: `human-resources` (NEVER `humanresources`)
|
|
18
|
+
- C# class names stay PascalCase (`HumanResourcesController`) — only route/permission strings use kebab-case
|
|
19
|
+
- POST-CHECKs 41 + 48 validate this. Fix BEFORE committing.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Controller Route Attribute (BLOCKING)
|
|
24
|
+
|
|
25
|
+
**Controllers with `[NavRoute]` must NOT have `[Route]` attribute.**
|
|
26
|
+
|
|
27
|
+
Root cause (test-apex-007): ALL 7 controllers had BOTH `[Route("api/...")]` AND `[NavRoute("...")]`. In SmartStack, `[NavRoute]` resolves routes dynamically from Navigation entities in the database at startup. Having `[Route]` alongside causes route conflicts → all endpoints return 404.
|
|
28
|
+
|
|
29
|
+
**Rules:**
|
|
30
|
+
- `[NavRoute("app.module")]` is the ONLY route attribute needed on controllers
|
|
31
|
+
- **FORBIDDEN:** `[Route("api/human-resources/employees")]` alongside `[NavRoute]`
|
|
32
|
+
- **FORBIDDEN:** `[Route("api/[controller]")]` alongside `[NavRoute]`
|
|
33
|
+
- If generating via MCP `scaffold_extension` with `navRoute` option → output is correct (NavRoute only)
|
|
34
|
+
- If generating via `/controller` skill → verify NO `[Route]` is added
|
|
35
|
+
- POST-CHECK 50 validates this. Fix BEFORE committing.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Validators DI Registration (CRITICAL)
|
|
40
|
+
|
|
41
|
+
After creating validators, they MUST be registered in DI. Without registration, `[FromBody]` DTOs are never validated.
|
|
42
|
+
|
|
43
|
+
```csharp
|
|
44
|
+
In DependencyInjection.cs (or ServiceCollectionExtensions.cs):
|
|
45
|
+
services.AddValidatorsFromAssemblyContaining<Create{Entity}DtoValidator>();
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
POST-CHECK 46 validates this. If validators exist but no DI registration → BLOCKING.
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Date Fields — Use DateOnly (CRITICAL)
|
|
53
|
+
|
|
54
|
+
**ALL date-only fields in DTOs MUST use `DateOnly`, NEVER `string`.**
|
|
55
|
+
|
|
56
|
+
Root cause (test-apex-007): WorkLog DTO had `string Date` instead of `DateOnly Date`. This causes: no date validation, inconsistent date formats, parsing errors.
|
|
57
|
+
|
|
58
|
+
**Type mapping for DTOs:**
|
|
59
|
+
|
|
60
|
+
| Domain type | DTO type | Example |
|
|
61
|
+
|-------------|----------|---------|
|
|
62
|
+
| `DateTime` | `DateTime` | `CreatedAt`, `UpdatedAt` |
|
|
63
|
+
| Date-only field | `DateOnly` | `Date`, `StartDate`, `EndDate`, `BirthDate` |
|
|
64
|
+
| `string` for date | **FORBIDDEN** | Never use `string` for dates |
|
|
65
|
+
| `DateTime` for date-only | **Avoid** | Use `DateOnly` when no time component needed |
|
|
66
|
+
|
|
67
|
+
POST-CHECK 47 validates this. If a DTO has `string` type for a property named `*Date*` → BLOCKING.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Code Generation (if entities have codePattern != "manual")
|
|
72
|
+
|
|
73
|
+
For each entity with auto-generated code pattern (from feature.json or step-02 decisions):
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
1. Create CodePatternConfig for the entity (strategy, prefix, digits from codePattern)
|
|
77
|
+
2. Register ICodeGenerator<TEntity> in DependencyInjection.cs (Infrastructure layer)
|
|
78
|
+
→ See references/code-generation.md for DI registration pattern
|
|
79
|
+
3. Update CreateDto: REMOVE Code property (auto-generated, not user-provided)
|
|
80
|
+
4. Update CreateDtoValidator: REMOVE Code regex rule (not in DTO anymore)
|
|
81
|
+
5. Update service CreateAsync: inject ICodeGenerator<TEntity>, call NextCodeAsync()
|
|
82
|
+
→ Code is auto-generated BEFORE entity creation
|
|
83
|
+
→ See references/code-generation.md for service integration pattern
|
|
84
|
+
6. Keep Code in ResponseDto (returned to frontend after creation)
|
|
85
|
+
7. Keep Code in UpdateDto ONLY if code is mutable (rare — discuss with user)
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**CRITICAL:** If `codePattern.strategy == "manual"` (or no codePattern), keep the current behavior: Code stays in CreateDto, user provides it, validator has regex rule.
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Sequential vs Parallel Execution
|
|
93
|
+
|
|
94
|
+
**If economy_mode:** Execute each item from the plan sequentially using skills and MCP.
|
|
95
|
+
|
|
96
|
+
**If NOT economy_mode:** See `references/agent-teams-protocol.md` for parallel team-based execution with exec-backend and exec-frontend teammates.
|
|
@@ -1,110 +1,110 @@
|
|
|
1
|
-
# Initialization — Challenge Flow & Hierarchy Definition
|
|
2
|
-
|
|
3
|
-
> **Loaded by:** step-00-init.md (sections 4-5)
|
|
4
|
-
> **Purpose:** Detailed flow for challenging user hierarchy assumptions and defining the 4-level navigation structure.
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Challenge Questions Reference
|
|
9
|
-
|
|
10
|
-
> **Complete question templates with validation:**
|
|
11
|
-
> Load `references/challenge-questions.md` for the actual YAML question blocks and validation logic.
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## 4-Level Navigation Hierarchy (BLOCKING RULE)
|
|
16
|
-
|
|
17
|
-
SmartStack uses a **4-level navigation hierarchy:**
|
|
18
|
-
- **Level 1: Application** — e.g., "HumanResources", "ProjectManagement"
|
|
19
|
-
- **Level 2: Module** — e.g., "Employees", "Timesheet"
|
|
20
|
-
- **Level 3: Section** — e.g., "List", "Dashboard", "Approval"
|
|
21
|
-
- **Level 4: Resource** — e.g., "Export", "Settings" (optional)
|
|
22
|
-
|
|
23
|
-
**BLOCKING RULE:** Every module MUST have at least one section. A module without sections produces an incomplete navigation tree, broken seed data, and missing frontend routes.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Step 4: Validate Application Level (4a)
|
|
28
|
-
|
|
29
|
-
Load application question from `references/challenge-questions.md` section 4a.
|
|
30
|
-
|
|
31
|
-
**If `{app_name}` was clearly inferred from the task description:**
|
|
32
|
-
- Skip question, use inferred value
|
|
33
|
-
|
|
34
|
-
**If unclear:**
|
|
35
|
-
- Present question with best guess as recommended option
|
|
36
|
-
- Options:
|
|
37
|
-
1. "Inferred app name (Recommended)" + description
|
|
38
|
-
2. "New application" + option to create
|
|
39
|
-
3. "Existing application" + option to select from scanned projects
|
|
40
|
-
- If "New application": collect `{app_name}`, `{app_code}`, `{app_icon}`, `{app_labels}` (4 langs)
|
|
41
|
-
- If "Existing application": scan `**/Seeding/Data/**/NavigationApplicationSeedData.cs` and present discovered apps
|
|
42
|
-
|
|
43
|
-
---
|
|
44
|
-
|
|
45
|
-
## Step 4b: Validate Module Level
|
|
46
|
-
|
|
47
|
-
Load module question from `references/challenge-questions.md` section 4b.
|
|
48
|
-
|
|
49
|
-
**If `{module_code}` was clearly inferred:**
|
|
50
|
-
- Skip question
|
|
51
|
-
|
|
52
|
-
**If unclear:**
|
|
53
|
-
- Present question with best guess(es) as options
|
|
54
|
-
- Options:
|
|
55
|
-
1. "Inferred module code (Recommended)" + from task description
|
|
56
|
-
2. "Alternative suggestions" + based on keywords
|
|
57
|
-
- User selects or enters custom value
|
|
58
|
-
- Store as `{module_code}` (kebab-case)
|
|
59
|
-
|
|
60
|
-
---
|
|
61
|
-
|
|
62
|
-
## Step 4c: Define Sections (MANDATORY — at least one)
|
|
63
|
-
|
|
64
|
-
Load section questions from `references/challenge-questions.md` section 4c.
|
|
65
|
-
|
|
66
|
-
**BLOCKING VALIDATION:** Sections list MUST contain at least one entry before proceeding.
|
|
67
|
-
|
|
68
|
-
Infer section suggestions from:
|
|
69
|
-
1. Task description (extract nouns/concepts that suggest functional sub-areas)
|
|
70
|
-
2. PRD/feature.json if available (module.sections)
|
|
71
|
-
3. Common patterns: "list" (default for simple CRUD), "dashboard", "settings", "reports"
|
|
72
|
-
|
|
73
|
-
**Question format:**
|
|
74
|
-
```yaml
|
|
75
|
-
question: "What sections should the module '{module_code}' contain?
|
|
76
|
-
(Select at least one — use 'Other' to add custom sections)"
|
|
77
|
-
options:
|
|
78
|
-
- label: "<inferred section 1>"
|
|
79
|
-
description: "Primary functional area based on module purpose"
|
|
80
|
-
- label: "<inferred section 2>"
|
|
81
|
-
description: "Secondary functional area"
|
|
82
|
-
- label: "<inferred section 3>"
|
|
83
|
-
description: "Additional area inferred from context"
|
|
84
|
-
multiSelect: true
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
**Validation (BLOCKING):**
|
|
88
|
-
```
|
|
89
|
-
IF {sections}.length == 0:
|
|
90
|
-
DISPLAY: "Every module must have at least one section."
|
|
91
|
-
→ Re-ask the sections question
|
|
92
|
-
→ DO NOT proceed to next step
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
**Store for each section:**
|
|
96
|
-
```yaml
|
|
97
|
-
sections:
|
|
98
|
-
- code: "section-kebab"
|
|
99
|
-
labels: { fr: "...", en: "...", it: "...", de: "..." }
|
|
100
|
-
icon: "LucideIconName"
|
|
101
|
-
displayOrder: 10
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## Delegate Mode Skip (if -d)
|
|
107
|
-
|
|
108
|
-
When `/ralph-loop` invokes `/apex -d {prd_path}`, ALL hierarchy is extracted from the PRD file:
|
|
109
|
-
- Skip sections 2-4 (no interactive questions)
|
|
110
|
-
- Jump directly to section 3 (MCP verify)
|
|
1
|
+
# Initialization — Challenge Flow & Hierarchy Definition
|
|
2
|
+
|
|
3
|
+
> **Loaded by:** step-00-init.md (sections 4-5)
|
|
4
|
+
> **Purpose:** Detailed flow for challenging user hierarchy assumptions and defining the 4-level navigation structure.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Challenge Questions Reference
|
|
9
|
+
|
|
10
|
+
> **Complete question templates with validation:**
|
|
11
|
+
> Load `references/challenge-questions.md` for the actual YAML question blocks and validation logic.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 4-Level Navigation Hierarchy (BLOCKING RULE)
|
|
16
|
+
|
|
17
|
+
SmartStack uses a **4-level navigation hierarchy:**
|
|
18
|
+
- **Level 1: Application** — e.g., "HumanResources", "ProjectManagement"
|
|
19
|
+
- **Level 2: Module** — e.g., "Employees", "Timesheet"
|
|
20
|
+
- **Level 3: Section** — e.g., "List", "Dashboard", "Approval"
|
|
21
|
+
- **Level 4: Resource** — e.g., "Export", "Settings" (optional)
|
|
22
|
+
|
|
23
|
+
**BLOCKING RULE:** Every module MUST have at least one section. A module without sections produces an incomplete navigation tree, broken seed data, and missing frontend routes.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Step 4: Validate Application Level (4a)
|
|
28
|
+
|
|
29
|
+
Load application question from `references/challenge-questions.md` section 4a.
|
|
30
|
+
|
|
31
|
+
**If `{app_name}` was clearly inferred from the task description:**
|
|
32
|
+
- Skip question, use inferred value
|
|
33
|
+
|
|
34
|
+
**If unclear:**
|
|
35
|
+
- Present question with best guess as recommended option
|
|
36
|
+
- Options:
|
|
37
|
+
1. "Inferred app name (Recommended)" + description
|
|
38
|
+
2. "New application" + option to create
|
|
39
|
+
3. "Existing application" + option to select from scanned projects
|
|
40
|
+
- If "New application": collect `{app_name}`, `{app_code}`, `{app_icon}`, `{app_labels}` (4 langs)
|
|
41
|
+
- If "Existing application": scan `**/Seeding/Data/**/NavigationApplicationSeedData.cs` and present discovered apps
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## Step 4b: Validate Module Level
|
|
46
|
+
|
|
47
|
+
Load module question from `references/challenge-questions.md` section 4b.
|
|
48
|
+
|
|
49
|
+
**If `{module_code}` was clearly inferred:**
|
|
50
|
+
- Skip question
|
|
51
|
+
|
|
52
|
+
**If unclear:**
|
|
53
|
+
- Present question with best guess(es) as options
|
|
54
|
+
- Options:
|
|
55
|
+
1. "Inferred module code (Recommended)" + from task description
|
|
56
|
+
2. "Alternative suggestions" + based on keywords
|
|
57
|
+
- User selects or enters custom value
|
|
58
|
+
- Store as `{module_code}` (kebab-case)
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Step 4c: Define Sections (MANDATORY — at least one)
|
|
63
|
+
|
|
64
|
+
Load section questions from `references/challenge-questions.md` section 4c.
|
|
65
|
+
|
|
66
|
+
**BLOCKING VALIDATION:** Sections list MUST contain at least one entry before proceeding.
|
|
67
|
+
|
|
68
|
+
Infer section suggestions from:
|
|
69
|
+
1. Task description (extract nouns/concepts that suggest functional sub-areas)
|
|
70
|
+
2. PRD/feature.json if available (module.sections)
|
|
71
|
+
3. Common patterns: "list" (default for simple CRUD), "dashboard", "settings", "reports"
|
|
72
|
+
|
|
73
|
+
**Question format:**
|
|
74
|
+
```yaml
|
|
75
|
+
question: "What sections should the module '{module_code}' contain?
|
|
76
|
+
(Select at least one — use 'Other' to add custom sections)"
|
|
77
|
+
options:
|
|
78
|
+
- label: "<inferred section 1>"
|
|
79
|
+
description: "Primary functional area based on module purpose"
|
|
80
|
+
- label: "<inferred section 2>"
|
|
81
|
+
description: "Secondary functional area"
|
|
82
|
+
- label: "<inferred section 3>"
|
|
83
|
+
description: "Additional area inferred from context"
|
|
84
|
+
multiSelect: true
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
**Validation (BLOCKING):**
|
|
88
|
+
```
|
|
89
|
+
IF {sections}.length == 0:
|
|
90
|
+
DISPLAY: "Every module must have at least one section."
|
|
91
|
+
→ Re-ask the sections question
|
|
92
|
+
→ DO NOT proceed to next step
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**Store for each section:**
|
|
96
|
+
```yaml
|
|
97
|
+
sections:
|
|
98
|
+
- code: "section-kebab"
|
|
99
|
+
labels: { fr: "...", en: "...", it: "...", de: "..." }
|
|
100
|
+
icon: "LucideIconName"
|
|
101
|
+
displayOrder: 10
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Delegate Mode Skip (if -d)
|
|
107
|
+
|
|
108
|
+
When `/ralph-loop` invokes `/apex -d {prd_path}`, ALL hierarchy is extracted from the PRD file:
|
|
109
|
+
- Skip sections 2-4 (no interactive questions)
|
|
110
|
+
- Jump directly to section 3 (MCP verify)
|