@atlashub/smartstack-cli 4.80.0 → 5.0.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/agents.html +124 -585
- package/.documentation/ba-develop.html +852 -0
- package/.documentation/ba-skills.html +465 -0
- package/.documentation/business-analyse.html +385 -1570
- package/.documentation/cli-commands.html +162 -799
- package/.documentation/commands.html +902 -1338
- package/.documentation/css/styles.css +34 -1
- package/.documentation/efcore.html +161 -2599
- package/.documentation/gitflow.html +62 -105
- package/.documentation/hooks.html +94 -343
- package/.documentation/index.html +116 -385
- package/.documentation/init.html +217 -1566
- package/.documentation/installation.html +121 -1470
- package/.documentation/license.html +90 -450
- package/.documentation/ralph-loop.html +105 -602
- package/dist/index.js +9421 -79036
- package/dist/index.js.map +1 -1
- package/package.json +5 -20
- package/scripts/generate-docs/README.md +87 -0
- package/scripts/generate-docs/index.ts +175 -0
- package/scripts/generate-docs/lib/context-builder.ts +81 -0
- package/scripts/generate-docs/lib/handlebars-setup.ts +162 -0
- package/scripts/generate-docs/lib/markdown-parser.ts +86 -0
- package/scripts/generate-docs/lib/sidebar-builder.ts +80 -0
- package/scripts/generate-docs/lib/skill-parser.ts +171 -0
- package/scripts/generate-docs/lib/stats.ts +32 -0
- package/scripts/generate-docs/lib/version.ts +17 -0
- package/scripts/generate-docs/templates/layout.hbs +33 -0
- package/scripts/generate-docs/templates/pages/_generic.hbs +12 -0
- package/scripts/generate-docs/templates/pages/ba-develop.hbs +10 -0
- package/scripts/generate-docs/templates/pages/ba-skills.hbs +8 -0
- package/scripts/generate-docs/templates/pages/business-analyse.hbs +1 -0
- package/scripts/generate-docs/templates/pages/commands.hbs +13 -0
- package/scripts/generate-docs/templates/pages/gitflow.hbs +2164 -0
- package/scripts/generate-docs/templates/pages/index.hbs +5 -0
- package/scripts/generate-docs/templates/partials/breadcrumb.hbs +6 -0
- package/scripts/generate-docs/templates/partials/header.hbs +22 -0
- package/scripts/generate-docs/templates/partials/sidebar.hbs +32 -0
- package/scripts/generate-docs/templates/partials/skill-card.hbs +22 -0
- package/scripts/generate-docs/templates/partials/skill-grid.hbs +5 -0
- package/scripts/generate-docs/templates/partials/skill-table.hbs +18 -0
- package/scripts/generate-docs/templates/partials/stats-bar.hbs +20 -0
- package/scripts/test-migration-program-cs.mts +94 -0
- package/templates/agents/explore-codebase.md +2 -3
- package/templates/agents/explore-docs.md +5 -5
- package/templates/hooks/hooks.json +0 -9
- package/templates/project/Program.cs.template +17 -5
- package/templates/project/appsettings.json.template +208 -195
- package/templates/project/claude-md/api.CLAUDE.md.template +27 -2
- package/templates/project/patch-smartstack-theme.cjs.template +42 -0
- package/templates/scripts/statusline/README.md +47 -0
- package/templates/scripts/statusline/index.js +224 -0
- package/templates/skills/CLAUDE.md +235 -0
- package/templates/skills/ba-develop/SKILL.md +310 -0
- package/templates/skills/ba-develop/cli/compute-page-diff/__tests__/compute-page-diff.test.ts +177 -0
- package/templates/skills/ba-develop/cli/compute-page-diff/compute-diff.ts +51 -0
- package/templates/skills/ba-develop/cli/compute-page-diff/disk-drift.ts +55 -0
- package/templates/skills/ba-develop/cli/compute-page-diff/index.ts +89 -0
- package/templates/skills/ba-develop/cli/compute-page-diff/scan-pagespecs.ts +115 -0
- package/templates/skills/ba-develop/cli/compute-page-diff/types.ts +63 -0
- package/templates/skills/ba-develop/cli/compute-page-diff/validate.ts +20 -0
- package/templates/skills/ba-develop/cli/update-snapshot/__tests__/update-snapshot.test.ts +73 -0
- package/templates/skills/ba-develop/cli/update-snapshot/execute.ts +24 -0
- package/templates/skills/ba-develop/cli/update-snapshot/index.ts +61 -0
- package/templates/skills/ba-develop/cli/update-snapshot/types.ts +40 -0
- package/templates/skills/ba-develop/cli/update-snapshot/validate.ts +17 -0
- package/templates/skills/ba-develop/references/anti-patterns.md +101 -0
- package/templates/skills/ba-develop/references/auto-healing.md +191 -0
- package/templates/skills/ba-develop/references/commit-checkpoints.md +79 -0
- package/templates/skills/ba-develop/references/gates.md +380 -0
- package/templates/skills/ba-develop/references/output-contract.md +95 -0
- package/templates/skills/ba-develop/references/phases-detail.md +592 -0
- package/templates/skills/ba-develop-plan/SKILL.md +239 -0
- package/templates/skills/ba-develop-plan/cli/preflight-develop-plan/__tests__/validate.test.ts +225 -0
- package/templates/skills/ba-develop-plan/cli/preflight-develop-plan/index.ts +102 -0
- package/templates/skills/ba-develop-plan/cli/preflight-develop-plan/types.ts +121 -0
- package/templates/skills/ba-develop-plan/cli/preflight-develop-plan/validate.ts +261 -0
- package/templates/skills/business-analyse/_workflow/README.md +34 -0
- package/templates/skills/business-analyse/_workflow/ba-files.md +174 -0
- package/templates/skills/business-analyse/_workflow/code-discipline.md +104 -0
- package/templates/skills/business-analyse/_workflow/communication.md +63 -0
- package/templates/skills/business-analyse/_workflow/completeAuto-discipline.md +79 -0
- package/templates/skills/business-analyse/_workflow/context-documents.md +45 -0
- package/templates/skills/business-analyse/_workflow/doc-templates.md +318 -0
- package/templates/skills/business-analyse/audit-actors/SKILL.md +97 -0
- package/templates/skills/business-analyse/audit-cross-dimension/SKILL.md +127 -0
- package/templates/skills/business-analyse/audit-cross-ref-code/SKILL.md +119 -0
- package/templates/skills/business-analyse/audit-data-model/SKILL.md +343 -0
- package/templates/skills/business-analyse/audit-menu/SKILL.md +97 -0
- package/templates/skills/business-analyse/audit-prd/SKILL.md +479 -0
- package/templates/skills/business-analyse/audit-pre-dev/SKILL.md +135 -0
- package/templates/skills/business-analyse/audit-rbac/SKILL.md +93 -0
- package/templates/skills/business-analyse/audit-rules/SKILL.md +182 -0
- package/templates/skills/business-analyse/audit-screens/SKILL.md +169 -0
- package/templates/skills/business-analyse/audit-sections/SKILL.md +174 -0
- package/templates/skills/business-analyse/audit-use-cases/SKILL.md +245 -0
- package/templates/skills/business-analyse/create-actors/SKILL.md +129 -0
- package/templates/skills/business-analyse/create-ba-order/SKILL.md +182 -0
- package/templates/skills/business-analyse/create-ba-order/cli/create-ba-order/__tests__/generate.test.ts +151 -0
- package/templates/skills/business-analyse/create-ba-order/cli/create-ba-order/__tests__/graph.test.ts +173 -0
- package/templates/skills/business-analyse/create-ba-order/cli/create-ba-order/generate.ts +273 -0
- package/templates/skills/business-analyse/create-ba-order/cli/create-ba-order/graph.ts +193 -0
- package/templates/skills/business-analyse/create-ba-order/cli/create-ba-order/index.ts +108 -0
- package/templates/skills/business-analyse/create-ba-order/cli/create-ba-order/types.ts +106 -0
- package/templates/skills/business-analyse/create-ba-order/cli/create-ba-order/validate.ts +79 -0
- package/templates/skills/business-analyse/create-business-rules/SKILL.md +302 -0
- package/templates/skills/business-analyse/create-business-rules/levels/access-rules.md +105 -0
- package/templates/skills/business-analyse/create-business-rules/levels/elaborate.md +193 -0
- package/templates/skills/business-analyse/create-business-rules/levels/identify.md +157 -0
- package/templates/skills/business-analyse/create-business-rules/levels/link.md +86 -0
- package/templates/skills/business-analyse/create-data-model/SKILL.md +319 -0
- package/templates/skills/business-analyse/create-data-model/levels/attributes.md +130 -0
- package/templates/skills/business-analyse/create-data-model/levels/identify.md +100 -0
- package/templates/skills/business-analyse/create-data-model/levels/relationships.md +97 -0
- package/templates/skills/business-analyse/create-menu/SKILL.md +191 -0
- package/templates/skills/business-analyse/create-menu/levels/applications.md +85 -0
- package/templates/skills/business-analyse/create-menu/levels/modules.md +81 -0
- package/templates/skills/business-analyse/create-menu/levels/resources.md +75 -0
- package/templates/skills/business-analyse/create-menu/levels/sections.md +82 -0
- package/templates/skills/business-analyse/create-plan-development/SKILL.md +93 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/__tests__/graph.test.ts +271 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/__tests__/parse.test.ts +177 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/generate.ts +317 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/graph.ts +233 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/index.ts +106 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/parse.ts +346 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/types.ts +160 -0
- package/templates/skills/business-analyse/create-plan-development/cli/create-plan-development/validate.ts +118 -0
- package/templates/skills/business-analyse/create-prd/SKILL.md +228 -0
- package/templates/skills/business-analyse/create-rbac/SKILL.md +255 -0
- package/templates/skills/business-analyse/create-rbac/levels/detail.md +86 -0
- package/templates/skills/business-analyse/create-rbac/levels/discovery.md +63 -0
- package/templates/skills/business-analyse/create-rbac/levels/review.md +66 -0
- package/templates/skills/business-analyse/create-screen/SKILL.md +386 -0
- package/templates/skills/business-analyse/create-screen/levels/dashboard-screens.md +94 -0
- package/templates/skills/business-analyse/create-screen/levels/form-screens.md +142 -0
- package/templates/skills/business-analyse/create-screen/levels/home-screens.md +151 -0
- package/templates/skills/business-analyse/create-screen/levels/kanban-screens.md +86 -0
- package/templates/skills/business-analyse/create-screen/levels/list-screens.md +134 -0
- package/templates/skills/business-analyse/create-screen/references/post-check.md +101 -0
- package/templates/skills/business-analyse/create-screen/references/react-templates.md +252 -0
- package/templates/skills/business-analyse/create-screen/references/smartcomponents.md +419 -0
- package/templates/skills/business-analyse/create-screen/references/type-mapping.md +150 -0
- package/templates/skills/business-analyse/create-use-case/SKILL.md +347 -0
- package/templates/skills/business-analyse/create-use-case/levels/detail.md +136 -0
- package/templates/skills/business-analyse/create-use-case/levels/discovery.md +110 -0
- package/templates/skills/business-analyse/loop/SKILL.md +401 -0
- package/templates/skills/business-analyse/modeling-detail/SKILL.md +241 -0
- package/templates/skills/business-analyse/modeling-inventory/SKILL.md +174 -0
- package/templates/skills/business-analyse/reconcile-menu/SKILL.md +180 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/__tests__/clean.test.ts +266 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/__tests__/detect.test.ts +231 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/__tests__/scan.test.ts +154 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/clean.ts +319 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/detect.ts +256 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/index.ts +126 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/scan.ts +175 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/types.ts +136 -0
- package/templates/skills/business-analyse/reconcile-menu/cli/reconcile-menu/validate.ts +32 -0
- package/templates/skills/check-version/SKILL.md +196 -196
- package/templates/skills/cli-app-sync/SKILL.md +9 -9
- package/templates/skills/cli-app-sync/references/comparison-map.md +4 -4
- package/templates/skills/cli-app-sync/references/diff-entities.md +6 -6
- package/templates/skills/conventions/SKILL.md +64 -0
- package/templates/skills/dev-start/SKILL.md +190 -237
- package/templates/skills/development/SKILL.md +87 -0
- package/templates/skills/development/audit/SKILL.md +156 -0
- package/templates/skills/development/audit/routing-dynamic/SKILL.md +196 -0
- package/templates/skills/development/audit-dev-api/SKILL.md +331 -0
- package/templates/skills/development/audit-dev-api/cli/audit-dev-api/__tests__/end-to-end.test.ts +364 -0
- package/templates/skills/development/audit-dev-api/cli/audit-dev-api/audit.ts +646 -0
- package/templates/skills/development/audit-dev-api/cli/audit-dev-api/index.ts +140 -0
- package/templates/skills/development/audit-dev-api/cli/audit-dev-api/types.ts +158 -0
- package/templates/skills/development/audit-dev-api/cli/audit-dev-api/validate.ts +45 -0
- package/templates/skills/development/audit-dev-core/SKILL.md +182 -0
- package/templates/skills/development/audit-dev-data/SKILL.md +195 -0
- package/templates/skills/development/audit-dev-domain/SKILL.md +184 -0
- package/templates/skills/development/audit-dev-frontend/SKILL.md +530 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-actions-alignment/__tests__/end-to-end.test.ts +202 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-actions-alignment/apply.ts +31 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-actions-alignment/audit.ts +734 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-actions-alignment/index.ts +125 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-actions-alignment/types.ts +165 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-actions-alignment/validate.ts +36 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-frontend/__tests__/dev-ui-022.test.ts +193 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-frontend/apply.ts +374 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-frontend/audit.ts +1126 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-frontend/index.ts +141 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-frontend/types.ts +218 -0
- package/templates/skills/development/audit-dev-frontend/cli/audit-dev-frontend/validate.ts +80 -0
- package/templates/skills/development/audit-dev-tests/SKILL.md +82 -0
- package/templates/skills/development/audit-dev-tests/cli/audit-dev-tests/__tests__/audit.test.ts +220 -0
- package/templates/skills/development/audit-dev-tests/cli/audit-dev-tests/audit.ts +185 -0
- package/templates/skills/development/audit-dev-tests/cli/audit-dev-tests/index.ts +84 -0
- package/templates/skills/development/audit-dev-tests/cli/audit-dev-tests/types.ts +48 -0
- package/templates/skills/development/audit-dev-tests/cli/audit-dev-tests/validate.ts +36 -0
- package/templates/skills/development/audit-dev-wire/SKILL.md +144 -0
- package/templates/skills/development/audit-dev-wire/cli/audit-dev-wire/__tests__/audit.test.ts +171 -0
- package/templates/skills/development/audit-dev-wire/cli/audit-dev-wire/audit.ts +307 -0
- package/templates/skills/development/audit-dev-wire/cli/audit-dev-wire/index.ts +139 -0
- package/templates/skills/development/audit-dev-wire/cli/audit-dev-wire/types.ts +110 -0
- package/templates/skills/development/audit-dev-wire/cli/audit-dev-wire/validate.ts +16 -0
- package/templates/skills/development/backend/business-layer/SKILL.md +255 -0
- package/templates/skills/development/backend/business-layer/cli/scaffold-business/__tests__/generate.test.ts +254 -0
- package/templates/skills/development/backend/business-layer/cli/scaffold-business/generate.ts +842 -0
- package/templates/skills/development/backend/business-layer/cli/scaffold-business/index.ts +56 -0
- package/templates/skills/development/backend/business-layer/cli/scaffold-business/types.ts +112 -0
- package/templates/skills/development/backend/business-layer/cli/scaffold-business/validate.ts +24 -0
- package/templates/skills/development/backend/controller/SKILL.md +154 -0
- package/templates/skills/development/backend/controller/cli/scaffold-controller/__tests__/generate.test.ts +345 -0
- package/templates/skills/development/backend/controller/cli/scaffold-controller/generate.ts +280 -0
- package/templates/skills/development/backend/controller/cli/scaffold-controller/index.ts +49 -0
- package/templates/skills/development/backend/controller/cli/scaffold-controller/types.ts +72 -0
- package/templates/skills/development/backend/controller/cli/scaffold-controller/validate.ts +14 -0
- package/templates/skills/development/backend/core-seed/SKILL.md +177 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/__tests__/build-spec.test.ts +163 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/__tests__/generate.test.ts +330 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/__tests__/validate.test.ts +126 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/build-spec.ts +287 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/generate.ts +826 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/index.ts +188 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/types.ts +163 -0
- package/templates/skills/development/backend/core-seed/cli/scaffold-core-seed/validate.ts +129 -0
- package/templates/skills/development/backend/data-layer/SKILL.md +163 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-entity/__tests__/generate.test.ts +155 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-entity/generate.ts +232 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-entity/index.ts +34 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-entity/types.ts +60 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-entity/validate.ts +42 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-migration/execute.ts +13 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-migration/index.ts +25 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-migration/types.ts +11 -0
- package/templates/skills/development/backend/data-layer/cli/scaffold-migration/validate.ts +9 -0
- package/templates/skills/development/backend/screen-controller/SKILL.md +169 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/__tests__/generate.test.ts +329 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/__tests__/hub-views.test.ts +105 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/__tests__/parse-pagespec.test.ts +137 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/generate.ts +437 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/index.ts +108 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/parse-pagespec.ts +104 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/types.ts +101 -0
- package/templates/skills/development/backend/screen-controller/cli/scaffold-screen-controller/validate.ts +26 -0
- package/templates/skills/development/backend/seed-data/SKILL.md +91 -0
- package/templates/skills/development/backend/seed-data/cli/scaffold-seed/generate.ts +471 -0
- package/templates/skills/development/backend/seed-data/cli/scaffold-seed/index.ts +74 -0
- package/templates/skills/development/backend/seed-data/cli/scaffold-seed/types.ts +104 -0
- package/templates/skills/development/backend/seed-data/cli/scaffold-seed/validate.ts +63 -0
- package/templates/skills/development/backend/structure/SKILL.md +47 -0
- package/templates/skills/development/debug/SKILL.md +62 -0
- package/templates/skills/development/debug/audit-bug/SKILL.md +185 -0
- package/templates/skills/development/debug/backend/SKILL.md +114 -0
- package/templates/skills/development/debug/discuss-bug/SKILL.md +193 -0
- package/templates/skills/development/debug/fix-bug/SKILL.md +172 -0
- package/templates/skills/development/debug/frontend/SKILL.md +215 -0
- package/templates/skills/development/frontend/api-client/SKILL.md +158 -0
- package/templates/skills/development/frontend/api-client/cli/scaffold-api-client/__tests__/generate.test.ts +1180 -0
- package/templates/skills/development/frontend/api-client/cli/scaffold-api-client/__tests__/screen-strata-contract.test.ts +261 -0
- package/templates/skills/development/frontend/api-client/cli/scaffold-api-client/__tests__/url-parity.test.ts +201 -0
- package/templates/skills/development/frontend/api-client/cli/scaffold-api-client/generate.ts +875 -0
- package/templates/skills/development/frontend/api-client/cli/scaffold-api-client/index.ts +36 -0
- package/templates/skills/development/frontend/api-client/cli/scaffold-api-client/types.ts +251 -0
- package/templates/skills/development/frontend/api-client/cli/scaffold-api-client/validate.ts +10 -0
- package/templates/skills/development/frontend/auth/SKILL.md +77 -0
- package/templates/skills/development/frontend/auth/cli/scaffold-frontend-auth/generate.ts +306 -0
- package/templates/skills/development/frontend/auth/cli/scaffold-frontend-auth/index.ts +179 -0
- package/templates/skills/development/frontend/auth/cli/scaffold-frontend-auth/types.ts +22 -0
- package/templates/skills/development/frontend/auth/cli/scaffold-frontend-auth/validate.ts +37 -0
- package/templates/skills/development/frontend/component/SKILL.md +347 -0
- package/templates/skills/development/frontend/component/cli/scaffold-component/__tests__/generate.test.ts +1237 -0
- package/templates/skills/development/frontend/component/cli/scaffold-component/generate.ts +1923 -0
- package/templates/skills/development/frontend/component/cli/scaffold-component/index.ts +155 -0
- package/templates/skills/development/frontend/component/cli/scaffold-component/types.ts +290 -0
- package/templates/skills/development/frontend/component/cli/scaffold-component/validate.ts +16 -0
- package/templates/skills/development/frontend/component/cli/validate-page/__tests__/execute.test.ts +231 -0
- package/templates/skills/development/frontend/component/cli/validate-page/execute.ts +598 -0
- package/templates/skills/development/frontend/component/cli/validate-page/index.ts +88 -0
- package/templates/skills/development/frontend/component/cli/validate-page/types.ts +58 -0
- package/templates/skills/development/frontend/component/cli/validate-page/validate.ts +28 -0
- package/templates/skills/development/frontend/component/patterns/README.md +42 -0
- package/templates/skills/development/frontend/component/patterns/detail-page.md +133 -0
- package/templates/skills/development/frontend/component/patterns/entity-card.md +148 -0
- package/templates/skills/development/frontend/component/patterns/form-page.md +191 -0
- package/templates/skills/development/frontend/component/patterns/kanban-board.md +195 -0
- package/templates/skills/development/frontend/component/patterns/list-page.md +175 -0
- package/templates/skills/development/frontend/extension-config/SKILL.md +108 -0
- package/templates/skills/development/frontend/extension-config/cli/scaffold-extension-config/generate.ts +64 -0
- package/templates/skills/development/frontend/extension-config/cli/scaffold-extension-config/index.ts +70 -0
- package/templates/skills/development/frontend/extension-config/cli/scaffold-extension-config/types.ts +27 -0
- package/templates/skills/development/frontend/extension-config/cli/scaffold-extension-config/validate.ts +16 -0
- package/templates/skills/development/frontend/layout/SKILL.md +52 -0
- package/templates/skills/development/frontend/layout/cli/scaffold-layout/__tests__/generate.test.ts +66 -0
- package/templates/skills/development/frontend/layout/cli/scaffold-layout/generate.ts +175 -0
- package/templates/skills/development/frontend/layout/cli/scaffold-layout/index.ts +104 -0
- package/templates/skills/development/frontend/layout/cli/scaffold-layout/types.ts +17 -0
- package/templates/skills/development/frontend/layout/cli/scaffold-layout/validate.ts +37 -0
- package/templates/skills/development/frontend/routes/SKILL.md +152 -0
- package/templates/skills/development/frontend/routes/cli/aggregate-component-registry/generate.ts +216 -0
- package/templates/skills/development/frontend/routes/cli/aggregate-component-registry/index.ts +121 -0
- package/templates/skills/development/frontend/routes/cli/aggregate-component-registry/types.ts +69 -0
- package/templates/skills/development/frontend/routes/cli/aggregate-component-registry/validate.ts +23 -0
- package/templates/skills/development/frontend/routes/cli/scaffold-routes/__tests__/generate.test.ts +292 -0
- package/templates/skills/development/frontend/routes/cli/scaffold-routes/generate.ts +270 -0
- package/templates/skills/development/frontend/routes/cli/scaffold-routes/index.ts +42 -0
- package/templates/skills/development/frontend/routes/cli/scaffold-routes/types.ts +114 -0
- package/templates/skills/development/frontend/routes/cli/scaffold-routes/validate.ts +68 -0
- package/templates/skills/development/frontend/structure/SKILL.md +119 -0
- package/templates/skills/development/frontend/theme/SKILL.md +48 -0
- package/templates/skills/development/frontend/theme/cli/scaffold-theme/__tests__/generate.test.ts +53 -0
- package/templates/skills/development/frontend/theme/cli/scaffold-theme/generate.ts +129 -0
- package/templates/skills/development/frontend/theme/cli/scaffold-theme/index.ts +102 -0
- package/templates/skills/development/frontend/theme/cli/scaffold-theme/types.ts +48 -0
- package/templates/skills/development/frontend/theme/cli/scaffold-theme/validate.ts +37 -0
- package/templates/skills/development/frontend/ui-polish/SKILL.md +192 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/__tests__/r18.test.ts +153 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/__tests__/r19.test.ts +307 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/__tests__/r20.test.ts +167 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/__tests__/shared-scan.test.ts +262 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/apply.ts +580 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/audit.ts +825 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/index.ts +133 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/types.ts +121 -0
- package/templates/skills/development/frontend/ui-polish/cli/ui-polish/validate.ts +73 -0
- package/templates/skills/development/frontend/ui-polish/tokens.json +292 -0
- package/templates/skills/development/frontend/ui-primitives/SKILL.md +88 -0
- package/templates/skills/development/frontend/ui-primitives/cli/scaffold-ui-primitives/__tests__/generate.test.ts +158 -0
- package/templates/skills/development/frontend/ui-primitives/cli/scaffold-ui-primitives/generate.ts +345 -0
- package/templates/skills/development/frontend/ui-primitives/cli/scaffold-ui-primitives/index.ts +142 -0
- package/templates/skills/development/frontend/ui-primitives/cli/scaffold-ui-primitives/types.ts +27 -0
- package/templates/skills/development/frontend/ui-primitives/cli/scaffold-ui-primitives/validate.ts +37 -0
- package/templates/skills/development/run/SKILL.md +61 -0
- package/templates/skills/development/run/backend/SKILL.md +106 -0
- package/templates/skills/development/run/frontend/SKILL.md +116 -0
- package/templates/skills/development/smoke-test/SKILL.md +99 -0
- package/templates/skills/development/smoke-test/cli/run-smoke/execute.ts +424 -0
- package/templates/skills/development/smoke-test/cli/run-smoke/index.ts +75 -0
- package/templates/skills/development/smoke-test/cli/run-smoke/types.ts +100 -0
- package/templates/skills/development/testing/SKILL.md +148 -0
- package/templates/skills/development/testing/cli/scaffold-tests/generate.ts +530 -0
- package/templates/skills/development/testing/cli/scaffold-tests/index.ts +83 -0
- package/templates/skills/development/testing/cli/scaffold-tests/types.ts +51 -0
- package/templates/skills/development/testing/cli/scaffold-tests/validate.ts +33 -0
- package/templates/skills/development/testing/cli/scaffold-tests-from-ac/__tests__/generate.test.ts +188 -0
- package/templates/skills/development/testing/cli/scaffold-tests-from-ac/__tests__/parse-ac.test.ts +191 -0
- package/templates/skills/development/testing/cli/scaffold-tests-from-ac/generate.ts +190 -0
- package/templates/skills/development/testing/cli/scaffold-tests-from-ac/index.ts +138 -0
- package/templates/skills/development/testing/cli/scaffold-tests-from-ac/parse-ac.ts +172 -0
- package/templates/skills/development/testing/cli/scaffold-tests-from-ac/types.ts +104 -0
- package/templates/skills/development/testing/cli/scaffold-tests-from-ac/validate.ts +57 -0
- package/templates/skills/development/testing/cli/test-report/execute.ts +140 -0
- package/templates/skills/development/testing/cli/test-report/index.ts +96 -0
- package/templates/skills/development/testing/cli/test-report/types.ts +52 -0
- package/templates/skills/development/testing/cli/test-report/validate.ts +26 -0
- package/templates/skills/development/testing/fix-build/SKILL.md +81 -0
- package/templates/skills/development/testing/smoke-http/SKILL.md +123 -0
- package/templates/skills/development/testing/smoke-http/cli/smoke-http/execute.ts +129 -0
- package/templates/skills/development/testing/smoke-http/cli/smoke-http/index.ts +113 -0
- package/templates/skills/development/testing/smoke-http/cli/smoke-http/types.ts +62 -0
- package/templates/skills/development/testing/smoke-http/cli/smoke-http/validate.ts +36 -0
- package/templates/skills/development/testing/ui-test/SKILL.md +128 -0
- package/templates/skills/development/testing/ui-test/cli/build-manifest/generate.ts +129 -0
- package/templates/skills/development/testing/ui-test/cli/build-manifest/index.ts +80 -0
- package/templates/skills/development/testing/ui-test/cli/build-manifest/types.ts +72 -0
- package/templates/skills/development/testing/ui-test/cli/build-manifest/validate.ts +44 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/execute.ts +136 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/index.ts +75 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/lib/dev-browser-driver.ts +250 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/templates/delete.js.hbs +83 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/templates/detail.js.hbs +87 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/templates/edit.js.hbs +91 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/templates/form-submit.js.hbs +82 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/templates/list.js.hbs +125 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/templates/permission-negative.js.hbs +65 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/types.ts +57 -0
- package/templates/skills/development/testing/ui-test/cli/run-ui-test/validate.ts +56 -0
- package/templates/skills/documentation/SKILL.md +168 -139
- package/templates/skills/documentation/cli/extract-doc/__tests__/forbidden.test.ts +136 -0
- package/templates/skills/documentation/cli/extract-doc/__tests__/overflow.test.ts +76 -0
- package/templates/skills/documentation/cli/extract-doc/__tests__/required.test.ts +147 -0
- package/templates/skills/documentation/cli/extract-doc/extract.ts +657 -0
- package/templates/skills/documentation/cli/extract-doc/index.ts +102 -0
- package/templates/skills/documentation/cli/extract-doc/types.ts +133 -0
- package/templates/skills/documentation/cli/extract-doc/validate.ts +35 -0
- package/templates/skills/documentation/cli/scaffold-doc/generate.ts +198 -0
- package/templates/skills/documentation/cli/scaffold-doc/index.ts +61 -0
- package/templates/skills/documentation/cli/scaffold-doc/types.ts +72 -0
- package/templates/skills/documentation/cli/scaffold-doc/validate.ts +33 -0
- package/templates/skills/documentation/data-schema.md +18 -38
- package/templates/skills/documentation/steps/step-01-scan.md +59 -113
- package/templates/skills/documentation/steps/step-02-generate.md +158 -231
- package/templates/skills/documentation/steps/step-03-validate.md +101 -280
- package/templates/skills/documentation/templates.md +403 -92
- package/templates/skills/efcore/SKILL.md +88 -308
- package/templates/skills/efcore/_shared.md +140 -0
- package/templates/skills/efcore/agents/create.md +69 -0
- package/templates/skills/efcore/agents/db-update.md +58 -0
- package/templates/skills/efcore/agents/list.md +35 -0
- package/templates/skills/efcore/agents/rebase-snapshot.md +50 -0
- package/templates/skills/efcore/agents/recreate-db.md +78 -0
- package/templates/skills/efcore/agents/squash.md +78 -0
- package/templates/skills/efcore/agents/status.md +35 -0
- package/templates/skills/efcore/cli/create/execute.ts +164 -0
- package/templates/skills/efcore/cli/create/index.ts +51 -0
- package/templates/skills/efcore/cli/create/types.ts +35 -0
- package/templates/skills/efcore/cli/create/validate.ts +29 -0
- package/templates/skills/efcore/cli/lib/detect-dbcontexts.ts +195 -0
- package/templates/skills/efcore/cli/lib/ef-runner.ts +144 -0
- package/templates/skills/efcore/cli/lib/migration-name.ts +56 -0
- package/templates/skills/efcore/cli/lib/parse-csproj-version.ts +45 -0
- package/templates/skills/efcore/cli/list/execute.ts +83 -0
- package/templates/skills/efcore/cli/list/index.ts +60 -0
- package/templates/skills/efcore/cli/list/types.ts +46 -0
- package/templates/skills/efcore/cli/list/validate.ts +20 -0
- package/templates/skills/efcore/cli/rebase-snapshot/execute.ts +21 -0
- package/templates/skills/efcore/cli/rebase-snapshot/index.ts +53 -0
- package/templates/skills/efcore/cli/rebase-snapshot/types.ts +20 -0
- package/templates/skills/efcore/cli/rebase-snapshot/validate.ts +25 -0
- package/templates/skills/efcore/cli/squash/execute.ts +298 -0
- package/templates/skills/efcore/cli/squash/index.ts +57 -0
- package/templates/skills/efcore/cli/squash/types.ts +38 -0
- package/templates/skills/efcore/cli/squash/validate.ts +30 -0
- package/templates/skills/efcore/cli/status/execute.ts +152 -0
- package/templates/skills/efcore/cli/status/index.ts +45 -0
- package/templates/skills/efcore/cli/status/types.ts +32 -0
- package/templates/skills/efcore/cli/status/validate.ts +20 -0
- package/templates/skills/external/context7/SKILL.md +121 -0
- package/templates/skills/external/dev-browser/SKILL.md +134 -0
- package/templates/skills/gitflow/SKILL.md +139 -392
- package/templates/skills/gitflow/_shared.md +24 -620
- package/templates/skills/gitflow/agents/abort.md +47 -0
- package/templates/skills/gitflow/agents/cleanup.md +50 -0
- package/templates/skills/gitflow/agents/commit.md +41 -0
- package/templates/skills/gitflow/agents/finish.md +47 -0
- package/templates/skills/gitflow/agents/init.md +41 -0
- package/templates/skills/gitflow/agents/merge.md +44 -0
- package/templates/skills/gitflow/agents/pr.md +39 -0
- package/templates/skills/gitflow/agents/start.md +42 -0
- package/templates/skills/gitflow/agents/status.md +39 -0
- package/templates/skills/gitflow/agents/sync.md +38 -0
- package/templates/skills/gitflow/cli/abort/execute.ts +61 -0
- package/templates/skills/gitflow/cli/abort/index.ts +116 -0
- package/templates/skills/gitflow/cli/abort/types.ts +21 -0
- package/templates/skills/gitflow/cli/abort/validate.ts +38 -0
- package/templates/skills/gitflow/cli/cleanup/execute.ts +107 -0
- package/templates/skills/gitflow/cli/cleanup/index.ts +122 -0
- package/templates/skills/gitflow/cli/cleanup/types.ts +26 -0
- package/templates/skills/gitflow/cli/cleanup/validate.ts +33 -0
- package/templates/skills/gitflow/cli/commit/execute.ts +146 -0
- package/templates/skills/gitflow/cli/commit/index.ts +77 -0
- package/templates/skills/gitflow/cli/commit/types.ts +36 -0
- package/templates/skills/gitflow/cli/commit/validate.ts +38 -0
- package/templates/skills/gitflow/cli/finish/execute.ts +127 -0
- package/templates/skills/gitflow/cli/finish/index.ts +106 -0
- package/templates/skills/gitflow/cli/finish/types.ts +25 -0
- package/templates/skills/gitflow/cli/finish/validate.ts +44 -0
- package/templates/skills/gitflow/cli/generate-msg/execute.ts +51 -0
- package/templates/skills/gitflow/cli/generate-msg/index.ts +73 -0
- package/templates/skills/gitflow/cli/generate-msg/types.ts +37 -0
- package/templates/skills/gitflow/cli/generate-msg/validate.ts +42 -0
- package/templates/skills/gitflow/cli/init/execute.ts +186 -0
- package/templates/skills/gitflow/cli/init/index.ts +127 -0
- package/templates/skills/gitflow/cli/init/types.ts +63 -0
- package/templates/skills/gitflow/cli/init/validate.ts +56 -0
- package/templates/skills/gitflow/cli/lib/branch.ts +83 -0
- package/templates/skills/gitflow/cli/lib/config.ts +149 -0
- package/templates/skills/gitflow/cli/lib/efcore.ts +136 -0
- package/templates/skills/gitflow/cli/lib/git.ts +212 -0
- package/templates/skills/gitflow/cli/lib/output.ts +49 -0
- package/templates/skills/gitflow/cli/lib/paths.ts +54 -0
- package/templates/skills/gitflow/cli/lib/platform.ts +44 -0
- package/templates/skills/gitflow/cli/lib/provider.ts +147 -0
- package/templates/skills/gitflow/cli/lib/types.ts +189 -0
- package/templates/skills/gitflow/cli/lib/version.ts +152 -0
- package/templates/skills/gitflow/cli/lib/worktree.ts +170 -0
- package/templates/skills/gitflow/cli/merge/execute.ts +93 -0
- package/templates/skills/gitflow/cli/merge/index.ts +109 -0
- package/templates/skills/gitflow/cli/merge/types.ts +24 -0
- package/templates/skills/gitflow/cli/merge/validate.ts +33 -0
- package/templates/skills/gitflow/cli/pr/execute.ts +131 -0
- package/templates/skills/gitflow/cli/pr/index.ts +115 -0
- package/templates/skills/gitflow/cli/pr/types.ts +27 -0
- package/templates/skills/gitflow/cli/pr/validate.ts +27 -0
- package/templates/skills/gitflow/cli/start/execute.ts +98 -0
- package/templates/skills/gitflow/cli/start/index.ts +75 -0
- package/templates/skills/gitflow/cli/start/types.ts +26 -0
- package/templates/skills/gitflow/cli/start/validate.ts +47 -0
- package/templates/skills/gitflow/cli/status/execute.ts +251 -0
- package/templates/skills/gitflow/cli/status/index.ts +154 -0
- package/templates/skills/gitflow/cli/status/types.ts +75 -0
- package/templates/skills/gitflow/cli/status/validate.ts +38 -0
- package/templates/skills/gitflow/cli/sync/execute.ts +84 -0
- package/templates/skills/gitflow/cli/sync/index.ts +75 -0
- package/templates/skills/gitflow/cli/sync/types.ts +25 -0
- package/templates/skills/gitflow/cli/sync/validate.ts +34 -0
- package/templates/skills/gitflow/commit-message.md +46 -0
- package/templates/skills/init/SKILL.md +54 -0
- package/templates/skills/lib/__tests__/canonical-hash.test.ts +45 -0
- package/templates/skills/lib/__tests__/page-spec-actions.test.ts +232 -0
- package/templates/skills/lib/canonical-hash.ts +40 -0
- package/templates/skills/lib/detector.ts +243 -0
- package/templates/skills/lib/dotnet.ts +238 -0
- package/templates/skills/lib/frontend-fixers.ts +151 -0
- package/templates/skills/lib/fs.ts +238 -0
- package/templates/skills/lib/git.ts +134 -0
- package/templates/skills/lib/graph.ts +138 -0
- package/templates/skills/lib/navroute-parser.ts +51 -0
- package/templates/skills/lib/output.ts +117 -0
- package/templates/skills/lib/page-spec-actions.ts +350 -0
- package/templates/skills/lib/skill-slug.ts +121 -0
- package/templates/skills/lib/string-utils.ts +140 -0
- package/templates/skills/lib/template-loader.ts +115 -0
- package/templates/skills/lib/url-conventions.ts +151 -0
- package/templates/skills/package.json +5 -0
- package/templates/skills/quick-search/SKILL.md +99 -99
- package/templates/skills/review/SKILL.md +56 -0
- package/templates/skills/smoke-generation/SKILL.md +18 -16
- package/templates/skills/ui-components/SKILL.md +136 -457
- package/templates/skills/upgrade/SKILL.md +36 -0
- package/templates/skills/utils/SKILL.md +45 -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-feature/SKILL.md +102 -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/validation/conventions/SKILL.md +193 -0
- package/templates/skills/validation/conventions/cli/validate-conventions/execute.ts +368 -0
- package/templates/skills/validation/conventions/cli/validate-conventions/index.ts +67 -0
- package/templates/skills/validation/conventions/cli/validate-conventions/types.ts +91 -0
- package/templates/skills/validation/conventions/cli/validate-conventions/validate.ts +36 -0
- package/templates/skills/validation/cross-validate/SKILL.md +83 -0
- package/templates/skills/validation/cross-validate/cli/execute.ts +576 -0
- package/templates/skills/validation/cross-validate/cli/index.ts +87 -0
- package/templates/skills/validation/cross-validate/cli/types.ts +85 -0
- package/templates/skills/validation/cross-validate/cli/validate.ts +54 -0
- package/templates/skills/validation/eslint/SKILL.md +65 -0
- package/templates/skills/validation/eslint/cli/execute.ts +413 -0
- package/templates/skills/validation/eslint/cli/index.ts +102 -0
- package/templates/skills/validation/eslint/cli/types.ts +48 -0
- package/templates/skills/validation/eslint/cli/validate.ts +43 -0
- package/templates/skills/validation/project-inventory/SKILL.md +166 -0
- package/templates/skills/validation/project-inventory/cli/project-inventory/execute.ts +397 -0
- package/templates/skills/validation/project-inventory/cli/project-inventory/index.ts +80 -0
- package/templates/skills/validation/project-inventory/cli/project-inventory/types.ts +89 -0
- package/templates/skills/validation/project-inventory/cli/project-inventory/validate.ts +35 -0
- package/templates/skills/validation/readiness-report/SKILL.md +109 -0
- package/templates/skills/validation/readiness-report/cli/execute.ts +236 -0
- package/templates/skills/validation/readiness-report/cli/index.ts +234 -0
- package/templates/skills/validation/readiness-report/cli/types.ts +61 -0
- package/templates/skills/validation/readiness-report/cli/validate.ts +54 -0
- package/templates/skills/validation/roslyn/SKILL.md +103 -0
- package/templates/skills/validation/roslyn/cli/execute.ts +616 -0
- package/templates/skills/validation/roslyn/cli/index.ts +86 -0
- package/templates/skills/validation/roslyn/cli/types.ts +50 -0
- package/templates/skills/validation/roslyn/cli/validate.ts +43 -0
- package/.documentation/apex.html +0 -649
- package/dist/mcp-entry.mjs +0 -68888
- package/dist/mcp-entry.mjs.map +0 -1
- package/scripts/extract-api-endpoints.ts +0 -325
- package/scripts/extract-business-rules.ts +0 -440
- package/scripts/generate-doc-with-mock-ui.ts +0 -804
- package/templates/agents/ba-reader.md +0 -386
- package/templates/agents/ba-writer.md +0 -810
- package/templates/agents/efcore/migration.md +0 -204
- package/templates/agents/efcore/rebase-snapshot.md +0 -202
- package/templates/agents/efcore/squash.md +0 -269
- package/templates/agents/gitflow/abort.md +0 -45
- package/templates/agents/gitflow/cleanup.md +0 -107
- package/templates/agents/gitflow/commit.md +0 -236
- package/templates/agents/gitflow/exec.md +0 -48
- package/templates/agents/gitflow/finish.md +0 -146
- package/templates/agents/gitflow/init-clone.md +0 -199
- package/templates/agents/gitflow/init-detect.md +0 -137
- package/templates/agents/gitflow/init-validate.md +0 -225
- package/templates/agents/gitflow/init.md +0 -509
- package/templates/agents/gitflow/merge.md +0 -145
- package/templates/agents/gitflow/plan.md +0 -42
- package/templates/agents/gitflow/pr.md +0 -191
- package/templates/agents/gitflow/review.md +0 -49
- package/templates/agents/gitflow/start.md +0 -147
- package/templates/agents/gitflow/status.md +0 -95
- package/templates/agents/mcp-healthcheck.md +0 -163
- package/templates/hooks/docs-drift-check.md +0 -96
- package/templates/hooks/ef-migration-check.md +0 -139
- package/templates/hooks/mcp-check.md +0 -64
- package/templates/hooks/ralph-mcp-logger.sh +0 -46
- package/templates/mcp-scaffolding/component.tsx.hbs +0 -318
- package/templates/mcp-scaffolding/controller.cs.hbs +0 -118
- package/templates/mcp-scaffolding/entity-extension.cs.hbs +0 -239
- package/templates/mcp-scaffolding/frontend/api-client.ts.hbs +0 -117
- package/templates/mcp-scaffolding/frontend/nav-routes.ts.hbs +0 -133
- package/templates/mcp-scaffolding/migrations/seed-roles.cs.hbs +0 -261
- package/templates/mcp-scaffolding/service-extension.cs.hbs +0 -53
- package/templates/mcp-scaffolding/tests/controller.test.cs.hbs +0 -436
- package/templates/mcp-scaffolding/tests/entity.test.cs.hbs +0 -239
- package/templates/mcp-scaffolding/tests/repository.test.cs.hbs +0 -441
- package/templates/mcp-scaffolding/tests/security.test.cs.hbs +0 -442
- package/templates/mcp-scaffolding/tests/service.test.cs.hbs +0 -402
- package/templates/mcp-scaffolding/tests/validator.test.cs.hbs +0 -428
- package/templates/skills/_resources/config-safety.md +0 -61
- package/templates/skills/_resources/context-digest-template.md +0 -53
- package/templates/skills/_resources/doc-context-cache.md +0 -60
- package/templates/skills/_resources/docs-manifest-schema.md +0 -155
- package/templates/skills/_resources/formatting-guide.md +0 -124
- package/templates/skills/_resources/mcp-validate-documentation-spec.md +0 -181
- package/templates/skills/_shared.md +0 -228
- package/templates/skills/admin/SKILL.md +0 -48
- package/templates/skills/ai-prompt/SKILL.md +0 -171
- package/templates/skills/ai-prompt/references/ai-agent-modes.md +0 -89
- package/templates/skills/ai-prompt/references/eval-framework.md +0 -129
- package/templates/skills/ai-prompt/steps/step-00-init.md +0 -47
- package/templates/skills/ai-prompt/steps/step-01-implementation.md +0 -122
- package/templates/skills/apex/SKILL.md +0 -234
- package/templates/skills/apex/_shared.md +0 -197
- package/templates/skills/apex/references/analysis-methods.md +0 -178
- package/templates/skills/apex/references/challenge-questions.md +0 -359
- package/templates/skills/apex/references/checks/architecture-checks.sh +0 -154
- package/templates/skills/apex/references/checks/backend-checks.sh +0 -208
- package/templates/skills/apex/references/checks/frontend-checks.sh +0 -560
- package/templates/skills/apex/references/checks/infrastructure-checks.sh +0 -292
- package/templates/skills/apex/references/checks/security-checks.sh +0 -153
- package/templates/skills/apex/references/checks/seed-checks.sh +0 -610
- package/templates/skills/apex/references/code-generation.md +0 -412
- package/templates/skills/apex/references/core-seed-data.md +0 -1502
- package/templates/skills/apex/references/domain-events-pattern.md +0 -45
- package/templates/skills/apex/references/entity-hooks-pattern.md +0 -68
- package/templates/skills/apex/references/error-classification.md +0 -168
- package/templates/skills/apex/references/frontend-route-wiring-app-tsx.md +0 -91
- package/templates/skills/apex/references/licensing-enforcement.md +0 -52
- package/templates/skills/apex/references/parallel-execution.md +0 -187
- package/templates/skills/apex/references/person-extension-pattern.md +0 -619
- package/templates/skills/apex/references/post-checks.md +0 -162
- package/templates/skills/apex/references/smartstack-api.md +0 -591
- package/templates/skills/apex/references/smartstack-frontend-compliance.md +0 -616
- package/templates/skills/apex/references/smartstack-frontend.md +0 -442
- package/templates/skills/apex/references/smartstack-layers.md +0 -551
- package/templates/skills/apex/steps/step-00-init.md +0 -405
- package/templates/skills/apex/steps/step-01-analyze.md +0 -210
- package/templates/skills/apex/steps/step-02-plan.md +0 -303
- package/templates/skills/apex/steps/step-03-execute.md +0 -194
- package/templates/skills/apex/steps/step-03a-layer0-domain.md +0 -144
- package/templates/skills/apex/steps/step-03b-layer1-seed.md +0 -339
- package/templates/skills/apex/steps/step-03c-layer2-backend.md +0 -401
- package/templates/skills/apex/steps/step-03d-layer3-frontend.md +0 -562
- package/templates/skills/apex/steps/step-03e-layer4-devdata.md +0 -46
- package/templates/skills/apex/steps/step-04-examine.md +0 -404
- package/templates/skills/apex/steps/step-05-deep-review.md +0 -140
- package/templates/skills/apex/steps/step-06-resolve.md +0 -120
- package/templates/skills/apex/steps/step-07-tests.md +0 -271
- package/templates/skills/apex/steps/step-08-run-tests.md +0 -135
- package/templates/skills/apex-verify/SKILL.md +0 -110
- package/templates/skills/apex-verify/references/audit-rules.md +0 -50
- package/templates/skills/apex-verify/steps/step-00-init.md +0 -119
- package/templates/skills/apex-verify/steps/step-01-nav-audit.md +0 -96
- package/templates/skills/apex-verify/steps/step-02-crud-audit.md +0 -127
- package/templates/skills/apex-verify/steps/step-03-perm-audit.md +0 -119
- package/templates/skills/apex-verify/steps/step-04-route-audit.md +0 -98
- package/templates/skills/apex-verify/steps/step-05-report.md +0 -110
- package/templates/skills/application/SKILL.md +0 -241
- package/templates/skills/application/references/application-roles-template.md +0 -228
- package/templates/skills/application/references/backend-controller-hierarchy.md +0 -68
- package/templates/skills/application/references/backend-entity-seeding.md +0 -73
- package/templates/skills/application/references/backend-seeding-and-dto-output.md +0 -83
- package/templates/skills/application/references/backend-table-prefix-mapping.md +0 -80
- package/templates/skills/application/references/backend-verification.md +0 -88
- package/templates/skills/application/references/contexts-cheatsheet.md +0 -86
- package/templates/skills/application/references/extensions-system.md +0 -158
- package/templates/skills/application/references/frontend-i18n-and-output.md +0 -67
- package/templates/skills/application/references/frontend-route-naming.md +0 -123
- package/templates/skills/application/references/frontend-route-wiring-app-tsx.md +0 -91
- package/templates/skills/application/references/frontend-verification.md +0 -158
- package/templates/skills/application/references/init-parameter-detection.md +0 -121
- package/templates/skills/application/references/migration-checklist-troubleshooting.md +0 -88
- package/templates/skills/application/references/nav-fallback-procedure.md +0 -198
- package/templates/skills/application/references/provider-template.md +0 -191
- package/templates/skills/application/references/roles-client-project-handling.md +0 -55
- package/templates/skills/application/references/roles-fallback-procedure.md +0 -144
- package/templates/skills/application/references/smartstack-provider.md +0 -118
- package/templates/skills/application/references/test-coverage-requirements.md +0 -213
- package/templates/skills/application/references/test-frontend.md +0 -73
- package/templates/skills/application/references/test-prerequisites.md +0 -72
- package/templates/skills/application/references/themes-db-driven.md +0 -484
- package/templates/skills/application/steps/step-00-init.md +0 -130
- package/templates/skills/application/steps/step-01-navigation.md +0 -170
- package/templates/skills/application/steps/step-02-permissions.md +0 -196
- package/templates/skills/application/steps/step-03-roles.md +0 -182
- package/templates/skills/application/steps/step-03b-provider.md +0 -134
- package/templates/skills/application/steps/step-04-backend.md +0 -174
- package/templates/skills/application/steps/step-05-frontend.md +0 -189
- package/templates/skills/application/steps/step-06-migration.md +0 -189
- package/templates/skills/application/steps/step-07-tests.md +0 -356
- package/templates/skills/application/steps/step-08-documentation.md +0 -137
- package/templates/skills/application/templates-backend.md +0 -463
- package/templates/skills/application/templates-frontend.md +0 -950
- package/templates/skills/application/templates-i18n.md +0 -520
- package/templates/skills/application/templates-seed.md +0 -1110
- package/templates/skills/audit-route/SKILL.md +0 -107
- package/templates/skills/audit-route/references/routing-pattern.md +0 -131
- package/templates/skills/audit-route/steps/step-00-init.md +0 -128
- package/templates/skills/audit-route/steps/step-01-inventory.md +0 -157
- package/templates/skills/audit-route/steps/step-02-conformity.md +0 -193
- package/templates/skills/audit-route/steps/step-03-report.md +0 -201
- package/templates/skills/business-analyse/SKILL.md +0 -252
- package/templates/skills/business-analyse/_shared.md +0 -276
- package/templates/skills/business-analyse/patterns/suggestion-catalog.md +0 -560
- package/templates/skills/business-analyse/questionnaire/01-context.md +0 -43
- package/templates/skills/business-analyse/questionnaire/02-stakeholders-scope.md +0 -111
- package/templates/skills/business-analyse/questionnaire/03-data-ui.md +0 -125
- package/templates/skills/business-analyse/questionnaire/04-risks-metrics.md +0 -6
- package/templates/skills/business-analyse/questionnaire/05-cross-module.md +0 -69
- package/templates/skills/business-analyse/questionnaire.md +0 -156
- package/templates/skills/business-analyse/react/application-viewer.md +0 -242
- package/templates/skills/business-analyse/react/components.md +0 -532
- package/templates/skills/business-analyse/react/i18n-template.md +0 -306
- package/templates/skills/business-analyse/react/schema.md +0 -831
- package/templates/skills/business-analyse/references/03-json-schemas.md +0 -221
- package/templates/skills/business-analyse/references/03-post-check-validation.md +0 -208
- package/templates/skills/business-analyse/references/03-smartstack-entity-guards.md +0 -32
- package/templates/skills/business-analyse/references/04-cross-module-validation.md +0 -95
- package/templates/skills/business-analyse/references/04-file-allocation.md +0 -162
- package/templates/skills/business-analyse/references/04-naming-audit-checks.md +0 -174
- package/templates/skills/business-analyse/references/04-semantic-validation-matrix.md +0 -118
- package/templates/skills/business-analyse/references/acceptance-criteria.md +0 -164
- package/templates/skills/business-analyse/references/analysis-semantic-checks.md +0 -190
- package/templates/skills/business-analyse/references/canonical-json-formats.md +0 -204
- package/templates/skills/business-analyse/references/compilation-structure-cards.md +0 -297
- package/templates/skills/business-analyse/references/consolidation-structural-checks.md +0 -124
- package/templates/skills/business-analyse/references/detection-strategies.md +0 -424
- package/templates/skills/business-analyse/references/domain-research-playbook.md +0 -234
- package/templates/skills/business-analyse/references/entity-architecture-decision.md +0 -240
- package/templates/skills/business-analyse/references/entity-sourcing-presentation.md +0 -166
- package/templates/skills/business-analyse/references/init-resume-logic.md +0 -70
- package/templates/skills/business-analyse/references/init-schema-deployment.md +0 -65
- package/templates/skills/business-analyse/references/module-completeness-challenge.md +0 -174
- package/templates/skills/business-analyse/references/multi-app-detection.md +0 -149
- package/templates/skills/business-analyse/references/naming-conventions.md +0 -253
- package/templates/skills/business-analyse/references/portal-classification.md +0 -52
- package/templates/skills/business-analyse/references/robustness-checks.md +0 -426
- package/templates/skills/business-analyse/references/ui-dashboard-spec.md +0 -85
- package/templates/skills/business-analyse/references/ui-resource-cards.md +0 -259
- package/templates/skills/business-analyse/references/validation-checklist.md +0 -378
- package/templates/skills/business-analyse/schemas/application-schema.json +0 -481
- package/templates/skills/business-analyse/schemas/feature-schema.json +0 -53
- package/templates/skills/business-analyse/schemas/index-schema.json +0 -47
- package/templates/skills/business-analyse/schemas/project-schema.json +0 -481
- package/templates/skills/business-analyse/schemas/sections/analysis-schema.json +0 -245
- package/templates/skills/business-analyse/schemas/sections/discovery-schema.json +0 -80
- package/templates/skills/business-analyse/schemas/sections/handoff-schema.json +0 -82
- package/templates/skills/business-analyse/schemas/sections/metadata-schema.json +0 -70
- package/templates/skills/business-analyse/schemas/sections/specification-schema.json +0 -567
- package/templates/skills/business-analyse/schemas/sections/validation-schema.json +0 -93
- package/templates/skills/business-analyse/schemas/shared/common-defs.json +0 -227
- package/templates/skills/business-analyse/steps/step-00-init.md +0 -463
- package/templates/skills/business-analyse/steps/step-01-cadrage.md +0 -901
- package/templates/skills/business-analyse/steps/step-02-structure.md +0 -315
- package/templates/skills/business-analyse/steps/step-03-specify.md +0 -986
- package/templates/skills/business-analyse/steps/step-04-consolidate.md +0 -928
- package/templates/skills/business-analyse/templates/tpl-frd.md +0 -168
- package/templates/skills/business-analyse/templates/tpl-handoff.md +0 -189
- package/templates/skills/business-analyse/templates/tpl-launch-displays.md +0 -59
- package/templates/skills/business-analyse/templates-frd.md +0 -476
- package/templates/skills/business-analyse/templates-react.md +0 -574
- package/templates/skills/business-analyse-design/SKILL.md +0 -101
- package/templates/skills/business-analyse-design/references/screens-post-check.md +0 -221
- package/templates/skills/business-analyse-design/references/screens-type-mapping.md +0 -138
- package/templates/skills/business-analyse-design/references/smartcomponents-templates.md +0 -225
- package/templates/skills/business-analyse-design/references/spec-auto-inference.md +0 -117
- package/templates/skills/business-analyse-design/steps/step-01-screens.md +0 -108
- package/templates/skills/business-analyse-design/steps/step-02-wireframes.md +0 -155
- package/templates/skills/business-analyse-design/steps/step-03-navigation.md +0 -189
- package/templates/skills/business-analyse-develop/SKILL.md +0 -250
- package/templates/skills/business-analyse-develop/references/category-completeness.md +0 -326
- package/templates/skills/business-analyse-develop/references/category-rules.md +0 -109
- package/templates/skills/business-analyse-develop/references/compact-loop.md +0 -478
- package/templates/skills/business-analyse-develop/references/handoff-quality-gate.md +0 -132
- package/templates/skills/business-analyse-develop/references/init-resume-recovery.md +0 -183
- package/templates/skills/business-analyse-develop/references/module-transition.md +0 -246
- package/templates/skills/business-analyse-develop/references/multi-module-queue.md +0 -171
- package/templates/skills/business-analyse-develop/references/parallel-execution.md +0 -246
- package/templates/skills/business-analyse-develop/references/prd-v3-transformation.md +0 -326
- package/templates/skills/business-analyse-develop/references/quality-gates.md +0 -160
- package/templates/skills/business-analyse-develop/references/report-reconciliation.md +0 -140
- package/templates/skills/business-analyse-develop/references/report-template.md +0 -142
- package/templates/skills/business-analyse-develop/references/section-splitting.md +0 -439
- package/templates/skills/business-analyse-develop/references/task-transform-legacy.md +0 -256
- package/templates/skills/business-analyse-develop/references/team-orchestration.md +0 -547
- package/templates/skills/business-analyse-develop/steps/step-00-init.md +0 -242
- package/templates/skills/business-analyse-develop/steps/step-01-task.md +0 -182
- package/templates/skills/business-analyse-develop/steps/step-01-v4-execute.md +0 -139
- package/templates/skills/business-analyse-develop/steps/step-02-execute.md +0 -216
- package/templates/skills/business-analyse-develop/steps/step-02-v4-verify.md +0 -176
- package/templates/skills/business-analyse-develop/steps/step-03-commit.md +0 -107
- package/templates/skills/business-analyse-develop/steps/step-04-check.md +0 -419
- package/templates/skills/business-analyse-develop/steps/step-05-report.md +0 -137
- package/templates/skills/business-analyse-handoff/SKILL.md +0 -101
- package/templates/skills/business-analyse-handoff/references/acceptance-criteria.md +0 -318
- package/templates/skills/business-analyse-handoff/references/agent-handoff-transform-prompt.md +0 -211
- package/templates/skills/business-analyse-handoff/references/context-isolation-pattern.md +0 -47
- package/templates/skills/business-analyse-handoff/references/entity-canonicalization.md +0 -158
- package/templates/skills/business-analyse-handoff/references/entity-domain-mapping.md +0 -115
- package/templates/skills/business-analyse-handoff/references/handoff-file-inventory.md +0 -49
- package/templates/skills/business-analyse-handoff/references/handoff-file-templates.md +0 -197
- package/templates/skills/business-analyse-handoff/references/handoff-global-validation.md +0 -142
- package/templates/skills/business-analyse-handoff/references/handoff-mappings.md +0 -108
- package/templates/skills/business-analyse-handoff/references/handoff-seeddata-generation.md +0 -314
- package/templates/skills/business-analyse-handoff/references/prd-generation.md +0 -362
- package/templates/skills/business-analyse-handoff/references/prd-validation-checks.md +0 -125
- package/templates/skills/business-analyse-handoff/references/project-index-update.md +0 -98
- package/templates/skills/business-analyse-handoff/references/readiness-scoring.md +0 -95
- package/templates/skills/business-analyse-handoff/schemas/handoff-schema.json +0 -95
- package/templates/skills/business-analyse-handoff/steps/step-00-validate.md +0 -158
- package/templates/skills/business-analyse-handoff/steps/step-01-transform.md +0 -85
- package/templates/skills/business-analyse-handoff/steps/step-02-export.md +0 -169
- package/templates/skills/business-analyse-handoff/templates/tpl-progress.md +0 -172
- package/templates/skills/business-analyse-html/SKILL.md +0 -89
- package/templates/skills/business-analyse-html/html/ba-interactive.html +0 -6134
- package/templates/skills/business-analyse-html/html/build-html.js +0 -137
- package/templates/skills/business-analyse-html/html/src/partials/cadrage-context.html +0 -34
- package/templates/skills/business-analyse-html/html/src/partials/cadrage-scope.html +0 -27
- package/templates/skills/business-analyse-html/html/src/partials/cadrage-stakeholders.html +0 -55
- package/templates/skills/business-analyse-html/html/src/partials/cadrage-success.html +0 -34
- package/templates/skills/business-analyse-html/html/src/partials/consol-datamodel.html +0 -8
- package/templates/skills/business-analyse-html/html/src/partials/consol-flows.html +0 -29
- package/templates/skills/business-analyse-html/html/src/partials/consol-interactions.html +0 -8
- package/templates/skills/business-analyse-html/html/src/partials/consol-permissions.html +0 -8
- package/templates/skills/business-analyse-html/html/src/partials/decomp-dependencies.html +0 -38
- package/templates/skills/business-analyse-html/html/src/partials/decomp-modules.html +0 -43
- package/templates/skills/business-analyse-html/html/src/partials/handoff-summary.html +0 -24
- package/templates/skills/business-analyse-html/html/src/partials/module-spec-container.html +0 -4
- package/templates/skills/business-analyse-html/html/src/scripts/01-data-init.js +0 -313
- package/templates/skills/business-analyse-html/html/src/scripts/02-navigation.js +0 -316
- package/templates/skills/business-analyse-html/html/src/scripts/03-render-cadrage.js +0 -162
- package/templates/skills/business-analyse-html/html/src/scripts/04-render-modules.js +0 -203
- package/templates/skills/business-analyse-html/html/src/scripts/05-render-specs.js +0 -866
- package/templates/skills/business-analyse-html/html/src/scripts/06-render-consolidation.js +0 -196
- package/templates/skills/business-analyse-html/html/src/scripts/06-render-mockups.js +0 -564
- package/templates/skills/business-analyse-html/html/src/scripts/07-render-handoff.js +0 -108
- package/templates/skills/business-analyse-html/html/src/scripts/08-editing.js +0 -137
- package/templates/skills/business-analyse-html/html/src/scripts/09-export.js +0 -138
- package/templates/skills/business-analyse-html/html/src/scripts/10-comments.js +0 -221
- package/templates/skills/business-analyse-html/html/src/scripts/11-review-panel.js +0 -167
- package/templates/skills/business-analyse-html/html/src/scripts/12-render-diagrams.js +0 -162
- package/templates/skills/business-analyse-html/html/src/styles/01-variables.css +0 -38
- package/templates/skills/business-analyse-html/html/src/styles/02-layout.css +0 -216
- package/templates/skills/business-analyse-html/html/src/styles/03-navigation.css +0 -120
- package/templates/skills/business-analyse-html/html/src/styles/04-cards.css +0 -194
- package/templates/skills/business-analyse-html/html/src/styles/05-modules.css +0 -518
- package/templates/skills/business-analyse-html/html/src/styles/06-wireframes.css +0 -263
- package/templates/skills/business-analyse-html/html/src/styles/07-comments.css +0 -184
- package/templates/skills/business-analyse-html/html/src/styles/08-review-panel.css +0 -241
- package/templates/skills/business-analyse-html/html/src/styles/09-mockups-html.css +0 -220
- package/templates/skills/business-analyse-html/html/src/styles/10-diagrams.css +0 -73
- package/templates/skills/business-analyse-html/html/src/template.html +0 -449
- package/templates/skills/business-analyse-html/references/02-embedded-artifacts-building.md +0 -144
- package/templates/skills/business-analyse-html/references/02-feature-data-building.md +0 -143
- package/templates/skills/business-analyse-html/references/02-mapping-tables.md +0 -442
- package/templates/skills/business-analyse-html/references/02-normalization-helpers.md +0 -139
- package/templates/skills/business-analyse-html/references/02-screen-format-detection.md +0 -283
- package/templates/skills/business-analyse-html/references/02-self-check-validation.md +0 -199
- package/templates/skills/business-analyse-html/references/data-build.md +0 -215
- package/templates/skills/business-analyse-html/references/data-mapping.md +0 -452
- package/templates/skills/business-analyse-html/references/output-modes.md +0 -119
- package/templates/skills/business-analyse-html/references/wireframe-svg-style-guide.md +0 -335
- package/templates/skills/business-analyse-html/steps/step-01-collect.md +0 -140
- package/templates/skills/business-analyse-html/steps/step-02-build-data.md +0 -76
- package/templates/skills/business-analyse-html/steps/step-03-render.md +0 -95
- package/templates/skills/business-analyse-html/steps/step-04-verify.md +0 -224
- package/templates/skills/business-analyse-quick/SKILL.md +0 -807
- package/templates/skills/business-analyse-quick/references/domain-heuristics.md +0 -172
- package/templates/skills/business-analyse-quick/references/prd-schema.md +0 -268
- package/templates/skills/business-analyse-review/SKILL.md +0 -71
- package/templates/skills/business-analyse-review/references/review-data-mapping.md +0 -367
- package/templates/skills/business-analyse-review/steps/step-00-init.md +0 -111
- package/templates/skills/business-analyse-review/steps/step-01-apply.md +0 -304
- package/templates/skills/business-analyse-status/SKILL.md +0 -136
- package/templates/skills/cc-agent/SKILL.md +0 -129
- package/templates/skills/cc-agent/references/agent-behavior-patterns.md +0 -95
- package/templates/skills/cc-agent/references/agent-frontmatter.md +0 -213
- package/templates/skills/cc-agent/references/permission-modes.md +0 -102
- package/templates/skills/cc-agent/references/tools-reference.md +0 -144
- package/templates/skills/cc-agent/steps/step-00-init.md +0 -134
- package/templates/skills/cc-agent/steps/step-01-design.md +0 -186
- package/templates/skills/cc-agent/steps/step-02-generate.md +0 -131
- package/templates/skills/cc-agent/steps/step-03-validate.md +0 -130
- package/templates/skills/cc-agent/templates/agent-categorized.md +0 -67
- package/templates/skills/cc-agent/templates/agent-standalone.md +0 -56
- package/templates/skills/cc-agent/templates/agent-with-skills.md +0 -94
- package/templates/skills/cc-audit/SKILL.md +0 -108
- package/templates/skills/cc-audit/references/agent-checklist.md +0 -91
- package/templates/skills/cc-audit/references/hook-checklist.md +0 -110
- package/templates/skills/cc-audit/references/skill-checklist.md +0 -70
- package/templates/skills/cc-audit/steps/step-00-init.md +0 -98
- package/templates/skills/cc-audit/steps/step-01-scan.md +0 -142
- package/templates/skills/cc-audit/steps/step-02-analyze.md +0 -158
- package/templates/skills/cc-audit/steps/step-03-report.md +0 -142
- package/templates/skills/cc-skill/SKILL.md +0 -134
- package/templates/skills/cc-skill/references/best-practices.md +0 -167
- package/templates/skills/cc-skill/references/frontmatter-reference.md +0 -182
- package/templates/skills/cc-skill/references/skill-patterns.md +0 -199
- package/templates/skills/cc-skill/steps/step-00-init.md +0 -119
- package/templates/skills/cc-skill/steps/step-01-design.md +0 -199
- package/templates/skills/cc-skill/steps/step-02-generate.md +0 -145
- package/templates/skills/cc-skill/steps/step-03-steps.md +0 -151
- package/templates/skills/cc-skill/steps/step-04-validate.md +0 -124
- package/templates/skills/cc-skill/templates/skill-forked.md +0 -85
- package/templates/skills/cc-skill/templates/skill-progressive.md +0 -102
- package/templates/skills/cc-skill/templates/skill-simple.md +0 -75
- package/templates/skills/cc-skill/templates/step-template.md +0 -82
- package/templates/skills/controller/SKILL.md +0 -162
- package/templates/skills/controller/postman-templates.md +0 -614
- package/templates/skills/controller/references/controller-code-templates.md +0 -162
- package/templates/skills/controller/references/mcp-scaffold-workflow.md +0 -237
- package/templates/skills/controller/references/permission-sync-templates.md +0 -149
- package/templates/skills/controller/steps/step-00-init.md +0 -193
- package/templates/skills/controller/steps/step-01-analyze.md +0 -152
- package/templates/skills/controller/steps/step-02-plan.md +0 -176
- package/templates/skills/controller/steps/step-03-generate.md +0 -189
- package/templates/skills/controller/steps/step-04-perms.md +0 -80
- package/templates/skills/controller/steps/step-05-validate.md +0 -107
- package/templates/skills/controller/templates.md +0 -1556
- package/templates/skills/debug/SKILL.md +0 -70
- package/templates/skills/debug/references/team-protocol.md +0 -232
- package/templates/skills/debug/steps/step-00-init.md +0 -57
- package/templates/skills/debug/steps/step-01-analyze.md +0 -219
- package/templates/skills/debug/steps/step-02-resolve.md +0 -85
- package/templates/skills/efcore/references/database-operations.md +0 -66
- package/templates/skills/efcore/references/reset-operations.md +0 -81
- package/templates/skills/efcore/references/seed-methods.md +0 -86
- package/templates/skills/efcore/references/shared-init-functions.md +0 -250
- package/templates/skills/efcore/references/sql-objects-injection.md +0 -19
- package/templates/skills/efcore/references/troubleshooting.md +0 -81
- package/templates/skills/efcore/references/zero-downtime-patterns.md +0 -229
- package/templates/skills/explore/SKILL.md +0 -98
- package/templates/skills/feature-full/SKILL.md +0 -111
- package/templates/skills/feature-full/steps/step-00-init.md +0 -57
- package/templates/skills/feature-full/steps/step-01-implementation.md +0 -133
- package/templates/skills/gitflow/phases/abort.md +0 -189
- package/templates/skills/gitflow/phases/cleanup.md +0 -264
- package/templates/skills/gitflow/phases/status.md +0 -192
- package/templates/skills/gitflow/references/commit-message-generation.md +0 -58
- package/templates/skills/gitflow/references/commit-migration-validation.md +0 -53
- package/templates/skills/gitflow/references/finish-cleanup.md +0 -55
- package/templates/skills/gitflow/references/finish-version-bumping.md +0 -45
- package/templates/skills/gitflow/references/init-config-template.md +0 -143
- package/templates/skills/gitflow/references/init-environment-detection.md +0 -41
- package/templates/skills/gitflow/references/init-name-normalization.md +0 -118
- package/templates/skills/gitflow/references/init-questions.md +0 -193
- package/templates/skills/gitflow/references/init-structure-creation.md +0 -75
- package/templates/skills/gitflow/references/init-version-detection.md +0 -23
- package/templates/skills/gitflow/references/init-workspace-detection.md +0 -43
- package/templates/skills/gitflow/references/merge-ci-status.md +0 -36
- package/templates/skills/gitflow/references/merge-execution.md +0 -62
- package/templates/skills/gitflow/references/merge-pr-context.md +0 -76
- package/templates/skills/gitflow/references/plan-template.md +0 -69
- package/templates/skills/gitflow/references/pr-build-checks.md +0 -60
- package/templates/skills/gitflow/references/pr-generation.md +0 -58
- package/templates/skills/gitflow/references/start-branch-normalization.md +0 -28
- package/templates/skills/gitflow/references/start-efcore-preflight.md +0 -70
- package/templates/skills/gitflow/references/start-local-config.md +0 -113
- package/templates/skills/gitflow/references/start-worktree-creation.md +0 -50
- package/templates/skills/gitflow/references/sync-push-verify.md +0 -44
- package/templates/skills/gitflow/references/sync-rebase-conflicts.md +0 -38
- package/templates/skills/gitflow/steps/step-commit.md +0 -199
- package/templates/skills/gitflow/steps/step-finish.md +0 -147
- package/templates/skills/gitflow/steps/step-init.md +0 -230
- package/templates/skills/gitflow/steps/step-merge.md +0 -85
- package/templates/skills/gitflow/steps/step-plan.md +0 -151
- package/templates/skills/gitflow/steps/step-pr.md +0 -247
- package/templates/skills/gitflow/steps/step-start.md +0 -195
- package/templates/skills/gitflow/steps/step-sync.md +0 -161
- package/templates/skills/gitflow/templates/config.json +0 -72
- package/templates/skills/mcp/SKILL.md +0 -62
- package/templates/skills/mcp/steps/step-01-healthcheck.md +0 -108
- package/templates/skills/mcp/steps/step-02-tools.md +0 -73
- package/templates/skills/migrate/SKILL.md +0 -312
- package/templates/skills/migrate/references/v3.34-to-v3.46.md +0 -289
- package/templates/skills/notification/SKILL.md +0 -173
- package/templates/skills/refactor/SKILL.md +0 -56
- package/templates/skills/refactor/steps/step-01-discover.md +0 -60
- package/templates/skills/refactor/steps/step-02-execute.md +0 -67
- package/templates/skills/review-code/SKILL.md +0 -95
- package/templates/skills/review-code/references/clean-code-principles.md +0 -292
- package/templates/skills/review-code/references/code-quality-metrics.md +0 -174
- package/templates/skills/review-code/references/feedback-patterns.md +0 -149
- package/templates/skills/review-code/references/owasp-api-top10.md +0 -243
- package/templates/skills/review-code/references/security-checklist.md +0 -212
- package/templates/skills/review-code/references/smartstack-conventions.md +0 -568
- package/templates/skills/review-code/steps/step-01-smartstack.md +0 -96
- package/templates/skills/review-code/steps/step-02-detailed-review.md +0 -80
- package/templates/skills/review-code/steps/step-03-react.md +0 -44
- package/templates/skills/sketch/SKILL.md +0 -34
- package/templates/skills/ui-components/accessibility.md +0 -170
- package/templates/skills/ui-components/patterns/dashboard-chart.md +0 -327
- package/templates/skills/ui-components/patterns/data-table.md +0 -175
- package/templates/skills/ui-components/patterns/entity-card.md +0 -77
- package/templates/skills/ui-components/patterns/grid-layout.md +0 -91
- package/templates/skills/ui-components/patterns/kanban.md +0 -43
- package/templates/skills/ui-components/references/component-catalog.md +0 -82
- package/templates/skills/ui-components/responsive-guidelines.md +0 -278
- package/templates/skills/ui-components/style-guide.md +0 -113
- package/templates/skills/validate/SKILL.md +0 -181
- package/templates/skills/workflow/SKILL.md +0 -196
- package/templates/skills/workflow/steps/step-00-init.md +0 -57
- package/templates/skills/workflow/steps/step-01-implementation.md +0 -84
|
@@ -0,0 +1,479 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ba-audit-prd
|
|
3
|
+
description: >
|
|
4
|
+
Audits the on-disk PRD of ONE module in a `.smartstack/ba/` project — checks
|
|
5
|
+
across 7 dimensions: structure, completeness, clarity, consistency, traceability,
|
|
6
|
+
feasibility, slices + per-page contract + custom-action contract. Reads `prd.md`,
|
|
7
|
+
the three `prd.*.md` slices and the `pagespecs/*.md` blocks against the upstream
|
|
8
|
+
BA docs, then writes a verdict to `_audit/prd.md` carrying the dev-readiness
|
|
9
|
+
gate (`GO|NO-GO`). GO is the gate `/ba-develop` reads. User Story / Acceptance
|
|
10
|
+
Criteria checks live in `/ba-audit-use-cases` (UC-012..018) — the PRD no longer
|
|
11
|
+
carries US/AC sections; AC live under each UC in `use-case.md`. Run after
|
|
12
|
+
`/ba-create-prd`.
|
|
13
|
+
allowed-tools: [Read, Write, Glob, Grep]
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# ba-audit-prd — PRD quality audit (per module)
|
|
17
|
+
|
|
18
|
+
You audit the **PRD of ONE module** against the checks below and write a
|
|
19
|
+
verdict file. The checks keep their original intent and codes; only the I/O is
|
|
20
|
+
file-based.
|
|
21
|
+
|
|
22
|
+
> **No US/AC checks here.** User Stories and Acceptance Criteria are NOT in the
|
|
23
|
+
> PRD — they live under each UC in `<section>/use-case.md` as
|
|
24
|
+
> `**Acceptance Criteria**` fields, audited by `/ba-audit-use-cases` (UC-012..018).
|
|
25
|
+
> Legacy PRD rules that targeted `## User Stories` / `## Acceptance Criteria` /
|
|
26
|
+
> `AC-US{n}-{m}` ids were deleted (PRD-002/003/004/012/013/014/021/027/032/033/047/062/063/085)
|
|
27
|
+
> or migrated to `/ba-audit-use-cases` (PRD-022/023/024/031/034/048 → UC-014..018).
|
|
28
|
+
|
|
29
|
+
There is **no database, no Studio, no injected JSON envelope, no
|
|
30
|
+
`structured`/`markdown`/`slices` blocks** — the PRD lives on disk as `.md` files
|
|
31
|
+
and the `.md` verdict IS the record. The verdict header carries the dev-readiness
|
|
32
|
+
gate that `/ba-develop` reads.
|
|
33
|
+
|
|
34
|
+
## File model — how to audit
|
|
35
|
+
|
|
36
|
+
1. **Read the PRD subtree** `.smartstack/ba/<APP>/<MODULE>/`:
|
|
37
|
+
- `prd.md` — `## Context`, `## Goals`, `## Non-goals`, `## MoSCoW`,
|
|
38
|
+
`## Technical constraints`. (No `## User Stories` / `## Acceptance Criteria`
|
|
39
|
+
— those live under each UC in `<section>/use-case.md`.)
|
|
40
|
+
- `prd.entities.md`, `prd.api.md`, `prd.frontend.md` — the three `# Phase:`
|
|
41
|
+
slices (self-contained + disjoint, one per dev sub-agent).
|
|
42
|
+
- `pagespecs/<Entity>.<view>.md` — one per screen; each a fenced ```json
|
|
43
|
+
pageSpec block + a human body. These are the contract feeding `scaffold-component`.
|
|
44
|
+
- `claude.md` — the generated module CLAUDE.md (read for PRD-052).
|
|
45
|
+
2. **Read the upstream BA docs** in the same / parent folders, so traceability and
|
|
46
|
+
coverage checks resolve (codes are Grepped on the tree — if a code is not found
|
|
47
|
+
there, it does not exist; do not invent it):
|
|
48
|
+
- `<MODULE>/entité.md` (entities `ENT-…` + PascalCase names, attributes, relationships, computed),
|
|
49
|
+
- `<MODULE>/rbac.md` (permission matrix),
|
|
50
|
+
- `<MODULE>/<section>/screen.md` (screens `SCR-…`, SmartComponent type, columns/filters/actions),
|
|
51
|
+
- `<MODULE>/<section>/use-case.md` (use cases `UC-…`),
|
|
52
|
+
- `<MODULE>/<section>/règles-métier.md` (business rules `BR-…`, valid/invalid examples),
|
|
53
|
+
- `<APP>/acteur.md` (actor roles `BA-…-AC-…`),
|
|
54
|
+
- the `index.md` **out-of-scope cascade** (project root → `<APP>` → `<MODULE>`,
|
|
55
|
+
the `## Hors-périmètre` bullets).
|
|
56
|
+
3. **Apply** the checks below.
|
|
57
|
+
4. **Write** the verdict to `.smartstack/ba/<APP>/<MODULE>/_audit/prd.md` (skeleton
|
|
58
|
+
in `_workflow/doc-templates.md`), with the dev-readiness gate header. Overwrite
|
|
59
|
+
each run. Then print a concise GO / NO-GO chat summary in business terms.
|
|
60
|
+
|
|
61
|
+
There is **no `[ACTION]` envelope, no `[QUESTION]` block, no `persist:`, no
|
|
62
|
+
`--- CURRENT … ---` state, no i18n label codes, no fix-finding handler, no
|
|
63
|
+
targeted-regen endpoint, no `GET /prds`, no sidecar/frontend, no fan-out arrays**.
|
|
64
|
+
This audit is read-only — it never patches the PRD; each non-ok finding routes to
|
|
65
|
+
the owning phase skill to re-run.
|
|
66
|
+
|
|
67
|
+
## Scope
|
|
68
|
+
|
|
69
|
+
- **Module scope** (always): audit exactly one module's PRD. Resolve every cross
|
|
70
|
+
reference against that module's upstream docs (+ the app `acteur.md` and the
|
|
71
|
+
out-of-scope cascade). Do not re-audit a sibling module's PRD.
|
|
72
|
+
- If `prd.md` (or all three slices, or `pagespecs/`) is absent, the PRD has not
|
|
73
|
+
been generated for this module — report a single blocking finding "PRD not
|
|
74
|
+
generated → run `/ba-create-prd`", emit NO-GO, and stop.
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Dimension 1 — Structure & the contract gate (PRD-001, 005..010)
|
|
79
|
+
|
|
80
|
+
Schema and ID conformity. Failures here mean the PRD cannot be processed downstream.
|
|
81
|
+
|
|
82
|
+
- **PRD-001′** `err` — *(was: "`structured` parses against the Zod schema". Re-targeted —
|
|
83
|
+
this is the new contract gate between the `.md` tree and `scaffold-component`.)*
|
|
84
|
+
**Every** `pagespecs/*.md` file contains exactly one fenced ```json block, that
|
|
85
|
+
block parses as valid JSON, and it carries every required field, each non-empty:
|
|
86
|
+
`screenCode`, `appCode`, `module`, `section`, `entity`, `view`, `permission`,
|
|
87
|
+
`screenType`. A pagespec whose JSON does not parse, or that drops any required
|
|
88
|
+
field, breaks `scaffold-component`. → `/ba-create-prd`.
|
|
89
|
+
- **PRD-005** `err` — `prd.md` is non-empty and contains all five `##` anchor
|
|
90
|
+
sections, verbatim: `## Context`, `## Goals`, `## Non-goals`, `## MoSCoW`,
|
|
91
|
+
`## Technical constraints`. *(structural-file check — US/AC sections were
|
|
92
|
+
removed; the test contract lives in each UC's `**Acceptance Criteria**` field
|
|
93
|
+
in `use-case.md`.)* → `/ba-create-prd`.
|
|
94
|
+
- **PRD-006** `err` — All three slice files exist and are non-empty:
|
|
95
|
+
`prd.entities.md`, `prd.api.md`, `prd.frontend.md`. (3 slices since 2026-04 —
|
|
96
|
+
`entities` is the combined domain+data view; there is no separate `domain`/`data`
|
|
97
|
+
file.) *(structural-file check)* → `/ba-create-prd`.
|
|
98
|
+
- **PRD-007** `warn` — `prd.md` declares a `## Technical constraints` section (may
|
|
99
|
+
be empty, but the heading must be present). → `/ba-create-prd`.
|
|
100
|
+
- **PRD-008** `warn` — Every entity referenced in `prd.entities.md` has a non-empty,
|
|
101
|
+
unique name (no duplicate entity lines). → `/ba-create-prd`.
|
|
102
|
+
- **PRD-009** `warn` — Every `screenCode` across the `pagespecs/*.md` blocks is
|
|
103
|
+
non-empty and unique (no two pagespecs share a `screenCode`). → `/ba-create-prd`.
|
|
104
|
+
- **PRD-010** `warn` — Every `permission` value across the pagespec blocks is
|
|
105
|
+
non-empty (uniqueness not required — many views legitimately share `…read`). → `/ba-create-prd`.
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Dimension 2 — Completeness (PRD-011, 015..020)
|
|
110
|
+
|
|
111
|
+
Minimum content levels. An incomplete PRD leads Claude to invent filler.
|
|
112
|
+
|
|
113
|
+
- **PRD-011** `err` — `## Non-goals` lists ≥ 3 bullets. Non-goals prevent feature
|
|
114
|
+
hallucination downstream. → `/ba-create-prd`.
|
|
115
|
+
- **PRD-015** `warn` — `## MoSCoW` lists ≥ 1 **Must** item. → `/ba-create-prd`.
|
|
116
|
+
- **PRD-016** `warn` — `## MoSCoW` populates at least one of **Should** / **Could**
|
|
117
|
+
(a PRD with nothing beyond Must is probably under-scoped). → `/ba-create-prd`.
|
|
118
|
+
- **PRD-017** `warn` — `## Goals` lists ≥ 2 goals (a single goal usually hides scope). → `/ba-create-prd`.
|
|
119
|
+
- **PRD-018** `info` — `prd.entities.md` declares ≥ 1 entity (pure-UI modules may
|
|
120
|
+
legitimately have 0 — informational only). → `/ba-create-prd`.
|
|
121
|
+
- **PRD-019** `info` — `pagespecs/` holds ≥ 1 pagespec (background-only modules may
|
|
122
|
+
have 0). → `/ba-create-prd`.
|
|
123
|
+
- **PRD-020** `info` — `prd.api.md` lists ≥ 1 permission (same exception). → `/ba-create-prd`.
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Dimension 3 — Clarity (PRD-025, 026, 028..030)
|
|
128
|
+
|
|
129
|
+
Phrasing that can be acted on without reinterpretation. Logic UNCHANGED, new input.
|
|
130
|
+
|
|
131
|
+
- **PRD-025** `warn` — Each goal starts with an action verb (allow / enable /
|
|
132
|
+
produce / guarantee / reduce / surface) rather than a noun phrase. → `/ba-create-prd`.
|
|
133
|
+
- **PRD-026** `warn` — Each non-goal is a **negated** sentence ("we will NOT",
|
|
134
|
+
"out of scope:", "explicitly excludes"). Descriptive non-goals are ambiguous. → `/ba-create-prd`.
|
|
135
|
+
- **PRD-028** `info` — Sentences in `## Context` stay under ~40 words; longer ones
|
|
136
|
+
get split. → `/ba-create-prd`.
|
|
137
|
+
- **PRD-029** `info` — Acronyms are expanded on first use in `prd.md` (e.g.
|
|
138
|
+
"RBAC (role-based access control)"). → `/ba-create-prd`.
|
|
139
|
+
- **PRD-030** `info` — `## Context` names which other modules are touched — or
|
|
140
|
+
states "standalone". → `/ba-create-prd`.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Dimension 4 — Consistency (PRD-035..040, PRD-064)
|
|
145
|
+
|
|
146
|
+
Cross-field invariants — the document must not contradict itself.
|
|
147
|
+
|
|
148
|
+
- **PRD-035** `warn` — Every entity named in a `pagespecs/*.md` block (`entity`
|
|
149
|
+
field) also appears in `prd.entities.md` (screens can't render an entity the PRD
|
|
150
|
+
doesn't declare). → `/ba-create-prd`.
|
|
151
|
+
- **PRD-036** `warn` — Every pagespec `permission` is the
|
|
152
|
+
`module.section[.resource].action` shape (3 or 4 segments, lowercase kebab, no
|
|
153
|
+
app prefix), matching the `rbac.md` matrix shape. → `/ba-create-prd`.
|
|
154
|
+
- **PRD-037** `warn` — Every role named in `prd.api.md` / pagespec actions also
|
|
155
|
+
appears as an actor upstream (`acteur.md`). No role materialises in the API
|
|
156
|
+
slice without being defined upstream. → `/ba-create-rbac`.
|
|
157
|
+
- **PRD-038** `warn` — `## MoSCoW` **Must** items do not also appear under
|
|
158
|
+
**Won't**. → `/ba-create-prd`.
|
|
159
|
+
- **PRD-039** `warn` — Every `## MoSCoW` **Won't** item is echoed in `## Non-goals`
|
|
160
|
+
(a won't-have is a non-goal). → `/ba-create-prd`.
|
|
161
|
+
- **PRD-040** `info` — `prd.md` mentions every entity, screenCode and permission
|
|
162
|
+
from the slices/pagespecs at least once (low-fidelity render flag). → `/ba-create-prd`.
|
|
163
|
+
- **PRD-064** `warn` — Every non-empty `## Hors-périmètre` line in the **out-of-scope
|
|
164
|
+
cascade** (project root `index.md` + `<APP>/index.md` + `<MODULE>/index.md`) is
|
|
165
|
+
reflected by at least one **semantically equivalent** non-goal in `## Non-goals`.
|
|
166
|
+
Paraphrases are fine; the meaning MUST be preserved. Missing or contradicting an
|
|
167
|
+
upstream out-of-scope warns (raises feature-hallucination risk downstream). → `/ba-create-menu` (fix the cascade) or `/ba-create-prd` (recopy it).
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Dimension 5 — Traceability (PRD-041..046, 049, 050)
|
|
172
|
+
|
|
173
|
+
Every piece of the PRD must connect to something upstream. Logic UNCHANGED, new input.
|
|
174
|
+
|
|
175
|
+
- **PRD-041** `err` — Every entity in `prd.entities.md` resolves to an `ENT-…`
|
|
176
|
+
entity in the module `entité.md`, matched by either the PascalCase **name** or
|
|
177
|
+
the BA stable **code**. No phantom entities. → `/ba-create-data-model`.
|
|
178
|
+
- **PRD-042** `err` — Every `screenCode` in a pagespec resolves to a `SCR-…`
|
|
179
|
+
heading in some `screen.md` of the module. → `/ba-create-screen`.
|
|
180
|
+
- **PRD-043** `err` — Every pagespec `permission` resolves to a permission in
|
|
181
|
+
`rbac.md`. The 4-seg vs 5-seg (resource-scoped) shapes are NOT interchangeable —
|
|
182
|
+
a permission missing the `.{resource}.` segment must not resolve to one that has
|
|
183
|
+
it (and vice-versa), since the resource segment changes the RBAC scope. → `/ba-create-rbac`.
|
|
184
|
+
- **PRD-044** `warn` — Every entity has at least one screen that displays it.
|
|
185
|
+
**Skip** when the entity's `entité.md` classification is lookup / reference /
|
|
186
|
+
junction / component (those surface inside parent screens, never as standalone
|
|
187
|
+
pages). Orphan aggregate-root / full-module entities still warn. → `/ba-create-screen`.
|
|
188
|
+
- **PRD-045** `warn` — Every screen (`SCR-…` in `screen.md`) is covered by at least
|
|
189
|
+
one permission (read / create / update / delete). → `/ba-create-rbac`.
|
|
190
|
+
- **PRD-046** `warn` — Every permission in `rbac.md` maps to at least one use case
|
|
191
|
+
upstream (a `UC-…` whose flow uses that action verb). Disconnected permissions warn. → `/ba-create-use-case`.
|
|
192
|
+
- **PRD-049** `info` — Every `## Goals` statement is backed by at least one UC in
|
|
193
|
+
the module's `use-case.md` files (a UC whose title or main flow speaks to that
|
|
194
|
+
goal). → `/ba-create-use-case`.
|
|
195
|
+
- **PRD-050** `info` — Every `## Non-goals` statement is traced by an explicit
|
|
196
|
+
exclusion (it is itself the exclusion list — flag a non-goal that contradicts a
|
|
197
|
+
goal or a Must item). → `/ba-create-prd`.
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## Dimension 6 — Feasibility (PRD-051..055)
|
|
202
|
+
|
|
203
|
+
Technical constraints must fit the generated-project stack.
|
|
204
|
+
|
|
205
|
+
- **PRD-051** `warn` — `## Technical constraints` only references the generated
|
|
206
|
+
stack (`.NET 10`, `EF Core 10`, `React 18`, `Vite`, `Tailwind`, `Shoelace`,
|
|
207
|
+
`SignalR`, `PostgreSQL / SQL Server / Azure SQL`). Anything outside belongs in a
|
|
208
|
+
custom CLAUDE.md rule, not the PRD. **SQLite must never appear** (it is the
|
|
209
|
+
Studio's dev DB, not a generated-app target). → `/ba-create-prd`.
|
|
210
|
+
- **PRD-052** `warn` — No `## Technical constraints` entry merely repeats a rule
|
|
211
|
+
already in the module `claude.md` (the PRD adds module-specific constraints, not
|
|
212
|
+
repeats). → `/ba-create-prd`.
|
|
213
|
+
- **PRD-053** `warn` — Entity attribute types in `prd.entities.md` are EF-Core-
|
|
214
|
+
mappable primitives (`string`, `int`, `long`, `DateTime`, `decimal`, `bool`,
|
|
215
|
+
`Guid`, `enum`). → `/ba-create-data-model`.
|
|
216
|
+
- **PRD-054** `info` — Each pagespec `screenType` / `view` maps to one of the
|
|
217
|
+
SmartComponent patterns (list, detail, form, dashboard, kanban, card + the home
|
|
218
|
+
views). → `/ba-create-screen`.
|
|
219
|
+
- **PRD-055** `info` — Permissions in `prd.api.md` respect the 11-action SmartStack
|
|
220
|
+
vocabulary (read, create, update, delete, approve, reject, export, import,
|
|
221
|
+
access, manage, admin). → `/ba-create-rbac`.
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Dimension 7 — Slices, per-page contract & vibecoding readiness (PRD-056..088)
|
|
226
|
+
|
|
227
|
+
The three slices must let a sub-agent develop one phase without the rest;
|
|
228
|
+
`prd.entities.md` carries the combined domain + data view (entities, attributes,
|
|
229
|
+
relationships, business rules, migrations, indices, FKs). The pagespec blocks must
|
|
230
|
+
satisfy everything `scaffold-component` expects.
|
|
231
|
+
|
|
232
|
+
### Slice self-containment & disjointness (PRD-056..061, 094)
|
|
233
|
+
|
|
234
|
+
- **PRD-056** `err` — `prd.entities.md` covers every entity from the upstream
|
|
235
|
+
`entité.md` AND, for every non-reference entity, an inline **domain invariants**
|
|
236
|
+
section listing each scope-matched `BR-…` from `règles-métier.md` (with code +
|
|
237
|
+
≥ 1 valid + ≥ 1 invalid example). No UI references in this slice. → `/ba-create-prd`.
|
|
238
|
+
- **PRD-057** `err` — `prd.entities.md` describes migrations, indices and FK
|
|
239
|
+
relationships for every declared entity — derivable from the entity list alone,
|
|
240
|
+
no screen references. → `/ba-create-prd`.
|
|
241
|
+
- **PRD-058** `err` — `prd.api.md` lists every permission and maps each to an HTTP
|
|
242
|
+
method + route — derivable from `rbac.md` alone. → `/ba-create-prd`.
|
|
243
|
+
- **PRD-059** `err` — `prd.frontend.md` lists every screenCode + route; it may
|
|
244
|
+
reference entity names but never EF / repository implementation detail. → `/ba-create-prd`.
|
|
245
|
+
- **PRD-060** `warn` — Slices are **disjoint**: no slice duplicates another's
|
|
246
|
+
content (`prd.entities.md` must not declare routes from `prd.api.md`;
|
|
247
|
+
`prd.frontend.md` must not contain the SQL migrations from `prd.entities.md`). → `/ba-create-prd`.
|
|
248
|
+
- **PRD-061** `warn` — Each slice opens with a `# Phase: <name>` heading and lists
|
|
249
|
+
its in-scope artefacts as `- [ ]` checkbox bullets. *(structural-file)* → `/ba-create-prd`.
|
|
250
|
+
- **PRD-094** `err` — **Self-containment test**: for each slice, every code it cites
|
|
251
|
+
(entity, screen, permission, UC, BR, actor) is **defined inline** in that same
|
|
252
|
+
slice (full body, not a bare ID reference). A sub-agent reading only one slice
|
|
253
|
+
must be able to act. AC are intentionally NOT in this list — they live in
|
|
254
|
+
`use-case.md` next to their UC and the test-scaffolder reads them directly. → `/ba-create-prd`.
|
|
255
|
+
|
|
256
|
+
### Per-page contract integrity (PRD-070..088)
|
|
257
|
+
|
|
258
|
+
Every `screen.md` screen produces exactly one pagespec (plus a synthesised
|
|
259
|
+
`detail` view per list+form pair). These catch the silent omissions that would
|
|
260
|
+
otherwise produce a non-functional PRD downstream.
|
|
261
|
+
|
|
262
|
+
- **PRD-070** `err` — Every screen in the module's `screen.md` files has a matching
|
|
263
|
+
`pagespecs/*.md` whose `screenCode` equals the screen's `SCR-…` code (**coverage**).
|
|
264
|
+
Synthesised detail entries are tolerated but should carry `needsRefinement: true`
|
|
265
|
+
+ a note. → `/ba-create-screen` if the screen is missing upstream, else `/ba-create-prd`.
|
|
266
|
+
- **PRD-071** `err` — Every pagespec `permission` matches
|
|
267
|
+
`^[a-z][a-z0-9-]*\.[a-z][a-z0-9-]*\.[a-z][a-z0-9-]*$` (3 segments, lowercase, no
|
|
268
|
+
appCode prefix) — the same shape `validate-page` enforces downstream. → `/ba-create-prd`.
|
|
269
|
+
- **PRD-072** `err` — Every pagespec `i18nKeys` carries **parallel key sets across
|
|
270
|
+
the 4 locales `fr/en/it/de`** (the same key set in each). Missing keys per locale
|
|
271
|
+
are the #1 cause of i18n-resolve failures downstream. *(structural-file: 4-locale parity)* → `/ba-create-prd`.
|
|
272
|
+
- **PRD-073** `warn` — Every computed column in a pagespec (`isComputed: true`, or a
|
|
273
|
+
`columns[].formatHint`) carries a `formatHint` ∈ `{percent, currency, date,
|
|
274
|
+
datetime, integer, decimal}`. Without it, numeric / date columns render raw. → `/ba-create-prd`.
|
|
275
|
+
- **PRD-074** `err` — Every pagespec `actions[].permission` is a valid
|
|
276
|
+
`module.section[.resource].action` string (3 or 4 segments, same regex as PRD-071). Action permissions wrap mutating buttons in
|
|
277
|
+
`<PermissionGuard>` — a wrong shape means an unguarded mutation. → `/ba-create-rbac` if no matching permission, else `/ba-create-prd`.
|
|
278
|
+
- **PRD-076** `err` — Where a pagespec declares form defaults, they reference only
|
|
279
|
+
field names the pagespec also exposes as editable — no orphan keys (catches
|
|
280
|
+
rename drift between the BA capture and the form spec). → `/ba-create-prd`.
|
|
281
|
+
- **PRD-077** `err` — Every pagespec `entity` appears in `prd.entities.md` (a
|
|
282
|
+
pagespec on an undeclared entity cannot be scaffolded — no DTO to import). → `/ba-create-data-model`.
|
|
283
|
+
- **PRD-079** `info`→`warn` — Pagespecs flagged `needsRefinement: true` are surfaced
|
|
284
|
+
with their `refinementNotes`. `info` when the refined ratio < 0.7 (transparency,
|
|
285
|
+
not a block); escalates to `warn` when ≥ 0.7 of pagespecs are flagged (manual
|
|
286
|
+
review recommended before dev). → `/ba-create-prd`.
|
|
287
|
+
- **PRD-080** `err` — Every `actions[].labelKey` and `columns[].labelKey` in a
|
|
288
|
+
pagespec exists in that pagespec's `i18nKeys.fr` (and so, by PRD-072, in the 3
|
|
289
|
+
other locales). Pre-resolves the i18n catalogue so downstream `t('key')` lands. → `/ba-create-prd`.
|
|
290
|
+
- **PRD-082** `err` — For each pagespec whose `view ∈ {list, kanban, card}`, the
|
|
291
|
+
pagespec `filters[]` **count equals** the matching screen's filter count in
|
|
292
|
+
`screen.md` (no silent drop of filters). *(structural-file: count preserved)* → `/ba-create-prd`.
|
|
293
|
+
- **PRD-083** `err` — Every screen in `screen.md` has at least one pagespec with the
|
|
294
|
+
same `screenCode`, and its `view` follows the SmartXxx → view mapping
|
|
295
|
+
(SmartListView → list, SmartForm → form, SmartDashboard → dashboard,
|
|
296
|
+
SmartModuleHome → module-home, …). Synthesised `detail` views are tolerated. → `/ba-create-screen`.
|
|
297
|
+
- **PRD-084** `err` — Every entity in the module's `entité.md` is declared in
|
|
298
|
+
`prd.entities.md` (by PascalCase name or BA code) — even entities not exposed by
|
|
299
|
+
a pagespec, because the entities phase scaffolds the domain layer from this list.
|
|
300
|
+
A missing entity amputates the backend. → `/ba-create-data-model`.
|
|
301
|
+
- **PRD-086** `err` — For each pagespec matched to a `screen.md` screen of type
|
|
302
|
+
`SmartListView` / `SmartKanban` / `SmartCard`, the pagespec `actions[]` **count
|
|
303
|
+
equals** the screen's action count (catches a silently dropped action).
|
|
304
|
+
**Skip** when the screen type ∈ `{SmartForm, SmartDashboard, SmartModuleHome,
|
|
305
|
+
SmartAppHome, SmartSectionHome}` (those capture actions implicitly). *(structural-file: count preserved)* → `/ba-create-prd`.
|
|
306
|
+
- **PRD-087** `err` — Every pagespec `appCode` equals the application code
|
|
307
|
+
(lowercase, no `-web` / `-app` / `-api` suffix). Drift breaks the URL prefix in
|
|
308
|
+
`scaffold-routes` (`componentKey = {appCode}.{module}.{section}`). → `/ba-create-prd`.
|
|
309
|
+
- **PRD-088** `err` — Every pagespec `screenCode` is **verbatim** a `SCR-…` code
|
|
310
|
+
from `screen.md` — no abbreviated invented codes. **Tolerate** a synthesised
|
|
311
|
+
`…-detail` code when it strips to a real upstream code by dropping `-detail`, that
|
|
312
|
+
upstream section carries both a `SmartListView` and a `SmartForm`, and the pagespec
|
|
313
|
+
carries `needsRefinement: true` with a note on the view. → `/ba-create-screen`.
|
|
314
|
+
|
|
315
|
+
### Custom-action contract (PRD-095..101)
|
|
316
|
+
|
|
317
|
+
Every entry under `pagespec.actions[]` is now subject to the full
|
|
318
|
+
`PageCustomActionSchema` declared in `templates/skills/lib/page-spec-actions.ts`.
|
|
319
|
+
These rules catch the silent drops that produce the class of bug (a UI button
|
|
320
|
+
that POSTs `/sync-from-pce` while the backend exposes `/sync-from-proconcept`).
|
|
321
|
+
Standard CRUD action codes (`create`, `read`, `edit`, `update`, `delete`,
|
|
322
|
+
`list`, `detail`) skip PRD-096 / PRD-097 / PRD-099 (they need only `code`,
|
|
323
|
+
`scope`, `permission`, `labelKey`, `variant`).
|
|
324
|
+
|
|
325
|
+
- **PRD-095** `err` — Every `pagespec.actions[]` entry parses against
|
|
326
|
+
`PageCustomActionSchema`. Concretely: `code` matches `^[a-z][a-zA-Z0-9]*$`
|
|
327
|
+
(camelCase); `kind ∈ {api, navigate}`; `scope ∈ {row, bulk, header}`;
|
|
328
|
+
`permission` is the `module.section[.resource].action` kebab regex (3 or 4
|
|
329
|
+
segments); `labelKey` is non-empty. Drops
|
|
330
|
+
free-text custom actions that ba-create-prd silently ignored. → `/ba-create-screen` (fix `screen.md`) then `/ba-create-prd`.
|
|
331
|
+
- **PRD-096** `err` — For every custom action with `kind: "api"`, `endpoint` is
|
|
332
|
+
either present and kebab-case (`^[a-z][a-z0-9-]*$`) OR absent (the default
|
|
333
|
+
`kebab(code)` will be applied at scaffold time); `httpMethod` is one of
|
|
334
|
+
`GET / POST / PUT / PATCH / DELETE`; `endpoint`, `httpMethod`, `payloadDto`
|
|
335
|
+
are absent when `kind: "navigate"`. → `/ba-create-prd`.
|
|
336
|
+
- **PRD-097** `err` — Every `pagespec.actions[].ucReference: UC-…` resolves to
|
|
337
|
+
a use case present in the section's `use-case.md`. The audit Greps the
|
|
338
|
+
`UC-…` code across the section's docs. → `/ba-create-use-case`.
|
|
339
|
+
- **PRD-098** `err` — Every `pagespec.actions[].permission` resolves to a
|
|
340
|
+
permission constant in the module's `rbac.md` (same dynamic-segment shape as
|
|
341
|
+
PRD-071 / PRD-074, no app prefix). → `/ba-create-rbac`.
|
|
342
|
+
- **PRD-099** `err` — **Endpoint uniqueness per entity**: across the union of
|
|
343
|
+
pagespecs sharing the same `(appCode, module, entity)` triplet, no two
|
|
344
|
+
custom actions of `kind: "api"` share the `(httpMethod, scope, endpoint)`
|
|
345
|
+
triplet. A duplicate would emit a colliding `[HttpVerb("<endpoint>")]` on
|
|
346
|
+
the controller (compile error) or shadow a TypeScript service method.
|
|
347
|
+
Caught here because PRD spans multiple screens of the same entity (list +
|
|
348
|
+
form + detail). → `/ba-create-screen`.
|
|
349
|
+
- **PRD-100** `err` — For every custom action with `kind: "navigate"`,
|
|
350
|
+
`targetScreen: SCR-…` resolves to a `SCR-…` code present in some `screen.md`
|
|
351
|
+
of the module (or app, for cross-module navigation). When `targetRoute` is
|
|
352
|
+
also provided, it MUST follow the `routes.<section>.<view>(<arg>?)` shape
|
|
353
|
+
expected by the React Router registry — broken targets crash the page on
|
|
354
|
+
click. → `/ba-create-screen` (fix the target) or `/ba-create-prd`
|
|
355
|
+
(re-resolve the route).
|
|
356
|
+
- **PRD-101** `err` — Every `pagespec.actions[].labelKey` exists in that
|
|
357
|
+
pagespec's `i18nKeys.fr` (and so, by PRD-072, in `en/it/de`). Mirrors
|
|
358
|
+
PRD-080 for custom actions specifically — a missing labelKey produces an
|
|
359
|
+
empty button. → `/ba-create-prd`.
|
|
360
|
+
|
|
361
|
+
### Vibecoding readiness (VIBE-001..009) — upstream coverage the dev sub-agent needs
|
|
362
|
+
|
|
363
|
+
These read the upstream BA docs (same content, file input). When the upstream doc
|
|
364
|
+
is absent, emit an `info` "upstream resolution unavailable" instead of failing.
|
|
365
|
+
|
|
366
|
+
- **VIBE-001** `err` — Every entity in `prd.entities.md` exists in `entité.md` with
|
|
367
|
+
≥ 1 attribute of an EF-mappable `dataType`. Otherwise the entities sub-agent must
|
|
368
|
+
guess attributes. → `/ba-create-data-model`.
|
|
369
|
+
- **VIBE-002** `err` — Every entity in `entité.md` covered by the PRD has an
|
|
370
|
+
unambiguous tenant mode (the module's multi-tenant convention is stated, not
|
|
371
|
+
left implicit). → `/ba-create-data-model`.
|
|
372
|
+
- **VIBE-003** `err` — For every N:M relationship in `entité.md`, `prd.entities.md`
|
|
373
|
+
names the junction table explicitly (else `scaffold-entity` emits only a simple
|
|
374
|
+
FK and breaks). → `/ba-create-data-model`.
|
|
375
|
+
- **VIBE-004** `err` — For every permission ending in `.create|.update|.delete`,
|
|
376
|
+
the `prd.api.md` slice references ≥ 1 validating business rule (`BR-…`) — OR the
|
|
377
|
+
upstream `règles-métier.md` truly has none for that entity (acknowledged). Else
|
|
378
|
+
`scaffold-business` generates an empty validator and integration tests pass
|
|
379
|
+
silently. → `/ba-create-business-rules`.
|
|
380
|
+
- **VIBE-006** `err` — `## Technical constraints` names the target DB provider
|
|
381
|
+
explicitly (`PostgreSQL`, `SQL Server`, or `Azure SQL` — never `SQLite`). Else
|
|
382
|
+
`scaffold-migration` emits a neutral migration that can break on the real
|
|
383
|
+
provider. → `/ba-create-prd`.
|
|
384
|
+
- **VIBE-007** `err` — For the application, `rbac.md` defines ≥ 1 native role and
|
|
385
|
+
the permission floor (`access` + `read`). Without it `scaffold-core-seed` emits an
|
|
386
|
+
amputated seed (a dev role with no base permission). → `/ba-create-rbac`.
|
|
387
|
+
- **VIBE-008** `err` — Every entity in `prd.entities.md` is the target of ≥ 1
|
|
388
|
+
permission in `rbac.md` (via the section, 4-seg, or the resource segment, 5-seg).
|
|
389
|
+
Else the API phase has no controller to scaffold for that entity. → `/ba-create-rbac`.
|
|
390
|
+
- **VIBE-009** `err` — For every `view: form` pagespec, the editable field list is
|
|
391
|
+
non-empty and every field belongs to that entity's attributes in `entité.md` (no
|
|
392
|
+
orphan). Else `scaffold-component` emits an `<input>` for a non-existent attribute
|
|
393
|
+
and the runtime crashes. → `/ba-create-screen`.
|
|
394
|
+
|
|
395
|
+
> The richer Studio-only fields (specHash idempotency, breadcrumb chains,
|
|
396
|
+
> errorScenarios / testScenarios / referenceData / endpointSpecs / domainEvents
|
|
397
|
+
> sidecars) were checked by the legacy PRD-075/078/081/089..097/VIBE-005/011 against
|
|
398
|
+
> the injected JSON envelope. On disk those structures are folded into the slices
|
|
399
|
+
> and pagespec bodies, so their intent is carried by PRD-056/057/072/082/086/094 and
|
|
400
|
+
> VIBE-004 above. There is **no** separate sidecar to validate and **no** partial-PRD
|
|
401
|
+
> gate (PRD-089) — a `.md` PRD is either present and audited or absent (handled in
|
|
402
|
+
> Scope). There is no `[ACTION]` fix handler; every fail routes to a phase skill.
|
|
403
|
+
|
|
404
|
+
---
|
|
405
|
+
|
|
406
|
+
## Quality score & the dev-readiness gate
|
|
407
|
+
|
|
408
|
+
Count `err`, `warn`, `ok` across every check above (skipped checks don't count).
|
|
409
|
+
Keep the source's per-dimension saturating-monotonic formula:
|
|
410
|
+
|
|
411
|
+
```
|
|
412
|
+
score = round( 100 × 100 / (100 + 10·err + 3·warn) )
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
- `err` (×10) blocks the gate; `warn` (×3) is a quality hit; `info` (×0) is
|
|
416
|
+
observation only. Examples: 0e/0w → 100, 0e/5w → 87, 1e/3w → 84, 3e/5w → 69.
|
|
417
|
+
|
|
418
|
+
**Dev-readiness gate** (what `/ba-develop` reads):
|
|
419
|
+
|
|
420
|
+
```
|
|
421
|
+
GO ⟺ score ≥ 80 AND err = 0
|
|
422
|
+
NO-GO otherwise
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
A GO is the gate for `/ba-develop`. Below GO, the PRD is not handed
|
|
426
|
+
to development — fix the findings (each routes to its owning phase skill) and re-run.
|
|
427
|
+
|
|
428
|
+
---
|
|
429
|
+
|
|
430
|
+
## Output — `.smartstack/ba/<APP>/<MODULE>/_audit/prd.md`
|
|
431
|
+
|
|
432
|
+
Write the verdict per the `_workflow/doc-templates.md` audit skeleton, but the
|
|
433
|
+
header MUST carry the dev-readiness gate so the orchestrator can read it:
|
|
434
|
+
|
|
435
|
+
```markdown
|
|
436
|
+
<!-- ba:audit dimension=prd scope=CRM/PIPELINE -->
|
|
437
|
+
# Audit PRD — CRM / PIPELINE
|
|
438
|
+
_2026-05-21 · Verdict : GO · score 92/100 · 0 err · 3 warn_
|
|
439
|
+
|
|
440
|
+
## ✅ Conforme
|
|
441
|
+
- **PRD-001′** — chaque spécification de page (`pagespecs/*.md`) est un bloc JSON
|
|
442
|
+
valide et complet — contrat prêt pour la génération de composants.
|
|
443
|
+
- **PRD-005 / PRD-006** — le PRD et ses trois tranches de phase sont présents et complets.
|
|
444
|
+
- **PRD-070** — chaque écran défini a sa spécification de page (couverture complète).
|
|
445
|
+
|
|
446
|
+
## ⚠️ Avertissements
|
|
447
|
+
- **PRD-064** — l'exclusion « la facturation est gérée ailleurs » (hors-périmètre)
|
|
448
|
+
n'est pas reprise dans les non-objectifs.
|
|
449
|
+
- Pourquoi : risque que le développement réintroduise une fonction explicitement écartée.
|
|
450
|
+
- → Recopier l'exclusion via `/ba-create-prd` (ou ajuster le périmètre via `/ba-create-menu`).
|
|
451
|
+
|
|
452
|
+
## ❌ Bloquants
|
|
453
|
+
- _(aucun)_
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
- The header line is `_<date> · Verdict : <GO|NO-GO> · score <N>/100 · <e> err · <w> warn_`.
|
|
457
|
+
`GO` requires `score ≥ 80` AND `0 err`.
|
|
458
|
+
- Findings are grouped `✅ Conforme` / `⚠️ Avertissements` / `❌ Bloquants`. Rule
|
|
459
|
+
codes stay **bold** (greppable) but are explained in business terms. Each non-ok
|
|
460
|
+
finding gives **what's wrong** (offending codes/paths in bold), **why it matters**,
|
|
461
|
+
and a `→` **fix** naming the owning phase skill (`/ba-create-prd`,
|
|
462
|
+
`/ba-create-data-model`, `/ba-create-screen`, `/ba-create-rbac`,
|
|
463
|
+
`/ba-create-business-rules`, `/ba-create-actors`, `/ba-create-use-case`,
|
|
464
|
+
`/ba-create-menu`).
|
|
465
|
+
- Re-Write the whole file each run (overwrite — it is a fresh verdict).
|
|
466
|
+
|
|
467
|
+
## Chat summary
|
|
468
|
+
|
|
469
|
+
After writing the file, print a concise GO / NO-GO summary in the user's language,
|
|
470
|
+
in **business terms** (not rule codes): the verdict + score + counts, the top
|
|
471
|
+
blockers (max 5, one line each, naming the fix skill), and a plain statement that
|
|
472
|
+
**a GO is the gate for `/ba-develop`** — below GO, fix the blockers
|
|
473
|
+
and re-run before development.
|
|
474
|
+
|
|
475
|
+
## Used by the readiness orchestrator
|
|
476
|
+
|
|
477
|
+
`/ba-audit-pre-dev` aggregates the per-dimension verdicts. When invoked as part of
|
|
478
|
+
pre-dev readiness, still write `_audit/prd.md` as usual — the orchestrator reads
|
|
479
|
+
this file's `Verdict :` header.
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ba-audit-pre-dev
|
|
3
|
+
description: >
|
|
4
|
+
Pre-development readiness orchestrator for a `.smartstack/ba/` project. Does NOT
|
|
5
|
+
re-run any dimension's rules — it reads the per-dimension verdicts already written
|
|
6
|
+
under `_audit/*.md`, aggregates them across every module and the 8 dimensions, and
|
|
7
|
+
writes a project-readiness summary with an overall GO / NO-GO. Run after the
|
|
8
|
+
`/ba-audit-*` dimension audits, before `/ba-create-prd` + development.
|
|
9
|
+
allowed-tools: [Read, Write, Glob, Grep]
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ba-audit-pre-dev — Pre-development readiness orchestrator
|
|
13
|
+
|
|
14
|
+
You are the **readiness orchestrator**. Your job is to answer one business
|
|
15
|
+
question: **is this analysis ready to go into PRD generation and development?**
|
|
16
|
+
|
|
17
|
+
You do **not** re-implement any dimension's rules. Each `/ba-audit-<dim>` skill
|
|
18
|
+
already applies its own rule set and writes a verdict file. You **collect** those
|
|
19
|
+
verdicts, **aggregate** them across all modules and the 8 dimensions, and emit a
|
|
20
|
+
single project-readiness report. The verdict files are the source of truth — never
|
|
21
|
+
fabricate a result for a dimension that hasn't been audited yet.
|
|
22
|
+
|
|
23
|
+
## The 8 readiness dimensions
|
|
24
|
+
|
|
25
|
+
A module is dev-ready only when every dimension below has a clean (`0 err`)
|
|
26
|
+
verdict. Each dimension is audited by its own skill, which writes its verdict to
|
|
27
|
+
`<scope>/_audit/<file>` (per `_workflow/ba-files.md` + `_workflow/doc-templates.md`):
|
|
28
|
+
|
|
29
|
+
| # | Dimension | Audit skill | Verdict file | Fix skill |
|
|
30
|
+
|---|-----------|-------------|--------------|-----------|
|
|
31
|
+
| 1 | menu | `/ba-audit-menu` | `_audit/menu.md` | `/ba-create-menu` |
|
|
32
|
+
| 2 | sections | `/ba-audit-sections` | `_audit/sections.md` | `/ba-create-menu` |
|
|
33
|
+
| 3 | actors | `/ba-audit-actors` | `_audit/actors.md` | `/ba-create-actors` |
|
|
34
|
+
| 4 | use cases | `/ba-audit-use-cases` | `_audit/use-case.md` | `/ba-create-use-case` |
|
|
35
|
+
| 5 | rules | `/ba-audit-rules` | `_audit/règles-métier.md` | `/ba-create-business-rules` |
|
|
36
|
+
| 6 | rbac | `/ba-audit-rbac` | `_audit/rbac.md` | `/ba-create-rbac` |
|
|
37
|
+
| 7 | data model | `/ba-audit-data-model` | `_audit/entité.md` | `/ba-create-data-model` |
|
|
38
|
+
| 8 | screens | `/ba-audit-screens` | `_audit/screen.md` | `/ba-create-screen` |
|
|
39
|
+
|
|
40
|
+
`menu` and `sections` are app/project-scoped (their verdicts live at the app's
|
|
41
|
+
`_audit/`); the other six are module- or section-scoped (their verdicts live at
|
|
42
|
+
the module's — or section's — `_audit/`). Map each verdict back to its owning
|
|
43
|
+
module by its folder path.
|
|
44
|
+
|
|
45
|
+
## Scope
|
|
46
|
+
|
|
47
|
+
- **Project** (default): aggregate every `_audit/*.md` under `.smartstack/ba/`.
|
|
48
|
+
- **Application**: aggregate only the verdicts under `.smartstack/ba/<APP>/**`.
|
|
49
|
+
- **Module / section**: aggregate only the verdicts under that subtree, and the
|
|
50
|
+
app-level `menu`/`sections` verdicts that cover it.
|
|
51
|
+
|
|
52
|
+
The aggregate report is always written to `.smartstack/ba/_audit/pre-dev.md`.
|
|
53
|
+
|
|
54
|
+
## Workflow
|
|
55
|
+
|
|
56
|
+
1. **Collect the verdicts**. `Glob .smartstack/ba/**/_audit/*.md` to list every
|
|
57
|
+
per-dimension verdict in scope. Read each one. Its first line is the anchor
|
|
58
|
+
`<!-- ba:audit dimension=<dim> scope=<code> -->`; the second is the verdict
|
|
59
|
+
header `_<date> · Verdict : <emoji> N warn · M err · K ok_`. Parse the
|
|
60
|
+
dimension, the scope code, and the three counts from that header. Derive the
|
|
61
|
+
owning module from the file's folder path.
|
|
62
|
+
2. **Note the gaps**. For every (module × dimension) pair that has **no**
|
|
63
|
+
`_audit` verdict file, record it as **non audité — lancer `/ba-audit-<dim>`**.
|
|
64
|
+
There is no [ACTION] envelope and no injected state to fall back on, so do not
|
|
65
|
+
invent a count for an un-audited dimension — an absent verdict is itself a
|
|
66
|
+
readiness gap that must be reported.
|
|
67
|
+
3. **(Optional) full pass**. If the user asks for a complete audit, first invoke
|
|
68
|
+
each `/ba-audit-*` dimension skill (state in chat that you are running them),
|
|
69
|
+
let them write their `_audit/*.md` verdicts, then aggregate as above.
|
|
70
|
+
4. **Aggregate**. Sum `err` and `warn` across all collected verdicts. A module is
|
|
71
|
+
GO when all 8 of its dimensions have a verdict and none reports `err`.
|
|
72
|
+
5. **Verdict**. Overall **GO** only when total `err = 0` **and** no dimension is
|
|
73
|
+
un-audited in scope; otherwise **NO-GO**. Any single `err` forces NO-GO.
|
|
74
|
+
6. **Write** `.smartstack/ba/_audit/pre-dev.md` (below), then print the chat
|
|
75
|
+
summary.
|
|
76
|
+
|
|
77
|
+
## Output — `.smartstack/ba/_audit/pre-dev.md`
|
|
78
|
+
|
|
79
|
+
Write the aggregate per the audit-verdict styling from `_workflow/doc-templates.md`
|
|
80
|
+
(anchor + verdict header + severity sections, rule/dimension names in **bold**).
|
|
81
|
+
This file replaces the old report envelope entirely — it is plain markdown, the
|
|
82
|
+
durable readiness record a downstream gate reads.
|
|
83
|
+
|
|
84
|
+
```markdown
|
|
85
|
+
<!-- ba:audit dimension=pre-dev scope=project -->
|
|
86
|
+
# Pré-développement — Synthèse de préparation
|
|
87
|
+
_2026-05-21 · Verdict : ❌ NO-GO · 2 err · 5 warn · 38 ok · 1 dimension non auditée_
|
|
88
|
+
|
|
89
|
+
## 📊 Statut par module × dimension
|
|
90
|
+
| Module | Menu | Sections | Acteurs | Cas d'usage | Règles | RBAC | Données | Écrans |
|
|
91
|
+
|--------|------|----------|---------|-------------|--------|------|---------|--------|
|
|
92
|
+
| CRM / PIPELINE | ✅ | ✅ | ✅ | ⚠️ 1 | ✅ | ❌ 1 | ✅ | ✅ |
|
|
93
|
+
| CRM / CONTACTS | ✅ | ✅ | ✅ | ✅ | ⚠️ 2 | ✅ | ❌ 1 | — non audité |
|
|
94
|
+
|
|
95
|
+
Légende : ✅ 0 err · ⚠️ N warn · ❌ M err · « — non audité » = lancer `/ba-audit-<dim>`.
|
|
96
|
+
|
|
97
|
+
## ❌ Bloquants (à corriger avant le PRD)
|
|
98
|
+
1. **CRM / PIPELINE · RBAC** — permission d'approbation manquante pour le rôle Manager.
|
|
99
|
+
- → `/ba-create-rbac`
|
|
100
|
+
2. **CRM / CONTACTS · Données** — clé étrangère orpheline sur `Contact.OwnerId`.
|
|
101
|
+
- → `/ba-create-data-model`
|
|
102
|
+
|
|
103
|
+
## ⚠️ Avertissements (non bloquants)
|
|
104
|
+
- **CRM / CONTACTS · Règles** — 2 règles sans exemple invalide. → `/ba-create-business-rules`
|
|
105
|
+
- **CRM / PIPELINE · Cas d'usage** — 1 cas d'usage sans postcondition. → `/ba-create-use-case`
|
|
106
|
+
|
|
107
|
+
## 🕳️ Dimensions non auditées
|
|
108
|
+
- **CRM / CONTACTS · Écrans** — aucun verdict. → lancer `/ba-audit-screens`
|
|
109
|
+
|
|
110
|
+
## ✅ Conforme
|
|
111
|
+
- 38 vérifications conformes sur l'ensemble du périmètre.
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
- The header verdict line carries the overall **GO / NO-GO** plus the summed
|
|
115
|
+
`err` / `warn` / `ok` counts and the number of un-audited dimensions.
|
|
116
|
+
- The status table is **module (rows) × dimension (columns)**; each cell shows
|
|
117
|
+
the dimension's verdict for that module (`✅` / `⚠️ N` / `❌ M` / `— non audité`).
|
|
118
|
+
- The blocker list is **prioritized** (errors first) and every blocker names its
|
|
119
|
+
fix skill with a `→`. Drive each blocker straight from a collected verdict —
|
|
120
|
+
never from a rule you re-evaluated here.
|
|
121
|
+
- Re-Write the whole file each run (overwrite — it is a fresh aggregate).
|
|
122
|
+
|
|
123
|
+
## Chat summary
|
|
124
|
+
|
|
125
|
+
After writing the file, print a concise GO/NO-GO summary in the user's language,
|
|
126
|
+
in **business terms** (no rule codes):
|
|
127
|
+
|
|
128
|
+
1. The verdict — **GO** or **NO-GO** — and the headline counts (modules ready / total).
|
|
129
|
+
2. If NO-GO: the top blocking issues (max 5), one line each, naming the module and
|
|
130
|
+
the fix skill to run.
|
|
131
|
+
3. Any dimensions still un-audited, with the `/ba-audit-*` to run.
|
|
132
|
+
4. State plainly that a **GO (0 err, all dimensions audited)** is the gate for
|
|
133
|
+
`/ba-create-prd` and for development; while NO-GO, fix the blockers first.
|
|
134
|
+
|
|
135
|
+
Keep it to ~6–10 lines. The `pre-dev.md` file holds the full detail.
|