@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,59 +1,59 @@
|
|
|
1
|
-
# Category 11: Data Lifecycle
|
|
2
|
-
|
|
3
|
-
> **Usage:** Lifecycle, retention, archival and compliance for business data
|
|
4
|
-
> **When to load:** If feature is data-centric or full module
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## 11.1 Data Retention
|
|
9
|
-
|
|
10
|
-
| # | Question | Answer Type |
|
|
11
|
-
|---|----------|-------------|
|
|
12
|
-
| Q11.1 | How long must data be kept active? | Duration |
|
|
13
|
-
| Q11.2 | Is there a legal retention period? (GDPR, fiscal, regulatory) | Duration + regulation |
|
|
14
|
-
| Q11.3 | What happens after the retention period? | Archive/Purge/Anonymize |
|
|
15
|
-
| Q11.4 | Who decides when data is archived or purged? | Role |
|
|
16
|
-
|
|
17
|
-
## 11.2 Data States
|
|
18
|
-
|
|
19
|
-
| # | Question | Answer Type |
|
|
20
|
-
|---|----------|-------------|
|
|
21
|
-
| Q11.5 | What states can a record go through? (draft, active, archived, deleted) | List of states |
|
|
22
|
-
| Q11.6 | Can a deleted record be restored? | Yes/No + conditions |
|
|
23
|
-
| Q11.7 | Should historical versions be kept? (versioning) | Yes/No + depth |
|
|
24
|
-
| Q11.8 | Is there a "freeze" or "lock" state? (immutable after validation) | Yes/No + trigger |
|
|
25
|
-
|
|
26
|
-
---
|
|
27
|
-
|
|
28
|
-
## Lifecycle Patterns
|
|
29
|
-
|
|
30
|
-
| Need | Platform Pattern | Impact |
|
|
31
|
-
|------|-------------------|--------|
|
|
32
|
-
| Soft delete | `SoftDeletableEntity` | IsDeleted, DeletedBy, DeletedDate auto-managed |
|
|
33
|
-
| Audit trail | `AuditableEntity` | CreatedBy/Date, ModifiedBy/Date auto-managed |
|
|
34
|
-
| Versioning | Custom `EntityVersion` table | Manual implementation per entity |
|
|
35
|
-
| Archival | Status enum + background job | Scheduled job moves old records |
|
|
36
|
-
| GDPR purge | Anonymization service | Replace personal data with `[REDACTED]` |
|
|
37
|
-
| Immutable after state | Validation in Update command | `if (entity.Status == Locked) throw` |
|
|
38
|
-
|
|
39
|
-
## Elicitation Guide
|
|
40
|
-
|
|
41
|
-
### Follow-ups by Question
|
|
42
|
-
|
|
43
|
-
| Question | If answer is vague/insufficient | Probe |
|
|
44
|
-
|----------|-------------------------------|-------|
|
|
45
|
-
| Q11.1 (retention) | "Toujours" | "Pas de limite légale ? Avec 1M de lignes dans 5 ans, les performances resteront-elles acceptables ?" |
|
|
46
|
-
| Q11.2 (legal) | "Je ne sais pas" | "Données personnelles = RGPD (effacement après demande). Données fiscales = 10 ans. Données RH = 5 ans après départ." |
|
|
47
|
-
| Q11.3 (after retention) | "On supprime" | "Suppression physique ou logique ? Anonymisation des données personnelles ? Export avant suppression ?" |
|
|
48
|
-
| Q11.5 (states) | "Actif ou supprimé" | "Pas de brouillon ? Pas de 'en attente de validation' ? Pas d'archivé consultable mais non modifiable ?" |
|
|
49
|
-
| Q11.6 (restore) | "Non" | "Si un utilisateur supprime par erreur, aucun recours ? Même pas l'admin ?" |
|
|
50
|
-
| Q11.8 (freeze) | "Non" | "Une fois une facture validée, peut-on encore la modifier ? Une commande livrée, peut-on changer son contenu ?" |
|
|
51
|
-
|
|
52
|
-
### Anti-patterns to Detect
|
|
53
|
-
|
|
54
|
-
| Signal | Anti-pattern | Action |
|
|
55
|
-
|--------|-------------|--------|
|
|
56
|
-
| "On garde tout pour toujours" | **Pas de stratégie de rétention** | Volume illimité = performance dégradée. Définir une politique d'archivage. |
|
|
57
|
-
| Suppression physique de données personnelles | **Non-conformité RGPD** | RGPD exige la possibilité d'effacer/anonymiser. `SoftDeletableEntity` + anonymisation. |
|
|
58
|
-
| Aucun état intermédiaire | **Lifecycle trop simple** | La plupart des entités métier passent par brouillon → actif → archivé minimum. |
|
|
59
|
-
| Données modifiables sans limite | **Pas d'immutabilité** | Certains documents (factures, contrats) doivent être figés après validation. |
|
|
1
|
+
# Category 11: Data Lifecycle
|
|
2
|
+
|
|
3
|
+
> **Usage:** Lifecycle, retention, archival and compliance for business data
|
|
4
|
+
> **When to load:** If feature is data-centric or full module
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 11.1 Data Retention
|
|
9
|
+
|
|
10
|
+
| # | Question | Answer Type |
|
|
11
|
+
|---|----------|-------------|
|
|
12
|
+
| Q11.1 | How long must data be kept active? | Duration |
|
|
13
|
+
| Q11.2 | Is there a legal retention period? (GDPR, fiscal, regulatory) | Duration + regulation |
|
|
14
|
+
| Q11.3 | What happens after the retention period? | Archive/Purge/Anonymize |
|
|
15
|
+
| Q11.4 | Who decides when data is archived or purged? | Role |
|
|
16
|
+
|
|
17
|
+
## 11.2 Data States
|
|
18
|
+
|
|
19
|
+
| # | Question | Answer Type |
|
|
20
|
+
|---|----------|-------------|
|
|
21
|
+
| Q11.5 | What states can a record go through? (draft, active, archived, deleted) | List of states |
|
|
22
|
+
| Q11.6 | Can a deleted record be restored? | Yes/No + conditions |
|
|
23
|
+
| Q11.7 | Should historical versions be kept? (versioning) | Yes/No + depth |
|
|
24
|
+
| Q11.8 | Is there a "freeze" or "lock" state? (immutable after validation) | Yes/No + trigger |
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Lifecycle Patterns
|
|
29
|
+
|
|
30
|
+
| Need | Platform Pattern | Impact |
|
|
31
|
+
|------|-------------------|--------|
|
|
32
|
+
| Soft delete | `SoftDeletableEntity` | IsDeleted, DeletedBy, DeletedDate auto-managed |
|
|
33
|
+
| Audit trail | `AuditableEntity` | CreatedBy/Date, ModifiedBy/Date auto-managed |
|
|
34
|
+
| Versioning | Custom `EntityVersion` table | Manual implementation per entity |
|
|
35
|
+
| Archival | Status enum + background job | Scheduled job moves old records |
|
|
36
|
+
| GDPR purge | Anonymization service | Replace personal data with `[REDACTED]` |
|
|
37
|
+
| Immutable after state | Validation in Update command | `if (entity.Status == Locked) throw` |
|
|
38
|
+
|
|
39
|
+
## Elicitation Guide
|
|
40
|
+
|
|
41
|
+
### Follow-ups by Question
|
|
42
|
+
|
|
43
|
+
| Question | If answer is vague/insufficient | Probe |
|
|
44
|
+
|----------|-------------------------------|-------|
|
|
45
|
+
| Q11.1 (retention) | "Toujours" | "Pas de limite légale ? Avec 1M de lignes dans 5 ans, les performances resteront-elles acceptables ?" |
|
|
46
|
+
| Q11.2 (legal) | "Je ne sais pas" | "Données personnelles = RGPD (effacement après demande). Données fiscales = 10 ans. Données RH = 5 ans après départ." |
|
|
47
|
+
| Q11.3 (after retention) | "On supprime" | "Suppression physique ou logique ? Anonymisation des données personnelles ? Export avant suppression ?" |
|
|
48
|
+
| Q11.5 (states) | "Actif ou supprimé" | "Pas de brouillon ? Pas de 'en attente de validation' ? Pas d'archivé consultable mais non modifiable ?" |
|
|
49
|
+
| Q11.6 (restore) | "Non" | "Si un utilisateur supprime par erreur, aucun recours ? Même pas l'admin ?" |
|
|
50
|
+
| Q11.8 (freeze) | "Non" | "Une fois une facture validée, peut-on encore la modifier ? Une commande livrée, peut-on changer son contenu ?" |
|
|
51
|
+
|
|
52
|
+
### Anti-patterns to Detect
|
|
53
|
+
|
|
54
|
+
| Signal | Anti-pattern | Action |
|
|
55
|
+
|--------|-------------|--------|
|
|
56
|
+
| "On garde tout pour toujours" | **Pas de stratégie de rétention** | Volume illimité = performance dégradée. Définir une politique d'archivage. |
|
|
57
|
+
| Suppression physique de données personnelles | **Non-conformité RGPD** | RGPD exige la possibilité d'effacer/anonymiser. `SoftDeletableEntity` + anonymisation. |
|
|
58
|
+
| Aucun état intermédiaire | **Lifecycle trop simple** | La plupart des entités métier passent par brouillon → actif → archivé minimum. |
|
|
59
|
+
| Données modifiables sans limite | **Pas d'immutabilité** | Certains documents (factures, contrats) doivent être figés après validation. |
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
# Category 12: Migration & Transition
|
|
2
|
-
|
|
3
|
-
> **Usage:** Plan transition from AS-IS to TO-BE, handle existing data
|
|
4
|
-
> **When to load:** ALWAYS for new modules (not enhancements)
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## 12.1 Existing Data
|
|
9
|
-
|
|
10
|
-
| # | Question | Answer Type |
|
|
11
|
-
|---|----------|-------------|
|
|
12
|
-
| Q12.1 | Is there existing data to migrate? | Yes/No + source |
|
|
13
|
-
| Q12.2 | What format is the existing data in? | Excel/CSV/DB/API/Manual |
|
|
14
|
-
| Q12.3 | What volume of data to migrate? | Estimation |
|
|
15
|
-
| Q12.4 | What data quality issues exist? (duplicates, missing fields, inconsistencies) | List |
|
|
16
|
-
|
|
17
|
-
## 12.2 Transition Plan
|
|
18
|
-
|
|
19
|
-
| # | Question | Answer Type |
|
|
20
|
-
|---|----------|-------------|
|
|
21
|
-
| Q12.5 | Is there a coexistence period? (old + new system in parallel) | Duration |
|
|
22
|
-
| Q12.6 | What is the cutover strategy? | Big-bang / Progressive / Parallel |
|
|
23
|
-
| Q12.7 | Who validates the migrated data? | Role |
|
|
24
|
-
| Q12.8 | What is the rollback plan if migration fails? | Strategy |
|
|
25
|
-
|
|
26
|
-
---
|
|
27
|
-
|
|
28
|
-
## Migration Patterns
|
|
29
|
-
|
|
30
|
-
| Need | Pattern | Tool |
|
|
31
|
-
|------|---------|------|
|
|
32
|
-
| CSV/Excel import | Background job + FluentValidation | Hangfire + custom importer |
|
|
33
|
-
| Database migration | EF Core seed / SQL script | `dotnet ef` + seed data |
|
|
34
|
-
| API import | HttpClient batch | Background job + Polly |
|
|
35
|
-
| Data cleanup | Validation pipeline | FluentValidation + reporting |
|
|
36
|
-
| Progressive rollout | Feature flag | LaunchDarkly / custom config |
|
|
37
|
-
|
|
38
|
-
## Elicitation Guide
|
|
39
|
-
|
|
40
|
-
### Follow-ups by Question
|
|
41
|
-
|
|
42
|
-
| Question | If answer is vague/insufficient | Probe |
|
|
43
|
-
|----------|-------------------------------|-------|
|
|
44
|
-
| Q12.1 (existing data) | "Oui" sans détail | "Dans quel outil ? Excel, ERP, autre DB ? Combien de fichiers/tables ? Qui y a accès ?" |
|
|
45
|
-
| Q12.2 (format) | "Excel" | "Un seul fichier ou plusieurs ? Avec des onglets ? Des macros ? Des formules ? Quelles colonnes ?" |
|
|
46
|
-
| Q12.4 (quality) | "C'est propre" | "Pas de doublons ? Pas de champs vides obligatoires ? Pas de formats incohérents (dates, montants) ?" |
|
|
47
|
-
| Q12.5 (coexistence) | "Non" | "Les utilisateurs passent directement au nouveau système ? Pas de période d'apprentissage en parallèle ?" |
|
|
48
|
-
| Q12.6 (cutover) | "On verra" | "Big-bang (bascule à date fixe) ou progressif (équipe par équipe) ? Si progressif, quels groupes en premier ?" |
|
|
49
|
-
| Q12.8 (rollback) | "Pas prévu" | "Si l'import échoue ou corrompt des données, comment revenir en arrière ? Backup avant migration ?" |
|
|
50
|
-
|
|
51
|
-
### Anti-patterns to Detect
|
|
52
|
-
|
|
53
|
-
| Signal | Anti-pattern | Action |
|
|
54
|
-
|--------|-------------|--------|
|
|
55
|
-
| "On saisira tout à la main" | **Migration non planifiée** | Si > 100 enregistrements, l'import automatisé est indispensable |
|
|
56
|
-
| Pas de validation post-migration | **Données non vérifiées** | Prévoir un rapport de migration : importés / rejetés / à corriger |
|
|
57
|
-
| Aucun rollback plan | **Risque de perte de données** | Toujours faire un backup avant migration + possibilité de rollback |
|
|
58
|
-
| "On migrera plus tard" | **Dette technique** | Si la migration est nécessaire, la planifier dès le départ même si simplifiée |
|
|
1
|
+
# Category 12: Migration & Transition
|
|
2
|
+
|
|
3
|
+
> **Usage:** Plan transition from AS-IS to TO-BE, handle existing data
|
|
4
|
+
> **When to load:** ALWAYS for new modules (not enhancements)
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 12.1 Existing Data
|
|
9
|
+
|
|
10
|
+
| # | Question | Answer Type |
|
|
11
|
+
|---|----------|-------------|
|
|
12
|
+
| Q12.1 | Is there existing data to migrate? | Yes/No + source |
|
|
13
|
+
| Q12.2 | What format is the existing data in? | Excel/CSV/DB/API/Manual |
|
|
14
|
+
| Q12.3 | What volume of data to migrate? | Estimation |
|
|
15
|
+
| Q12.4 | What data quality issues exist? (duplicates, missing fields, inconsistencies) | List |
|
|
16
|
+
|
|
17
|
+
## 12.2 Transition Plan
|
|
18
|
+
|
|
19
|
+
| # | Question | Answer Type |
|
|
20
|
+
|---|----------|-------------|
|
|
21
|
+
| Q12.5 | Is there a coexistence period? (old + new system in parallel) | Duration |
|
|
22
|
+
| Q12.6 | What is the cutover strategy? | Big-bang / Progressive / Parallel |
|
|
23
|
+
| Q12.7 | Who validates the migrated data? | Role |
|
|
24
|
+
| Q12.8 | What is the rollback plan if migration fails? | Strategy |
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Migration Patterns
|
|
29
|
+
|
|
30
|
+
| Need | Pattern | Tool |
|
|
31
|
+
|------|---------|------|
|
|
32
|
+
| CSV/Excel import | Background job + FluentValidation | Hangfire + custom importer |
|
|
33
|
+
| Database migration | EF Core seed / SQL script | `dotnet ef` + seed data |
|
|
34
|
+
| API import | HttpClient batch | Background job + Polly |
|
|
35
|
+
| Data cleanup | Validation pipeline | FluentValidation + reporting |
|
|
36
|
+
| Progressive rollout | Feature flag | LaunchDarkly / custom config |
|
|
37
|
+
|
|
38
|
+
## Elicitation Guide
|
|
39
|
+
|
|
40
|
+
### Follow-ups by Question
|
|
41
|
+
|
|
42
|
+
| Question | If answer is vague/insufficient | Probe |
|
|
43
|
+
|----------|-------------------------------|-------|
|
|
44
|
+
| Q12.1 (existing data) | "Oui" sans détail | "Dans quel outil ? Excel, ERP, autre DB ? Combien de fichiers/tables ? Qui y a accès ?" |
|
|
45
|
+
| Q12.2 (format) | "Excel" | "Un seul fichier ou plusieurs ? Avec des onglets ? Des macros ? Des formules ? Quelles colonnes ?" |
|
|
46
|
+
| Q12.4 (quality) | "C'est propre" | "Pas de doublons ? Pas de champs vides obligatoires ? Pas de formats incohérents (dates, montants) ?" |
|
|
47
|
+
| Q12.5 (coexistence) | "Non" | "Les utilisateurs passent directement au nouveau système ? Pas de période d'apprentissage en parallèle ?" |
|
|
48
|
+
| Q12.6 (cutover) | "On verra" | "Big-bang (bascule à date fixe) ou progressif (équipe par équipe) ? Si progressif, quels groupes en premier ?" |
|
|
49
|
+
| Q12.8 (rollback) | "Pas prévu" | "Si l'import échoue ou corrompt des données, comment revenir en arrière ? Backup avant migration ?" |
|
|
50
|
+
|
|
51
|
+
### Anti-patterns to Detect
|
|
52
|
+
|
|
53
|
+
| Signal | Anti-pattern | Action |
|
|
54
|
+
|--------|-------------|--------|
|
|
55
|
+
| "On saisira tout à la main" | **Migration non planifiée** | Si > 100 enregistrements, l'import automatisé est indispensable |
|
|
56
|
+
| Pas de validation post-migration | **Données non vérifiées** | Prévoir un rapport de migration : importés / rejetés / à corriger |
|
|
57
|
+
| Aucun rollback plan | **Risque de perte de données** | Toujours faire un backup avant migration + possibilité de rollback |
|
|
58
|
+
| "On migrera plus tard" | **Dette technique** | Si la migration est nécessaire, la planifier dès le départ même si simplifiée |
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
# Category 13: Cross-Module Impact
|
|
2
|
-
|
|
3
|
-
> **Usage:** Analyze impact on existing modules and shared dependencies
|
|
4
|
-
> **When to load:** ALWAYS for new modules (not enhancements)
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## 13.1 Existing Module Dependencies
|
|
9
|
-
|
|
10
|
-
| # | Question | Answer Type |
|
|
11
|
-
|---|----------|-------------|
|
|
12
|
-
| Q13.1 | Which existing modules does this new module interact with? | List |
|
|
13
|
-
| Q13.2 | What data is shared between modules? (entities, lookup tables) | Per module |
|
|
14
|
-
| Q13.3 | Are there existing entities this module will reference? (FK relationships) | List |
|
|
15
|
-
| Q13.4 | Will this module produce events that other modules consume? | List of events |
|
|
16
|
-
|
|
17
|
-
## 13.2 Impact Assessment
|
|
18
|
-
|
|
19
|
-
| # | Question | Answer Type |
|
|
20
|
-
|---|----------|-------------|
|
|
21
|
-
| Q13.5 | Will existing modules need modifications to support this new module? | List of changes |
|
|
22
|
-
| Q13.6 | Are there shared UI components or navigation changes? | List |
|
|
23
|
-
| Q13.7 | Will this module affect existing permissions/roles? | Yes/No + detail |
|
|
24
|
-
| Q13.8 | Is there a risk of data model conflicts? (same entity modified by 2 modules) | Risk assessment |
|
|
25
|
-
|
|
26
|
-
---
|
|
27
|
-
|
|
28
|
-
## Cross-Module Patterns
|
|
29
|
-
|
|
30
|
-
| Need | Pattern | Example |
|
|
31
|
-
|------|---------|---------|
|
|
32
|
-
| Reference another entity | Navigation property + FK | `Order.ClientId → Client` |
|
|
33
|
-
| Shared lookup data | Shared entity in Domain | `Status`, `Category` entities |
|
|
34
|
-
| Event notification | MediatR notification | `OrderCreatedNotification` |
|
|
35
|
-
| Cross-module query | Read-only DTO from other module | `IClientQueryService` |
|
|
36
|
-
| Navigation link | Menu entry in NavRoute | `business/{app}/{module}` |
|
|
37
|
-
| Shared permission | Permission hierarchy | `{app}.*` covers all modules |
|
|
38
|
-
|
|
39
|
-
## Elicitation Guide
|
|
40
|
-
|
|
41
|
-
### Follow-ups by Question
|
|
42
|
-
|
|
43
|
-
| Question | If answer is vague/insufficient | Probe |
|
|
44
|
-
|----------|-------------------------------|-------|
|
|
45
|
-
| Q13.1 (interactions) | "Aucun" | "Ce module est totalement isolé ? Pas de lien avec des clients, produits, utilisateurs d'autres modules ?" |
|
|
46
|
-
| Q13.2 (shared data) | "Je ne sais pas" | Use `{codebase_context}` from pre-research: "J'ai trouvé les entités {list} dans {app}. Ce module a-t-il besoin de les référencer ?" |
|
|
47
|
-
| Q13.3 (FK references) | Vague | "Une {entity} de ce module appartient-elle à un {existing_entity} ? (ex: OrderLine → Product)" |
|
|
48
|
-
| Q13.4 (events) | "Non" | "Quand un {entity} est créé/modifié/supprimé, faut-il notifier un autre module ? Mettre à jour un compteur ?" |
|
|
49
|
-
| Q13.5 (modifications) | "Non" | "Pas de nouvelle colonne dans le menu ? Pas de lien depuis une page existante vers ce nouveau module ?" |
|
|
50
|
-
| Q13.8 (conflicts) | "Pas de risque" | "Deux modules modifient-ils la même entité ? (ex: module A crée un Client, module B le modifie)" |
|
|
51
|
-
|
|
52
|
-
### Anti-patterns to Detect
|
|
53
|
-
|
|
54
|
-
| Signal | Anti-pattern | Action |
|
|
55
|
-
|--------|-------------|--------|
|
|
56
|
-
| Module totalement isolé | **Silo de données** | Rare qu'un module métier n'ait aucune connexion. Vérifier avec le codebase context. |
|
|
57
|
-
| Duplication d'entité existante | **Entité dupliquée** | Si `Client` existe déjà, ne pas créer `Customer`. Référencer l'existant. |
|
|
58
|
-
| Modification d'entité d'un autre module | **Couplage fort** | Utiliser des événements (MediatR) plutôt que des modifications directes. |
|
|
59
|
-
| Aucune mention de navigation | **Module orphelin dans l'UI** | Le module doit apparaître dans le menu de l'application (NavRoute). |
|
|
60
|
-
|
|
61
|
-
### Using Pre-Research Context
|
|
62
|
-
|
|
63
|
-
> **IMPORTANT:** This category benefits most from step 3 (Pre-Research).
|
|
64
|
-
>
|
|
65
|
-
> Use `{codebase_context}` to:
|
|
66
|
-
> - **List existing entities** and ask the user which ones this module references
|
|
67
|
-
> - **Show existing modules** and ask about interactions
|
|
68
|
-
> - **Detect potential duplicates** (entity names similar to what the user describes)
|
|
69
|
-
> - **Propose event patterns** based on existing MediatR notifications
|
|
1
|
+
# Category 13: Cross-Module Impact
|
|
2
|
+
|
|
3
|
+
> **Usage:** Analyze impact on existing modules and shared dependencies
|
|
4
|
+
> **When to load:** ALWAYS for new modules (not enhancements)
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 13.1 Existing Module Dependencies
|
|
9
|
+
|
|
10
|
+
| # | Question | Answer Type |
|
|
11
|
+
|---|----------|-------------|
|
|
12
|
+
| Q13.1 | Which existing modules does this new module interact with? | List |
|
|
13
|
+
| Q13.2 | What data is shared between modules? (entities, lookup tables) | Per module |
|
|
14
|
+
| Q13.3 | Are there existing entities this module will reference? (FK relationships) | List |
|
|
15
|
+
| Q13.4 | Will this module produce events that other modules consume? | List of events |
|
|
16
|
+
|
|
17
|
+
## 13.2 Impact Assessment
|
|
18
|
+
|
|
19
|
+
| # | Question | Answer Type |
|
|
20
|
+
|---|----------|-------------|
|
|
21
|
+
| Q13.5 | Will existing modules need modifications to support this new module? | List of changes |
|
|
22
|
+
| Q13.6 | Are there shared UI components or navigation changes? | List |
|
|
23
|
+
| Q13.7 | Will this module affect existing permissions/roles? | Yes/No + detail |
|
|
24
|
+
| Q13.8 | Is there a risk of data model conflicts? (same entity modified by 2 modules) | Risk assessment |
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Cross-Module Patterns
|
|
29
|
+
|
|
30
|
+
| Need | Pattern | Example |
|
|
31
|
+
|------|---------|---------|
|
|
32
|
+
| Reference another entity | Navigation property + FK | `Order.ClientId → Client` |
|
|
33
|
+
| Shared lookup data | Shared entity in Domain | `Status`, `Category` entities |
|
|
34
|
+
| Event notification | MediatR notification | `OrderCreatedNotification` |
|
|
35
|
+
| Cross-module query | Read-only DTO from other module | `IClientQueryService` |
|
|
36
|
+
| Navigation link | Menu entry in NavRoute | `business/{app}/{module}` |
|
|
37
|
+
| Shared permission | Permission hierarchy | `{app}.*` covers all modules |
|
|
38
|
+
|
|
39
|
+
## Elicitation Guide
|
|
40
|
+
|
|
41
|
+
### Follow-ups by Question
|
|
42
|
+
|
|
43
|
+
| Question | If answer is vague/insufficient | Probe |
|
|
44
|
+
|----------|-------------------------------|-------|
|
|
45
|
+
| Q13.1 (interactions) | "Aucun" | "Ce module est totalement isolé ? Pas de lien avec des clients, produits, utilisateurs d'autres modules ?" |
|
|
46
|
+
| Q13.2 (shared data) | "Je ne sais pas" | Use `{codebase_context}` from pre-research: "J'ai trouvé les entités {list} dans {app}. Ce module a-t-il besoin de les référencer ?" |
|
|
47
|
+
| Q13.3 (FK references) | Vague | "Une {entity} de ce module appartient-elle à un {existing_entity} ? (ex: OrderLine → Product)" |
|
|
48
|
+
| Q13.4 (events) | "Non" | "Quand un {entity} est créé/modifié/supprimé, faut-il notifier un autre module ? Mettre à jour un compteur ?" |
|
|
49
|
+
| Q13.5 (modifications) | "Non" | "Pas de nouvelle colonne dans le menu ? Pas de lien depuis une page existante vers ce nouveau module ?" |
|
|
50
|
+
| Q13.8 (conflicts) | "Pas de risque" | "Deux modules modifient-ils la même entité ? (ex: module A crée un Client, module B le modifie)" |
|
|
51
|
+
|
|
52
|
+
### Anti-patterns to Detect
|
|
53
|
+
|
|
54
|
+
| Signal | Anti-pattern | Action |
|
|
55
|
+
|--------|-------------|--------|
|
|
56
|
+
| Module totalement isolé | **Silo de données** | Rare qu'un module métier n'ait aucune connexion. Vérifier avec le codebase context. |
|
|
57
|
+
| Duplication d'entité existante | **Entité dupliquée** | Si `Client` existe déjà, ne pas créer `Customer`. Référencer l'existant. |
|
|
58
|
+
| Modification d'entité d'un autre module | **Couplage fort** | Utiliser des événements (MediatR) plutôt que des modifications directes. |
|
|
59
|
+
| Aucune mention de navigation | **Module orphelin dans l'UI** | Le module doit apparaître dans le menu de l'application (NavRoute). |
|
|
60
|
+
|
|
61
|
+
### Using Pre-Research Context
|
|
62
|
+
|
|
63
|
+
> **IMPORTANT:** This category benefits most from step 3 (Pre-Research).
|
|
64
|
+
>
|
|
65
|
+
> Use `{codebase_context}` to:
|
|
66
|
+
> - **List existing entities** and ask the user which ones this module references
|
|
67
|
+
> - **Show existing modules** and ask about interactions
|
|
68
|
+
> - **Detect potential duplicates** (entity names similar to what the user describes)
|
|
69
|
+
> - **Propose event patterns** based on existing MediatR notifications
|