@atlashub/smartstack-cli 3.39.0 → 3.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.documentation/apex.html +644 -644
- package/.documentation/css/styles.css +2320 -2320
- package/.documentation/init.html +1377 -1377
- package/.documentation/js/app.js +780 -780
- package/.documentation/prd-json-v2.0.0.md +396 -396
- package/.documentation/testing-ba-e2e.md +462 -462
- package/config/default-config.json +95 -95
- package/config/mcp-defaults.json +62 -62
- package/config/settings.json +53 -53
- package/config/settings.local.example.json +16 -16
- package/dist/index.js.map +1 -1
- package/dist/mcp-entry.mjs +6 -4
- package/dist/mcp-entry.mjs.map +1 -1
- package/package.json +115 -115
- package/scripts/extract-api-endpoints.ts +325 -325
- package/scripts/extract-business-rules.ts +440 -440
- package/scripts/generate-doc-with-mock-ui.ts +804 -804
- package/scripts/health-check.sh +168 -168
- package/scripts/postinstall.js +18 -18
- package/templates/agents/action.md +37 -37
- package/templates/agents/ba-reader.md +378 -378
- package/templates/agents/ba-writer.md +861 -861
- package/templates/agents/code-reviewer.md +163 -163
- package/templates/agents/db-reader.md +149 -149
- package/templates/agents/docs-context-reader.md +143 -143
- package/templates/agents/docs-sync-checker.md +122 -122
- package/templates/agents/efcore/conflicts.md +84 -84
- package/templates/agents/efcore/db-deploy.md +74 -74
- package/templates/agents/efcore/db-reset.md +85 -85
- package/templates/agents/efcore/db-seed.md +61 -61
- package/templates/agents/efcore/db-status.md +86 -86
- package/templates/agents/efcore/migration.md +186 -186
- package/templates/agents/efcore/rebase-snapshot.md +108 -108
- package/templates/agents/efcore/scan.md +92 -92
- package/templates/agents/efcore/squash.md +161 -161
- package/templates/agents/explore-codebase.md +66 -66
- package/templates/agents/explore-docs.md +98 -98
- package/templates/agents/fix-grammar.md +50 -50
- package/templates/agents/gitflow/abort.md +45 -45
- package/templates/agents/gitflow/cleanup.md +96 -96
- package/templates/agents/gitflow/commit.md +236 -236
- package/templates/agents/gitflow/exec.md +48 -48
- package/templates/agents/gitflow/finish.md +146 -146
- package/templates/agents/gitflow/init-clone.md +199 -199
- package/templates/agents/gitflow/init-detect.md +137 -137
- package/templates/agents/gitflow/init-validate.md +225 -225
- package/templates/agents/gitflow/init.md +340 -340
- package/templates/agents/gitflow/merge.md +145 -145
- package/templates/agents/gitflow/plan.md +42 -42
- package/templates/agents/gitflow/pr.md +191 -191
- package/templates/agents/gitflow/review.md +49 -49
- package/templates/agents/gitflow/start.md +147 -147
- package/templates/agents/gitflow/status.md +95 -95
- package/templates/agents/mcp-healthcheck.md +163 -163
- package/templates/agents/snipper.md +37 -37
- package/templates/agents/websearch.md +46 -46
- package/templates/hooks/appsettings-guard.sh +76 -76
- package/templates/hooks/docs-drift-check.md +96 -96
- package/templates/hooks/ef-migration-check.md +139 -139
- package/templates/hooks/hooks.json +58 -58
- package/templates/hooks/mcp-check.md +64 -64
- package/templates/hooks/ralph-mcp-logger.sh +46 -46
- package/templates/hooks/ralph-session-end.sh +69 -69
- package/templates/hooks/stop-hook.sh +177 -177
- package/templates/hooks/wsl-dotnet-cleanup.sh +24 -24
- package/templates/mcp-scaffolding/component.tsx.hbs +318 -318
- package/templates/mcp-scaffolding/controller.cs.hbs +192 -192
- package/templates/mcp-scaffolding/entity-extension.cs.hbs +239 -239
- package/templates/mcp-scaffolding/frontend/api-client.ts.hbs +116 -116
- package/templates/mcp-scaffolding/frontend/nav-routes.ts.hbs +133 -133
- package/templates/mcp-scaffolding/frontend/routes.tsx.hbs +126 -126
- package/templates/mcp-scaffolding/migrations/seed-roles.cs.hbs +261 -261
- package/templates/mcp-scaffolding/service-extension.cs.hbs +53 -53
- package/templates/mcp-scaffolding/tests/controller.test.cs.hbs +436 -436
- package/templates/mcp-scaffolding/tests/entity.test.cs.hbs +239 -239
- package/templates/mcp-scaffolding/tests/repository.test.cs.hbs +441 -441
- package/templates/mcp-scaffolding/tests/security.test.cs.hbs +442 -442
- package/templates/mcp-scaffolding/tests/service.test.cs.hbs +402 -402
- package/templates/mcp-scaffolding/tests/validator.test.cs.hbs +428 -428
- package/templates/project/DependencyInjection.Application.cs.template +25 -25
- package/templates/project/DependencyInjection.Infrastructure.cs.template +61 -61
- package/templates/project/DesignTimeExtensionsDbContextFactory.cs.template +70 -70
- package/templates/project/ExampleEntity.cs.template +116 -116
- package/templates/project/ExampleEntityConfiguration.cs.template +64 -64
- package/templates/project/ExampleService.cs.template +146 -146
- package/templates/project/ExtensionsDbContext.cs.template +41 -41
- package/templates/project/IExtensionsDbContext.cs.template +22 -22
- package/templates/project/Program.cs.template +47 -47
- package/templates/project/README.md +79 -79
- package/templates/project/api.ts.template +12 -12
- package/templates/project/appsettings.json.template +170 -170
- package/templates/project/claude-settings.json.template +5 -5
- package/templates/project/test-frontend/msw/handlers.ts +58 -58
- package/templates/project/test-frontend/msw/server.ts +25 -25
- package/templates/project/test-frontend/setup.ts +16 -16
- package/templates/project/test-frontend/test-utils.tsx +59 -59
- package/templates/project/test-frontend/vitest.config.ts +31 -31
- package/templates/ralph/README.md +93 -93
- package/templates/ralph/ralph.config.yaml +113 -113
- package/templates/scripts/setup-ralph-loop.sh +173 -173
- package/templates/skills/_resources/config-safety.md +61 -61
- package/templates/skills/_resources/context-digest-template.md +53 -53
- package/templates/skills/_resources/doc-context-cache.md +60 -60
- package/templates/skills/_resources/docs-manifest-schema.md +155 -155
- package/templates/skills/_resources/formatting-guide.md +124 -124
- package/templates/skills/_resources/mcp-validate-documentation-spec.md +181 -181
- package/templates/skills/_shared.md +228 -228
- package/templates/skills/admin/SKILL.md +48 -48
- package/templates/skills/ai-prompt/SKILL.md +107 -107
- package/templates/skills/ai-prompt/steps/step-00-init.md +47 -47
- package/templates/skills/ai-prompt/steps/step-01-implementation.md +122 -122
- package/templates/skills/apex/SKILL.md +168 -168
- package/templates/skills/apex/_shared.md +141 -141
- package/templates/skills/apex/references/agent-teams-protocol.md +164 -164
- package/templates/skills/apex/references/analysis-methods.md +141 -141
- package/templates/skills/apex/references/challenge-questions.md +145 -145
- package/templates/skills/apex/references/code-generation.md +412 -412
- package/templates/skills/apex/references/core-seed-data.md +1437 -1437
- package/templates/skills/apex/references/error-classification.md +144 -144
- package/templates/skills/apex/references/examine-build-validation.md +82 -82
- package/templates/skills/apex/references/execution-frontend-gates.md +177 -177
- package/templates/skills/apex/references/execution-frontend-patterns.md +105 -105
- package/templates/skills/apex/references/execution-layer1-rules.md +96 -96
- package/templates/skills/apex/references/initialization-challenge-flow.md +110 -110
- package/templates/skills/apex/references/planning-layer-mapping.md +151 -151
- package/templates/skills/apex/references/post-checks.md +1584 -1584
- package/templates/skills/apex/references/smartstack-api.md +1053 -1053
- package/templates/skills/apex/references/smartstack-frontend.md +1571 -1571
- package/templates/skills/apex/references/smartstack-layers.md +402 -402
- package/templates/skills/apex/steps/step-00-init.md +307 -307
- package/templates/skills/apex/steps/step-01-analyze.md +165 -165
- package/templates/skills/apex/steps/step-02-plan.md +144 -144
- package/templates/skills/apex/steps/step-03-execute.md +328 -328
- package/templates/skills/apex/steps/step-04-examine.md +263 -263
- package/templates/skills/apex/steps/step-05-deep-review.md +129 -129
- package/templates/skills/apex/steps/step-06-resolve.md +101 -101
- package/templates/skills/apex/steps/step-07-tests.md +238 -238
- package/templates/skills/apex/steps/step-08-run-tests.md +125 -125
- package/templates/skills/application/SKILL.md +4 -4
- package/templates/skills/application/references/application-roles-template.md +227 -227
- package/templates/skills/application/references/backend-controller-hierarchy.md +58 -58
- package/templates/skills/application/references/backend-entity-seeding.md +72 -72
- package/templates/skills/application/references/backend-seeding-and-dto-output.md +83 -83
- package/templates/skills/application/references/backend-table-prefix-mapping.md +79 -79
- package/templates/skills/application/references/backend-verification.md +88 -88
- package/templates/skills/application/references/frontend-i18n-and-output.md +67 -67
- package/templates/skills/application/references/frontend-route-naming.md +117 -117
- package/templates/skills/application/references/frontend-route-wiring-app-tsx.md +107 -107
- package/templates/skills/application/references/frontend-verification.md +156 -156
- package/templates/skills/application/references/migration-checklist-troubleshooting.md +1 -1
- package/templates/skills/application/references/provider-template.md +177 -177
- package/templates/skills/application/references/roles-client-project-handling.md +55 -55
- package/templates/skills/application/references/roles-fallback-procedure.md +149 -149
- package/templates/skills/application/references/test-coverage-requirements.md +213 -213
- package/templates/skills/application/references/test-frontend.md +73 -73
- package/templates/skills/application/references/test-prerequisites.md +72 -72
- package/templates/skills/application/steps/step-05-frontend.md +176 -176
- package/templates/skills/application/steps/step-06-migration.md +193 -193
- package/templates/skills/application/steps/step-07-tests.md +356 -356
- package/templates/skills/application/steps/step-08-documentation.md +137 -137
- package/templates/skills/application/templates-backend.md +463 -463
- package/templates/skills/application/templates-frontend.md +685 -685
- package/templates/skills/application/templates-i18n.md +520 -520
- package/templates/skills/application/templates-seed.md +1096 -1096
- package/templates/skills/business-analyse/SKILL.md +327 -327
- package/templates/skills/business-analyse/_architecture.md +123 -123
- package/templates/skills/business-analyse/_elicitation.md +206 -206
- package/templates/skills/business-analyse/_module-loop.md +115 -115
- package/templates/skills/business-analyse/_shared.md +383 -383
- package/templates/skills/business-analyse/_suggestions.md +34 -34
- package/templates/skills/business-analyse/html/ba-interactive.html +4477 -4477
- package/templates/skills/business-analyse/html/build-html.js +77 -77
- package/templates/skills/business-analyse/html/src/scripts/01-data-init.js +150 -150
- package/templates/skills/business-analyse/html/src/scripts/02-navigation.js +227 -227
- package/templates/skills/business-analyse/html/src/scripts/03-render-cadrage.js +199 -199
- package/templates/skills/business-analyse/html/src/scripts/04-render-modules.js +205 -205
- package/templates/skills/business-analyse/html/src/scripts/05-render-specs.js +647 -647
- package/templates/skills/business-analyse/html/src/scripts/06-render-consolidation.js +195 -195
- package/templates/skills/business-analyse/html/src/scripts/07-render-handoff.js +92 -92
- package/templates/skills/business-analyse/html/src/scripts/08-editing.js +135 -135
- package/templates/skills/business-analyse/html/src/scripts/09-export.js +168 -168
- package/templates/skills/business-analyse/html/src/scripts/10-comments.js +171 -171
- package/templates/skills/business-analyse/html/src/scripts/11-review-panel.js +166 -166
- package/templates/skills/business-analyse/html/src/styles/01-variables.css +38 -38
- package/templates/skills/business-analyse/html/src/styles/02-layout.css +101 -101
- package/templates/skills/business-analyse/html/src/styles/03-navigation.css +120 -120
- package/templates/skills/business-analyse/html/src/styles/04-cards.css +196 -196
- package/templates/skills/business-analyse/html/src/styles/05-modules.css +454 -454
- package/templates/skills/business-analyse/html/src/styles/06-wireframes.css +272 -272
- package/templates/skills/business-analyse/html/src/styles/07-comments.css +184 -184
- package/templates/skills/business-analyse/html/src/styles/08-review-panel.css +241 -241
- package/templates/skills/business-analyse/html/src/template.html +516 -516
- package/templates/skills/business-analyse/patterns/suggestion-catalog.md +546 -546
- package/templates/skills/business-analyse/questionnaire/00-application.md +160 -160
- package/templates/skills/business-analyse/questionnaire/00b-project.md +85 -85
- package/templates/skills/business-analyse/questionnaire/01-context.md +185 -185
- package/templates/skills/business-analyse/questionnaire/02-stakeholders.md +189 -189
- package/templates/skills/business-analyse/questionnaire/03-scope.md +164 -164
- package/templates/skills/business-analyse/questionnaire/04-data.md +88 -88
- package/templates/skills/business-analyse/questionnaire/05-integrations.md +58 -58
- package/templates/skills/business-analyse/questionnaire/06-security.md +68 -68
- package/templates/skills/business-analyse/questionnaire/07-ui.md +76 -76
- package/templates/skills/business-analyse/questionnaire/08-performance.md +42 -42
- package/templates/skills/business-analyse/questionnaire/09-constraints.md +45 -45
- package/templates/skills/business-analyse/questionnaire/10-documentation.md +43 -43
- package/templates/skills/business-analyse/questionnaire/11-data-lifecycle.md +59 -59
- package/templates/skills/business-analyse/questionnaire/12-migration.md +58 -58
- package/templates/skills/business-analyse/questionnaire/13-cross-module.md +69 -69
- package/templates/skills/business-analyse/questionnaire/14-risk-assumptions.md +135 -135
- package/templates/skills/business-analyse/questionnaire/15-success-metrics.md +136 -136
- package/templates/skills/business-analyse/questionnaire.md +337 -337
- package/templates/skills/business-analyse/react/application-viewer.md +242 -242
- package/templates/skills/business-analyse/react/components.md +551 -551
- package/templates/skills/business-analyse/react/i18n-template.md +306 -306
- package/templates/skills/business-analyse/references/acceptance-criteria.md +169 -169
- package/templates/skills/business-analyse/references/agent-module-prompt.md +362 -362
- package/templates/skills/business-analyse/references/agent-pooling-best-practices.md +557 -557
- package/templates/skills/business-analyse/references/analysis-semantic-checks.md +190 -190
- package/templates/skills/business-analyse/references/cache-warming-strategy.md +566 -566
- package/templates/skills/business-analyse/references/cadrage-challenge-patterns.md +41 -41
- package/templates/skills/business-analyse/references/cadrage-coverage-matrix.md +74 -74
- package/templates/skills/business-analyse/references/cadrage-pre-analysis.md +115 -115
- package/templates/skills/business-analyse/references/cadrage-shared-modules.md +68 -69
- package/templates/skills/business-analyse/references/cadrage-structure-cards.md +85 -85
- package/templates/skills/business-analyse/references/compilation-structure-cards.md +297 -297
- package/templates/skills/business-analyse/references/consolidation-structural-checks.md +107 -107
- package/templates/skills/business-analyse/references/deploy-data-build.md +180 -180
- package/templates/skills/business-analyse/references/deploy-modes.md +118 -118
- package/templates/skills/business-analyse/references/detection-strategies.md +424 -424
- package/templates/skills/business-analyse/references/entity-architecture-decision.md +218 -218
- package/templates/skills/business-analyse/references/handoff-file-templates.md +120 -120
- package/templates/skills/business-analyse/references/handoff-mappings.md +81 -81
- package/templates/skills/business-analyse/references/handoff-seeddata-generation.md +312 -312
- package/templates/skills/business-analyse/references/html-data-mapping.md +299 -299
- package/templates/skills/business-analyse/references/init-schema-deployment.md +65 -65
- package/templates/skills/business-analyse/references/naming-conventions.md +243 -243
- package/templates/skills/business-analyse/references/prd-generation.md +258 -258
- package/templates/skills/business-analyse/references/review-data-mapping.md +363 -363
- package/templates/skills/business-analyse/references/robustness-checks.md +542 -542
- package/templates/skills/business-analyse/references/spec-auto-inference.md +111 -111
- package/templates/skills/business-analyse/references/team-orchestration.md +1022 -1022
- package/templates/skills/business-analyse/references/ui-dashboard-spec.md +85 -85
- package/templates/skills/business-analyse/references/ui-resource-cards.md +259 -259
- package/templates/skills/business-analyse/references/validate-incremental-html.md +121 -121
- package/templates/skills/business-analyse/references/validation-checklist.md +347 -347
- package/templates/skills/business-analyse/references/wireframe-svg-style-guide.md +335 -335
- package/templates/skills/business-analyse/schemas/application-schema.json +453 -453
- package/templates/skills/business-analyse/schemas/feature-schema.json +53 -53
- package/templates/skills/business-analyse/schemas/project-schema.json +485 -485
- package/templates/skills/business-analyse/schemas/sections/analysis-schema.json +201 -201
- package/templates/skills/business-analyse/schemas/sections/discovery-schema.json +82 -82
- package/templates/skills/business-analyse/schemas/sections/handoff-schema.json +80 -80
- package/templates/skills/business-analyse/schemas/sections/metadata-schema.json +70 -70
- package/templates/skills/business-analyse/schemas/sections/specification-schema.json +547 -547
- package/templates/skills/business-analyse/schemas/sections/validation-schema.json +93 -93
- package/templates/skills/business-analyse/schemas/shared/common-defs.json +226 -226
- package/templates/skills/business-analyse/steps/step-00-init.md +575 -576
- package/templates/skills/business-analyse/steps/step-01-cadrage.md +767 -767
- package/templates/skills/business-analyse/steps/step-01b-applications.md +419 -419
- package/templates/skills/business-analyse/steps/step-02-decomposition.md +387 -387
- package/templates/skills/business-analyse/steps/step-03a-data.md +16 -16
- package/templates/skills/business-analyse/steps/step-03a1-setup.md +506 -506
- package/templates/skills/business-analyse/steps/step-03a2-analysis.md +252 -252
- package/templates/skills/business-analyse/steps/step-03b-ui.md +425 -425
- package/templates/skills/business-analyse/steps/step-03c-compile.md +611 -611
- package/templates/skills/business-analyse/steps/step-03d-validate.md +783 -783
- package/templates/skills/business-analyse/steps/step-04-consolidation.md +17 -17
- package/templates/skills/business-analyse/steps/step-04a-collect.md +415 -415
- package/templates/skills/business-analyse/steps/step-04b-analyze.md +163 -163
- package/templates/skills/business-analyse/steps/step-04c-decide.md +186 -186
- package/templates/skills/business-analyse/steps/step-05a-handoff.md +840 -840
- package/templates/skills/business-analyse/steps/step-05b-deploy.md +522 -522
- package/templates/skills/business-analyse/steps/step-05c-ralph-readiness.md +703 -703
- package/templates/skills/business-analyse/steps/step-06-review.md +278 -278
- package/templates/skills/business-analyse/templates/tpl-frd.md +168 -168
- package/templates/skills/business-analyse/templates/tpl-handoff.md +186 -186
- package/templates/skills/business-analyse/templates/tpl-launch-displays.md +59 -59
- package/templates/skills/business-analyse/templates/tpl-progress.md +172 -172
- package/templates/skills/business-analyse/templates-frd.md +476 -476
- package/templates/skills/business-analyse/templates-react.md +574 -574
- package/templates/skills/cc-agent/SKILL.md +129 -129
- package/templates/skills/cc-agent/references/agent-behavior-patterns.md +95 -95
- package/templates/skills/cc-agent/references/agent-frontmatter.md +213 -213
- package/templates/skills/cc-agent/references/permission-modes.md +102 -102
- package/templates/skills/cc-agent/references/tools-reference.md +144 -144
- package/templates/skills/cc-agent/steps/step-00-init.md +134 -134
- package/templates/skills/cc-agent/steps/step-01-design.md +186 -186
- package/templates/skills/cc-agent/steps/step-02-generate.md +131 -131
- package/templates/skills/cc-agent/steps/step-03-validate.md +130 -130
- package/templates/skills/cc-agent/templates/agent-categorized.md +67 -67
- package/templates/skills/cc-agent/templates/agent-standalone.md +56 -56
- package/templates/skills/cc-agent/templates/agent-with-skills.md +94 -94
- package/templates/skills/cc-audit/SKILL.md +108 -108
- package/templates/skills/cc-audit/references/agent-checklist.md +91 -91
- package/templates/skills/cc-audit/references/hook-checklist.md +110 -110
- package/templates/skills/cc-audit/references/skill-checklist.md +70 -70
- package/templates/skills/cc-audit/steps/step-00-init.md +98 -98
- package/templates/skills/cc-audit/steps/step-01-scan.md +142 -142
- package/templates/skills/cc-audit/steps/step-02-analyze.md +158 -158
- package/templates/skills/cc-audit/steps/step-03-report.md +142 -142
- package/templates/skills/cc-skill/SKILL.md +134 -134
- package/templates/skills/cc-skill/references/best-practices.md +167 -167
- package/templates/skills/cc-skill/references/frontmatter-reference.md +182 -182
- package/templates/skills/cc-skill/references/skill-patterns.md +199 -199
- package/templates/skills/cc-skill/steps/step-00-init.md +119 -119
- package/templates/skills/cc-skill/steps/step-01-design.md +199 -199
- package/templates/skills/cc-skill/steps/step-02-generate.md +145 -145
- package/templates/skills/cc-skill/steps/step-03-steps.md +151 -151
- package/templates/skills/cc-skill/steps/step-04-validate.md +124 -124
- package/templates/skills/cc-skill/templates/skill-forked.md +85 -85
- package/templates/skills/cc-skill/templates/skill-progressive.md +102 -102
- package/templates/skills/cc-skill/templates/skill-simple.md +75 -75
- package/templates/skills/cc-skill/templates/step-template.md +82 -82
- package/templates/skills/check-version/SKILL.md +196 -196
- package/templates/skills/controller/SKILL.md +162 -162
- package/templates/skills/controller/postman-templates.md +614 -614
- package/templates/skills/controller/references/controller-code-templates.md +159 -159
- package/templates/skills/controller/references/mcp-scaffold-workflow.md +209 -209
- package/templates/skills/controller/references/permission-sync-templates.md +149 -149
- package/templates/skills/controller/steps/step-00-init.md +193 -191
- package/templates/skills/controller/steps/step-01-analyze.md +146 -146
- package/templates/skills/controller/steps/step-02-plan.md +176 -176
- package/templates/skills/controller/steps/step-03-generate.md +189 -189
- package/templates/skills/controller/steps/step-04-perms.md +80 -80
- package/templates/skills/controller/steps/step-05-validate.md +107 -107
- package/templates/skills/controller/templates.md +1555 -1555
- package/templates/skills/debug/SKILL.md +70 -70
- package/templates/skills/debug/references/team-protocol.md +232 -232
- package/templates/skills/debug/steps/step-00-init.md +57 -57
- package/templates/skills/debug/steps/step-01-analyze.md +219 -219
- package/templates/skills/debug/steps/step-02-resolve.md +85 -85
- package/templates/skills/documentation/SKILL.md +132 -132
- package/templates/skills/documentation/data-schema.md +227 -227
- package/templates/skills/documentation/steps/step-00-init.md +70 -70
- package/templates/skills/documentation/steps/step-01-scan.md +113 -113
- package/templates/skills/documentation/steps/step-02-generate.md +231 -231
- package/templates/skills/documentation/steps/step-03-validate.md +251 -238
- package/templates/skills/documentation/templates.md +662 -663
- package/templates/skills/efcore/SKILL.md +167 -167
- package/templates/skills/efcore/references/both-contexts.md +32 -32
- package/templates/skills/efcore/references/database-operations.md +67 -67
- package/templates/skills/efcore/references/destructive-operations.md +38 -38
- package/templates/skills/efcore/references/reset-operations.md +81 -81
- package/templates/skills/efcore/references/seed-methods.md +86 -86
- package/templates/skills/efcore/references/shared-init-functions.md +250 -250
- package/templates/skills/efcore/references/sql-objects-injection.md +61 -61
- package/templates/skills/efcore/references/troubleshooting.md +81 -81
- package/templates/skills/efcore/references/zero-downtime-patterns.md +227 -227
- package/templates/skills/efcore/steps/db/step-deploy.md +217 -217
- package/templates/skills/efcore/steps/db/step-reset.md +186 -186
- package/templates/skills/efcore/steps/db/step-seed.md +166 -166
- package/templates/skills/efcore/steps/db/step-status.md +173 -173
- package/templates/skills/efcore/steps/migration/step-00-init.md +102 -102
- package/templates/skills/efcore/steps/migration/step-01-check.md +164 -164
- package/templates/skills/efcore/steps/migration/step-02-create.md +160 -160
- package/templates/skills/efcore/steps/migration/step-03-validate.md +168 -168
- package/templates/skills/efcore/steps/rebase-snapshot/step-00-init.md +173 -173
- package/templates/skills/efcore/steps/rebase-snapshot/step-01-backup.md +100 -100
- package/templates/skills/efcore/steps/rebase-snapshot/step-02-fetch.md +115 -115
- package/templates/skills/efcore/steps/rebase-snapshot/step-03-create.md +112 -112
- package/templates/skills/efcore/steps/rebase-snapshot/step-04-validate.md +157 -157
- package/templates/skills/efcore/steps/shared/step-00-init.md +131 -131
- package/templates/skills/efcore/steps/squash/step-00-init.md +141 -141
- package/templates/skills/efcore/steps/squash/step-01-backup.md +120 -120
- package/templates/skills/efcore/steps/squash/step-02-fetch.md +168 -168
- package/templates/skills/efcore/steps/squash/step-03-create.md +184 -184
- package/templates/skills/efcore/steps/squash/step-04-validate.md +174 -174
- package/templates/skills/explore/SKILL.md +98 -98
- package/templates/skills/feature-full/SKILL.md +111 -111
- package/templates/skills/feature-full/steps/step-00-init.md +57 -57
- package/templates/skills/feature-full/steps/step-01-implementation.md +120 -120
- package/templates/skills/gitflow/SKILL.md +377 -377
- package/templates/skills/gitflow/_shared.md +620 -620
- package/templates/skills/gitflow/phases/abort.md +189 -189
- package/templates/skills/gitflow/phases/cleanup.md +234 -234
- package/templates/skills/gitflow/phases/status.md +192 -192
- package/templates/skills/gitflow/references/commit-message-generation.md +58 -58
- package/templates/skills/gitflow/references/commit-migration-validation.md +49 -49
- package/templates/skills/gitflow/references/finish-cleanup.md +55 -55
- package/templates/skills/gitflow/references/finish-version-bumping.md +45 -45
- package/templates/skills/gitflow/references/init-config-template.md +135 -135
- package/templates/skills/gitflow/references/init-environment-detection.md +41 -41
- package/templates/skills/gitflow/references/init-name-normalization.md +103 -103
- package/templates/skills/gitflow/references/init-questions.md +185 -185
- package/templates/skills/gitflow/references/init-structure-creation.md +75 -75
- package/templates/skills/gitflow/references/init-version-detection.md +21 -21
- package/templates/skills/gitflow/references/init-workspace-detection.md +43 -43
- package/templates/skills/gitflow/references/merge-ci-status.md +36 -36
- package/templates/skills/gitflow/references/merge-execution.md +62 -62
- package/templates/skills/gitflow/references/merge-pr-context.md +76 -76
- package/templates/skills/gitflow/references/plan-template.md +69 -69
- package/templates/skills/gitflow/references/pr-build-checks.md +60 -60
- package/templates/skills/gitflow/references/pr-generation.md +58 -58
- package/templates/skills/gitflow/references/start-branch-normalization.md +28 -28
- package/templates/skills/gitflow/references/start-efcore-preflight.md +70 -70
- package/templates/skills/gitflow/references/start-local-config.md +113 -113
- package/templates/skills/gitflow/references/start-worktree-creation.md +50 -50
- package/templates/skills/gitflow/references/sync-push-verify.md +44 -44
- package/templates/skills/gitflow/references/sync-rebase-conflicts.md +38 -38
- package/templates/skills/gitflow/steps/step-commit.md +199 -199
- package/templates/skills/gitflow/steps/step-finish.md +147 -147
- package/templates/skills/gitflow/steps/step-init.md +190 -190
- package/templates/skills/gitflow/steps/step-merge.md +85 -85
- package/templates/skills/gitflow/steps/step-plan.md +151 -151
- package/templates/skills/gitflow/steps/step-pr.md +199 -199
- package/templates/skills/gitflow/steps/step-start.md +195 -195
- package/templates/skills/gitflow/steps/step-sync.md +161 -161
- package/templates/skills/gitflow/templates/config.json +72 -72
- package/templates/skills/mcp/SKILL.md +62 -62
- package/templates/skills/mcp/steps/step-01-healthcheck.md +108 -108
- package/templates/skills/mcp/steps/step-02-tools.md +73 -73
- package/templates/skills/notification/SKILL.md +173 -173
- package/templates/skills/quick-search/SKILL.md +99 -99
- package/templates/skills/ralph-loop/SKILL.md +234 -234
- package/templates/skills/ralph-loop/references/category-completeness.md +185 -185
- package/templates/skills/ralph-loop/references/category-rules.md +96 -96
- package/templates/skills/ralph-loop/references/compact-loop.md +300 -300
- package/templates/skills/ralph-loop/references/init-resume-recovery.md +127 -127
- package/templates/skills/ralph-loop/references/module-transition.md +151 -151
- package/templates/skills/ralph-loop/references/multi-module-queue.md +171 -171
- package/templates/skills/ralph-loop/references/parallel-execution.md +246 -246
- package/templates/skills/ralph-loop/references/section-splitting.md +439 -439
- package/templates/skills/ralph-loop/references/task-transform-legacy.md +256 -256
- package/templates/skills/ralph-loop/references/team-orchestration.md +547 -547
- package/templates/skills/ralph-loop/steps/step-00-init.md +150 -150
- package/templates/skills/ralph-loop/steps/step-01-task.md +174 -174
- package/templates/skills/ralph-loop/steps/step-02-execute.md +177 -177
- package/templates/skills/ralph-loop/steps/step-03-commit.md +92 -92
- package/templates/skills/ralph-loop/steps/step-04-check.md +207 -207
- package/templates/skills/ralph-loop/steps/step-05-report.md +175 -175
- package/templates/skills/refactor/SKILL.md +56 -56
- package/templates/skills/refactor/steps/step-01-discover.md +60 -60
- package/templates/skills/refactor/steps/step-02-execute.md +67 -67
- package/templates/skills/review-code/SKILL.md +94 -94
- package/templates/skills/review-code/references/clean-code-principles.md +292 -292
- package/templates/skills/review-code/references/code-quality-metrics.md +174 -174
- package/templates/skills/review-code/references/feedback-patterns.md +149 -149
- package/templates/skills/review-code/references/owasp-api-top10.md +243 -243
- package/templates/skills/review-code/references/security-checklist.md +212 -212
- package/templates/skills/review-code/steps/step-01-smartstack.md +96 -96
- package/templates/skills/review-code/steps/step-02-detailed-review.md +80 -80
- package/templates/skills/review-code/steps/step-03-react.md +44 -44
- package/templates/skills/ui-components/SKILL.md +137 -137
- package/templates/skills/ui-components/accessibility.md +170 -170
- package/templates/skills/ui-components/patterns/dashboard-chart.md +327 -327
- package/templates/skills/ui-components/patterns/data-table.md +39 -39
- package/templates/skills/ui-components/patterns/entity-card.md +77 -77
- package/templates/skills/ui-components/patterns/grid-layout.md +91 -91
- package/templates/skills/ui-components/patterns/kanban.md +43 -43
- package/templates/skills/ui-components/responsive-guidelines.md +278 -278
- package/templates/skills/ui-components/style-guide.md +113 -113
- package/templates/skills/utils/SKILL.md +44 -44
- package/templates/skills/utils/subcommands/test-web-config.md +152 -152
- package/templates/skills/utils/subcommands/test-web.md +123 -123
- package/templates/skills/validate/SKILL.md +181 -181
- package/templates/skills/validate-feature/SKILL.md +101 -101
- package/templates/skills/validate-feature/references/api-smoke-tests.md +140 -140
- package/templates/skills/validate-feature/references/db-validation-checks.md +180 -180
- package/templates/skills/validate-feature/steps/step-00-dependencies.md +121 -121
- package/templates/skills/validate-feature/steps/step-01-compile.md +39 -39
- package/templates/skills/validate-feature/steps/step-02-unit-tests.md +45 -45
- package/templates/skills/validate-feature/steps/step-03-integration-tests.md +53 -53
- package/templates/skills/validate-feature/steps/step-04-api-smoke.md +94 -94
- package/templates/skills/validate-feature/steps/step-05-db-validation.md +149 -149
- package/templates/skills/workflow/SKILL.md +127 -127
- package/templates/skills/workflow/steps/step-00-init.md +57 -57
- package/templates/skills/workflow/steps/step-01-implementation.md +84 -84
- package/templates/test-web/api-health.json +38 -38
- package/templates/test-web/minimal.json +19 -19
- package/templates/test-web/npm-package.json +46 -46
- package/templates/test-web/seo-check.json +54 -54
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
# Directory Structure Creation
|
|
2
|
-
|
|
3
|
-
## Path Normalization for WSL
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
# If on WSL, translate Windows paths to /mnt/ format
|
|
7
|
-
# normalize_path_for_platform() from _shared.md handles this
|
|
8
|
-
# Example: D:/projects/MyApp → /mnt/d/projects/MyApp
|
|
9
|
-
PROJECT_BASE="{ROOT_FOLDER}" # Must be already normalized for current platform
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
## Create Complete Structure
|
|
13
|
-
|
|
14
|
-
**⛔ CRITICAL: Use ABSOLUTE PATHS for ALL operations. NEVER use `cd` (it does not persist between Bash calls).**
|
|
15
|
-
**⛔ Use `git -C <path>` or `GIT_DIR=<path>` instead of `cd` + `git`.**
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
PROJECT_BASE="{ROOT_FOLDER}"
|
|
19
|
-
|
|
20
|
-
# Create subdirectories (absolute paths)
|
|
21
|
-
mkdir -p "$PROJECT_BASE/features" "$PROJECT_BASE/releases" "$PROJECT_BASE/hotfixes"
|
|
22
|
-
|
|
23
|
-
# Create bare repository if not exists (absolute path, no cd)
|
|
24
|
-
if [ ! -d "$PROJECT_BASE/.bare" ]; then
|
|
25
|
-
git clone --bare "{REPO_URL}" "$PROJECT_BASE/.bare"
|
|
26
|
-
|
|
27
|
-
# Configure bare repo for worktrees (using git -C, no cd)
|
|
28
|
-
git -C "$PROJECT_BASE/.bare" config core.bare false
|
|
29
|
-
git -C "$PROJECT_BASE/.bare" config core.worktree ..
|
|
30
|
-
fi
|
|
31
|
-
|
|
32
|
-
# Create .git pseudo-file pointing to .bare
|
|
33
|
-
echo "gitdir: ./.bare" > "$PROJECT_BASE/.git"
|
|
34
|
-
|
|
35
|
-
# Organized mode: numbered main folders (absolute paths, GIT_DIR instead of cd)
|
|
36
|
-
if [ "$WORKTREE_MODE" = "organized" ]; then
|
|
37
|
-
[ ! -d "$PROJECT_BASE/01-Main" ] && \
|
|
38
|
-
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/01-Main" main
|
|
39
|
-
|
|
40
|
-
[ ! -d "$PROJECT_BASE/02-Develop" ] && \
|
|
41
|
-
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/02-Develop" develop
|
|
42
|
-
fi
|
|
43
|
-
|
|
44
|
-
# Simple mode: named folders (absolute paths)
|
|
45
|
-
if [ "$WORKTREE_MODE" = "simple" ]; then
|
|
46
|
-
[ ! -d "$PROJECT_BASE/main" ] && \
|
|
47
|
-
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/main" main
|
|
48
|
-
|
|
49
|
-
[ ! -d "$PROJECT_BASE/develop" ] && \
|
|
50
|
-
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/develop" develop
|
|
51
|
-
fi
|
|
52
|
-
|
|
53
|
-
# Convert worktree paths to relative format (cross-platform: Windows + WSL)
|
|
54
|
-
detect_platform
|
|
55
|
-
repair_worktree_paths "$PROJECT_BASE/.bare"
|
|
56
|
-
|
|
57
|
-
# Create gitflow config directory (absolute paths)
|
|
58
|
-
DEVELOP_DIR=$([ "$WORKTREE_MODE" = "organized" ] && echo "02-Develop" || echo "develop")
|
|
59
|
-
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/plans"
|
|
60
|
-
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/logs"
|
|
61
|
-
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/cache"
|
|
62
|
-
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/backup"
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
## Folder Structure to Create
|
|
66
|
-
|
|
67
|
-
```
|
|
68
|
-
{ROOT_FOLDER}/
|
|
69
|
-
├── .bare/ # Git bare repository (this repo only)
|
|
70
|
-
├── 01-Main/ # Worktree: main branch
|
|
71
|
-
├── 02-Develop/ # Worktree: develop branch
|
|
72
|
-
├── features/ # Feature branch worktrees
|
|
73
|
-
├── releases/ # Release branch worktrees
|
|
74
|
-
└── hotfixes/ # Hotfix branch worktrees
|
|
75
|
-
```
|
|
1
|
+
# Directory Structure Creation
|
|
2
|
+
|
|
3
|
+
## Path Normalization for WSL
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
# If on WSL, translate Windows paths to /mnt/ format
|
|
7
|
+
# normalize_path_for_platform() from _shared.md handles this
|
|
8
|
+
# Example: D:/projects/MyApp → /mnt/d/projects/MyApp
|
|
9
|
+
PROJECT_BASE="{ROOT_FOLDER}" # Must be already normalized for current platform
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## Create Complete Structure
|
|
13
|
+
|
|
14
|
+
**⛔ CRITICAL: Use ABSOLUTE PATHS for ALL operations. NEVER use `cd` (it does not persist between Bash calls).**
|
|
15
|
+
**⛔ Use `git -C <path>` or `GIT_DIR=<path>` instead of `cd` + `git`.**
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
PROJECT_BASE="{ROOT_FOLDER}"
|
|
19
|
+
|
|
20
|
+
# Create subdirectories (absolute paths)
|
|
21
|
+
mkdir -p "$PROJECT_BASE/features" "$PROJECT_BASE/releases" "$PROJECT_BASE/hotfixes"
|
|
22
|
+
|
|
23
|
+
# Create bare repository if not exists (absolute path, no cd)
|
|
24
|
+
if [ ! -d "$PROJECT_BASE/.bare" ]; then
|
|
25
|
+
git clone --bare "{REPO_URL}" "$PROJECT_BASE/.bare"
|
|
26
|
+
|
|
27
|
+
# Configure bare repo for worktrees (using git -C, no cd)
|
|
28
|
+
git -C "$PROJECT_BASE/.bare" config core.bare false
|
|
29
|
+
git -C "$PROJECT_BASE/.bare" config core.worktree ..
|
|
30
|
+
fi
|
|
31
|
+
|
|
32
|
+
# Create .git pseudo-file pointing to .bare
|
|
33
|
+
echo "gitdir: ./.bare" > "$PROJECT_BASE/.git"
|
|
34
|
+
|
|
35
|
+
# Organized mode: numbered main folders (absolute paths, GIT_DIR instead of cd)
|
|
36
|
+
if [ "$WORKTREE_MODE" = "organized" ]; then
|
|
37
|
+
[ ! -d "$PROJECT_BASE/01-Main" ] && \
|
|
38
|
+
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/01-Main" main
|
|
39
|
+
|
|
40
|
+
[ ! -d "$PROJECT_BASE/02-Develop" ] && \
|
|
41
|
+
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/02-Develop" develop
|
|
42
|
+
fi
|
|
43
|
+
|
|
44
|
+
# Simple mode: named folders (absolute paths)
|
|
45
|
+
if [ "$WORKTREE_MODE" = "simple" ]; then
|
|
46
|
+
[ ! -d "$PROJECT_BASE/main" ] && \
|
|
47
|
+
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/main" main
|
|
48
|
+
|
|
49
|
+
[ ! -d "$PROJECT_BASE/develop" ] && \
|
|
50
|
+
GIT_DIR="$PROJECT_BASE/.bare" git worktree add "$PROJECT_BASE/develop" develop
|
|
51
|
+
fi
|
|
52
|
+
|
|
53
|
+
# Convert worktree paths to relative format (cross-platform: Windows + WSL)
|
|
54
|
+
detect_platform
|
|
55
|
+
repair_worktree_paths "$PROJECT_BASE/.bare"
|
|
56
|
+
|
|
57
|
+
# Create gitflow config directory (absolute paths)
|
|
58
|
+
DEVELOP_DIR=$([ "$WORKTREE_MODE" = "organized" ] && echo "02-Develop" || echo "develop")
|
|
59
|
+
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/plans"
|
|
60
|
+
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/logs"
|
|
61
|
+
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/cache"
|
|
62
|
+
mkdir -p "$PROJECT_BASE/$DEVELOP_DIR/.claude/gitflow/backup"
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Folder Structure to Create
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
{ROOT_FOLDER}/
|
|
69
|
+
├── .bare/ # Git bare repository (this repo only)
|
|
70
|
+
├── 01-Main/ # Worktree: main branch
|
|
71
|
+
├── 02-Develop/ # Worktree: develop branch
|
|
72
|
+
├── features/ # Feature branch worktrees
|
|
73
|
+
├── releases/ # Release branch worktrees
|
|
74
|
+
└── hotfixes/ # Hotfix branch worktrees
|
|
75
|
+
```
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
# Version Detection
|
|
2
|
-
|
|
3
|
-
## Detect Version (with Priority)
|
|
4
|
-
|
|
5
|
-
**⛔ Use absolute paths with `git -C`, no `cd`.**
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
DEVELOP_FULL_PATH="$PROJECT_BASE/$DEVELOP_DIR"
|
|
9
|
-
|
|
10
|
-
# Priority: csproj > Directory.Build.props > package.json > VERSION > tag
|
|
11
|
-
VERSION=$(grep -oP '<Version>\K[^<]+' "$DEVELOP_FULL_PATH"/*.csproj 2>/dev/null | head -1)
|
|
12
|
-
[ -z "$VERSION" ] && VERSION=$(grep -oP '<Version>\K[^<]+' "$DEVELOP_FULL_PATH/Directory.Build.props" 2>/dev/null)
|
|
13
|
-
[ -z "$VERSION" ] && VERSION=$(grep -oP '"version":\s*"\K[^"]+' "$DEVELOP_FULL_PATH/package.json" 2>/dev/null)
|
|
14
|
-
[ -z "$VERSION" ] && VERSION=$(cat "$DEVELOP_FULL_PATH/VERSION" 2>/dev/null)
|
|
15
|
-
[ -z "$VERSION" ] && VERSION=$(git -C "$DEVELOP_FULL_PATH" describe --tags --abbrev=0 2>/dev/null | sed 's/^v//')
|
|
16
|
-
[ -z "$VERSION" ] && VERSION="0.1.0"
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Version will be stored in config.json
|
|
20
|
-
|
|
21
|
-
The detected version is used in the GitFlow config template under `versioning.current`.
|
|
1
|
+
# Version Detection
|
|
2
|
+
|
|
3
|
+
## Detect Version (with Priority)
|
|
4
|
+
|
|
5
|
+
**⛔ Use absolute paths with `git -C`, no `cd`.**
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
DEVELOP_FULL_PATH="$PROJECT_BASE/$DEVELOP_DIR"
|
|
9
|
+
|
|
10
|
+
# Priority: csproj > Directory.Build.props > package.json > VERSION > tag
|
|
11
|
+
VERSION=$(grep -oP '<Version>\K[^<]+' "$DEVELOP_FULL_PATH"/*.csproj 2>/dev/null | head -1)
|
|
12
|
+
[ -z "$VERSION" ] && VERSION=$(grep -oP '<Version>\K[^<]+' "$DEVELOP_FULL_PATH/Directory.Build.props" 2>/dev/null)
|
|
13
|
+
[ -z "$VERSION" ] && VERSION=$(grep -oP '"version":\s*"\K[^"]+' "$DEVELOP_FULL_PATH/package.json" 2>/dev/null)
|
|
14
|
+
[ -z "$VERSION" ] && VERSION=$(cat "$DEVELOP_FULL_PATH/VERSION" 2>/dev/null)
|
|
15
|
+
[ -z "$VERSION" ] && VERSION=$(git -C "$DEVELOP_FULL_PATH" describe --tags --abbrev=0 2>/dev/null | sed 's/^v//')
|
|
16
|
+
[ -z "$VERSION" ] && VERSION="0.1.0"
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Version will be stored in config.json
|
|
20
|
+
|
|
21
|
+
The detected version is used in the GitFlow config template under `versioning.current`.
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
# Workspace Detection
|
|
2
|
-
|
|
3
|
-
## Scan for Sibling Projects
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
WORKSPACE_DIR=$(dirname "$(pwd)")
|
|
7
|
-
SIBLING_PROJECTS=()
|
|
8
|
-
|
|
9
|
-
for dir in "$WORKSPACE_DIR"/*/; do
|
|
10
|
-
[ -d "$dir/.bare" ] || [ -d "$dir/01-Main" ] || [ -d "$dir/02-Develop" ] && {
|
|
11
|
-
PROJECT_NAME_SIBLING=$(basename "$dir")
|
|
12
|
-
SIBLING_PROJECTS+=("$PROJECT_NAME_SIBLING")
|
|
13
|
-
}
|
|
14
|
-
done
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Display Workspace Context
|
|
18
|
-
|
|
19
|
-
```
|
|
20
|
-
┌─────────────────────────────────────────────────────────────┐
|
|
21
|
-
│ WORKSPACE: {WORKSPACE_DIR} │
|
|
22
|
-
├─────────────────────────────────────────────────────────────┤
|
|
23
|
-
│ Each project has its OWN independent GitFlow configuration. │
|
|
24
|
-
│ This init configures only: {DETECTED_NAME} │
|
|
25
|
-
├─────────────────────────────────────────────────────────────┤
|
|
26
|
-
{if SIBLING_PROJECTS not empty}
|
|
27
|
-
│ Existing GitFlow projects: │
|
|
28
|
-
│ {for each SIBLING} ✅ {SIBLING_NAME}/ │
|
|
29
|
-
│ ├── .bare/ 01-Main/ 02-Develop/ │
|
|
30
|
-
│ └── features/ releases/ hotfixes/ │
|
|
31
|
-
│ {end for} │
|
|
32
|
-
│ │
|
|
33
|
-
│ New project to initialize: │
|
|
34
|
-
│ ⬜ {DETECTED_NAME}/ │
|
|
35
|
-
│ └── (same structure will be created) │
|
|
36
|
-
{else}
|
|
37
|
-
│ No existing GitFlow projects detected. │
|
|
38
|
-
│ This will be the first project in this workspace. │
|
|
39
|
-
{endif}
|
|
40
|
-
└─────────────────────────────────────────────────────────────┘
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
**Key principle:** GitFlow is **per-repository**. Each project has its own `config.json`, its own worktree structure, and its own version history. Projects do not share configuration.
|
|
1
|
+
# Workspace Detection
|
|
2
|
+
|
|
3
|
+
## Scan for Sibling Projects
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
WORKSPACE_DIR=$(dirname "$(pwd)")
|
|
7
|
+
SIBLING_PROJECTS=()
|
|
8
|
+
|
|
9
|
+
for dir in "$WORKSPACE_DIR"/*/; do
|
|
10
|
+
[ -d "$dir/.bare" ] || [ -d "$dir/01-Main" ] || [ -d "$dir/02-Develop" ] && {
|
|
11
|
+
PROJECT_NAME_SIBLING=$(basename "$dir")
|
|
12
|
+
SIBLING_PROJECTS+=("$PROJECT_NAME_SIBLING")
|
|
13
|
+
}
|
|
14
|
+
done
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Display Workspace Context
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
21
|
+
│ WORKSPACE: {WORKSPACE_DIR} │
|
|
22
|
+
├─────────────────────────────────────────────────────────────┤
|
|
23
|
+
│ Each project has its OWN independent GitFlow configuration. │
|
|
24
|
+
│ This init configures only: {DETECTED_NAME} │
|
|
25
|
+
├─────────────────────────────────────────────────────────────┤
|
|
26
|
+
{if SIBLING_PROJECTS not empty}
|
|
27
|
+
│ Existing GitFlow projects: │
|
|
28
|
+
│ {for each SIBLING} ✅ {SIBLING_NAME}/ │
|
|
29
|
+
│ ├── .bare/ 01-Main/ 02-Develop/ │
|
|
30
|
+
│ └── features/ releases/ hotfixes/ │
|
|
31
|
+
│ {end for} │
|
|
32
|
+
│ │
|
|
33
|
+
│ New project to initialize: │
|
|
34
|
+
│ ⬜ {DETECTED_NAME}/ │
|
|
35
|
+
│ └── (same structure will be created) │
|
|
36
|
+
{else}
|
|
37
|
+
│ No existing GitFlow projects detected. │
|
|
38
|
+
│ This will be the first project in this workspace. │
|
|
39
|
+
{endif}
|
|
40
|
+
└─────────────────────────────────────────────────────────────┘
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**Key principle:** GitFlow is **per-repository**. Each project has its own `config.json`, its own worktree structure, and its own version history. Projects do not share configuration.
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
# Check CI and Review Status
|
|
2
|
-
|
|
3
|
-
## Check CI Status (GitHub)
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
if [ "$GIT_PROVIDER" = "github" ]; then
|
|
7
|
-
CI_STATUS=$(gh pr checks $PR_NUMBER --json state --jq '.[].state' | sort -u)
|
|
8
|
-
|
|
9
|
-
[[ "$CI_STATUS" == *"FAILURE"* ]] && {
|
|
10
|
-
echo "❌ CI checks failing"
|
|
11
|
-
gh pr checks $PR_NUMBER
|
|
12
|
-
|
|
13
|
-
if [ "$auto_mode" != true ]; then
|
|
14
|
-
AskUserQuestion:
|
|
15
|
-
header: "CI"
|
|
16
|
-
question: "CI checks are failing. Continue anyway?"
|
|
17
|
-
options:
|
|
18
|
-
- label: "Wait for fix"
|
|
19
|
-
- label: "Merge anyway (not recommended)"
|
|
20
|
-
fi
|
|
21
|
-
}
|
|
22
|
-
fi
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## Check Review Status (GitHub)
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
if [ "$GIT_PROVIDER" = "github" ]; then
|
|
29
|
-
REVIEWS=$(gh pr view $PR_NUMBER --json reviews --jq '.reviews | map(select(.state == "APPROVED")) | length')
|
|
30
|
-
REQUIRED_REVIEWS=$(gh api repos/:owner/:repo --jq '.default_branch_protection.required_pull_request_reviews.required_approving_review_count // 0')
|
|
31
|
-
|
|
32
|
-
[ "$REVIEWS" -lt "$REQUIRED_REVIEWS" ] && {
|
|
33
|
-
echo "⚠️ Needs $REQUIRED_REVIEWS approvals, has $REVIEWS"
|
|
34
|
-
}
|
|
35
|
-
fi
|
|
36
|
-
```
|
|
1
|
+
# Check CI and Review Status
|
|
2
|
+
|
|
3
|
+
## Check CI Status (GitHub)
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
if [ "$GIT_PROVIDER" = "github" ]; then
|
|
7
|
+
CI_STATUS=$(gh pr checks $PR_NUMBER --json state --jq '.[].state' | sort -u)
|
|
8
|
+
|
|
9
|
+
[[ "$CI_STATUS" == *"FAILURE"* ]] && {
|
|
10
|
+
echo "❌ CI checks failing"
|
|
11
|
+
gh pr checks $PR_NUMBER
|
|
12
|
+
|
|
13
|
+
if [ "$auto_mode" != true ]; then
|
|
14
|
+
AskUserQuestion:
|
|
15
|
+
header: "CI"
|
|
16
|
+
question: "CI checks are failing. Continue anyway?"
|
|
17
|
+
options:
|
|
18
|
+
- label: "Wait for fix"
|
|
19
|
+
- label: "Merge anyway (not recommended)"
|
|
20
|
+
fi
|
|
21
|
+
}
|
|
22
|
+
fi
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Check Review Status (GitHub)
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
if [ "$GIT_PROVIDER" = "github" ]; then
|
|
29
|
+
REVIEWS=$(gh pr view $PR_NUMBER --json reviews --jq '.reviews | map(select(.state == "APPROVED")) | length')
|
|
30
|
+
REQUIRED_REVIEWS=$(gh api repos/:owner/:repo --jq '.default_branch_protection.required_pull_request_reviews.required_approving_review_count // 0')
|
|
31
|
+
|
|
32
|
+
[ "$REVIEWS" -lt "$REQUIRED_REVIEWS" ] && {
|
|
33
|
+
echo "⚠️ Needs $REQUIRED_REVIEWS approvals, has $REVIEWS"
|
|
34
|
+
}
|
|
35
|
+
fi
|
|
36
|
+
```
|
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
# Merge Execution and Verification
|
|
2
|
-
|
|
3
|
-
## Determine Merge Strategy
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
BRANCH_TYPE=$(echo $CURRENT | cut -d'/' -f1)
|
|
7
|
-
|
|
8
|
-
case "$BRANCH_TYPE" in
|
|
9
|
-
feature)
|
|
10
|
-
MERGE_STRATEGY="squash"
|
|
11
|
-
DELETE_BRANCH=true
|
|
12
|
-
;;
|
|
13
|
-
release|hotfix)
|
|
14
|
-
MERGE_STRATEGY="merge"
|
|
15
|
-
DELETE_BRANCH=true
|
|
16
|
-
MERGE_BACK="$GF_DEVELOP_BRANCH"
|
|
17
|
-
;;
|
|
18
|
-
esac
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
## Execute Merge
|
|
22
|
-
|
|
23
|
-
**GitHub:**
|
|
24
|
-
```bash
|
|
25
|
-
case "$MERGE_STRATEGY" in
|
|
26
|
-
squash)
|
|
27
|
-
gh pr merge $PR_NUMBER --squash --delete-branch
|
|
28
|
-
;;
|
|
29
|
-
merge)
|
|
30
|
-
gh pr merge $PR_NUMBER --merge --delete-branch
|
|
31
|
-
;;
|
|
32
|
-
esac
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
**Azure DevOps:**
|
|
36
|
-
```bash
|
|
37
|
-
case "$MERGE_STRATEGY" in
|
|
38
|
-
squash)
|
|
39
|
-
az repos pr update --id $PR_NUMBER --status completed --squash true --delete-source-branch true
|
|
40
|
-
;;
|
|
41
|
-
merge)
|
|
42
|
-
az repos pr update --id $PR_NUMBER --status completed --squash false --delete-source-branch true
|
|
43
|
-
;;
|
|
44
|
-
esac
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Verify Merge
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
# CRITICAL: Force update tracking refs to get accurate state
|
|
51
|
-
git fetch origin $TARGET_BRANCH:refs/remotes/origin/$TARGET_BRANCH --force --quiet
|
|
52
|
-
git fetch origin --prune --quiet
|
|
53
|
-
|
|
54
|
-
MERGED=$(git branch -r --merged origin/$TARGET_BRANCH | grep "$CURRENT" | wc -l)
|
|
55
|
-
|
|
56
|
-
[ "$MERGED" -eq 0 ] && {
|
|
57
|
-
echo "⚠️ Merge verification failed - branch may not be merged"
|
|
58
|
-
echo " → Check PR status on remote"
|
|
59
|
-
} || {
|
|
60
|
-
echo "✅ Merge verified - branch merged to $TARGET_BRANCH"
|
|
61
|
-
}
|
|
62
|
-
```
|
|
1
|
+
# Merge Execution and Verification
|
|
2
|
+
|
|
3
|
+
## Determine Merge Strategy
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
BRANCH_TYPE=$(echo $CURRENT | cut -d'/' -f1)
|
|
7
|
+
|
|
8
|
+
case "$BRANCH_TYPE" in
|
|
9
|
+
feature)
|
|
10
|
+
MERGE_STRATEGY="squash"
|
|
11
|
+
DELETE_BRANCH=true
|
|
12
|
+
;;
|
|
13
|
+
release|hotfix)
|
|
14
|
+
MERGE_STRATEGY="merge"
|
|
15
|
+
DELETE_BRANCH=true
|
|
16
|
+
MERGE_BACK="$GF_DEVELOP_BRANCH"
|
|
17
|
+
;;
|
|
18
|
+
esac
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Execute Merge
|
|
22
|
+
|
|
23
|
+
**GitHub:**
|
|
24
|
+
```bash
|
|
25
|
+
case "$MERGE_STRATEGY" in
|
|
26
|
+
squash)
|
|
27
|
+
gh pr merge $PR_NUMBER --squash --delete-branch
|
|
28
|
+
;;
|
|
29
|
+
merge)
|
|
30
|
+
gh pr merge $PR_NUMBER --merge --delete-branch
|
|
31
|
+
;;
|
|
32
|
+
esac
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Azure DevOps:**
|
|
36
|
+
```bash
|
|
37
|
+
case "$MERGE_STRATEGY" in
|
|
38
|
+
squash)
|
|
39
|
+
az repos pr update --id $PR_NUMBER --status completed --squash true --delete-source-branch true
|
|
40
|
+
;;
|
|
41
|
+
merge)
|
|
42
|
+
az repos pr update --id $PR_NUMBER --status completed --squash false --delete-source-branch true
|
|
43
|
+
;;
|
|
44
|
+
esac
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Verify Merge
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# CRITICAL: Force update tracking refs to get accurate state
|
|
51
|
+
git fetch origin $TARGET_BRANCH:refs/remotes/origin/$TARGET_BRANCH --force --quiet
|
|
52
|
+
git fetch origin --prune --quiet
|
|
53
|
+
|
|
54
|
+
MERGED=$(git branch -r --merged origin/$TARGET_BRANCH | grep "$CURRENT" | wc -l)
|
|
55
|
+
|
|
56
|
+
[ "$MERGED" -eq 0 ] && {
|
|
57
|
+
echo "⚠️ Merge verification failed - branch may not be merged"
|
|
58
|
+
echo " → Check PR status on remote"
|
|
59
|
+
} || {
|
|
60
|
+
echo "✅ Merge verified - branch merged to $TARGET_BRANCH"
|
|
61
|
+
}
|
|
62
|
+
```
|
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
# Load PR Context and Load Review Checklist
|
|
2
|
-
|
|
3
|
-
## Load Config and PR Context
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
# Load GitFlow config (sets GF_* variables)
|
|
7
|
-
read_gitflow_config || { echo "❌ Run /gitflow init first."; exit 1; }
|
|
8
|
-
|
|
9
|
-
CURRENT=$(git rev-parse --abbrev-ref HEAD)
|
|
10
|
-
GIT_PROVIDER="$GF_PROVIDER"
|
|
11
|
-
|
|
12
|
-
# Try loading persisted PR state first
|
|
13
|
-
CONFIG_DIR=$(dirname "$GF_CONFIG_FILE")
|
|
14
|
-
PR_STATE_FILE="$CONFIG_DIR/cache/pr-state.json"
|
|
15
|
-
if [ -f "$PR_STATE_FILE" ]; then
|
|
16
|
-
PR_NUMBER=$(grep -oP '"pr_number":\s*"\K[^"]+' "$PR_STATE_FILE" | head -1)
|
|
17
|
-
TARGET_BRANCH=$(grep -oP '"target_branch":\s*"\K[^"]+' "$PR_STATE_FILE" | head -1)
|
|
18
|
-
echo "✓ Loaded PR state from cache: PR #$PR_NUMBER → $TARGET_BRANCH"
|
|
19
|
-
fi
|
|
20
|
-
|
|
21
|
-
# Fallback: query provider if no cached state
|
|
22
|
-
if [ -z "$PR_NUMBER" ]; then
|
|
23
|
-
if [ "$GIT_PROVIDER" = "github" ]; then
|
|
24
|
-
PR_NUMBER=$(gh pr list --head "$CURRENT" --json number --jq '.[0].number')
|
|
25
|
-
PR_STATUS=$(gh pr view $PR_NUMBER --json state,mergeable,reviews --jq '.')
|
|
26
|
-
elif [ "$GIT_PROVIDER" = "azuredevops" ]; then
|
|
27
|
-
PR_NUMBER=$(az repos pr list --source-branch "$CURRENT" --query "[0].pullRequestId" -o tsv)
|
|
28
|
-
PR_STATUS=$(az repos pr show --id $PR_NUMBER --query "{status:status,mergeStatus:mergeStatus}")
|
|
29
|
-
fi
|
|
30
|
-
fi
|
|
31
|
-
|
|
32
|
-
[ -z "$PR_NUMBER" ] && {
|
|
33
|
-
echo "❌ No PR found for branch $CURRENT"
|
|
34
|
-
echo "→ Run /gitflow pr first"
|
|
35
|
-
STOP
|
|
36
|
-
}
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
## Display Review Checklist
|
|
40
|
-
|
|
41
|
-
```
|
|
42
|
-
╔══════════════════════════════════════════════════════════════════╗
|
|
43
|
-
║ PR REVIEW CHECKLIST ║
|
|
44
|
-
╠══════════════════════════════════════════════════════════════════╣
|
|
45
|
-
║ PR #${PR_NUMBER}: ${PR_TITLE} ║
|
|
46
|
-
╠══════════════════════════════════════════════════════════════════╣
|
|
47
|
-
|
|
48
|
-
## Code Quality
|
|
49
|
-
- [ ] Code follows project conventions
|
|
50
|
-
- [ ] No unnecessary complexity
|
|
51
|
-
- [ ] No code duplication
|
|
52
|
-
- [ ] Variable/function names are clear
|
|
53
|
-
|
|
54
|
-
## Security
|
|
55
|
-
- [ ] No hardcoded secrets
|
|
56
|
-
- [ ] Input validation present
|
|
57
|
-
- [ ] Authentication/authorization correct
|
|
58
|
-
- [ ] No SQL injection risks
|
|
59
|
-
|
|
60
|
-
## Testing
|
|
61
|
-
- [ ] Unit tests added/updated
|
|
62
|
-
- [ ] Integration tests pass
|
|
63
|
-
- [ ] Manual testing completed
|
|
64
|
-
|
|
65
|
-
## EF Core (if applicable)
|
|
66
|
-
- [ ] Migration files complete (3 files)
|
|
67
|
-
- [ ] No destructive operations (or confirmed)
|
|
68
|
-
- [ ] Snapshot synced with base
|
|
69
|
-
|
|
70
|
-
## Documentation
|
|
71
|
-
- [ ] Code comments where needed
|
|
72
|
-
- [ ] API docs updated (if applicable)
|
|
73
|
-
- [ ] README updated (if applicable)
|
|
74
|
-
|
|
75
|
-
╚══════════════════════════════════════════════════════════════════╝
|
|
76
|
-
```
|
|
1
|
+
# Load PR Context and Load Review Checklist
|
|
2
|
+
|
|
3
|
+
## Load Config and PR Context
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
# Load GitFlow config (sets GF_* variables)
|
|
7
|
+
read_gitflow_config || { echo "❌ Run /gitflow init first."; exit 1; }
|
|
8
|
+
|
|
9
|
+
CURRENT=$(git rev-parse --abbrev-ref HEAD)
|
|
10
|
+
GIT_PROVIDER="$GF_PROVIDER"
|
|
11
|
+
|
|
12
|
+
# Try loading persisted PR state first
|
|
13
|
+
CONFIG_DIR=$(dirname "$GF_CONFIG_FILE")
|
|
14
|
+
PR_STATE_FILE="$CONFIG_DIR/cache/pr-state.json"
|
|
15
|
+
if [ -f "$PR_STATE_FILE" ]; then
|
|
16
|
+
PR_NUMBER=$(grep -oP '"pr_number":\s*"\K[^"]+' "$PR_STATE_FILE" | head -1)
|
|
17
|
+
TARGET_BRANCH=$(grep -oP '"target_branch":\s*"\K[^"]+' "$PR_STATE_FILE" | head -1)
|
|
18
|
+
echo "✓ Loaded PR state from cache: PR #$PR_NUMBER → $TARGET_BRANCH"
|
|
19
|
+
fi
|
|
20
|
+
|
|
21
|
+
# Fallback: query provider if no cached state
|
|
22
|
+
if [ -z "$PR_NUMBER" ]; then
|
|
23
|
+
if [ "$GIT_PROVIDER" = "github" ]; then
|
|
24
|
+
PR_NUMBER=$(gh pr list --head "$CURRENT" --json number --jq '.[0].number')
|
|
25
|
+
PR_STATUS=$(gh pr view $PR_NUMBER --json state,mergeable,reviews --jq '.')
|
|
26
|
+
elif [ "$GIT_PROVIDER" = "azuredevops" ]; then
|
|
27
|
+
PR_NUMBER=$(az repos pr list --source-branch "$CURRENT" --query "[0].pullRequestId" -o tsv)
|
|
28
|
+
PR_STATUS=$(az repos pr show --id $PR_NUMBER --query "{status:status,mergeStatus:mergeStatus}")
|
|
29
|
+
fi
|
|
30
|
+
fi
|
|
31
|
+
|
|
32
|
+
[ -z "$PR_NUMBER" ] && {
|
|
33
|
+
echo "❌ No PR found for branch $CURRENT"
|
|
34
|
+
echo "→ Run /gitflow pr first"
|
|
35
|
+
STOP
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Display Review Checklist
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
╔══════════════════════════════════════════════════════════════════╗
|
|
43
|
+
║ PR REVIEW CHECKLIST ║
|
|
44
|
+
╠══════════════════════════════════════════════════════════════════╣
|
|
45
|
+
║ PR #${PR_NUMBER}: ${PR_TITLE} ║
|
|
46
|
+
╠══════════════════════════════════════════════════════════════════╣
|
|
47
|
+
|
|
48
|
+
## Code Quality
|
|
49
|
+
- [ ] Code follows project conventions
|
|
50
|
+
- [ ] No unnecessary complexity
|
|
51
|
+
- [ ] No code duplication
|
|
52
|
+
- [ ] Variable/function names are clear
|
|
53
|
+
|
|
54
|
+
## Security
|
|
55
|
+
- [ ] No hardcoded secrets
|
|
56
|
+
- [ ] Input validation present
|
|
57
|
+
- [ ] Authentication/authorization correct
|
|
58
|
+
- [ ] No SQL injection risks
|
|
59
|
+
|
|
60
|
+
## Testing
|
|
61
|
+
- [ ] Unit tests added/updated
|
|
62
|
+
- [ ] Integration tests pass
|
|
63
|
+
- [ ] Manual testing completed
|
|
64
|
+
|
|
65
|
+
## EF Core (if applicable)
|
|
66
|
+
- [ ] Migration files complete (3 files)
|
|
67
|
+
- [ ] No destructive operations (or confirmed)
|
|
68
|
+
- [ ] Snapshot synced with base
|
|
69
|
+
|
|
70
|
+
## Documentation
|
|
71
|
+
- [ ] Code comments where needed
|
|
72
|
+
- [ ] API docs updated (if applicable)
|
|
73
|
+
- [ ] README updated (if applicable)
|
|
74
|
+
|
|
75
|
+
╚══════════════════════════════════════════════════════════════════╝
|
|
76
|
+
```
|