@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,39 +1,39 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: step-01-compile
|
|
3
|
-
description: Build the full solution to verify compilation
|
|
4
|
-
next_step: steps/step-02-unit-tests.md
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Step 1: Compilation Check
|
|
8
|
-
|
|
9
|
-
## BLOCKING - Must pass before proceeding
|
|
10
|
-
|
|
11
|
-
### 1. Locate the solution file
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
# Find the .sln file
|
|
15
|
-
ls *.sln 2>/dev/null || find . -maxdepth 2 -name "*.sln" -type f
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
### 2. Cleanup & Build
|
|
19
|
-
|
|
20
|
-
```bash
|
|
21
|
-
dotnet build {SolutionFile} --verbosity minimal
|
|
22
|
-
# Note: WSL bin\Debug cleanup handled by PostToolUse hook (wsl-dotnet-cleanup.sh)
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
### 3. Evaluate result
|
|
26
|
-
|
|
27
|
-
- **Build succeeded** -> Proceed to step 2
|
|
28
|
-
- **Build failed** -> Read the error output, identify the issue:
|
|
29
|
-
- Missing using statement -> Add it
|
|
30
|
-
- Type not found -> Check project references
|
|
31
|
-
- Method signature mismatch -> Fix the code
|
|
32
|
-
- **Re-build until it succeeds**
|
|
33
|
-
|
|
34
|
-
### 4. Store state
|
|
35
|
-
|
|
36
|
-
```
|
|
37
|
-
{solution_file} = path to .sln file
|
|
38
|
-
{build_result} = PASS or FAIL
|
|
39
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: step-01-compile
|
|
3
|
+
description: Build the full solution to verify compilation
|
|
4
|
+
next_step: steps/step-02-unit-tests.md
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 1: Compilation Check
|
|
8
|
+
|
|
9
|
+
## BLOCKING - Must pass before proceeding
|
|
10
|
+
|
|
11
|
+
### 1. Locate the solution file
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Find the .sln file
|
|
15
|
+
ls *.sln 2>/dev/null || find . -maxdepth 2 -name "*.sln" -type f
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
### 2. Cleanup & Build
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
dotnet build {SolutionFile} --verbosity minimal
|
|
22
|
+
# Note: WSL bin\Debug cleanup handled by PostToolUse hook (wsl-dotnet-cleanup.sh)
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### 3. Evaluate result
|
|
26
|
+
|
|
27
|
+
- **Build succeeded** -> Proceed to step 2
|
|
28
|
+
- **Build failed** -> Read the error output, identify the issue:
|
|
29
|
+
- Missing using statement -> Add it
|
|
30
|
+
- Type not found -> Check project references
|
|
31
|
+
- Method signature mismatch -> Fix the code
|
|
32
|
+
- **Re-build until it succeeds**
|
|
33
|
+
|
|
34
|
+
### 4. Store state
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
{solution_file} = path to .sln file
|
|
38
|
+
{build_result} = PASS or FAIL
|
|
39
|
+
```
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: step-02-unit-tests
|
|
3
|
-
description: Run unit tests to verify business logic
|
|
4
|
-
prev_step: steps/step-01-compile.md
|
|
5
|
-
next_step: steps/step-03-integration-tests.md
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Step 2: Unit Tests
|
|
9
|
-
|
|
10
|
-
## BLOCKING - All unit tests must pass
|
|
11
|
-
|
|
12
|
-
### 1. Locate the test project
|
|
13
|
-
|
|
14
|
-
```bash
|
|
15
|
-
# Find test project
|
|
16
|
-
ls tests/*/*.csproj 2>/dev/null || ls *Tests*/*.csproj 2>/dev/null
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
### 2. Run unit tests only
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
dotnet test {TestProject} --no-build --filter "FullyQualifiedName~Unit" --verbosity normal
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
If the filter doesn't match, try:
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
dotnet test {TestProject} --no-build --filter "Category!=Integration" --verbosity normal
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
### 3. Evaluate result
|
|
32
|
-
|
|
33
|
-
- **All tests passed** -> Proceed to step 3
|
|
34
|
-
- **Tests failed** -> Read the failure output:
|
|
35
|
-
- Assertion failure -> Check if the test expectation matches the implementation
|
|
36
|
-
- Exception thrown -> Check if the service/entity code is correct
|
|
37
|
-
- Compilation error -> Should not happen (step 1 passed), but fix if it does
|
|
38
|
-
- **Fix and re-run until all pass**
|
|
39
|
-
|
|
40
|
-
### 4. Store state
|
|
41
|
-
|
|
42
|
-
```
|
|
43
|
-
{unit_test_count} = number of tests that passed
|
|
44
|
-
{unit_test_result} = PASS or FAIL
|
|
45
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: step-02-unit-tests
|
|
3
|
+
description: Run unit tests to verify business logic
|
|
4
|
+
prev_step: steps/step-01-compile.md
|
|
5
|
+
next_step: steps/step-03-integration-tests.md
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Step 2: Unit Tests
|
|
9
|
+
|
|
10
|
+
## BLOCKING - All unit tests must pass
|
|
11
|
+
|
|
12
|
+
### 1. Locate the test project
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
# Find test project
|
|
16
|
+
ls tests/*/*.csproj 2>/dev/null || ls *Tests*/*.csproj 2>/dev/null
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### 2. Run unit tests only
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
dotnet test {TestProject} --no-build --filter "FullyQualifiedName~Unit" --verbosity normal
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
If the filter doesn't match, try:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
dotnet test {TestProject} --no-build --filter "Category!=Integration" --verbosity normal
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 3. Evaluate result
|
|
32
|
+
|
|
33
|
+
- **All tests passed** -> Proceed to step 3
|
|
34
|
+
- **Tests failed** -> Read the failure output:
|
|
35
|
+
- Assertion failure -> Check if the test expectation matches the implementation
|
|
36
|
+
- Exception thrown -> Check if the service/entity code is correct
|
|
37
|
+
- Compilation error -> Should not happen (step 1 passed), but fix if it does
|
|
38
|
+
- **Fix and re-run until all pass**
|
|
39
|
+
|
|
40
|
+
### 4. Store state
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
{unit_test_count} = number of tests that passed
|
|
44
|
+
{unit_test_result} = PASS or FAIL
|
|
45
|
+
```
|
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: step-03-integration-tests
|
|
3
|
-
description: Run integration tests to verify real DB operations
|
|
4
|
-
prev_step: steps/step-02-unit-tests.md
|
|
5
|
-
next_step: steps/step-04-api-smoke.md
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Step 3: Integration Tests
|
|
9
|
-
|
|
10
|
-
## BLOCKING - All integration tests must pass
|
|
11
|
-
|
|
12
|
-
### 1. Run integration tests
|
|
13
|
-
|
|
14
|
-
```bash
|
|
15
|
-
dotnet test {TestProject} --no-build --filter "FullyQualifiedName~Integration" --verbosity normal
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
If the filter doesn't match, try:
|
|
19
|
-
|
|
20
|
-
```bash
|
|
21
|
-
dotnet test {TestProject} --no-build --filter "FullyQualifiedName~ControllerIntegrationTests|FullyQualifiedName~RepositoryTests" --verbosity normal
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
### 2. What these tests verify
|
|
25
|
-
|
|
26
|
-
Integration tests use `SmartStackTestFactory` (WebApplicationFactory with SQLite) to run the REAL application pipeline:
|
|
27
|
-
|
|
28
|
-
| What | How |
|
|
29
|
-
|------|-----|
|
|
30
|
-
| Controller routing | HTTP requests hit actual controller endpoints |
|
|
31
|
-
| DI pipeline | Real services and repositories are injected |
|
|
32
|
-
| Database operations | SQLite in-memory stores and retrieves data |
|
|
33
|
-
| Auth middleware | TestAuthHandler provides fake authenticated user |
|
|
34
|
-
| Tenant isolation | Requests with different tenant IDs see different data |
|
|
35
|
-
| Data persistence | POST creates data, GET retrieves it from DB |
|
|
36
|
-
|
|
37
|
-
### 3. Evaluate result
|
|
38
|
-
|
|
39
|
-
- **All tests passed** -> Proceed to step 4
|
|
40
|
-
- **Tests failed** -> Common issues:
|
|
41
|
-
- `Program` not accessible -> Add `public partial class Program { }` to Program.cs
|
|
42
|
-
- DbContext configuration error -> Check that SQLite provider is properly configured
|
|
43
|
-
- Service not registered -> Check DI registration in `Program.cs` or startup
|
|
44
|
-
- Migration issue -> Ensure `EnsureCreatedAsync()` works with SQLite
|
|
45
|
-
- Tenant filter issue -> Check global query filters work with test tenant
|
|
46
|
-
- **Fix and re-run until all pass**
|
|
47
|
-
|
|
48
|
-
### 4. Store state
|
|
49
|
-
|
|
50
|
-
```
|
|
51
|
-
{integration_test_count} = number of tests that passed
|
|
52
|
-
{integration_test_result} = PASS or FAIL
|
|
53
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: step-03-integration-tests
|
|
3
|
+
description: Run integration tests to verify real DB operations
|
|
4
|
+
prev_step: steps/step-02-unit-tests.md
|
|
5
|
+
next_step: steps/step-04-api-smoke.md
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Step 3: Integration Tests
|
|
9
|
+
|
|
10
|
+
## BLOCKING - All integration tests must pass
|
|
11
|
+
|
|
12
|
+
### 1. Run integration tests
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
dotnet test {TestProject} --no-build --filter "FullyQualifiedName~Integration" --verbosity normal
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
If the filter doesn't match, try:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
dotnet test {TestProject} --no-build --filter "FullyQualifiedName~ControllerIntegrationTests|FullyQualifiedName~RepositoryTests" --verbosity normal
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### 2. What these tests verify
|
|
25
|
+
|
|
26
|
+
Integration tests use `SmartStackTestFactory` (WebApplicationFactory with SQLite) to run the REAL application pipeline:
|
|
27
|
+
|
|
28
|
+
| What | How |
|
|
29
|
+
|------|-----|
|
|
30
|
+
| Controller routing | HTTP requests hit actual controller endpoints |
|
|
31
|
+
| DI pipeline | Real services and repositories are injected |
|
|
32
|
+
| Database operations | SQLite in-memory stores and retrieves data |
|
|
33
|
+
| Auth middleware | TestAuthHandler provides fake authenticated user |
|
|
34
|
+
| Tenant isolation | Requests with different tenant IDs see different data |
|
|
35
|
+
| Data persistence | POST creates data, GET retrieves it from DB |
|
|
36
|
+
|
|
37
|
+
### 3. Evaluate result
|
|
38
|
+
|
|
39
|
+
- **All tests passed** -> Proceed to step 4
|
|
40
|
+
- **Tests failed** -> Common issues:
|
|
41
|
+
- `Program` not accessible -> Add `public partial class Program { }` to Program.cs
|
|
42
|
+
- DbContext configuration error -> Check that SQLite provider is properly configured
|
|
43
|
+
- Service not registered -> Check DI registration in `Program.cs` or startup
|
|
44
|
+
- Migration issue -> Ensure `EnsureCreatedAsync()` works with SQLite
|
|
45
|
+
- Tenant filter issue -> Check global query filters work with test tenant
|
|
46
|
+
- **Fix and re-run until all pass**
|
|
47
|
+
|
|
48
|
+
### 4. Store state
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
{integration_test_count} = number of tests that passed
|
|
52
|
+
{integration_test_result} = PASS or FAIL
|
|
53
|
+
```
|
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: step-04-api-smoke
|
|
3
|
-
description: Start the API and test CRUD endpoints with real HTTP requests
|
|
4
|
-
prev_step: steps/step-03-integration-tests.md
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Step 4: API Smoke Test
|
|
8
|
-
|
|
9
|
-
## BLOCKING - All CRUD endpoints must respond correctly
|
|
10
|
-
|
|
11
|
-
See `references/api-smoke-tests.md` for complete startup, CRUD sequence, and error classification.
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## Quick Procedure
|
|
16
|
-
|
|
17
|
-
### 1. Find the API project
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
ls src/*Api*/*.csproj 2>/dev/null || ls *Api*/*.csproj 2>/dev/null
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
### 2. Start API (see reference for crash detection)
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
dotnet run --project {ApiProject} --urls "http://localhost:5099" > /tmp/api-smoke-output.log 2>&1 &
|
|
27
|
-
API_PID=$!
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
### 3. CRUD Tests
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
# GET all (200)
|
|
34
|
-
# POST create (201)
|
|
35
|
-
# GET by ID (200)
|
|
36
|
-
# PUT update (200)
|
|
37
|
-
# DELETE (204)
|
|
38
|
-
# GET deleted (404) — verify deletion
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
See `references/api-smoke-tests.md` section "CRUD Test Sequence" for exact curl commands.
|
|
42
|
-
|
|
43
|
-
### 4. HTTP Error Handling
|
|
44
|
-
|
|
45
|
-
| Status | Cause | Fix |
|
|
46
|
-
|--------|-------|-----|
|
|
47
|
-
| 401 | Auth not configured | Check JWT setup |
|
|
48
|
-
| 403 | Permissions missing | Verify PermissionConfiguration |
|
|
49
|
-
| 404 | Route not registered | Check NavRoute on controller |
|
|
50
|
-
| 500 | Unhandled exception | Check API logs |
|
|
51
|
-
| Connection refused | API won't start | Check appsettings.json |
|
|
52
|
-
|
|
53
|
-
### 5. Crash Classification
|
|
54
|
-
|
|
55
|
-
If API crashes at startup:
|
|
56
|
-
- Classify error from `/tmp/api-smoke-output.log`
|
|
57
|
-
- See `references/api-smoke-tests.md` section "Crash Classification"
|
|
58
|
-
- Common: MISSING_PACKAGE, VERSION_MISMATCH, MISSING_DI, DATABASE_ERROR
|
|
59
|
-
|
|
60
|
-
### 6. Stop API
|
|
61
|
-
|
|
62
|
-
```bash
|
|
63
|
-
kill $API_PID 2>/dev/null
|
|
64
|
-
wait $API_PID 2>/dev/null
|
|
65
|
-
rm -f /tmp/api-smoke-output.log
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
---
|
|
69
|
-
|
|
70
|
-
## Report
|
|
71
|
-
|
|
72
|
-
```markdown
|
|
73
|
-
## Feature Validation: {entity_name}
|
|
74
|
-
|
|
75
|
-
| Check | Result | Details |
|
|
76
|
-
|-------|--------|---------|
|
|
77
|
-
| Solution build | {build_result} | |
|
|
78
|
-
| Unit tests | {unit_test_result} | {unit_test_count} passed |
|
|
79
|
-
| Integration tests | {integration_test_result} | {integration_test_count} passed |
|
|
80
|
-
| GET /api/{entity_code} | {status} | |
|
|
81
|
-
| POST /api/{entity_code} | {status} | |
|
|
82
|
-
| GET /api/{entity_code}/{id} | {status} | |
|
|
83
|
-
| PUT /api/{entity_code}/{id} | {status} | |
|
|
84
|
-
| DELETE /api/{entity_code}/{id} | {status} | |
|
|
85
|
-
| GET deleted entity | {status} | |
|
|
86
|
-
|
|
87
|
-
### Overall: {ALL_PASS or FAILURES_DETECTED}
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## NEXT STEP:
|
|
93
|
-
|
|
94
|
-
Proceed to `./step-05-db-validation.md`
|
|
1
|
+
---
|
|
2
|
+
name: step-04-api-smoke
|
|
3
|
+
description: Start the API and test CRUD endpoints with real HTTP requests
|
|
4
|
+
prev_step: steps/step-03-integration-tests.md
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 4: API Smoke Test
|
|
8
|
+
|
|
9
|
+
## BLOCKING - All CRUD endpoints must respond correctly
|
|
10
|
+
|
|
11
|
+
See `references/api-smoke-tests.md` for complete startup, CRUD sequence, and error classification.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Quick Procedure
|
|
16
|
+
|
|
17
|
+
### 1. Find the API project
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
ls src/*Api*/*.csproj 2>/dev/null || ls *Api*/*.csproj 2>/dev/null
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### 2. Start API (see reference for crash detection)
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
dotnet run --project {ApiProject} --urls "http://localhost:5099" > /tmp/api-smoke-output.log 2>&1 &
|
|
27
|
+
API_PID=$!
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### 3. CRUD Tests
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# GET all (200)
|
|
34
|
+
# POST create (201)
|
|
35
|
+
# GET by ID (200)
|
|
36
|
+
# PUT update (200)
|
|
37
|
+
# DELETE (204)
|
|
38
|
+
# GET deleted (404) — verify deletion
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
See `references/api-smoke-tests.md` section "CRUD Test Sequence" for exact curl commands.
|
|
42
|
+
|
|
43
|
+
### 4. HTTP Error Handling
|
|
44
|
+
|
|
45
|
+
| Status | Cause | Fix |
|
|
46
|
+
|--------|-------|-----|
|
|
47
|
+
| 401 | Auth not configured | Check JWT setup |
|
|
48
|
+
| 403 | Permissions missing | Verify PermissionConfiguration |
|
|
49
|
+
| 404 | Route not registered | Check NavRoute on controller |
|
|
50
|
+
| 500 | Unhandled exception | Check API logs |
|
|
51
|
+
| Connection refused | API won't start | Check appsettings.json |
|
|
52
|
+
|
|
53
|
+
### 5. Crash Classification
|
|
54
|
+
|
|
55
|
+
If API crashes at startup:
|
|
56
|
+
- Classify error from `/tmp/api-smoke-output.log`
|
|
57
|
+
- See `references/api-smoke-tests.md` section "Crash Classification"
|
|
58
|
+
- Common: MISSING_PACKAGE, VERSION_MISMATCH, MISSING_DI, DATABASE_ERROR
|
|
59
|
+
|
|
60
|
+
### 6. Stop API
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
kill $API_PID 2>/dev/null
|
|
64
|
+
wait $API_PID 2>/dev/null
|
|
65
|
+
rm -f /tmp/api-smoke-output.log
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Report
|
|
71
|
+
|
|
72
|
+
```markdown
|
|
73
|
+
## Feature Validation: {entity_name}
|
|
74
|
+
|
|
75
|
+
| Check | Result | Details |
|
|
76
|
+
|-------|--------|---------|
|
|
77
|
+
| Solution build | {build_result} | |
|
|
78
|
+
| Unit tests | {unit_test_result} | {unit_test_count} passed |
|
|
79
|
+
| Integration tests | {integration_test_result} | {integration_test_count} passed |
|
|
80
|
+
| GET /api/{entity_code} | {status} | |
|
|
81
|
+
| POST /api/{entity_code} | {status} | |
|
|
82
|
+
| GET /api/{entity_code}/{id} | {status} | |
|
|
83
|
+
| PUT /api/{entity_code}/{id} | {status} | |
|
|
84
|
+
| DELETE /api/{entity_code}/{id} | {status} | |
|
|
85
|
+
| GET deleted entity | {status} | |
|
|
86
|
+
|
|
87
|
+
### Overall: {ALL_PASS or FAILURES_DETECTED}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## NEXT STEP:
|
|
93
|
+
|
|
94
|
+
Proceed to `./step-05-db-validation.md`
|