@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,144 +1,144 @@
|
|
|
1
|
-
# Error Classification Reference
|
|
2
|
-
|
|
3
|
-
> **Loaded by:** apex step-03-execute (build failure) and step-04-examine (validation)
|
|
4
|
-
> **Purpose:** Classify build and runtime errors to apply the correct fix strategy.
|
|
5
|
-
> **Key insight:** Not all errors are code errors. Package/config errors require different fixes than code errors.
|
|
6
|
-
> **Moved from:** `ralph-loop/references/error-classification.md` (delegation refactoring)
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Error Categories
|
|
11
|
-
|
|
12
|
-
### Category A: Missing NuGet Package (FIX = `dotnet add package`)
|
|
13
|
-
|
|
14
|
-
> **These errors CANNOT be fixed by editing source code. Do NOT waste iterations trying.**
|
|
15
|
-
|
|
16
|
-
| Error Pattern | Example | Fix |
|
|
17
|
-
|--------------|---------|-----|
|
|
18
|
-
| `FileNotFoundException: Could not load file or assembly '{Name}, Version={V}'` | `Could not load file or assembly 'Microsoft.Extensions.Http.Resilience, Version=10.2.0.0'` | `dotnet add package {Name} --version {V.Major}.{V.Minor}.{V.Patch}` |
|
|
19
|
-
| `error CS0246: The type or namespace name '{Type}' could not be found` (after restore) | `The type or namespace name 'Polly' could not be found` | `dotnet add package {PackageName}` |
|
|
20
|
-
| `error NU1101: Unable to find package {Name}` | Package source misconfigured | Check `nuget.config` sources |
|
|
21
|
-
|
|
22
|
-
**Detection heuristic:** If `dotnet build` fails with CS0246 and the missing type is NOT in any project file (grep across `src/`), it is a missing package, not a missing `using` statement.
|
|
23
|
-
|
|
24
|
-
**Fix procedure:**
|
|
25
|
-
1. Extract package name from error message
|
|
26
|
-
2. Run `dotnet add {TargetProject} package {PackageName}`
|
|
27
|
-
3. Run `dotnet restore`
|
|
28
|
-
4. Rebuild -- if still failing, the version may need to be pinned
|
|
29
|
-
|
|
30
|
-
---
|
|
31
|
-
|
|
32
|
-
### Category B: Version Mismatch (FIX = update package version)
|
|
33
|
-
|
|
34
|
-
> **These errors CANNOT be fixed by editing source code.**
|
|
35
|
-
|
|
36
|
-
| Error Pattern | Example | Fix |
|
|
37
|
-
|--------------|---------|-----|
|
|
38
|
-
| `TypeLoadException: Could not load type '{Type}' from assembly '{Asm}'` | Type exists in different version | `dotnet add package {Asm} --version {CorrectVersion}` |
|
|
39
|
-
| `MissingMethodException: Method not found: '{Method}'` | Method signature changed between versions | Update to version that has the method |
|
|
40
|
-
| `NU1605: Detected package downgrade` | Version conflict in dependency tree | Align all references to same version |
|
|
41
|
-
| `FileLoadException: Could not load file or assembly '{Name}'. The located assembly's manifest definition does not match the assembly reference.` | Wrong version loaded | Pin correct version in .csproj |
|
|
42
|
-
|
|
43
|
-
**Fix procedure:**
|
|
44
|
-
1. Identify the assembly/package name
|
|
45
|
-
2. Run `dotnet list package --include-transitive` to see actual resolved version
|
|
46
|
-
3. If conflict: add explicit `<PackageReference>` with correct version
|
|
47
|
-
4. Rebuild
|
|
48
|
-
|
|
49
|
-
---
|
|
50
|
-
|
|
51
|
-
### Category C: Missing DI Registration (FIX = edit DI configuration)
|
|
52
|
-
|
|
53
|
-
> **These errors require editing `DependencyInjection.cs` or `Program.cs`, NOT the service/interface code.**
|
|
54
|
-
|
|
55
|
-
| Error Pattern | Example | Fix |
|
|
56
|
-
|--------------|---------|-----|
|
|
57
|
-
| `InvalidOperationException: Unable to resolve service for type '{Interface}'` | Missing `services.AddScoped<IFoo, Foo>()` | Add DI registration |
|
|
58
|
-
| `InvalidOperationException: No service for type '{Type}' has been registered` | Same as above | Same |
|
|
59
|
-
| `InvalidOperationException: Unable to resolve service for type '{Type}' while attempting to activate '{Consumer}'` | Consumer's dependency not registered | Register the missing dependency |
|
|
60
|
-
|
|
61
|
-
**Fix procedure:**
|
|
62
|
-
1. Extract the interface/type name from error
|
|
63
|
-
2. Find the implementation class (grep for `class.*: {Interface}`)
|
|
64
|
-
3. Add `services.AddScoped<{Interface}, {Implementation}>()` to appropriate DI file
|
|
65
|
-
4. Rebuild
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
### Category D: Database/Migration (FIX = run migration commands)
|
|
70
|
-
|
|
71
|
-
| Error Pattern | Example | Fix |
|
|
72
|
-
|--------------|---------|-----|
|
|
73
|
-
| `SqlException: Invalid object name '{TableName}'` | Table does not exist | `dotnet ef database update` |
|
|
74
|
-
| `SqlException: Invalid column name '{Column}'` | Column not in schema | Create and apply migration |
|
|
75
|
-
| `RelationalEventId.PendingModelChangesWarning` | Model changed, no migration | `dotnet ef migrations add {Name}` |
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
|
-
### Category E: Configuration (FIX = edit appsettings.json)
|
|
80
|
-
|
|
81
|
-
| Error Pattern | Example | Fix |
|
|
82
|
-
|--------------|---------|-----|
|
|
83
|
-
| `InvalidOperationException: The ConnectionString property has not been initialized` | Missing connection string | Add to `appsettings.json` |
|
|
84
|
-
| `ArgumentNullException: Value cannot be null. (Parameter 'connectionString')` | Same | Same |
|
|
85
|
-
| `OptionsValidationException: Validation failed for '{Section}'` | Missing required config section | Add section to `appsettings.json` |
|
|
86
|
-
|
|
87
|
-
---
|
|
88
|
-
|
|
89
|
-
### Category F: Code Error (FIX = edit source code)
|
|
90
|
-
|
|
91
|
-
> **Only this category should trigger code editing in ralph-loop iterations.**
|
|
92
|
-
|
|
93
|
-
| Error Pattern | Example | Fix |
|
|
94
|
-
|--------------|---------|-----|
|
|
95
|
-
| `error CS0246` + type IS in a project file | Missing `using` statement | Add `using {Namespace};` |
|
|
96
|
-
| `error CS1061` | Method does not exist on type | Fix method call or add method |
|
|
97
|
-
| `error CS0103` | Name does not exist in current context | Fix variable/method reference |
|
|
98
|
-
| `error CS0029` | Cannot implicitly convert type | Fix type mismatch |
|
|
99
|
-
| Test assertion failures | `Assert.Equal` fails | Fix source code (not tests) |
|
|
100
|
-
|
|
101
|
-
---
|
|
102
|
-
|
|
103
|
-
## Decision Tree
|
|
104
|
-
|
|
105
|
-
When a build or runtime error occurs, follow this tree:
|
|
106
|
-
|
|
107
|
-
```
|
|
108
|
-
BUILD/RUNTIME ERROR
|
|
109
|
-
|
|
|
110
|
-
+-- Contains "Could not load file or assembly" ?
|
|
111
|
-
| YES -> Category A or B (NEVER edit source code)
|
|
112
|
-
| Extract package name -> dotnet add package -> rebuild
|
|
113
|
-
|
|
|
114
|
-
+-- Contains "Unable to resolve service" ?
|
|
115
|
-
| YES -> Category C (edit DI config ONLY)
|
|
116
|
-
| Find implementation -> add registration -> rebuild
|
|
117
|
-
|
|
|
118
|
-
+-- Contains "SqlException" or "Invalid object name" ?
|
|
119
|
-
| YES -> Category D (run migrations)
|
|
120
|
-
| dotnet ef migrations add / database update
|
|
121
|
-
|
|
|
122
|
-
+-- Contains "ConnectionString" or "OptionsValidation" ?
|
|
123
|
-
| YES -> Category E (edit config files)
|
|
124
|
-
|
|
|
125
|
-
+-- error CS#### (C# compiler error) ?
|
|
126
|
-
| YES -> Is the missing type in ANY project file?
|
|
127
|
-
| NO -> Category A (missing package)
|
|
128
|
-
| YES -> Category F (fix source code)
|
|
129
|
-
|
|
|
130
|
-
+-- Test failure (Assert/Expected) ?
|
|
131
|
-
YES -> Category F (fix source code, NOT tests)
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
---
|
|
135
|
-
|
|
136
|
-
## Ralph-Loop Integration Rules
|
|
137
|
-
|
|
138
|
-
1. **Before ANY code fix attempt:** Classify the error using the decision tree above
|
|
139
|
-
2. **Categories A, B:** Run package commands IMMEDIATELY. Do NOT count as a "fix iteration"
|
|
140
|
-
3. **Category C:** Edit DI file only. One targeted fix, rebuild, verify
|
|
141
|
-
4. **Category D:** Run migration commands. Do NOT edit code
|
|
142
|
-
5. **Category E:** Edit config file only
|
|
143
|
-
6. **Category F:** Normal ralph-loop code fix iteration
|
|
144
|
-
7. **If 2+ consecutive iterations fail on same error after code fixes -> re-classify** (likely wrong category)
|
|
1
|
+
# Error Classification Reference
|
|
2
|
+
|
|
3
|
+
> **Loaded by:** apex step-03-execute (build failure) and step-04-examine (validation)
|
|
4
|
+
> **Purpose:** Classify build and runtime errors to apply the correct fix strategy.
|
|
5
|
+
> **Key insight:** Not all errors are code errors. Package/config errors require different fixes than code errors.
|
|
6
|
+
> **Moved from:** `ralph-loop/references/error-classification.md` (delegation refactoring)
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Error Categories
|
|
11
|
+
|
|
12
|
+
### Category A: Missing NuGet Package (FIX = `dotnet add package`)
|
|
13
|
+
|
|
14
|
+
> **These errors CANNOT be fixed by editing source code. Do NOT waste iterations trying.**
|
|
15
|
+
|
|
16
|
+
| Error Pattern | Example | Fix |
|
|
17
|
+
|--------------|---------|-----|
|
|
18
|
+
| `FileNotFoundException: Could not load file or assembly '{Name}, Version={V}'` | `Could not load file or assembly 'Microsoft.Extensions.Http.Resilience, Version=10.2.0.0'` | `dotnet add package {Name} --version {V.Major}.{V.Minor}.{V.Patch}` |
|
|
19
|
+
| `error CS0246: The type or namespace name '{Type}' could not be found` (after restore) | `The type or namespace name 'Polly' could not be found` | `dotnet add package {PackageName}` |
|
|
20
|
+
| `error NU1101: Unable to find package {Name}` | Package source misconfigured | Check `nuget.config` sources |
|
|
21
|
+
|
|
22
|
+
**Detection heuristic:** If `dotnet build` fails with CS0246 and the missing type is NOT in any project file (grep across `src/`), it is a missing package, not a missing `using` statement.
|
|
23
|
+
|
|
24
|
+
**Fix procedure:**
|
|
25
|
+
1. Extract package name from error message
|
|
26
|
+
2. Run `dotnet add {TargetProject} package {PackageName}`
|
|
27
|
+
3. Run `dotnet restore`
|
|
28
|
+
4. Rebuild -- if still failing, the version may need to be pinned
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
### Category B: Version Mismatch (FIX = update package version)
|
|
33
|
+
|
|
34
|
+
> **These errors CANNOT be fixed by editing source code.**
|
|
35
|
+
|
|
36
|
+
| Error Pattern | Example | Fix |
|
|
37
|
+
|--------------|---------|-----|
|
|
38
|
+
| `TypeLoadException: Could not load type '{Type}' from assembly '{Asm}'` | Type exists in different version | `dotnet add package {Asm} --version {CorrectVersion}` |
|
|
39
|
+
| `MissingMethodException: Method not found: '{Method}'` | Method signature changed between versions | Update to version that has the method |
|
|
40
|
+
| `NU1605: Detected package downgrade` | Version conflict in dependency tree | Align all references to same version |
|
|
41
|
+
| `FileLoadException: Could not load file or assembly '{Name}'. The located assembly's manifest definition does not match the assembly reference.` | Wrong version loaded | Pin correct version in .csproj |
|
|
42
|
+
|
|
43
|
+
**Fix procedure:**
|
|
44
|
+
1. Identify the assembly/package name
|
|
45
|
+
2. Run `dotnet list package --include-transitive` to see actual resolved version
|
|
46
|
+
3. If conflict: add explicit `<PackageReference>` with correct version
|
|
47
|
+
4. Rebuild
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
### Category C: Missing DI Registration (FIX = edit DI configuration)
|
|
52
|
+
|
|
53
|
+
> **These errors require editing `DependencyInjection.cs` or `Program.cs`, NOT the service/interface code.**
|
|
54
|
+
|
|
55
|
+
| Error Pattern | Example | Fix |
|
|
56
|
+
|--------------|---------|-----|
|
|
57
|
+
| `InvalidOperationException: Unable to resolve service for type '{Interface}'` | Missing `services.AddScoped<IFoo, Foo>()` | Add DI registration |
|
|
58
|
+
| `InvalidOperationException: No service for type '{Type}' has been registered` | Same as above | Same |
|
|
59
|
+
| `InvalidOperationException: Unable to resolve service for type '{Type}' while attempting to activate '{Consumer}'` | Consumer's dependency not registered | Register the missing dependency |
|
|
60
|
+
|
|
61
|
+
**Fix procedure:**
|
|
62
|
+
1. Extract the interface/type name from error
|
|
63
|
+
2. Find the implementation class (grep for `class.*: {Interface}`)
|
|
64
|
+
3. Add `services.AddScoped<{Interface}, {Implementation}>()` to appropriate DI file
|
|
65
|
+
4. Rebuild
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
### Category D: Database/Migration (FIX = run migration commands)
|
|
70
|
+
|
|
71
|
+
| Error Pattern | Example | Fix |
|
|
72
|
+
|--------------|---------|-----|
|
|
73
|
+
| `SqlException: Invalid object name '{TableName}'` | Table does not exist | `dotnet ef database update` |
|
|
74
|
+
| `SqlException: Invalid column name '{Column}'` | Column not in schema | Create and apply migration |
|
|
75
|
+
| `RelationalEventId.PendingModelChangesWarning` | Model changed, no migration | `dotnet ef migrations add {Name}` |
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
### Category E: Configuration (FIX = edit appsettings.json)
|
|
80
|
+
|
|
81
|
+
| Error Pattern | Example | Fix |
|
|
82
|
+
|--------------|---------|-----|
|
|
83
|
+
| `InvalidOperationException: The ConnectionString property has not been initialized` | Missing connection string | Add to `appsettings.json` |
|
|
84
|
+
| `ArgumentNullException: Value cannot be null. (Parameter 'connectionString')` | Same | Same |
|
|
85
|
+
| `OptionsValidationException: Validation failed for '{Section}'` | Missing required config section | Add section to `appsettings.json` |
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
### Category F: Code Error (FIX = edit source code)
|
|
90
|
+
|
|
91
|
+
> **Only this category should trigger code editing in ralph-loop iterations.**
|
|
92
|
+
|
|
93
|
+
| Error Pattern | Example | Fix |
|
|
94
|
+
|--------------|---------|-----|
|
|
95
|
+
| `error CS0246` + type IS in a project file | Missing `using` statement | Add `using {Namespace};` |
|
|
96
|
+
| `error CS1061` | Method does not exist on type | Fix method call or add method |
|
|
97
|
+
| `error CS0103` | Name does not exist in current context | Fix variable/method reference |
|
|
98
|
+
| `error CS0029` | Cannot implicitly convert type | Fix type mismatch |
|
|
99
|
+
| Test assertion failures | `Assert.Equal` fails | Fix source code (not tests) |
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Decision Tree
|
|
104
|
+
|
|
105
|
+
When a build or runtime error occurs, follow this tree:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
BUILD/RUNTIME ERROR
|
|
109
|
+
|
|
|
110
|
+
+-- Contains "Could not load file or assembly" ?
|
|
111
|
+
| YES -> Category A or B (NEVER edit source code)
|
|
112
|
+
| Extract package name -> dotnet add package -> rebuild
|
|
113
|
+
|
|
|
114
|
+
+-- Contains "Unable to resolve service" ?
|
|
115
|
+
| YES -> Category C (edit DI config ONLY)
|
|
116
|
+
| Find implementation -> add registration -> rebuild
|
|
117
|
+
|
|
|
118
|
+
+-- Contains "SqlException" or "Invalid object name" ?
|
|
119
|
+
| YES -> Category D (run migrations)
|
|
120
|
+
| dotnet ef migrations add / database update
|
|
121
|
+
|
|
|
122
|
+
+-- Contains "ConnectionString" or "OptionsValidation" ?
|
|
123
|
+
| YES -> Category E (edit config files)
|
|
124
|
+
|
|
|
125
|
+
+-- error CS#### (C# compiler error) ?
|
|
126
|
+
| YES -> Is the missing type in ANY project file?
|
|
127
|
+
| NO -> Category A (missing package)
|
|
128
|
+
| YES -> Category F (fix source code)
|
|
129
|
+
|
|
|
130
|
+
+-- Test failure (Assert/Expected) ?
|
|
131
|
+
YES -> Category F (fix source code, NOT tests)
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Ralph-Loop Integration Rules
|
|
137
|
+
|
|
138
|
+
1. **Before ANY code fix attempt:** Classify the error using the decision tree above
|
|
139
|
+
2. **Categories A, B:** Run package commands IMMEDIATELY. Do NOT count as a "fix iteration"
|
|
140
|
+
3. **Category C:** Edit DI file only. One targeted fix, rebuild, verify
|
|
141
|
+
4. **Category D:** Run migration commands. Do NOT edit code
|
|
142
|
+
5. **Category E:** Edit config file only
|
|
143
|
+
6. **Category F:** Normal ralph-loop code fix iteration
|
|
144
|
+
7. **If 2+ consecutive iterations fail on same error after code fixes -> re-classify** (likely wrong category)
|
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
# Examine Build & Migration Validation
|
|
2
|
-
|
|
3
|
-
> **Loaded by:** step-04-examine.md (sections 4-5)
|
|
4
|
-
> **Purpose:** Build verification, migration validation, database testing procedures.
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Build Verification
|
|
9
|
-
|
|
10
|
-
```bash
|
|
11
|
-
# Backend
|
|
12
|
-
dotnet clean && dotnet restore && dotnet build
|
|
13
|
-
# Note: WSL bin\Debug cleanup handled by PostToolUse hook (wsl-dotnet-cleanup.sh)
|
|
14
|
-
|
|
15
|
-
# Frontend (if applicable)
|
|
16
|
-
npm run typecheck
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
**BLOCKING:** Both must pass. If failure, classify error per `references/error-classification.md`:
|
|
20
|
-
- Category A (missing package) → `dotnet add package` → rebuild
|
|
21
|
-
- Category B (assembly conflict) → resolve version → rebuild
|
|
22
|
-
- Category C (DI missing) → fix DI registration → rebuild
|
|
23
|
-
- Category D (migration broken) → fix migration → rebuild
|
|
24
|
-
- Category E (config) → fix config → rebuild
|
|
25
|
-
- Category F (source code) → fix code → rebuild
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## Migration Validation (if needs_migration)
|
|
30
|
-
|
|
31
|
-
### Pending Model Changes Check
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
INFRA_PROJECT=$(ls src/*Infrastructure*/*.csproj 2>/dev/null | head -1)
|
|
35
|
-
API_PROJECT=$(ls src/*Api*/*.csproj 2>/dev/null | head -1)
|
|
36
|
-
|
|
37
|
-
dotnet ef migrations has-pending-model-changes \
|
|
38
|
-
--project "$INFRA_PROJECT" \
|
|
39
|
-
--startup-project "$API_PROJECT"
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
**BLOCKING** if pending changes detected → migration is missing.
|
|
43
|
-
|
|
44
|
-
### Migration Application Test (SQL Server LocalDB)
|
|
45
|
-
|
|
46
|
-
```bash
|
|
47
|
-
DB_NAME="SmartStack_Apex_Examine_$(date +%s)"
|
|
48
|
-
CONN_STRING="Server=(localdb)\\MSSQLLocalDB;Database=$DB_NAME;Integrated Security=true;TrustServerCertificate=true;Connect Timeout=120;"
|
|
49
|
-
|
|
50
|
-
dotnet ef database update \
|
|
51
|
-
--connection "$CONN_STRING" \
|
|
52
|
-
--project "$INFRA_PROJECT" \
|
|
53
|
-
--startup-project "$API_PROJECT"
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
**BLOCKING** if migration fails on SQL Server. Common issues:
|
|
57
|
-
- SQLite-only syntax in migrations (fix: regenerate migration)
|
|
58
|
-
- Column type mismatches (fix: update EF configuration)
|
|
59
|
-
- Missing foreign key targets (fix: reorder migrations)
|
|
60
|
-
|
|
61
|
-
### Integration Tests on Real SQL Server
|
|
62
|
-
|
|
63
|
-
```bash
|
|
64
|
-
# Integration tests use DatabaseFixture → real SQL Server LocalDB
|
|
65
|
-
# This validates: LINQ→SQL, multi-tenant isolation, soft delete, EF configs
|
|
66
|
-
INT_TEST_PROJECT=$(ls tests/*Tests.Integration*/*.csproj 2>/dev/null | head -1)
|
|
67
|
-
if [ -n "$INT_TEST_PROJECT" ]; then
|
|
68
|
-
dotnet test "$INT_TEST_PROJECT" --no-build --verbosity normal
|
|
69
|
-
fi
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
Tests running against SQL Server catch issues that SQLite misses:
|
|
73
|
-
- Case sensitivity in string comparisons
|
|
74
|
-
- Date/time function differences
|
|
75
|
-
- IDENTITY vs AUTOINCREMENT behavior
|
|
76
|
-
- Global query filter translation to T-SQL
|
|
77
|
-
|
|
78
|
-
### Cleanup
|
|
79
|
-
|
|
80
|
-
```bash
|
|
81
|
-
sqlcmd -S "(localdb)\MSSQLLocalDB" -Q "IF DB_ID('$DB_NAME') IS NOT NULL BEGIN ALTER DATABASE [$DB_NAME] SET SINGLE_USER WITH ROLLBACK IMMEDIATE; DROP DATABASE [$DB_NAME]; END" 2>/dev/null
|
|
82
|
-
```
|
|
1
|
+
# Examine Build & Migration Validation
|
|
2
|
+
|
|
3
|
+
> **Loaded by:** step-04-examine.md (sections 4-5)
|
|
4
|
+
> **Purpose:** Build verification, migration validation, database testing procedures.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Build Verification
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
# Backend
|
|
12
|
+
dotnet clean && dotnet restore && dotnet build
|
|
13
|
+
# Note: WSL bin\Debug cleanup handled by PostToolUse hook (wsl-dotnet-cleanup.sh)
|
|
14
|
+
|
|
15
|
+
# Frontend (if applicable)
|
|
16
|
+
npm run typecheck
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**BLOCKING:** Both must pass. If failure, classify error per `references/error-classification.md`:
|
|
20
|
+
- Category A (missing package) → `dotnet add package` → rebuild
|
|
21
|
+
- Category B (assembly conflict) → resolve version → rebuild
|
|
22
|
+
- Category C (DI missing) → fix DI registration → rebuild
|
|
23
|
+
- Category D (migration broken) → fix migration → rebuild
|
|
24
|
+
- Category E (config) → fix config → rebuild
|
|
25
|
+
- Category F (source code) → fix code → rebuild
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Migration Validation (if needs_migration)
|
|
30
|
+
|
|
31
|
+
### Pending Model Changes Check
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
INFRA_PROJECT=$(ls src/*Infrastructure*/*.csproj 2>/dev/null | head -1)
|
|
35
|
+
API_PROJECT=$(ls src/*Api*/*.csproj 2>/dev/null | head -1)
|
|
36
|
+
|
|
37
|
+
dotnet ef migrations has-pending-model-changes \
|
|
38
|
+
--project "$INFRA_PROJECT" \
|
|
39
|
+
--startup-project "$API_PROJECT"
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**BLOCKING** if pending changes detected → migration is missing.
|
|
43
|
+
|
|
44
|
+
### Migration Application Test (SQL Server LocalDB)
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
DB_NAME="SmartStack_Apex_Examine_$(date +%s)"
|
|
48
|
+
CONN_STRING="Server=(localdb)\\MSSQLLocalDB;Database=$DB_NAME;Integrated Security=true;TrustServerCertificate=true;Connect Timeout=120;"
|
|
49
|
+
|
|
50
|
+
dotnet ef database update \
|
|
51
|
+
--connection "$CONN_STRING" \
|
|
52
|
+
--project "$INFRA_PROJECT" \
|
|
53
|
+
--startup-project "$API_PROJECT"
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
**BLOCKING** if migration fails on SQL Server. Common issues:
|
|
57
|
+
- SQLite-only syntax in migrations (fix: regenerate migration)
|
|
58
|
+
- Column type mismatches (fix: update EF configuration)
|
|
59
|
+
- Missing foreign key targets (fix: reorder migrations)
|
|
60
|
+
|
|
61
|
+
### Integration Tests on Real SQL Server
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Integration tests use DatabaseFixture → real SQL Server LocalDB
|
|
65
|
+
# This validates: LINQ→SQL, multi-tenant isolation, soft delete, EF configs
|
|
66
|
+
INT_TEST_PROJECT=$(ls tests/*Tests.Integration*/*.csproj 2>/dev/null | head -1)
|
|
67
|
+
if [ -n "$INT_TEST_PROJECT" ]; then
|
|
68
|
+
dotnet test "$INT_TEST_PROJECT" --no-build --verbosity normal
|
|
69
|
+
fi
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Tests running against SQL Server catch issues that SQLite misses:
|
|
73
|
+
- Case sensitivity in string comparisons
|
|
74
|
+
- Date/time function differences
|
|
75
|
+
- IDENTITY vs AUTOINCREMENT behavior
|
|
76
|
+
- Global query filter translation to T-SQL
|
|
77
|
+
|
|
78
|
+
### Cleanup
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
sqlcmd -S "(localdb)\MSSQLLocalDB" -Q "IF DB_ID('$DB_NAME') IS NOT NULL BEGIN ALTER DATABASE [$DB_NAME] SET SINGLE_USER WITH ROLLBACK IMMEDIATE; DROP DATABASE [$DB_NAME]; END" 2>/dev/null
|
|
82
|
+
```
|