@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,703 +1,703 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: step-05c-ralph-readiness
|
|
3
|
-
description: ULTRATHINK quality review + validation gate before ralph-loop
|
|
4
|
-
model: opus
|
|
5
|
-
next_step: null
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
> **Context files:** `_shared.md`
|
|
9
|
-
|
|
10
|
-
# Step 5c: ULTRATHINK Quality Review & Ralph Readiness Check
|
|
11
|
-
|
|
12
|
-
## MANDATORY EXECUTION RULES
|
|
13
|
-
|
|
14
|
-
- **ALWAYS** use ULTRATHINK mode for the quality review (section 0b)
|
|
15
|
-
- **ALWAYS** run ALL validation checks (NEVER skip)
|
|
16
|
-
- **BLOCKING RULE:** If ANY check fails → STOP, DO NOT proceed to ralph-loop
|
|
17
|
-
- **ALWAYS** provide actionable fix instructions for failures
|
|
18
|
-
- **NEVER** auto-launch ralph-loop (user triggers manually)
|
|
19
|
-
- **ALL** PRD files must be generated and validated before proceeding
|
|
20
|
-
|
|
21
|
-
## YOUR TASK
|
|
22
|
-
|
|
23
|
-
Perform a deep ULTRATHINK quality review of the entire business analysis output, then run comprehensive structural validation to ensure readiness for /ralph-loop. This is a **BLOCKING** gate — all checks must pass before development can proceed.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## EXECUTION SEQUENCE
|
|
28
|
-
|
|
29
|
-
### 0. Introduction
|
|
30
|
-
|
|
31
|
-
Display validation banner:
|
|
32
|
-
|
|
33
|
-
```
|
|
34
|
-
═══════════════════════════════════════════════════════════════
|
|
35
|
-
ULTRATHINK QUALITY REVIEW & RALPH READINESS CHECK
|
|
36
|
-
{application_name}
|
|
37
|
-
═══════════════════════════════════════════════════════════════
|
|
38
|
-
Phase 1: Deep quality review (ULTRATHINK)...
|
|
39
|
-
Phase 2: Structural validation (8 checks)...
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
### 0b. ULTRATHINK Deep Quality Review (MANDATORY)
|
|
45
|
-
|
|
46
|
-
> **This section MUST be executed in ULTRATHINK mode.**
|
|
47
|
-
> Take the time to deeply analyze the ENTIRE business analysis output.
|
|
48
|
-
> This is the last chance to catch quality issues before development begins.
|
|
49
|
-
|
|
50
|
-
**Objective:** Perform a thorough, deep-thinking review of the business analysis quality — not just structural checks, but semantic coherence, completeness, and production-readiness.
|
|
51
|
-
|
|
52
|
-
**Process:**
|
|
53
|
-
|
|
54
|
-
1. **Read ALL module feature.json files** (master + each module)
|
|
55
|
-
2. **Activate ULTRATHINK** and analyze the following 6 dimensions:
|
|
56
|
-
|
|
57
|
-
#### Dimension 1: Specification Coherence
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
For EACH module:
|
|
61
|
-
- Do use cases (UCs) tell a coherent story?
|
|
62
|
-
- Are functional requirements (FRs) logically derived from UCs?
|
|
63
|
-
- Do business rules (BRs) cover all edge cases mentioned in UCs?
|
|
64
|
-
- Are gherkin scenarios testing the RIGHT behaviors (not trivial CRUD)?
|
|
65
|
-
- Do entity relationships make domain sense?
|
|
66
|
-
|
|
67
|
-
Flag: Orphan FRs (not linked to any UC), UCs with no FR coverage,
|
|
68
|
-
BRs that don't map to any entity/field
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
#### Dimension 2: Permission & Security Model
|
|
72
|
-
|
|
73
|
-
```
|
|
74
|
-
For EACH module:
|
|
75
|
-
- Is the permission hierarchy logical? (admin > manager > contributor > viewer)
|
|
76
|
-
- Are there actions that should be restricted but aren't?
|
|
77
|
-
- Do API endpoints all have permissions assigned?
|
|
78
|
-
- Are there over-permissive roles? (e.g., contributor with delete access)
|
|
79
|
-
- Cross-module: can a user in Module A access data in Module B through indirect routes?
|
|
80
|
-
|
|
81
|
-
Flag: Endpoints without permissions, roles with excessive access,
|
|
82
|
-
missing permission paths
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
#### Dimension 3: Data Model Integrity
|
|
86
|
-
|
|
87
|
-
```
|
|
88
|
-
For EACH module:
|
|
89
|
-
- Are all entity relationships bidirectional where needed?
|
|
90
|
-
- Are FK references correct (target entity exists, correct field type)?
|
|
91
|
-
- Are there missing audit fields (CreatedAt, UpdatedAt, CreatedBy)?
|
|
92
|
-
- Do lifecycle states cover all business scenarios?
|
|
93
|
-
- Are cascade delete/update rules safe? (no orphan risk)
|
|
94
|
-
|
|
95
|
-
Cross-module:
|
|
96
|
-
- Are shared entity references correct?
|
|
97
|
-
- Is the dependency graph honest? (no hidden dependencies)
|
|
98
|
-
|
|
99
|
-
Flag: Missing relationships, unsafe cascades, missing audit fields,
|
|
100
|
-
hidden cross-module dependencies
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
#### Dimension 4: UI/UX Completeness
|
|
104
|
-
|
|
105
|
-
```
|
|
106
|
-
For EACH module:
|
|
107
|
-
- Does every section have at least one wireframe?
|
|
108
|
-
- Do wireframes cover ALL use cases? (no UC without UI representation)
|
|
109
|
-
- Are navigation entries correct and complete?
|
|
110
|
-
- Do wireframe actions map to real API endpoints?
|
|
111
|
-
- Are form fields aligned with entity attributes?
|
|
112
|
-
- Are validation rules defined for all user-input fields?
|
|
113
|
-
|
|
114
|
-
Flag: UCs with no wireframe, wireframes with unmapped actions,
|
|
115
|
-
missing form validations, navigation gaps
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
#### Dimension 5: i18n & Messages Quality
|
|
119
|
-
|
|
120
|
-
```
|
|
121
|
-
For EACH module:
|
|
122
|
-
- Are all user-facing strings covered by i18n keys?
|
|
123
|
-
- Are error messages specific enough? (not generic "Error occurred")
|
|
124
|
-
- Do validation messages reference the field name?
|
|
125
|
-
- Are success/confirmation messages present for all write operations?
|
|
126
|
-
- Are there missing translations in any language?
|
|
127
|
-
|
|
128
|
-
Flag: Generic error messages, missing field-specific validations,
|
|
129
|
-
incomplete language coverage
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
#### Dimension 6: Implementation Feasibility
|
|
133
|
-
|
|
134
|
-
```
|
|
135
|
-
For EACH module:
|
|
136
|
-
- Is the handoff.filesToCreate list realistic? (no missing files, no impossible paths)
|
|
137
|
-
- Do brToCodeMapping entries have enough detail for generation?
|
|
138
|
-
- Are API endpoint paths following REST conventions?
|
|
139
|
-
- Are DTO structures aligned with entity attributes?
|
|
140
|
-
- Is the seed data sufficient for testing all use cases?
|
|
141
|
-
- Are there any features that would require infrastructure not in the stack?
|
|
142
|
-
|
|
143
|
-
Flag: Unrealistic file counts, vague BR mappings, non-RESTful routes,
|
|
144
|
-
missing seed data for critical test scenarios
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
3. **Produce Quality Verdict:**
|
|
148
|
-
|
|
149
|
-
```
|
|
150
|
-
═══════════════════════════════════════════════════════════════
|
|
151
|
-
ULTRATHINK QUALITY REVIEW - RESULTS
|
|
152
|
-
═══════════════════════════════════════════════════════════════
|
|
153
|
-
|
|
154
|
-
| Dimension | Score | Issues |
|
|
155
|
-
|-----------|-------|--------|
|
|
156
|
-
| Specification Coherence | A/B/C/D | {count} issues |
|
|
157
|
-
| Permission & Security | A/B/C/D | {count} issues |
|
|
158
|
-
| Data Model Integrity | A/B/C/D | {count} issues |
|
|
159
|
-
| UI/UX Completeness | A/B/C/D | {count} issues |
|
|
160
|
-
| i18n & Messages | A/B/C/D | {count} issues |
|
|
161
|
-
| Implementation Feasibility | A/B/C/D | {count} issues |
|
|
162
|
-
|
|
163
|
-
Overall Quality: {A/B/C/D}
|
|
164
|
-
A = Production-ready (0 critical, ≤3 warnings)
|
|
165
|
-
B = Good (0 critical, >3 warnings)
|
|
166
|
-
C = Needs fixes (1-2 critical issues)
|
|
167
|
-
D = Major rework needed (>2 critical issues)
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
4. **Display Issues (if any):**
|
|
171
|
-
|
|
172
|
-
```
|
|
173
|
-
Critical Issues (MUST fix before /ralph-loop):
|
|
174
|
-
✗ [Dimension] Issue description
|
|
175
|
-
→ Fix: Specific action to resolve
|
|
176
|
-
|
|
177
|
-
Warnings (SHOULD fix, not blocking):
|
|
178
|
-
⚠ [Dimension] Issue description
|
|
179
|
-
→ Recommendation: How to improve
|
|
180
|
-
|
|
181
|
-
Suggestions (nice-to-have):
|
|
182
|
-
ℹ [Dimension] Suggestion
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
5. **Decision:**
|
|
186
|
-
|
|
187
|
-
```
|
|
188
|
-
IF overall quality = D:
|
|
189
|
-
BLOCKING ERROR: Major quality issues detected
|
|
190
|
-
→ Return to appropriate step to fix critical issues
|
|
191
|
-
→ DO NOT proceed to structural validation
|
|
192
|
-
|
|
193
|
-
IF overall quality = C:
|
|
194
|
-
Ask via AskUserQuestion:
|
|
195
|
-
question: "Des problèmes de qualité ont été détectés. Comment souhaitez-vous procéder ?"
|
|
196
|
-
header: "Qualité"
|
|
197
|
-
options:
|
|
198
|
-
- label: "Corriger les problèmes critiques"
|
|
199
|
-
description: "Retourner aux étapes concernées pour corriger"
|
|
200
|
-
- label: "Continuer malgré les problèmes"
|
|
201
|
-
description: "Accepter les risques et poursuivre la validation structurelle"
|
|
202
|
-
|
|
203
|
-
IF overall quality = A or B:
|
|
204
|
-
Display: "✓ Quality review passed — proceeding to structural validation..."
|
|
205
|
-
→ Continue to section 1
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
---
|
|
209
|
-
|
|
210
|
-
### 1. Module Status Validation
|
|
211
|
-
|
|
212
|
-
**Objective:** Verify all modules have completed handoff.
|
|
213
|
-
|
|
214
|
-
**Process:**
|
|
215
|
-
|
|
216
|
-
1. Read master feature.json via ba-reader
|
|
217
|
-
2. For EACH module in modules[]:
|
|
218
|
-
```
|
|
219
|
-
a. Check module.status === "handed-off"
|
|
220
|
-
b. If module.featureJsonPath exists, read module feature.json
|
|
221
|
-
c. Verify module feature.json status === "handed-off"
|
|
222
|
-
d. Verify module feature.json handoff section exists and is not empty
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
3. Display validation table:
|
|
226
|
-
|
|
227
|
-
```
|
|
228
|
-
| Module | Master Status | Module Status | Handoff Present | Result |
|
|
229
|
-
|--------|--------------|---------------|-----------------|--------|
|
|
230
|
-
| Projects | handed-off | handed-off | ✓ | PASS |
|
|
231
|
-
| TimeTracking | handed-off | handed-off | ✓ | PASS |
|
|
232
|
-
| Reporting | specified | specified | ✗ | FAIL |
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
**IF ANY module shows FAIL:**
|
|
236
|
-
- **BLOCKING ERROR:** List failed modules
|
|
237
|
-
- **FIX:** Return to step-05a-handoff.md for missing modules
|
|
238
|
-
- **STOP** - do not proceed to next check
|
|
239
|
-
|
|
240
|
-
---
|
|
241
|
-
|
|
242
|
-
### 2. PRD Files Validation
|
|
243
|
-
|
|
244
|
-
**Objective:** Verify all PRD files are generated and structurally valid.
|
|
245
|
-
|
|
246
|
-
**Process:**
|
|
247
|
-
|
|
248
|
-
1. For EACH module in modules[]:
|
|
249
|
-
```
|
|
250
|
-
a. Locate expected PRD file: .ralph/prd-{moduleCode}.json
|
|
251
|
-
b. Verify file exists
|
|
252
|
-
c. Read PRD file
|
|
253
|
-
d. Verify structure (see [references/prd-generation.md](../references/prd-generation.md))
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
2. **PRD Structure Validation:**
|
|
257
|
-
|
|
258
|
-
Perform the 4 mandatory PRD structure checks:
|
|
259
|
-
- **Check 1:** Version must be "3.0.0"
|
|
260
|
-
- **Check 2:** filesToCreate must be under `implementation` (NOT root level)
|
|
261
|
-
- **Check 3:** All 7 categories present (domain, application, infrastructure, api, frontend, seedData, tests)
|
|
262
|
-
- **Check 4:** File counts match feature.json handoff counts
|
|
263
|
-
|
|
264
|
-
```javascript
|
|
265
|
-
const prdErrors = validateAllPRDs(modules);
|
|
266
|
-
|
|
267
|
-
IF prdErrors.length > 0:
|
|
268
|
-
// CONDITIONAL LOAD: Only load PRD reference on validation failure
|
|
269
|
-
Read references/prd-generation.md
|
|
270
|
-
Display:
|
|
271
|
-
- PRD v3.0 structure requirements
|
|
272
|
-
- Detailed validation logic for failed checks
|
|
273
|
-
- Common errors & fix commands for each failure
|
|
274
|
-
- Generation command reference
|
|
275
|
-
|
|
276
|
-
BLOCKING ERROR: {prdErrors.length} PRD file(s) invalid
|
|
277
|
-
→ Fix all PRD errors before proceeding
|
|
278
|
-
|
|
279
|
-
ELSE:
|
|
280
|
-
All PRD files valid ✓
|
|
281
|
-
→ Continue to dependency graph validation
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
**Optimization:** The detailed 300-line prd-generation.md is loaded **only when PRD validation fails** (saves ~12,000 tokens on success path).
|
|
285
|
-
|
|
286
|
-
3. Display PRD validation table:
|
|
287
|
-
|
|
288
|
-
```
|
|
289
|
-
| Module | PRD File | Version | Structure | File Counts | Result |
|
|
290
|
-
|--------|----------|---------|-----------|-------------|--------|
|
|
291
|
-
| Projects | ✓ exists | 3.0.0 | ✓ valid | 42/42 match | PASS |
|
|
292
|
-
| TimeTracking | ✓ exists | 3.0.0 | ✓ valid | 37/37 match | PASS |
|
|
293
|
-
| Reporting | ✗ missing | - | - | - | FAIL |
|
|
294
|
-
```
|
|
295
|
-
|
|
296
|
-
**IF ANY PRD shows FAIL:**
|
|
297
|
-
- **BLOCKING ERROR:** List failed PRDs with specific issues
|
|
298
|
-
- **FIX:** Re-run `ss derive-prd --feature {path} --output .ralph/prd-{moduleCode}.json`
|
|
299
|
-
- **STOP** - do not proceed to next check
|
|
300
|
-
|
|
301
|
-
---
|
|
302
|
-
|
|
303
|
-
### 3. Dependency Graph Validation
|
|
304
|
-
|
|
305
|
-
**Objective:** Verify module dependencies are resolvable and topologically ordered.
|
|
306
|
-
|
|
307
|
-
**Process:**
|
|
308
|
-
|
|
309
|
-
1. Read master feature.json dependencyGraph
|
|
310
|
-
2. For each edge in dependencyGraph.edges[]:
|
|
311
|
-
```
|
|
312
|
-
a. Verify source module exists in modules[]
|
|
313
|
-
b. Verify target module exists in modules[]
|
|
314
|
-
c. Verify no circular dependencies
|
|
315
|
-
```
|
|
316
|
-
|
|
317
|
-
3. Verify topologicalOrder matches actual dependencies:
|
|
318
|
-
```
|
|
319
|
-
For each module M in topologicalOrder:
|
|
320
|
-
For each dependency D of M:
|
|
321
|
-
D must appear BEFORE M in topologicalOrder
|
|
322
|
-
```
|
|
323
|
-
|
|
324
|
-
4. Display dependency validation:
|
|
325
|
-
|
|
326
|
-
```
|
|
327
|
-
✓ Dependency graph valid
|
|
328
|
-
✓ No circular dependencies detected
|
|
329
|
-
✓ Topological order correct: [Projects, TimeTracking, LeaveManagement, AbsenceManagement, Reporting]
|
|
330
|
-
✓ 4 dependency edges validated
|
|
331
|
-
```
|
|
332
|
-
|
|
333
|
-
**IF validation fails:**
|
|
334
|
-
- **BLOCKING ERROR:** Report circular dependencies or invalid edges
|
|
335
|
-
- **FIX:** Return to step-02-decomposition.md to fix dependency graph
|
|
336
|
-
- **STOP** - do not proceed to next check
|
|
337
|
-
|
|
338
|
-
---
|
|
339
|
-
|
|
340
|
-
### 4. Cross-Module References Validation
|
|
341
|
-
|
|
342
|
-
**Objective:** Verify all cross-module entity references are resolvable.
|
|
343
|
-
|
|
344
|
-
**Process:**
|
|
345
|
-
|
|
346
|
-
1. For EACH module feature.json:
|
|
347
|
-
```
|
|
348
|
-
a. Extract all entity names from analysis.entities[]
|
|
349
|
-
b. Build map: {moduleName -> [entityNames]}
|
|
350
|
-
```
|
|
351
|
-
|
|
352
|
-
2. For EACH module feature.json:
|
|
353
|
-
```
|
|
354
|
-
a. Extract all relationships from analysis.entities[].relationships[]
|
|
355
|
-
b. For each relationship.target:
|
|
356
|
-
- Extract module prefix (first segment before dot)
|
|
357
|
-
- Verify referenced module exists
|
|
358
|
-
- Verify referenced entity exists in target module
|
|
359
|
-
```
|
|
360
|
-
|
|
361
|
-
3. Display cross-reference validation:
|
|
362
|
-
|
|
363
|
-
```
|
|
364
|
-
Cross-Module References Validated:
|
|
365
|
-
✓ TimeTracking.TimeEntry.projectId → Projects.Project.id
|
|
366
|
-
✓ LeaveManagement.LeaveRequest.employeeId → Projects.Employee.id
|
|
367
|
-
✓ AbsenceManagement.Absence.employeeId → Projects.Employee.id
|
|
368
|
-
✓ Reporting.ProjectReport.projectId → Projects.Project.id
|
|
369
|
-
|
|
370
|
-
Total: 4 cross-module references, all resolvable
|
|
371
|
-
```
|
|
372
|
-
|
|
373
|
-
**IF ANY reference is unresolvable:**
|
|
374
|
-
- **BLOCKING ERROR:** List broken references with module and field names
|
|
375
|
-
- **FIX:** Return to step-03a1-setup.md for affected modules to fix entity references
|
|
376
|
-
- **STOP** - do not proceed to next check
|
|
377
|
-
|
|
378
|
-
---
|
|
379
|
-
|
|
380
|
-
### 5. Handoff Completeness Check
|
|
381
|
-
|
|
382
|
-
**Objective:** Verify all required handoff sections are complete and non-empty.
|
|
383
|
-
|
|
384
|
-
**Process:**
|
|
385
|
-
|
|
386
|
-
For EACH module feature.json:
|
|
387
|
-
|
|
388
|
-
1. **filesToCreate validation:**
|
|
389
|
-
```
|
|
390
|
-
- handoff.filesToCreate must be an object
|
|
391
|
-
- All 7 categories must exist: domain, application, infrastructure, api, frontend, seedData, tests
|
|
392
|
-
- Each category must be a non-empty array
|
|
393
|
-
- Each file entry must have: path, type, module
|
|
394
|
-
```
|
|
395
|
-
|
|
396
|
-
2. **brToCodeMapping validation:**
|
|
397
|
-
```
|
|
398
|
-
- handoff.brToCodeMapping must be a non-empty array
|
|
399
|
-
- Each entry must have: ruleId, files[], implementation
|
|
400
|
-
- All ruleIds must reference existing BRs in analysis.businessRules[]
|
|
401
|
-
```
|
|
402
|
-
|
|
403
|
-
3. **apiEndpointSummary validation:**
|
|
404
|
-
```
|
|
405
|
-
- handoff.apiEndpointSummary must be a non-empty array
|
|
406
|
-
- Each entry must have: method, path, permission, linkedUC
|
|
407
|
-
- All linkedUCs must reference existing UCs in specification.useCases[]
|
|
408
|
-
```
|
|
409
|
-
|
|
410
|
-
4. **Metadata validation:**
|
|
411
|
-
```
|
|
412
|
-
- handoff.complexity must be "simple|medium|complex"
|
|
413
|
-
- handoff.totalFiles must be > 0
|
|
414
|
-
- handoff.totalTasks must be > 0
|
|
415
|
-
- handoff.handedOffAt must be valid ISO timestamp
|
|
416
|
-
```
|
|
417
|
-
|
|
418
|
-
5. Display completeness summary:
|
|
419
|
-
|
|
420
|
-
```
|
|
421
|
-
Handoff Completeness:
|
|
422
|
-
Module: Projects
|
|
423
|
-
✓ filesToCreate: 7 categories, 42 files total
|
|
424
|
-
✓ brToCodeMapping: 8 business rules mapped
|
|
425
|
-
✓ apiEndpointSummary: 12 endpoints documented
|
|
426
|
-
✓ complexity: medium
|
|
427
|
-
✓ metadata complete
|
|
428
|
-
|
|
429
|
-
Module: TimeTracking
|
|
430
|
-
✓ filesToCreate: 7 categories, 37 files total
|
|
431
|
-
✓ brToCodeMapping: 10 business rules mapped
|
|
432
|
-
✓ apiEndpointSummary: 15 endpoints documented
|
|
433
|
-
✓ complexity: complex
|
|
434
|
-
✓ metadata complete
|
|
435
|
-
```
|
|
436
|
-
|
|
437
|
-
**IF ANY module has incomplete handoff:**
|
|
438
|
-
- **BLOCKING ERROR:** List missing or invalid sections per module
|
|
439
|
-
- **FIX:** Return to step-05a-handoff.md for affected modules
|
|
440
|
-
- **STOP** - do not proceed to next check
|
|
441
|
-
|
|
442
|
-
---
|
|
443
|
-
|
|
444
|
-
### 6. i18n Keys Validation
|
|
445
|
-
|
|
446
|
-
**Objective:** Verify all required i18n keys are defined for all 4 languages.
|
|
447
|
-
|
|
448
|
-
**Process:**
|
|
449
|
-
|
|
450
|
-
For EACH module feature.json:
|
|
451
|
-
|
|
452
|
-
1. Extract all i18n keys from specification.i18nKeys[]
|
|
453
|
-
2. Verify each key has translations for: fr, en, it, de
|
|
454
|
-
3. Check for common missing patterns:
|
|
455
|
-
```
|
|
456
|
-
- Entity names (singular + plural)
|
|
457
|
-
- Field labels
|
|
458
|
-
- Validation error messages
|
|
459
|
-
- Success/error messages
|
|
460
|
-
- Navigation labels
|
|
461
|
-
- Button labels
|
|
462
|
-
```
|
|
463
|
-
|
|
464
|
-
4. Display i18n validation:
|
|
465
|
-
|
|
466
|
-
```
|
|
467
|
-
i18n Keys Validation:
|
|
468
|
-
Module: Projects
|
|
469
|
-
✓ 42 keys defined
|
|
470
|
-
✓ All keys have 4 languages (fr, en, it, de)
|
|
471
|
-
✓ Entity keys complete
|
|
472
|
-
✓ Validation message keys complete
|
|
473
|
-
✓ Navigation keys complete
|
|
474
|
-
|
|
475
|
-
Module: TimeTracking
|
|
476
|
-
⚠ 37 keys defined
|
|
477
|
-
⚠ Missing translation for "timeEntry.validation.overlapping" in DE
|
|
478
|
-
✓ Entity keys complete
|
|
479
|
-
```
|
|
480
|
-
|
|
481
|
-
**IF ANY missing translations:**
|
|
482
|
-
- **WARNING:** List missing translations (not blocking, but should be fixed)
|
|
483
|
-
- **RECOMMEND:** Add missing translations before proceeding
|
|
484
|
-
- Allow user to continue or fix
|
|
485
|
-
|
|
486
|
-
---
|
|
487
|
-
|
|
488
|
-
### 7. Master Feature Validation
|
|
489
|
-
|
|
490
|
-
**Objective:** Verify master feature.json has all required application-level data.
|
|
491
|
-
|
|
492
|
-
**Process:**
|
|
493
|
-
|
|
494
|
-
1. Read master feature.json
|
|
495
|
-
2. Verify status === "handed-off"
|
|
496
|
-
3. Verify handoff section exists with:
|
|
497
|
-
```
|
|
498
|
-
- implementationStrategy defined
|
|
499
|
-
- moduleOrder matches modules[]
|
|
500
|
-
- totalFilesToCreate === sum of all module totalFiles
|
|
501
|
-
- totalTasks === sum of all module totalTasks
|
|
502
|
-
- prdFiles array has entry for each module
|
|
503
|
-
```
|
|
504
|
-
|
|
505
|
-
4. Display master validation:
|
|
506
|
-
|
|
507
|
-
```
|
|
508
|
-
Master Feature Validation:
|
|
509
|
-
✓ Status: handed-off
|
|
510
|
-
✓ Implementation strategy: module par module
|
|
511
|
-
✓ Module order: [Projects, TimeTracking, LeaveManagement, AbsenceManagement, Reporting]
|
|
512
|
-
✓ Total files: 183 (matches sum of modules)
|
|
513
|
-
✓ Total tasks: 247 (matches sum of modules)
|
|
514
|
-
✓ PRD files: 5 (one per module)
|
|
515
|
-
```
|
|
516
|
-
|
|
517
|
-
**IF master validation fails:**
|
|
518
|
-
- **BLOCKING ERROR:** List missing or invalid sections
|
|
519
|
-
- **FIX:** Return to step-05a-handoff.md to fix master handoff
|
|
520
|
-
- **STOP** - do not proceed
|
|
521
|
-
|
|
522
|
-
---
|
|
523
|
-
|
|
524
|
-
### 8. Progress Tracker Validation
|
|
525
|
-
|
|
526
|
-
**Objective:** Verify progress.txt is generated and complete.
|
|
527
|
-
|
|
528
|
-
**Process:**
|
|
529
|
-
|
|
530
|
-
1. Verify file exists: `.ralph/progress.txt`
|
|
531
|
-
2. Read file and verify structure:
|
|
532
|
-
```
|
|
533
|
-
- Has header with application name
|
|
534
|
-
- Has summary section
|
|
535
|
-
- Has section for each module
|
|
536
|
-
- Each module section has tasks by layer
|
|
537
|
-
- Has completion checkboxes ([ ] format)
|
|
538
|
-
```
|
|
539
|
-
|
|
540
|
-
3. Count total tasks and verify matches master.handoff.totalTasks
|
|
541
|
-
|
|
542
|
-
4. Display progress tracker validation:
|
|
543
|
-
|
|
544
|
-
```
|
|
545
|
-
Progress Tracker Validation:
|
|
546
|
-
✓ File exists: .ralph/progress.txt
|
|
547
|
-
✓ Size: 12.3 KB
|
|
548
|
-
✓ Modules: 5 sections present
|
|
549
|
-
✓ Tasks: 247 checkboxes (matches master)
|
|
550
|
-
✓ Structure: valid markdown format
|
|
551
|
-
```
|
|
552
|
-
|
|
553
|
-
**IF progress tracker invalid:**
|
|
554
|
-
- **WARNING:** Progress tracker issues (not blocking)
|
|
555
|
-
- **RECOMMEND:** Re-generate via step-05b-deploy.md
|
|
556
|
-
- Allow user to continue
|
|
557
|
-
|
|
558
|
-
---
|
|
559
|
-
|
|
560
|
-
### 9. Final Readiness Report
|
|
561
|
-
|
|
562
|
-
**Objective:** Display comprehensive readiness summary and next steps.
|
|
563
|
-
|
|
564
|
-
**Process:**
|
|
565
|
-
|
|
566
|
-
1. Aggregate all validation results (quality review + 7 structural checks)
|
|
567
|
-
2. Calculate readiness score:
|
|
568
|
-
```
|
|
569
|
-
passedChecks / totalChecks * 100
|
|
570
|
-
Quality gate: overall quality must be A or B
|
|
571
|
-
```
|
|
572
|
-
|
|
573
|
-
3. Display final report:
|
|
574
|
-
|
|
575
|
-
```
|
|
576
|
-
═══════════════════════════════════════════════════════════════
|
|
577
|
-
RALPH READINESS CHECK - COMPLETE
|
|
578
|
-
═══════════════════════════════════════════════════════════════
|
|
579
|
-
|
|
580
|
-
ULTRATHINK Quality Review:
|
|
581
|
-
Quality Score: {A/B} — {Production-ready / Good}
|
|
582
|
-
Dimensions: {6/6 reviewed}
|
|
583
|
-
Critical issues: {0}
|
|
584
|
-
Warnings: {count}
|
|
585
|
-
|
|
586
|
-
Structural Validation Summary:
|
|
587
|
-
✓ Module status validation: PASS ({n}/{n} modules)
|
|
588
|
-
✓ PRD files validation: PASS ({n}/{n} files)
|
|
589
|
-
✓ Dependency graph validation: PASS ({n} edges)
|
|
590
|
-
✓ Cross-module references validation: PASS ({n} references)
|
|
591
|
-
✓ Handoff completeness check: PASS ({n}/{n} modules)
|
|
592
|
-
⚠ i18n keys validation: WARNING ({n} missing translation)
|
|
593
|
-
✓ Master feature validation: PASS
|
|
594
|
-
✓ Progress tracker validation: PASS
|
|
595
|
-
|
|
596
|
-
Readiness Score: 100% (8/8 checks passed, {n} warnings)
|
|
597
|
-
|
|
598
|
-
═══════════════════════════════════════════════════════════════
|
|
599
|
-
|
|
600
|
-
Status: READY FOR DEVELOPMENT ✓
|
|
601
|
-
|
|
602
|
-
Next Steps:
|
|
603
|
-
1. Address warnings (recommended but not blocking):
|
|
604
|
-
- {list warnings from quality review + structural checks}
|
|
605
|
-
|
|
606
|
-
2. Review progress tracker: .ralph/progress.txt
|
|
607
|
-
|
|
608
|
-
3. When ready, launch development:
|
|
609
|
-
|
|
610
|
-
/ralph-loop
|
|
611
|
-
|
|
612
|
-
Note: Use /ralph-loop -r ONLY to resume an interrupted loop.
|
|
613
|
-
After a fresh /business-analyse, always use /ralph-loop (without -r).
|
|
614
|
-
|
|
615
|
-
4. Ralph-loop will:
|
|
616
|
-
- Process modules in topological order: [{module list}]
|
|
617
|
-
- Generate {n} files across 7 layers
|
|
618
|
-
- Execute {n} tasks tracked in progress.txt
|
|
619
|
-
|
|
620
|
-
═══════════════════════════════════════════════════════════════
|
|
621
|
-
```
|
|
622
|
-
|
|
623
|
-
**IF readiness score < 100% OR quality = C/D (critical checks failed):**
|
|
624
|
-
|
|
625
|
-
```
|
|
626
|
-
═══════════════════════════════════════════════════════════════
|
|
627
|
-
RALPH READINESS CHECK - FAILED
|
|
628
|
-
═══════════════════════════════════════════════════════════════
|
|
629
|
-
|
|
630
|
-
Status: NOT READY FOR DEVELOPMENT ✗
|
|
631
|
-
|
|
632
|
-
{IF quality = C/D:}
|
|
633
|
-
Quality Issues Found:
|
|
634
|
-
✗ ULTRATHINK quality review: {C/D} — {Needs fixes / Major rework}
|
|
635
|
-
- {List critical quality issues from section 0b}
|
|
636
|
-
- Fix: Return to appropriate step (see quality review details above)
|
|
637
|
-
|
|
638
|
-
{IF structural checks failed:}
|
|
639
|
-
Structural Issues Found:
|
|
640
|
-
✗ {check name}: FAIL ({details})
|
|
641
|
-
- {specific issue}
|
|
642
|
-
- Fix: {specific action}
|
|
643
|
-
|
|
644
|
-
Required Actions:
|
|
645
|
-
1. Fix all critical issues listed above
|
|
646
|
-
2. Re-run validation: load step-05c-ralph-readiness.md
|
|
647
|
-
3. Only proceed to /ralph-loop when all checks pass AND quality ≥ B
|
|
648
|
-
|
|
649
|
-
DO NOT PROCEED TO /ralph-loop UNTIL ALL CHECKS PASS
|
|
650
|
-
═══════════════════════════════════════════════════════════════
|
|
651
|
-
```
|
|
652
|
-
|
|
653
|
-
---
|
|
654
|
-
|
|
655
|
-
## SELF-VERIFICATION
|
|
656
|
-
|
|
657
|
-
Before displaying final report, VERIFY:
|
|
658
|
-
|
|
659
|
-
1. **ULTRATHINK quality review executed** (6 dimensions analyzed)
|
|
660
|
-
2. **Quality verdict displayed** with scores per dimension
|
|
661
|
-
3. **ALL 8 structural validation checks executed** (never skip)
|
|
662
|
-
4. **Results clearly marked** (PASS/FAIL/WARNING)
|
|
663
|
-
5. **Actionable fixes provided** for all failures
|
|
664
|
-
6. **Readiness score calculated** correctly
|
|
665
|
-
7. **Next steps displayed** with exact commands
|
|
666
|
-
8. **Blocking errors prevent progression** (no false positives)
|
|
667
|
-
|
|
668
|
-
---
|
|
669
|
-
|
|
670
|
-
## SUCCESS CRITERIA
|
|
671
|
-
|
|
672
|
-
- ULTRATHINK quality review completed with overall score A or B
|
|
673
|
-
- All 8 critical validation checks executed (quality review + 7 structural)
|
|
674
|
-
- Clear PASS/FAIL/WARNING status for each check
|
|
675
|
-
- Readiness score displayed (100% = all critical checks passed)
|
|
676
|
-
- Actionable fix instructions for all failures
|
|
677
|
-
- User can proceed to /ralph-loop only if readiness score = 100% AND quality ≥ B
|
|
678
|
-
- Warnings documented but not blocking
|
|
679
|
-
|
|
680
|
-
---
|
|
681
|
-
|
|
682
|
-
## NOTES
|
|
683
|
-
|
|
684
|
-
**Why this gate matters:**
|
|
685
|
-
|
|
686
|
-
- **ULTRATHINK catches semantic issues** that structural checks miss (orphan UCs, incoherent permissions, missing UI flows)
|
|
687
|
-
- Prevents incomplete handoffs from reaching development
|
|
688
|
-
- Catches structural issues early (PRD validation)
|
|
689
|
-
- Verifies cross-module integrity before code generation
|
|
690
|
-
- Ensures ralph-loop has all required data to proceed
|
|
691
|
-
- Reduces failed development attempts and rework
|
|
692
|
-
|
|
693
|
-
**When to run this gate:**
|
|
694
|
-
|
|
695
|
-
- **Automatically at end of step-05b-deploy.md (MANDATORY)**
|
|
696
|
-
- After fixing any handoff issues to re-validate
|
|
697
|
-
|
|
698
|
-
**What happens if checks fail:**
|
|
699
|
-
|
|
700
|
-
- Development is BLOCKED until issues are fixed
|
|
701
|
-
- User returns to appropriate step to fix issues
|
|
702
|
-
- Re-run validation after fixes
|
|
703
|
-
- Only proceed when all critical checks pass AND quality review passes
|
|
1
|
+
---
|
|
2
|
+
name: step-05c-ralph-readiness
|
|
3
|
+
description: ULTRATHINK quality review + validation gate before ralph-loop
|
|
4
|
+
model: opus
|
|
5
|
+
next_step: null
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
> **Context files:** `_shared.md`
|
|
9
|
+
|
|
10
|
+
# Step 5c: ULTRATHINK Quality Review & Ralph Readiness Check
|
|
11
|
+
|
|
12
|
+
## MANDATORY EXECUTION RULES
|
|
13
|
+
|
|
14
|
+
- **ALWAYS** use ULTRATHINK mode for the quality review (section 0b)
|
|
15
|
+
- **ALWAYS** run ALL validation checks (NEVER skip)
|
|
16
|
+
- **BLOCKING RULE:** If ANY check fails → STOP, DO NOT proceed to ralph-loop
|
|
17
|
+
- **ALWAYS** provide actionable fix instructions for failures
|
|
18
|
+
- **NEVER** auto-launch ralph-loop (user triggers manually)
|
|
19
|
+
- **ALL** PRD files must be generated and validated before proceeding
|
|
20
|
+
|
|
21
|
+
## YOUR TASK
|
|
22
|
+
|
|
23
|
+
Perform a deep ULTRATHINK quality review of the entire business analysis output, then run comprehensive structural validation to ensure readiness for /ralph-loop. This is a **BLOCKING** gate — all checks must pass before development can proceed.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## EXECUTION SEQUENCE
|
|
28
|
+
|
|
29
|
+
### 0. Introduction
|
|
30
|
+
|
|
31
|
+
Display validation banner:
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
═══════════════════════════════════════════════════════════════
|
|
35
|
+
ULTRATHINK QUALITY REVIEW & RALPH READINESS CHECK
|
|
36
|
+
{application_name}
|
|
37
|
+
═══════════════════════════════════════════════════════════════
|
|
38
|
+
Phase 1: Deep quality review (ULTRATHINK)...
|
|
39
|
+
Phase 2: Structural validation (8 checks)...
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
### 0b. ULTRATHINK Deep Quality Review (MANDATORY)
|
|
45
|
+
|
|
46
|
+
> **This section MUST be executed in ULTRATHINK mode.**
|
|
47
|
+
> Take the time to deeply analyze the ENTIRE business analysis output.
|
|
48
|
+
> This is the last chance to catch quality issues before development begins.
|
|
49
|
+
|
|
50
|
+
**Objective:** Perform a thorough, deep-thinking review of the business analysis quality — not just structural checks, but semantic coherence, completeness, and production-readiness.
|
|
51
|
+
|
|
52
|
+
**Process:**
|
|
53
|
+
|
|
54
|
+
1. **Read ALL module feature.json files** (master + each module)
|
|
55
|
+
2. **Activate ULTRATHINK** and analyze the following 6 dimensions:
|
|
56
|
+
|
|
57
|
+
#### Dimension 1: Specification Coherence
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
For EACH module:
|
|
61
|
+
- Do use cases (UCs) tell a coherent story?
|
|
62
|
+
- Are functional requirements (FRs) logically derived from UCs?
|
|
63
|
+
- Do business rules (BRs) cover all edge cases mentioned in UCs?
|
|
64
|
+
- Are gherkin scenarios testing the RIGHT behaviors (not trivial CRUD)?
|
|
65
|
+
- Do entity relationships make domain sense?
|
|
66
|
+
|
|
67
|
+
Flag: Orphan FRs (not linked to any UC), UCs with no FR coverage,
|
|
68
|
+
BRs that don't map to any entity/field
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
#### Dimension 2: Permission & Security Model
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
For EACH module:
|
|
75
|
+
- Is the permission hierarchy logical? (admin > manager > contributor > viewer)
|
|
76
|
+
- Are there actions that should be restricted but aren't?
|
|
77
|
+
- Do API endpoints all have permissions assigned?
|
|
78
|
+
- Are there over-permissive roles? (e.g., contributor with delete access)
|
|
79
|
+
- Cross-module: can a user in Module A access data in Module B through indirect routes?
|
|
80
|
+
|
|
81
|
+
Flag: Endpoints without permissions, roles with excessive access,
|
|
82
|
+
missing permission paths
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
#### Dimension 3: Data Model Integrity
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
For EACH module:
|
|
89
|
+
- Are all entity relationships bidirectional where needed?
|
|
90
|
+
- Are FK references correct (target entity exists, correct field type)?
|
|
91
|
+
- Are there missing audit fields (CreatedAt, UpdatedAt, CreatedBy)?
|
|
92
|
+
- Do lifecycle states cover all business scenarios?
|
|
93
|
+
- Are cascade delete/update rules safe? (no orphan risk)
|
|
94
|
+
|
|
95
|
+
Cross-module:
|
|
96
|
+
- Are shared entity references correct?
|
|
97
|
+
- Is the dependency graph honest? (no hidden dependencies)
|
|
98
|
+
|
|
99
|
+
Flag: Missing relationships, unsafe cascades, missing audit fields,
|
|
100
|
+
hidden cross-module dependencies
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
#### Dimension 4: UI/UX Completeness
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
For EACH module:
|
|
107
|
+
- Does every section have at least one wireframe?
|
|
108
|
+
- Do wireframes cover ALL use cases? (no UC without UI representation)
|
|
109
|
+
- Are navigation entries correct and complete?
|
|
110
|
+
- Do wireframe actions map to real API endpoints?
|
|
111
|
+
- Are form fields aligned with entity attributes?
|
|
112
|
+
- Are validation rules defined for all user-input fields?
|
|
113
|
+
|
|
114
|
+
Flag: UCs with no wireframe, wireframes with unmapped actions,
|
|
115
|
+
missing form validations, navigation gaps
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
#### Dimension 5: i18n & Messages Quality
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
For EACH module:
|
|
122
|
+
- Are all user-facing strings covered by i18n keys?
|
|
123
|
+
- Are error messages specific enough? (not generic "Error occurred")
|
|
124
|
+
- Do validation messages reference the field name?
|
|
125
|
+
- Are success/confirmation messages present for all write operations?
|
|
126
|
+
- Are there missing translations in any language?
|
|
127
|
+
|
|
128
|
+
Flag: Generic error messages, missing field-specific validations,
|
|
129
|
+
incomplete language coverage
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
#### Dimension 6: Implementation Feasibility
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
For EACH module:
|
|
136
|
+
- Is the handoff.filesToCreate list realistic? (no missing files, no impossible paths)
|
|
137
|
+
- Do brToCodeMapping entries have enough detail for generation?
|
|
138
|
+
- Are API endpoint paths following REST conventions?
|
|
139
|
+
- Are DTO structures aligned with entity attributes?
|
|
140
|
+
- Is the seed data sufficient for testing all use cases?
|
|
141
|
+
- Are there any features that would require infrastructure not in the stack?
|
|
142
|
+
|
|
143
|
+
Flag: Unrealistic file counts, vague BR mappings, non-RESTful routes,
|
|
144
|
+
missing seed data for critical test scenarios
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
3. **Produce Quality Verdict:**
|
|
148
|
+
|
|
149
|
+
```
|
|
150
|
+
═══════════════════════════════════════════════════════════════
|
|
151
|
+
ULTRATHINK QUALITY REVIEW - RESULTS
|
|
152
|
+
═══════════════════════════════════════════════════════════════
|
|
153
|
+
|
|
154
|
+
| Dimension | Score | Issues |
|
|
155
|
+
|-----------|-------|--------|
|
|
156
|
+
| Specification Coherence | A/B/C/D | {count} issues |
|
|
157
|
+
| Permission & Security | A/B/C/D | {count} issues |
|
|
158
|
+
| Data Model Integrity | A/B/C/D | {count} issues |
|
|
159
|
+
| UI/UX Completeness | A/B/C/D | {count} issues |
|
|
160
|
+
| i18n & Messages | A/B/C/D | {count} issues |
|
|
161
|
+
| Implementation Feasibility | A/B/C/D | {count} issues |
|
|
162
|
+
|
|
163
|
+
Overall Quality: {A/B/C/D}
|
|
164
|
+
A = Production-ready (0 critical, ≤3 warnings)
|
|
165
|
+
B = Good (0 critical, >3 warnings)
|
|
166
|
+
C = Needs fixes (1-2 critical issues)
|
|
167
|
+
D = Major rework needed (>2 critical issues)
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
4. **Display Issues (if any):**
|
|
171
|
+
|
|
172
|
+
```
|
|
173
|
+
Critical Issues (MUST fix before /ralph-loop):
|
|
174
|
+
✗ [Dimension] Issue description
|
|
175
|
+
→ Fix: Specific action to resolve
|
|
176
|
+
|
|
177
|
+
Warnings (SHOULD fix, not blocking):
|
|
178
|
+
⚠ [Dimension] Issue description
|
|
179
|
+
→ Recommendation: How to improve
|
|
180
|
+
|
|
181
|
+
Suggestions (nice-to-have):
|
|
182
|
+
ℹ [Dimension] Suggestion
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
5. **Decision:**
|
|
186
|
+
|
|
187
|
+
```
|
|
188
|
+
IF overall quality = D:
|
|
189
|
+
BLOCKING ERROR: Major quality issues detected
|
|
190
|
+
→ Return to appropriate step to fix critical issues
|
|
191
|
+
→ DO NOT proceed to structural validation
|
|
192
|
+
|
|
193
|
+
IF overall quality = C:
|
|
194
|
+
Ask via AskUserQuestion:
|
|
195
|
+
question: "Des problèmes de qualité ont été détectés. Comment souhaitez-vous procéder ?"
|
|
196
|
+
header: "Qualité"
|
|
197
|
+
options:
|
|
198
|
+
- label: "Corriger les problèmes critiques"
|
|
199
|
+
description: "Retourner aux étapes concernées pour corriger"
|
|
200
|
+
- label: "Continuer malgré les problèmes"
|
|
201
|
+
description: "Accepter les risques et poursuivre la validation structurelle"
|
|
202
|
+
|
|
203
|
+
IF overall quality = A or B:
|
|
204
|
+
Display: "✓ Quality review passed — proceeding to structural validation..."
|
|
205
|
+
→ Continue to section 1
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
### 1. Module Status Validation
|
|
211
|
+
|
|
212
|
+
**Objective:** Verify all modules have completed handoff.
|
|
213
|
+
|
|
214
|
+
**Process:**
|
|
215
|
+
|
|
216
|
+
1. Read master feature.json via ba-reader
|
|
217
|
+
2. For EACH module in modules[]:
|
|
218
|
+
```
|
|
219
|
+
a. Check module.status === "handed-off"
|
|
220
|
+
b. If module.featureJsonPath exists, read module feature.json
|
|
221
|
+
c. Verify module feature.json status === "handed-off"
|
|
222
|
+
d. Verify module feature.json handoff section exists and is not empty
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
3. Display validation table:
|
|
226
|
+
|
|
227
|
+
```
|
|
228
|
+
| Module | Master Status | Module Status | Handoff Present | Result |
|
|
229
|
+
|--------|--------------|---------------|-----------------|--------|
|
|
230
|
+
| Projects | handed-off | handed-off | ✓ | PASS |
|
|
231
|
+
| TimeTracking | handed-off | handed-off | ✓ | PASS |
|
|
232
|
+
| Reporting | specified | specified | ✗ | FAIL |
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
**IF ANY module shows FAIL:**
|
|
236
|
+
- **BLOCKING ERROR:** List failed modules
|
|
237
|
+
- **FIX:** Return to step-05a-handoff.md for missing modules
|
|
238
|
+
- **STOP** - do not proceed to next check
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
### 2. PRD Files Validation
|
|
243
|
+
|
|
244
|
+
**Objective:** Verify all PRD files are generated and structurally valid.
|
|
245
|
+
|
|
246
|
+
**Process:**
|
|
247
|
+
|
|
248
|
+
1. For EACH module in modules[]:
|
|
249
|
+
```
|
|
250
|
+
a. Locate expected PRD file: .ralph/prd-{moduleCode}.json
|
|
251
|
+
b. Verify file exists
|
|
252
|
+
c. Read PRD file
|
|
253
|
+
d. Verify structure (see [references/prd-generation.md](../references/prd-generation.md))
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
2. **PRD Structure Validation:**
|
|
257
|
+
|
|
258
|
+
Perform the 4 mandatory PRD structure checks:
|
|
259
|
+
- **Check 1:** Version must be "3.0.0"
|
|
260
|
+
- **Check 2:** filesToCreate must be under `implementation` (NOT root level)
|
|
261
|
+
- **Check 3:** All 7 categories present (domain, application, infrastructure, api, frontend, seedData, tests)
|
|
262
|
+
- **Check 4:** File counts match feature.json handoff counts
|
|
263
|
+
|
|
264
|
+
```javascript
|
|
265
|
+
const prdErrors = validateAllPRDs(modules);
|
|
266
|
+
|
|
267
|
+
IF prdErrors.length > 0:
|
|
268
|
+
// CONDITIONAL LOAD: Only load PRD reference on validation failure
|
|
269
|
+
Read references/prd-generation.md
|
|
270
|
+
Display:
|
|
271
|
+
- PRD v3.0 structure requirements
|
|
272
|
+
- Detailed validation logic for failed checks
|
|
273
|
+
- Common errors & fix commands for each failure
|
|
274
|
+
- Generation command reference
|
|
275
|
+
|
|
276
|
+
BLOCKING ERROR: {prdErrors.length} PRD file(s) invalid
|
|
277
|
+
→ Fix all PRD errors before proceeding
|
|
278
|
+
|
|
279
|
+
ELSE:
|
|
280
|
+
All PRD files valid ✓
|
|
281
|
+
→ Continue to dependency graph validation
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
**Optimization:** The detailed 300-line prd-generation.md is loaded **only when PRD validation fails** (saves ~12,000 tokens on success path).
|
|
285
|
+
|
|
286
|
+
3. Display PRD validation table:
|
|
287
|
+
|
|
288
|
+
```
|
|
289
|
+
| Module | PRD File | Version | Structure | File Counts | Result |
|
|
290
|
+
|--------|----------|---------|-----------|-------------|--------|
|
|
291
|
+
| Projects | ✓ exists | 3.0.0 | ✓ valid | 42/42 match | PASS |
|
|
292
|
+
| TimeTracking | ✓ exists | 3.0.0 | ✓ valid | 37/37 match | PASS |
|
|
293
|
+
| Reporting | ✗ missing | - | - | - | FAIL |
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
**IF ANY PRD shows FAIL:**
|
|
297
|
+
- **BLOCKING ERROR:** List failed PRDs with specific issues
|
|
298
|
+
- **FIX:** Re-run `ss derive-prd --feature {path} --output .ralph/prd-{moduleCode}.json`
|
|
299
|
+
- **STOP** - do not proceed to next check
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
### 3. Dependency Graph Validation
|
|
304
|
+
|
|
305
|
+
**Objective:** Verify module dependencies are resolvable and topologically ordered.
|
|
306
|
+
|
|
307
|
+
**Process:**
|
|
308
|
+
|
|
309
|
+
1. Read master feature.json dependencyGraph
|
|
310
|
+
2. For each edge in dependencyGraph.edges[]:
|
|
311
|
+
```
|
|
312
|
+
a. Verify source module exists in modules[]
|
|
313
|
+
b. Verify target module exists in modules[]
|
|
314
|
+
c. Verify no circular dependencies
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
3. Verify topologicalOrder matches actual dependencies:
|
|
318
|
+
```
|
|
319
|
+
For each module M in topologicalOrder:
|
|
320
|
+
For each dependency D of M:
|
|
321
|
+
D must appear BEFORE M in topologicalOrder
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
4. Display dependency validation:
|
|
325
|
+
|
|
326
|
+
```
|
|
327
|
+
✓ Dependency graph valid
|
|
328
|
+
✓ No circular dependencies detected
|
|
329
|
+
✓ Topological order correct: [Projects, TimeTracking, LeaveManagement, AbsenceManagement, Reporting]
|
|
330
|
+
✓ 4 dependency edges validated
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
**IF validation fails:**
|
|
334
|
+
- **BLOCKING ERROR:** Report circular dependencies or invalid edges
|
|
335
|
+
- **FIX:** Return to step-02-decomposition.md to fix dependency graph
|
|
336
|
+
- **STOP** - do not proceed to next check
|
|
337
|
+
|
|
338
|
+
---
|
|
339
|
+
|
|
340
|
+
### 4. Cross-Module References Validation
|
|
341
|
+
|
|
342
|
+
**Objective:** Verify all cross-module entity references are resolvable.
|
|
343
|
+
|
|
344
|
+
**Process:**
|
|
345
|
+
|
|
346
|
+
1. For EACH module feature.json:
|
|
347
|
+
```
|
|
348
|
+
a. Extract all entity names from analysis.entities[]
|
|
349
|
+
b. Build map: {moduleName -> [entityNames]}
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
2. For EACH module feature.json:
|
|
353
|
+
```
|
|
354
|
+
a. Extract all relationships from analysis.entities[].relationships[]
|
|
355
|
+
b. For each relationship.target:
|
|
356
|
+
- Extract module prefix (first segment before dot)
|
|
357
|
+
- Verify referenced module exists
|
|
358
|
+
- Verify referenced entity exists in target module
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
3. Display cross-reference validation:
|
|
362
|
+
|
|
363
|
+
```
|
|
364
|
+
Cross-Module References Validated:
|
|
365
|
+
✓ TimeTracking.TimeEntry.projectId → Projects.Project.id
|
|
366
|
+
✓ LeaveManagement.LeaveRequest.employeeId → Projects.Employee.id
|
|
367
|
+
✓ AbsenceManagement.Absence.employeeId → Projects.Employee.id
|
|
368
|
+
✓ Reporting.ProjectReport.projectId → Projects.Project.id
|
|
369
|
+
|
|
370
|
+
Total: 4 cross-module references, all resolvable
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
**IF ANY reference is unresolvable:**
|
|
374
|
+
- **BLOCKING ERROR:** List broken references with module and field names
|
|
375
|
+
- **FIX:** Return to step-03a1-setup.md for affected modules to fix entity references
|
|
376
|
+
- **STOP** - do not proceed to next check
|
|
377
|
+
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
### 5. Handoff Completeness Check
|
|
381
|
+
|
|
382
|
+
**Objective:** Verify all required handoff sections are complete and non-empty.
|
|
383
|
+
|
|
384
|
+
**Process:**
|
|
385
|
+
|
|
386
|
+
For EACH module feature.json:
|
|
387
|
+
|
|
388
|
+
1. **filesToCreate validation:**
|
|
389
|
+
```
|
|
390
|
+
- handoff.filesToCreate must be an object
|
|
391
|
+
- All 7 categories must exist: domain, application, infrastructure, api, frontend, seedData, tests
|
|
392
|
+
- Each category must be a non-empty array
|
|
393
|
+
- Each file entry must have: path, type, module
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
2. **brToCodeMapping validation:**
|
|
397
|
+
```
|
|
398
|
+
- handoff.brToCodeMapping must be a non-empty array
|
|
399
|
+
- Each entry must have: ruleId, files[], implementation
|
|
400
|
+
- All ruleIds must reference existing BRs in analysis.businessRules[]
|
|
401
|
+
```
|
|
402
|
+
|
|
403
|
+
3. **apiEndpointSummary validation:**
|
|
404
|
+
```
|
|
405
|
+
- handoff.apiEndpointSummary must be a non-empty array
|
|
406
|
+
- Each entry must have: method, path, permission, linkedUC
|
|
407
|
+
- All linkedUCs must reference existing UCs in specification.useCases[]
|
|
408
|
+
```
|
|
409
|
+
|
|
410
|
+
4. **Metadata validation:**
|
|
411
|
+
```
|
|
412
|
+
- handoff.complexity must be "simple|medium|complex"
|
|
413
|
+
- handoff.totalFiles must be > 0
|
|
414
|
+
- handoff.totalTasks must be > 0
|
|
415
|
+
- handoff.handedOffAt must be valid ISO timestamp
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
5. Display completeness summary:
|
|
419
|
+
|
|
420
|
+
```
|
|
421
|
+
Handoff Completeness:
|
|
422
|
+
Module: Projects
|
|
423
|
+
✓ filesToCreate: 7 categories, 42 files total
|
|
424
|
+
✓ brToCodeMapping: 8 business rules mapped
|
|
425
|
+
✓ apiEndpointSummary: 12 endpoints documented
|
|
426
|
+
✓ complexity: medium
|
|
427
|
+
✓ metadata complete
|
|
428
|
+
|
|
429
|
+
Module: TimeTracking
|
|
430
|
+
✓ filesToCreate: 7 categories, 37 files total
|
|
431
|
+
✓ brToCodeMapping: 10 business rules mapped
|
|
432
|
+
✓ apiEndpointSummary: 15 endpoints documented
|
|
433
|
+
✓ complexity: complex
|
|
434
|
+
✓ metadata complete
|
|
435
|
+
```
|
|
436
|
+
|
|
437
|
+
**IF ANY module has incomplete handoff:**
|
|
438
|
+
- **BLOCKING ERROR:** List missing or invalid sections per module
|
|
439
|
+
- **FIX:** Return to step-05a-handoff.md for affected modules
|
|
440
|
+
- **STOP** - do not proceed to next check
|
|
441
|
+
|
|
442
|
+
---
|
|
443
|
+
|
|
444
|
+
### 6. i18n Keys Validation
|
|
445
|
+
|
|
446
|
+
**Objective:** Verify all required i18n keys are defined for all 4 languages.
|
|
447
|
+
|
|
448
|
+
**Process:**
|
|
449
|
+
|
|
450
|
+
For EACH module feature.json:
|
|
451
|
+
|
|
452
|
+
1. Extract all i18n keys from specification.i18nKeys[]
|
|
453
|
+
2. Verify each key has translations for: fr, en, it, de
|
|
454
|
+
3. Check for common missing patterns:
|
|
455
|
+
```
|
|
456
|
+
- Entity names (singular + plural)
|
|
457
|
+
- Field labels
|
|
458
|
+
- Validation error messages
|
|
459
|
+
- Success/error messages
|
|
460
|
+
- Navigation labels
|
|
461
|
+
- Button labels
|
|
462
|
+
```
|
|
463
|
+
|
|
464
|
+
4. Display i18n validation:
|
|
465
|
+
|
|
466
|
+
```
|
|
467
|
+
i18n Keys Validation:
|
|
468
|
+
Module: Projects
|
|
469
|
+
✓ 42 keys defined
|
|
470
|
+
✓ All keys have 4 languages (fr, en, it, de)
|
|
471
|
+
✓ Entity keys complete
|
|
472
|
+
✓ Validation message keys complete
|
|
473
|
+
✓ Navigation keys complete
|
|
474
|
+
|
|
475
|
+
Module: TimeTracking
|
|
476
|
+
⚠ 37 keys defined
|
|
477
|
+
⚠ Missing translation for "timeEntry.validation.overlapping" in DE
|
|
478
|
+
✓ Entity keys complete
|
|
479
|
+
```
|
|
480
|
+
|
|
481
|
+
**IF ANY missing translations:**
|
|
482
|
+
- **WARNING:** List missing translations (not blocking, but should be fixed)
|
|
483
|
+
- **RECOMMEND:** Add missing translations before proceeding
|
|
484
|
+
- Allow user to continue or fix
|
|
485
|
+
|
|
486
|
+
---
|
|
487
|
+
|
|
488
|
+
### 7. Master Feature Validation
|
|
489
|
+
|
|
490
|
+
**Objective:** Verify master feature.json has all required application-level data.
|
|
491
|
+
|
|
492
|
+
**Process:**
|
|
493
|
+
|
|
494
|
+
1. Read master feature.json
|
|
495
|
+
2. Verify status === "handed-off"
|
|
496
|
+
3. Verify handoff section exists with:
|
|
497
|
+
```
|
|
498
|
+
- implementationStrategy defined
|
|
499
|
+
- moduleOrder matches modules[]
|
|
500
|
+
- totalFilesToCreate === sum of all module totalFiles
|
|
501
|
+
- totalTasks === sum of all module totalTasks
|
|
502
|
+
- prdFiles array has entry for each module
|
|
503
|
+
```
|
|
504
|
+
|
|
505
|
+
4. Display master validation:
|
|
506
|
+
|
|
507
|
+
```
|
|
508
|
+
Master Feature Validation:
|
|
509
|
+
✓ Status: handed-off
|
|
510
|
+
✓ Implementation strategy: module par module
|
|
511
|
+
✓ Module order: [Projects, TimeTracking, LeaveManagement, AbsenceManagement, Reporting]
|
|
512
|
+
✓ Total files: 183 (matches sum of modules)
|
|
513
|
+
✓ Total tasks: 247 (matches sum of modules)
|
|
514
|
+
✓ PRD files: 5 (one per module)
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
**IF master validation fails:**
|
|
518
|
+
- **BLOCKING ERROR:** List missing or invalid sections
|
|
519
|
+
- **FIX:** Return to step-05a-handoff.md to fix master handoff
|
|
520
|
+
- **STOP** - do not proceed
|
|
521
|
+
|
|
522
|
+
---
|
|
523
|
+
|
|
524
|
+
### 8. Progress Tracker Validation
|
|
525
|
+
|
|
526
|
+
**Objective:** Verify progress.txt is generated and complete.
|
|
527
|
+
|
|
528
|
+
**Process:**
|
|
529
|
+
|
|
530
|
+
1. Verify file exists: `.ralph/progress.txt`
|
|
531
|
+
2. Read file and verify structure:
|
|
532
|
+
```
|
|
533
|
+
- Has header with application name
|
|
534
|
+
- Has summary section
|
|
535
|
+
- Has section for each module
|
|
536
|
+
- Each module section has tasks by layer
|
|
537
|
+
- Has completion checkboxes ([ ] format)
|
|
538
|
+
```
|
|
539
|
+
|
|
540
|
+
3. Count total tasks and verify matches master.handoff.totalTasks
|
|
541
|
+
|
|
542
|
+
4. Display progress tracker validation:
|
|
543
|
+
|
|
544
|
+
```
|
|
545
|
+
Progress Tracker Validation:
|
|
546
|
+
✓ File exists: .ralph/progress.txt
|
|
547
|
+
✓ Size: 12.3 KB
|
|
548
|
+
✓ Modules: 5 sections present
|
|
549
|
+
✓ Tasks: 247 checkboxes (matches master)
|
|
550
|
+
✓ Structure: valid markdown format
|
|
551
|
+
```
|
|
552
|
+
|
|
553
|
+
**IF progress tracker invalid:**
|
|
554
|
+
- **WARNING:** Progress tracker issues (not blocking)
|
|
555
|
+
- **RECOMMEND:** Re-generate via step-05b-deploy.md
|
|
556
|
+
- Allow user to continue
|
|
557
|
+
|
|
558
|
+
---
|
|
559
|
+
|
|
560
|
+
### 9. Final Readiness Report
|
|
561
|
+
|
|
562
|
+
**Objective:** Display comprehensive readiness summary and next steps.
|
|
563
|
+
|
|
564
|
+
**Process:**
|
|
565
|
+
|
|
566
|
+
1. Aggregate all validation results (quality review + 7 structural checks)
|
|
567
|
+
2. Calculate readiness score:
|
|
568
|
+
```
|
|
569
|
+
passedChecks / totalChecks * 100
|
|
570
|
+
Quality gate: overall quality must be A or B
|
|
571
|
+
```
|
|
572
|
+
|
|
573
|
+
3. Display final report:
|
|
574
|
+
|
|
575
|
+
```
|
|
576
|
+
═══════════════════════════════════════════════════════════════
|
|
577
|
+
RALPH READINESS CHECK - COMPLETE
|
|
578
|
+
═══════════════════════════════════════════════════════════════
|
|
579
|
+
|
|
580
|
+
ULTRATHINK Quality Review:
|
|
581
|
+
Quality Score: {A/B} — {Production-ready / Good}
|
|
582
|
+
Dimensions: {6/6 reviewed}
|
|
583
|
+
Critical issues: {0}
|
|
584
|
+
Warnings: {count}
|
|
585
|
+
|
|
586
|
+
Structural Validation Summary:
|
|
587
|
+
✓ Module status validation: PASS ({n}/{n} modules)
|
|
588
|
+
✓ PRD files validation: PASS ({n}/{n} files)
|
|
589
|
+
✓ Dependency graph validation: PASS ({n} edges)
|
|
590
|
+
✓ Cross-module references validation: PASS ({n} references)
|
|
591
|
+
✓ Handoff completeness check: PASS ({n}/{n} modules)
|
|
592
|
+
⚠ i18n keys validation: WARNING ({n} missing translation)
|
|
593
|
+
✓ Master feature validation: PASS
|
|
594
|
+
✓ Progress tracker validation: PASS
|
|
595
|
+
|
|
596
|
+
Readiness Score: 100% (8/8 checks passed, {n} warnings)
|
|
597
|
+
|
|
598
|
+
═══════════════════════════════════════════════════════════════
|
|
599
|
+
|
|
600
|
+
Status: READY FOR DEVELOPMENT ✓
|
|
601
|
+
|
|
602
|
+
Next Steps:
|
|
603
|
+
1. Address warnings (recommended but not blocking):
|
|
604
|
+
- {list warnings from quality review + structural checks}
|
|
605
|
+
|
|
606
|
+
2. Review progress tracker: .ralph/progress.txt
|
|
607
|
+
|
|
608
|
+
3. When ready, launch development:
|
|
609
|
+
|
|
610
|
+
/ralph-loop
|
|
611
|
+
|
|
612
|
+
Note: Use /ralph-loop -r ONLY to resume an interrupted loop.
|
|
613
|
+
After a fresh /business-analyse, always use /ralph-loop (without -r).
|
|
614
|
+
|
|
615
|
+
4. Ralph-loop will:
|
|
616
|
+
- Process modules in topological order: [{module list}]
|
|
617
|
+
- Generate {n} files across 7 layers
|
|
618
|
+
- Execute {n} tasks tracked in progress.txt
|
|
619
|
+
|
|
620
|
+
═══════════════════════════════════════════════════════════════
|
|
621
|
+
```
|
|
622
|
+
|
|
623
|
+
**IF readiness score < 100% OR quality = C/D (critical checks failed):**
|
|
624
|
+
|
|
625
|
+
```
|
|
626
|
+
═══════════════════════════════════════════════════════════════
|
|
627
|
+
RALPH READINESS CHECK - FAILED
|
|
628
|
+
═══════════════════════════════════════════════════════════════
|
|
629
|
+
|
|
630
|
+
Status: NOT READY FOR DEVELOPMENT ✗
|
|
631
|
+
|
|
632
|
+
{IF quality = C/D:}
|
|
633
|
+
Quality Issues Found:
|
|
634
|
+
✗ ULTRATHINK quality review: {C/D} — {Needs fixes / Major rework}
|
|
635
|
+
- {List critical quality issues from section 0b}
|
|
636
|
+
- Fix: Return to appropriate step (see quality review details above)
|
|
637
|
+
|
|
638
|
+
{IF structural checks failed:}
|
|
639
|
+
Structural Issues Found:
|
|
640
|
+
✗ {check name}: FAIL ({details})
|
|
641
|
+
- {specific issue}
|
|
642
|
+
- Fix: {specific action}
|
|
643
|
+
|
|
644
|
+
Required Actions:
|
|
645
|
+
1. Fix all critical issues listed above
|
|
646
|
+
2. Re-run validation: load step-05c-ralph-readiness.md
|
|
647
|
+
3. Only proceed to /ralph-loop when all checks pass AND quality ≥ B
|
|
648
|
+
|
|
649
|
+
DO NOT PROCEED TO /ralph-loop UNTIL ALL CHECKS PASS
|
|
650
|
+
═══════════════════════════════════════════════════════════════
|
|
651
|
+
```
|
|
652
|
+
|
|
653
|
+
---
|
|
654
|
+
|
|
655
|
+
## SELF-VERIFICATION
|
|
656
|
+
|
|
657
|
+
Before displaying final report, VERIFY:
|
|
658
|
+
|
|
659
|
+
1. **ULTRATHINK quality review executed** (6 dimensions analyzed)
|
|
660
|
+
2. **Quality verdict displayed** with scores per dimension
|
|
661
|
+
3. **ALL 8 structural validation checks executed** (never skip)
|
|
662
|
+
4. **Results clearly marked** (PASS/FAIL/WARNING)
|
|
663
|
+
5. **Actionable fixes provided** for all failures
|
|
664
|
+
6. **Readiness score calculated** correctly
|
|
665
|
+
7. **Next steps displayed** with exact commands
|
|
666
|
+
8. **Blocking errors prevent progression** (no false positives)
|
|
667
|
+
|
|
668
|
+
---
|
|
669
|
+
|
|
670
|
+
## SUCCESS CRITERIA
|
|
671
|
+
|
|
672
|
+
- ULTRATHINK quality review completed with overall score A or B
|
|
673
|
+
- All 8 critical validation checks executed (quality review + 7 structural)
|
|
674
|
+
- Clear PASS/FAIL/WARNING status for each check
|
|
675
|
+
- Readiness score displayed (100% = all critical checks passed)
|
|
676
|
+
- Actionable fix instructions for all failures
|
|
677
|
+
- User can proceed to /ralph-loop only if readiness score = 100% AND quality ≥ B
|
|
678
|
+
- Warnings documented but not blocking
|
|
679
|
+
|
|
680
|
+
---
|
|
681
|
+
|
|
682
|
+
## NOTES
|
|
683
|
+
|
|
684
|
+
**Why this gate matters:**
|
|
685
|
+
|
|
686
|
+
- **ULTRATHINK catches semantic issues** that structural checks miss (orphan UCs, incoherent permissions, missing UI flows)
|
|
687
|
+
- Prevents incomplete handoffs from reaching development
|
|
688
|
+
- Catches structural issues early (PRD validation)
|
|
689
|
+
- Verifies cross-module integrity before code generation
|
|
690
|
+
- Ensures ralph-loop has all required data to proceed
|
|
691
|
+
- Reduces failed development attempts and rework
|
|
692
|
+
|
|
693
|
+
**When to run this gate:**
|
|
694
|
+
|
|
695
|
+
- **Automatically at end of step-05b-deploy.md (MANDATORY)**
|
|
696
|
+
- After fixing any handoff issues to re-validate
|
|
697
|
+
|
|
698
|
+
**What happens if checks fail:**
|
|
699
|
+
|
|
700
|
+
- Development is BLOCKED until issues are fixed
|
|
701
|
+
- User returns to appropriate step to fix issues
|
|
702
|
+
- Re-run validation after fixes
|
|
703
|
+
- Only proceed when all critical checks pass AND quality review passes
|