@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
|
@@ -11,7 +11,7 @@ Chaque documentation de module DOIT inclure ces sections dans cet ordre:
|
|
|
11
11
|
|
|
12
12
|
| # | Section | Objectif | Public cible |
|
|
13
13
|
|---|---------|----------|--------------|
|
|
14
|
-
| 1 | **
|
|
14
|
+
| 1 | **Objectif** | Ce que fait le module et a quoi il sert (description simple, redigee comme un objectif) | Decideurs, Managers |
|
|
15
15
|
| 2 | **Acces** | Navigation breadcrumb + URL | Utilisateurs |
|
|
16
16
|
| 3 | **Apercu de l'interface** | **Mock UI annote** reproduisant la page reelle | Utilisateurs |
|
|
17
17
|
| 4 | **Formulaire de creation** | **Mock UI annote** du formulaire de creation | Utilisateurs |
|
|
@@ -21,9 +21,40 @@ Chaque documentation de module DOIT inclure ces sections dans cet ordre:
|
|
|
21
21
|
| 8 | **FAQ** | Questions non-techniques | Tous |
|
|
22
22
|
| 9 | **Reference technique** | Permissions, API, regles metier (collapsible) | Admins |
|
|
23
23
|
|
|
24
|
+
> **OBLIGATOIRE — Section 1 = Objectif :** toujours presente, en premier, comme
|
|
25
|
+
> **section numerotee a part entiere** (`t('sections.objective')` + corps `t('objective')`).
|
|
26
|
+
> Le `subtitle` du header ne la remplace PAS, meme s'il resume deja le module.
|
|
27
|
+
> L'omettre echoue le gate step-03 (`existingDoc.missingRequired` = `['objective']`).
|
|
28
|
+
>
|
|
29
|
+
> **ADAPTATION autorisee :** les sections "interface" du milieu (Apercu / Formulaire /
|
|
30
|
+
> Vue detail) s'adaptent a la forme reelle de la page — une page de reglages a onglets
|
|
31
|
+
> devient une section par onglet ; un Kanban devient un board. **Fixes** : Section 1
|
|
32
|
+
> Objectif, puis Acces, et la queue (Cas d'usage, Fonctionnalites, FAQ, Reference
|
|
33
|
+
> technique). On adapte le corps, on ne supprime jamais l'Objectif.
|
|
34
|
+
>
|
|
24
35
|
> **SUPPRIME:** Les sections "Benefices" et "Avant/Apres" ne sont plus incluses.
|
|
25
36
|
> Ce n'est pas un document de vente, mais une documentation utilisateur.
|
|
26
37
|
|
|
38
|
+
### Header OBLIGATOIRE (au-dessus de la Section 1) — structure fixe
|
|
39
|
+
|
|
40
|
+
Tout doc `user` ouvre par un header **identique** d'une page a l'autre (c'est l'ecart
|
|
41
|
+
le plus visible quand il manque). Dans cet ordre exact :
|
|
42
|
+
|
|
43
|
+
| Element | Rendu | Clé i18n |
|
|
44
|
+
|---------|-------|----------|
|
|
45
|
+
| Titre + icone | `<h1 class="text-3xl font-bold …">` | `title` |
|
|
46
|
+
| **Tagline accent** | `<p class="text-xl text-[var(--color-accent-600)] font-medium">` — **REQUISE** | `summary` |
|
|
47
|
+
| Sous-titre | `<p class="text-lg text-[var(--text-secondary)]">` | `subtitle` |
|
|
48
|
+
| Ligne de stats | `<div class="flex gap-4 mt-3 text-sm …">` — **inline, PAS de pills** | `header.{businessRules,apiEndpoints,…}` |
|
|
49
|
+
|
|
50
|
+
- **Tagline (`summary`) obligatoire** : une phrase accent qui resume l'usage. Son
|
|
51
|
+
absence echoue le gate step-03 (`existingDoc.missingRequired` = `['summary']`).
|
|
52
|
+
*(`valueProposition` est l'ancien nom de cette clé — migrer vers `summary`.)*
|
|
53
|
+
- **Stats = texte inline** : `<span>{N} {t('header.xxx')}</span>` — le compteur est
|
|
54
|
+
un noeud texte frere. **NE PAS** utiliser `t('header.xxx', { count })` : si la
|
|
55
|
+
valeur i18n n'a pas `{{count}}`, le nombre disparait (bug observe). **PAS de badges
|
|
56
|
+
pills**, et pas de badge parasite (ex. le nom de l'app) dans la ligne de stats.
|
|
57
|
+
|
|
27
58
|
---
|
|
28
59
|
|
|
29
60
|
## REGLE FONDAMENTALE: Lire la vraie page AVANT de generer
|
|
@@ -38,6 +69,258 @@ Chaque documentation de module DOIT inclure ces sections dans cet ordre:
|
|
|
38
69
|
|
|
39
70
|
---
|
|
40
71
|
|
|
72
|
+
## REGLE STYLE : Discret, pas flashy, contexte DocPanel-aware
|
|
73
|
+
|
|
74
|
+
La documentation est consultee dans **deux contextes** :
|
|
75
|
+
|
|
76
|
+
| Contexte | Largeur | Contraintes |
|
|
77
|
+
|----------|---------|-------------|
|
|
78
|
+
| Page pleine | ~`max-w-5xl` (~1024px) | Marges horizontales `px-4` ou `px-6` |
|
|
79
|
+
| **DocPanel** (panneau lateral droit) | ~480px | Pas de debordement, padding compact, texte plus petit OK |
|
|
80
|
+
|
|
81
|
+
### Couleurs : utiliser UNIQUEMENT les variables CSS du theme
|
|
82
|
+
|
|
83
|
+
> **INTERDIT** : `bg-blue-50`, `bg-green-100`, `border-blue-200`, `text-blue-800`, ou toute couleur Tailwind hardcodee.
|
|
84
|
+
> **INTERDIT** : `bg-[var(--info-bg)]`, `bg-[var(--success-bg)]`, `bg-[var(--warning-bg)]`, `bg-[var(--error-bg)]` pour les blocs d'information / annotation / solution. Ces couleurs sont reservees aux **vraies alertes** (toasts, validation form, banderoles d'erreur), pas a la mise en valeur visuelle de paragraphes.
|
|
85
|
+
>
|
|
86
|
+
> **EXCEPTIONS legitimes** : les **badges semantiques courts** (HTTP method GET/POST/PUT/PATCH/DELETE, status pills "active/inactive", severity tags) PEUVENT utiliser les couleurs `--info/success/warning/error/accent-*`. Convention universelle. Critere : badge `<= 4em` de large, font `text-xs`, pas un container d'information narrative.
|
|
87
|
+
|
|
88
|
+
### Pattern d'accent recommande (Annotation, Solution, Tip, etc.)
|
|
89
|
+
|
|
90
|
+
```tsx
|
|
91
|
+
<div className="rounded-md border-l-2 border-[var(--color-accent-500)] bg-[var(--bg-secondary)] p-3">
|
|
92
|
+
...
|
|
93
|
+
</div>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
- `bg-[var(--bg-secondary)]` : fond neutre (gris clair en light / gris fonce en dark)
|
|
97
|
+
- `border-l-2 border-[var(--color-accent-500)]` : **bordure gauche fine** comme indicateur visuel (PAS de bordure tout-autour)
|
|
98
|
+
- Padding `p-3` ou `px-3 py-2` selon densite voulue
|
|
99
|
+
|
|
100
|
+
### Card pattern OFFICIEL SmartStack
|
|
101
|
+
|
|
102
|
+
Le pattern **OBLIGATOIRE** pour toute card (sections principales, items de listes, blocs d'info) est celui utilisé par les vraies pages SmartStack (`UserDashboardPage.tsx`, `ProfilePage.tsx`, `MyTenantsPage.tsx`) :
|
|
103
|
+
|
|
104
|
+
```tsx
|
|
105
|
+
className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]"
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
| Token | Role | NE PAS remplacer par |
|
|
109
|
+
|-------|------|----------------------|
|
|
110
|
+
| `bg-[var(--bg-card)]` | Fond de card | `bg-white`, `bg-gray-50`, `bg-[var(--bg-secondary)]` |
|
|
111
|
+
| `border border-[var(--border-color)]` | Bordure subtile | `border-gray-200`, pas de border |
|
|
112
|
+
| `rounded-[var(--radius-card)]` | Radius (12px) | `rounded-lg` (= 8px ≠ card), `rounded-md` |
|
|
113
|
+
| `p-6` / `p-5` / `p-4` | Padding interne (densite) | px aleatoires |
|
|
114
|
+
|
|
115
|
+
> **NE PAS UTILISER** `className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]"` seul : la classe `.card` du theme n'inclut PAS de border (juste fond + shadow-sm). Les vraies pages SmartStack utilisent le pattern explicite avec **border** pour une separation plus nette dans les listes / grilles. **Adopter le pattern explicite pour rester aligne**.
|
|
116
|
+
|
|
117
|
+
**Variantes** :
|
|
118
|
+
- **Card highlighted** (selectionnee, focus) : ajouter `border-[var(--color-accent-500)] ring-2 ring-[var(--color-accent-500)]/20`
|
|
119
|
+
- **Card secondaire** (item interne, list row) : `bg-[var(--bg-secondary)] border border-[var(--border-color)] rounded-[var(--radius-card)] p-4`
|
|
120
|
+
- **Card cliquable** (button-like) : ajouter `hover:bg-[var(--bg-hover)] hover:border-[var(--color-accent-500)] transition-all`
|
|
121
|
+
|
|
122
|
+
### Couleurs SmartStack : mapping Tailwind → tokens
|
|
123
|
+
|
|
124
|
+
> **Délégué au CLI ui-polish.** N'applique PAS ce mapping à la main : après génération, `/ui-components` (CLI ui-polish, étape 03) convertit les couleurs Tailwind hardcodées en tokens de façon **déterministe**. La table ci-dessous est une **référence** (ce que le CLI applique) — ne la recopie pas dans le code généré.
|
|
125
|
+
|
|
126
|
+
Mapping de référence (appliqué par ui-polish) quand une source contient du Tailwind hardcode :
|
|
127
|
+
|
|
128
|
+
| Tailwind hardcode | Token SmartStack a utiliser | Contexte |
|
|
129
|
+
|-------------------|-----------------------------|----------|
|
|
130
|
+
| `bg-blue-50` / `bg-blue-100` | `bg-[var(--info-bg)]` | **Alerte info uniquement** (sinon `bg-[var(--bg-secondary)]`) |
|
|
131
|
+
| `text-blue-700` / `text-blue-800` | `text-[var(--info-text)]` ou `text-[var(--color-accent-700)]` | Info vs accent (marque) |
|
|
132
|
+
| `border-blue-200` / `border-blue-500/20` | `border-[var(--info-border)]` ou `border-[var(--color-accent-500)]/20` | — |
|
|
133
|
+
| `bg-green-50` / `bg-green-100` | `bg-[var(--success-bg)]` | **Vrai succes uniquement** |
|
|
134
|
+
| `text-green-600` / `text-green-700` / `text-green-800` | `text-[var(--success-text)]` | — |
|
|
135
|
+
| `border-green-200` | `border-[var(--success-border)]` | — |
|
|
136
|
+
| `bg-red-50` / `bg-red-100` | `bg-[var(--error-bg)]` | **Vraie erreur uniquement** |
|
|
137
|
+
| `text-red-600` / `text-red-700` | `text-[var(--error-text)]` | — |
|
|
138
|
+
| `bg-amber-*` / `bg-yellow-*` | `bg-[var(--warning-bg)]` | **Vrai warning** |
|
|
139
|
+
| `text-amber-700` / `text-yellow-700` | `text-[var(--warning-text)]` | — |
|
|
140
|
+
| `bg-purple-*` / `bg-violet-*` | `bg-[var(--accent-bg)]` ou `bg-[var(--color-accent-500)]/10` | Accent visuel |
|
|
141
|
+
| `text-purple-700` | `text-[var(--color-accent-700)]` | — |
|
|
142
|
+
| `bg-gray-*` / `bg-slate-*` / `bg-zinc-*` | `bg-[var(--bg-secondary)]` ou `bg-[var(--bg-tertiary)]` | — |
|
|
143
|
+
| `text-gray-500` / `text-gray-600` | `text-[var(--text-secondary)]` / `text-[var(--text-tertiary)]` | — |
|
|
144
|
+
|
|
145
|
+
> **Rappel** : `--info-bg`/`--success-bg`/`--warning-bg`/`--error-bg` ne s'utilisent **QUE** pour des **alertes reelles** (toast, form validation, banniere d'erreur, badge HTTP method). Pour mettre en valeur un paragraphe descriptif (Annotation, Tip, Solution), utiliser le pattern d'accent discret `bg-[var(--bg-secondary)] border-l-2 border-[var(--color-accent-500)]`.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
### Marges et largeur — REGLE CRITIQUE
|
|
150
|
+
|
|
151
|
+
> **PROBLEME OBSERVE** : si la Mock UI utilise du padding interne (`px-4 pb-4`) mais que les `<Annotation>` sont placees **hors** du conteneur padded, les annotations dépassent à gauche. Et si les barres internes ont une largeur fixe (px), elles débordent à droite en mode DocPanel (~480px).
|
|
152
|
+
|
|
153
|
+
**Regle inviolable** : **toutes les Annotation d'une meme section sont placees DANS le meme conteneur que le Mock UI**, avec le **MEME** padding horizontal. JAMAIS d'Annotation orpheline en dehors du conteneur padded.
|
|
154
|
+
|
|
155
|
+
```tsx
|
|
156
|
+
{/* BON — Annotation DANS la card, même padding que le Mock UI */}
|
|
157
|
+
<section>
|
|
158
|
+
<h2>...</h2>
|
|
159
|
+
<div className="bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)] overflow-hidden">
|
|
160
|
+
<div className="p-4 space-y-4">
|
|
161
|
+
{/* Mock UI ici */}
|
|
162
|
+
<div className="border rounded-lg p-3">...graphique...</div>
|
|
163
|
+
|
|
164
|
+
{/* Annotations DANS la même card, même padding */}
|
|
165
|
+
<div className="space-y-1.5">
|
|
166
|
+
<Annotation>{t('section.annotations.element1')}</Annotation>
|
|
167
|
+
<Annotation>{t('section.annotations.element2')}</Annotation>
|
|
168
|
+
</div>
|
|
169
|
+
</div>
|
|
170
|
+
</div>
|
|
171
|
+
</section>
|
|
172
|
+
|
|
173
|
+
{/* MAUVAIS — Annotation HORS du conteneur padded → déborde à gauche */}
|
|
174
|
+
<section>
|
|
175
|
+
<div className="bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
176
|
+
<div className="px-4 pb-4">{/* Mock UI avec padding */}</div>
|
|
177
|
+
</div>
|
|
178
|
+
<Annotation>...</Annotation> {/* ← Décalée à gauche par rapport au Mock UI ! */}
|
|
179
|
+
</section>
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**Largeur des éléments internes** :
|
|
183
|
+
- Le conteneur racine est **TOUJOURS** `<div className="space-y-8 max-w-5xl mx-auto pb-12">` — **PAS** de `px-` au niveau racine. Le padding horizontal vient du parent (`DocsLayout` en page pleine, `DocPanel` en panneau).
|
|
184
|
+
- **Toute card contenant un Mock UI** doit avoir `overflow-hidden` pour empêcher les barres ou éléments larges de déborder.
|
|
185
|
+
- **JAMAIS de width fixe en px** sur les barres de graphes : utiliser `flex-1`, `min-w-0`, `w-full` ou `%`. Les flex children doivent avoir `min-w-0` pour autoriser le rétrécissement.
|
|
186
|
+
- Les `<section>` n'ajoutent **JAMAIS** de `mx-` ou `w-` qui forceraient une largeur. Elles s'etalent sur le conteneur.
|
|
187
|
+
- Les Annotations utilisent `space-y-1.5` (espacement reduit). La marge supérieure (`mt-3`) **ne s'applique que si l'Annotation suit directement un Mock UI dans le même padding**.
|
|
188
|
+
- Les `card p-6` ou `card p-4` selon la densite ; en DocPanel, preferer `p-4` quand possible.
|
|
189
|
+
|
|
190
|
+
### Mapping recharts → Mock UI (FIDELITE OBLIGATOIRE)
|
|
191
|
+
|
|
192
|
+
Le Mock UI doit reproduire le **TYPE** de graphique de la vraie page (pas seulement les données). Avant de coder la mock, identifier le composant recharts utilisé dans la vraie page :
|
|
193
|
+
|
|
194
|
+
| Vrai composant | Type recharts | Mock UI fidele |
|
|
195
|
+
|----------------|---------------|----------------|
|
|
196
|
+
| `BarChart` (vertical) | `<BarChart>` + `<Bar>` | Histogramme avec `<div>` empilés en colonnes (`flex items-end h-N`, barres avec `height: %`) |
|
|
197
|
+
| `BarChart` (horizontal, `layout="vertical"`) | `<BarChart layout="vertical">` | Liste de barres horizontales (`<div>` avec `width: %`) |
|
|
198
|
+
| `PieChart` / `Doughnut` | `<PieChart>` + `<Pie>` | SVG `<circle>` avec `stroke-dasharray` OU `conic-gradient` en CSS |
|
|
199
|
+
| `LineChart` | `<LineChart>` + `<Line>` | SVG `<polyline>` ou path |
|
|
200
|
+
| `AreaChart` | `<AreaChart>` + `<Area>` | SVG path avec fill |
|
|
201
|
+
| `RadialBarChart` | `<RadialBarChart>` | SVG circle avec stroke-dasharray |
|
|
202
|
+
|
|
203
|
+
> **REGLE** : si la vraie page utilise `BarChart` (vertical, sans `layout="vertical"`), la mock DOIT être un histogramme vertical — **JAMAIS** une liste de barres horizontales. Inversement, `BarChart layout="vertical"` (Recharts → barres horizontales) → mock en barres horizontales. Vérifier le `layout` du composant `BarChart` source.
|
|
204
|
+
|
|
205
|
+
**Detection** : grep `BarChart\|PieChart\|LineChart\|AreaChart\|RadialBarChart\|layout=` sur le composant chart source (souvent `/components/dashboard/*.tsx` ou `/components/charts/*.tsx`).
|
|
206
|
+
|
|
207
|
+
### Fidélité des DONNÉES : vraie métrique + unité (PAS de % abstrait)
|
|
208
|
+
|
|
209
|
+
> **REGLE CRITIQUE** : les valeurs d'un graphe mock reflètent la **vraie métrique** de la page documentée. Avant de coder, lire le composant chart source et relever :
|
|
210
|
+
> - le **DTO + `dataKey`** (ex. `WeeklyStatsDto.dayStats[].totalDuration`) → **quelle grandeur** est tracée ;
|
|
211
|
+
> - le **formatteur de valeur** (ex. `formatDuration` → `45 min`, `1h 10m`) → **l'unité** affichée ;
|
|
212
|
+
> - les **labels d'axe** (`yAxisLabel`, `XAxis dataKey`) et toute **`ReferenceLine`** (ex. moyenne) ;
|
|
213
|
+
> - la couleur de série réelle (ex. `getCategoricalColor(0)` = `--dataviz-cat-1`).
|
|
214
|
+
>
|
|
215
|
+
> La mock montre cette grandeur **dans sa vraie unité** (minutes/heures, nombre de sessions, €, %…) avec le bon label — **JAMAIS** des barres en `%` 0-100 abstrait quand la vraie métrique est une durée/un compte, et **JAMAIS** les valeurs d'exemple de ce fichier recopiées telles quelles.
|
|
216
|
+
>
|
|
217
|
+
> *Exemple vécu* : `WeeklyUsageChart` trace une **durée moyenne de session/jour** + une ligne de moyenne. Une doc qui affiche « Lun 42 %, Mar 78 %… » a recopié l'exemple : il faut des durées (« 42 min, 1h18… ») et la ligne de moyenne.
|
|
218
|
+
|
|
219
|
+
### Couleurs des graphiques & KPI dashboard : palette `--dataviz-*`
|
|
220
|
+
|
|
221
|
+
> **REGLE** : tout Mock UI reproduisant une **page dashboard** (KPI cards, graphiques, légendes) colore ses **séries de données** avec la palette **`--dataviz-*`** — **jamais** `--color-primary-*` ni `--color-accent-*`. C'est la palette dédiée aux dashboards (colorblind-safe, surchargée à l'exécution par `ThemeContext.applyDataViz()`), exactement comme la vraie `DashboardPage.tsx`.
|
|
222
|
+
|
|
223
|
+
| Élément du dashboard | Token |
|
|
224
|
+
|----------------------|-------|
|
|
225
|
+
| Série unique (histogramme 1 métrique, ligne) | `var(--dataviz-cat-1)` (= `getCategoricalColor(0)` du vrai chart) |
|
|
226
|
+
| Catégories multiples (barres groupées, donut, légende) | `var(--dataviz-cat-1)` … `var(--dataviz-cat-12)` (cycler) |
|
|
227
|
+
| Tendance ↑ / ↓ / = | `var(--dataviz-trend-up)` / `var(--dataviz-trend-down)` / `var(--dataviz-trend-neutral)` |
|
|
228
|
+
| Dégradé séquentiel (heatmap, intensité) | `var(--dataviz-seq-low)` → `var(--dataviz-seq-mid)` → `var(--dataviz-seq-high)` |
|
|
229
|
+
|
|
230
|
+
> La card KPI reste une card standard (`bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]`) ; seuls le **chiffre**, la **barre**, le **segment** ou le **badge de tendance** portent une couleur `--dataviz-*` (via `style={{ backgroundColor: 'var(--dataviz-cat-N)' }}` ou `bg-[var(--dataviz-accent)]`).
|
|
231
|
+
|
|
232
|
+
**Histogramme vertical type** :
|
|
233
|
+
```tsx
|
|
234
|
+
{/* Hauteur MINIMALE h-24 (96px) en page pleine, h-20 (80px) en DocPanel.
|
|
235
|
+
JAMAIS h-16 ou moins — les variations deviennent invisibles. */}
|
|
236
|
+
<div className="flex items-end gap-1 h-24 w-full">
|
|
237
|
+
{data.map((d) => (
|
|
238
|
+
<div key={d.label} className="flex-1 min-w-0 flex flex-col items-center gap-1">
|
|
239
|
+
<div
|
|
240
|
+
className="w-full rounded-t bg-[var(--dataviz-cat-1)]"
|
|
241
|
+
style={{ height: `${(d.value / max) * 100}%`, minHeight: d.value > 0 ? '6px' : '0' }}
|
|
242
|
+
title={formatValue(d.value)} /* vraie unité de la page : "45 min", "1h 10m", "12 sessions"… */
|
|
243
|
+
/>
|
|
244
|
+
<span className="text-[10px] text-[var(--text-tertiary)] truncate w-full text-center">{d.label}</span>
|
|
245
|
+
</div>
|
|
246
|
+
))}
|
|
247
|
+
</div>
|
|
248
|
+
{/* `--dataviz-cat-1` = getCategoricalColor(0) du vrai chart. `d.value` = la VRAIE métrique
|
|
249
|
+
(durée, nombre…), PAS un % abstrait. Si le vrai chart a une ReferenceLine (ex. moyenne),
|
|
250
|
+
la reproduire : trait pointillé --dataviz-trend-neutral + label "Moyenne: 1h 02". */}
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
**Donut chart type (SVG)** :
|
|
254
|
+
```tsx
|
|
255
|
+
<svg viewBox="0 0 36 36" className="w-32 h-32 mx-auto">
|
|
256
|
+
{segments.map((s, i) => (
|
|
257
|
+
<circle
|
|
258
|
+
key={i}
|
|
259
|
+
cx="18" cy="18" r="15.9"
|
|
260
|
+
fill="transparent"
|
|
261
|
+
stroke={s.color}
|
|
262
|
+
strokeWidth="3.5"
|
|
263
|
+
strokeDasharray={`${s.pct} ${100 - s.pct}`}
|
|
264
|
+
strokeDashoffset={s.offset}
|
|
265
|
+
transform="rotate(-90 18 18)"
|
|
266
|
+
/>
|
|
267
|
+
))}
|
|
268
|
+
</svg>
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Donnees Mock EXPRESSIVES (anti-graphes-plats)
|
|
272
|
+
|
|
273
|
+
> **PROBLEME** : si les valeurs mock sont uniformes (ex: `[10, 12, 11, 13, 10]`), toutes les barres apparaissent de la meme taille → graphe **plat** illisible. La doc doit montrer **une histoire visuelle** claire.
|
|
274
|
+
|
|
275
|
+
**Regles de generation des mock data pour les graphes** :
|
|
276
|
+
|
|
277
|
+
| Critere | Regle |
|
|
278
|
+
|---------|-------|
|
|
279
|
+
| Ratio max/min (valeurs > 0) | **≥ 5x** entre la valeur la plus haute et la plus basse non-nulle |
|
|
280
|
+
| Pic clairement identifie | Au moins **1 valeur ≥ 90%** du max (pour qu'on voie un sommet) |
|
|
281
|
+
| Vallee identifiee | Au moins **1 valeur ≤ 15%** du max (pour qu'on voie un creux) |
|
|
282
|
+
| Zero plausible | Mettre `0` uniquement si realiste (ex: week-end pour une app pro, heure de nuit pour une app de jour) |
|
|
283
|
+
| Hauteur container | `h-24` (96px) page pleine, `h-20` (80px) DocPanel — **JAMAIS** `h-16` ou moins |
|
|
284
|
+
| `minHeight` barre non-nulle | `'6px'` minimum pour que les petites valeurs restent visibles |
|
|
285
|
+
|
|
286
|
+
**Exemples concrets — ILLUSTRATIFS, à RÉGÉNÉRER par module (NE PAS recopier ces valeurs)** :
|
|
287
|
+
|
|
288
|
+
> Ces blocs montrent la **forme** attendue (métrique réelle + unité + courbe expressive). Les chiffres sont des exemples : chaque doc produit les siens, tirés de la vraie page. Recopier `mockWeeklyData` / `mockHourlyData` tel quel = doc générique non conforme.
|
|
289
|
+
|
|
290
|
+
```tsx
|
|
291
|
+
// ✓ Hebdomadaire — VRAIE métrique de la page (ici: durée moyenne/jour, en minutes), PAS un % abstrait.
|
|
292
|
+
// Rendue via le formatteur de la vraie page (ex. formatDuration → "1h 40", "42 min").
|
|
293
|
+
const mockWeeklyData = [
|
|
294
|
+
{ day: 'Lun', value: 42 }, // 42 min → barre moyenne
|
|
295
|
+
{ day: 'Mar', value: 78 }, // 1h18 → barre haute
|
|
296
|
+
{ day: 'Mer', value: 61 }, // 1h01 → barre moyenne-haute
|
|
297
|
+
{ day: 'Jeu', value: 100 }, // 1h40 → PIC (le sommet)
|
|
298
|
+
{ day: 'Ven', value: 52 }, // 52 min → barre moyenne
|
|
299
|
+
{ day: 'Sam', value: 12 }, // 12 min → CREUX (week-end)
|
|
300
|
+
{ day: 'Dim', value: 0 }, // inactif → vide assumé
|
|
301
|
+
];
|
|
302
|
+
// ratio max/min(>0) = 100/12 = 8.3x ✓ (le ratio porte sur la forme, l'affichage garde l'unité)
|
|
303
|
+
|
|
304
|
+
// ✓ Horaire — nombre de sessions par tranche : pic matin, creux midi, second pic apres-midi
|
|
305
|
+
const mockHourlyData = [4, 8, 18, 28, 45, 38, 22, 15, 32, 40, 28, 18, 10, 5];
|
|
306
|
+
// max=45, min(>0)=4 → ratio 11x ✓ ; double-bosse expressive
|
|
307
|
+
|
|
308
|
+
// ✓ Donut applications — répartition en % (le donut EST une métrique en %) : 1 dominant, 1 moyen, 1 minoritaire (somme = 100)
|
|
309
|
+
const mockAppSegments = [
|
|
310
|
+
{ label: 'Administration', pct: 65, color: 'var(--dataviz-cat-1)' },
|
|
311
|
+
{ label: 'Support', pct: 25, color: 'var(--dataviz-cat-2)' },
|
|
312
|
+
{ label: 'Mon Espace', pct: 10, color: 'var(--dataviz-cat-3)' },
|
|
313
|
+
];
|
|
314
|
+
|
|
315
|
+
// ✗ MAUVAIS — toutes les valeurs proches → graphe plat
|
|
316
|
+
const badWeekly = [{ day: 'Lun', value: 22 }, { day: 'Mar', value: 25 }, ...];
|
|
317
|
+
// ratio 25/22 = 1.13x → on voit pas la difference
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
> **Pattern recommande** : courbe en cloche, double-bosse (matin+apres-midi), ou pic-isole-week-end. Eviter une distribution lineaire ou uniforme.
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
41
324
|
## Mock UI TSX Approach (TYPE: user — PRIMARY)
|
|
42
325
|
|
|
43
326
|
> **Principe:** Pour les docs de type `user`, generer un **composant TSX autonome** (~400-600 lignes)
|
|
@@ -74,7 +357,9 @@ Chaque documentation de module DOIT inclure ces sections dans cet ordre:
|
|
|
74
357
|
}
|
|
75
358
|
}
|
|
76
359
|
|
|
77
|
-
// CORRECT pour DocRenderer (
|
|
360
|
+
// CORRECT pour DocRenderer (developer/database/testing) — NESTED sous la cle du namespace :
|
|
361
|
+
// DocRenderer resout t('<namespace>.overview.objective'), donc le fichier imbrique sous le namespace.
|
|
362
|
+
// (scaffold-doc fait cette imbrication automatiquement — tu fournis du contenu PLAT.)
|
|
78
363
|
{
|
|
79
364
|
"docsAdministrationUsers": {
|
|
80
365
|
"overview": { "objective": "..." }
|
|
@@ -110,36 +395,52 @@ export default function {ModuleName}DocPage() {
|
|
|
110
395
|
## Composant Helper: Annotation
|
|
111
396
|
|
|
112
397
|
> **OBLIGATOIRE** pour chaque section Mock UI. Un Mock sans explication ne sert a rien.
|
|
398
|
+
>
|
|
399
|
+
> **Design discret (NON flashy)** : fond neutre du theme + bordure gauche fine d'accent.
|
|
400
|
+
> N'utilise PAS `--info-bg`, `--success-bg`, `--warning-bg`, ni `bg-blue-*`/`bg-green-*` (Tailwind hardcode).
|
|
401
|
+
> Le composant doit rester lisible aussi bien en pleine page que dans le panneau `DocPanel`
|
|
402
|
+
> (largeur reduite ~480px). Pas de fond colore vif.
|
|
113
403
|
|
|
114
404
|
```tsx
|
|
115
405
|
import { Info } from 'lucide-react';
|
|
406
|
+
import type { ReactNode } from 'react';
|
|
116
407
|
|
|
117
|
-
function Annotation({
|
|
408
|
+
function Annotation({ children }: { children: ReactNode }) {
|
|
118
409
|
return (
|
|
119
|
-
<div className="flex items-start gap-2
|
|
120
|
-
<Info className="w-
|
|
121
|
-
<span>{
|
|
410
|
+
<div className="flex items-start gap-2 px-3 py-2 rounded-md border-l-2 border-[var(--color-accent-500)] bg-[var(--bg-secondary)] text-xs text-[var(--text-secondary)]">
|
|
411
|
+
<Info className="w-3.5 h-3.5 mt-0.5 flex-shrink-0 text-[var(--text-tertiary)]" />
|
|
412
|
+
<span className="leading-relaxed">{children}</span>
|
|
122
413
|
</div>
|
|
123
414
|
);
|
|
124
415
|
}
|
|
125
416
|
```
|
|
126
417
|
|
|
127
|
-
**
|
|
418
|
+
> **API** : le composant accepte `children` (pas `text`) pour pouvoir injecter du JSX riche (badges, `<code>`, etc.) au besoin. En usage standard, `children` est juste un appel `t('...')`.
|
|
419
|
+
|
|
420
|
+
**Pourquoi ce design :**
|
|
421
|
+
- `bg-[var(--bg-secondary)]` : fond neutre cohérent avec le reste de l'app (gris clair / gris foncé selon le mode)
|
|
422
|
+
- `border-l-2 border-[var(--color-accent-500)]` : bordure fine **uniquement à gauche** comme accent visuel (pas une boîte encadrée flashy)
|
|
423
|
+
- `text-[var(--text-secondary)]` + `text-xs` : texte discret, hierarchie claire avec le contenu principal
|
|
424
|
+
- `px-3 py-2` : padding compact qui respecte les marges du conteneur parent (essentiel pour DocPanel)
|
|
425
|
+
|
|
426
|
+
**Utilisation:** Apres chaque bloc Mock UI, ajouter un `<div className="space-y-1.5 mt-3">` contenant
|
|
128
427
|
les `<Annotation text={t('section.annotations.key')} />` pour chaque element visuel.
|
|
129
428
|
|
|
429
|
+
> **NE PAS** ajouter `mx-` ou `w-` sur les Annotations : elles doivent suivre la largeur du parent (section) pour eviter les debordements en mode DocPanel.
|
|
430
|
+
|
|
130
431
|
### Exemple d'annotation apres un Mock UI
|
|
131
432
|
|
|
132
433
|
```tsx
|
|
133
434
|
{/* Mock UI card ici */}
|
|
134
|
-
<div className="card
|
|
135
|
-
|
|
136
|
-
{/* Annotations explicatives */}
|
|
137
|
-
<div className="space-y-
|
|
138
|
-
<Annotation
|
|
139
|
-
<Annotation
|
|
140
|
-
<Annotation
|
|
141
|
-
<Annotation
|
|
142
|
-
<Annotation
|
|
435
|
+
<div className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">...</div>
|
|
436
|
+
|
|
437
|
+
{/* Annotations explicatives — espacement reduit + marge superieure modeste */}
|
|
438
|
+
<div className="space-y-1.5 mt-3">
|
|
439
|
+
<Annotation>{t('interface.annotations.icon')}</Annotation>
|
|
440
|
+
<Annotation>{t('interface.annotations.title')}</Annotation>
|
|
441
|
+
<Annotation>{t('interface.annotations.code')}</Annotation>
|
|
442
|
+
<Annotation>{t('interface.annotations.defaultBadge')}</Annotation>
|
|
443
|
+
<Annotation>{t('interface.annotations.cta')}</Annotation>
|
|
143
444
|
</div>
|
|
144
445
|
```
|
|
145
446
|
|
|
@@ -155,8 +456,6 @@ import { useTranslation } from 'react-i18next';
|
|
|
155
456
|
import {
|
|
156
457
|
ArrowLeft,
|
|
157
458
|
Info,
|
|
158
|
-
Target,
|
|
159
|
-
Lightbulb,
|
|
160
459
|
Users,
|
|
161
460
|
Zap,
|
|
162
461
|
ChevronDown,
|
|
@@ -165,12 +464,13 @@ import {
|
|
|
165
464
|
|
|
166
465
|
// ═══════════════════════════════════════════════════
|
|
167
466
|
// Helper: Annotation (obligatoire pour chaque Mock UI)
|
|
467
|
+
// Design discret : fond neutre + bordure gauche d'accent (PAS de fond colore vif).
|
|
168
468
|
// ═══════════════════════════════════════════════════
|
|
169
|
-
function Annotation({
|
|
469
|
+
function Annotation({ children }: { children: React.ReactNode }) {
|
|
170
470
|
return (
|
|
171
|
-
<div className="flex items-start gap-2
|
|
172
|
-
<Info className="w-
|
|
173
|
-
<span>{
|
|
471
|
+
<div className="flex items-start gap-2 px-3 py-2 rounded-md border-l-2 border-[var(--color-accent-500)] bg-[var(--bg-secondary)] text-xs text-[var(--text-secondary)]">
|
|
472
|
+
<Info className="w-3.5 h-3.5 mt-0.5 flex-shrink-0 text-[var(--text-tertiary)]" />
|
|
473
|
+
<span className="leading-relaxed">{children}</span>
|
|
174
474
|
</div>
|
|
175
475
|
);
|
|
176
476
|
}
|
|
@@ -199,51 +499,52 @@ export default function {Module}DocPage() {
|
|
|
199
499
|
{/* BREADCRUMB + BACK */}
|
|
200
500
|
<div>
|
|
201
501
|
<Link to="/docs/business/administration/tenants"
|
|
202
|
-
className="inline-flex items-center gap-1.5 text-sm text-[var(--text-secondary)] hover:text-[var(--color-
|
|
502
|
+
className="inline-flex items-center gap-1.5 text-sm text-[var(--text-secondary)] hover:text-[var(--color-accent-600)] mb-4">
|
|
203
503
|
<ArrowLeft className="w-4 h-4" />
|
|
204
504
|
{t('nav.backToParent')}
|
|
205
505
|
</Link>
|
|
206
506
|
</div>
|
|
207
507
|
|
|
208
|
-
{/* HEADER */}
|
|
508
|
+
{/* HEADER — OBLIGATOIRE, structure fixe (voir "Header obligatoire" plus haut) */}
|
|
209
509
|
<div>
|
|
210
510
|
<h1 className="text-3xl font-bold mb-4 flex items-center gap-3">
|
|
211
|
-
<ModuleIcon className="w-8 h-8 text-[var(--color-
|
|
511
|
+
<ModuleIcon className="w-8 h-8 text-[var(--color-accent-600)]" />
|
|
212
512
|
{t('title')}
|
|
213
513
|
</h1>
|
|
214
|
-
|
|
215
|
-
|
|
514
|
+
{/* Tagline accent — REQUISE (clé `summary`). Le gate step-03 bloque si absente. */}
|
|
515
|
+
<p className="text-xl text-[var(--color-accent-600)] font-medium mb-2">
|
|
516
|
+
{t('summary')}
|
|
216
517
|
</p>
|
|
217
518
|
<p className="text-lg text-[var(--text-secondary)]">
|
|
218
519
|
{t('subtitle')}
|
|
219
520
|
</p>
|
|
521
|
+
{/* Ligne de stats — texte inline, PAS de pills. Le compteur est un noeud
|
|
522
|
+
texte frere (`{N} {t('header.xxx')}`), JAMAIS via la pluralisation i18n
|
|
523
|
+
`t('header.xxx', { count })` (si la valeur n'a pas `{{count}}`, le nombre
|
|
524
|
+
disparait silencieusement). 2-3 stats : regles, endpoints + 1 metier. */}
|
|
525
|
+
<div className="flex flex-wrap gap-4 mt-3 text-sm text-[var(--text-secondary)]">
|
|
526
|
+
<span>{businessRules.length} {t('header.businessRules')}</span>
|
|
527
|
+
<span>{apiEndpoints.length} {t('header.apiEndpoints')}</span>
|
|
528
|
+
{/* + 1 stat specifique au module si pertinent (statuts, onglets, types…) */}
|
|
529
|
+
</div>
|
|
220
530
|
</div>
|
|
221
531
|
|
|
222
532
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
223
|
-
{/* SECTION 1:
|
|
533
|
+
{/* SECTION 1: OBJECTIF — Ce que fait le module / a quoi il sert */}
|
|
534
|
+
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
535
|
+
{/* Rediger {t('objective')} COMME UN OBJECTIF : une description */}
|
|
536
|
+
{/* simple et factuelle de ce que permet le module (ce qu'il fait, a */}
|
|
537
|
+
{/* quoi il sert), du point de vue utilisateur. PAS de probleme + */}
|
|
538
|
+
{/* solution, PAS d'argumentaire de vente. */}
|
|
224
539
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
225
|
-
<section id="
|
|
540
|
+
<section id="objectif" className="scroll-mt-4">
|
|
226
541
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
227
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
228
|
-
{t('sections.
|
|
542
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">1</span>
|
|
543
|
+
{t('sections.objective')}
|
|
229
544
|
</h2>
|
|
230
545
|
|
|
231
|
-
<div className="card
|
|
232
|
-
<
|
|
233
|
-
<h3 className="font-semibold mb-3 flex items-center gap-2">
|
|
234
|
-
<Target className="w-5 h-5 text-[var(--error-text)]" />
|
|
235
|
-
{t('sections.problem')}
|
|
236
|
-
</h3>
|
|
237
|
-
<p className="text-[var(--text-secondary)]">{t('problem')}</p>
|
|
238
|
-
</div>
|
|
239
|
-
|
|
240
|
-
<div className="p-4 rounded-lg bg-[var(--success-bg)] border border-[var(--success-border)]">
|
|
241
|
-
<h3 className="font-semibold mb-2 flex items-center gap-2 text-[var(--success-text)]">
|
|
242
|
-
<Lightbulb className="w-5 h-5" />
|
|
243
|
-
{t('sections.solution')}
|
|
244
|
-
</h3>
|
|
245
|
-
<p className="text-[var(--text-secondary)]">{t('solution')}</p>
|
|
246
|
-
</div>
|
|
546
|
+
<div className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
547
|
+
<p className="text-[var(--text-secondary)] leading-relaxed">{t('objective')}</p>
|
|
247
548
|
</div>
|
|
248
549
|
</section>
|
|
249
550
|
|
|
@@ -252,10 +553,10 @@ export default function {Module}DocPage() {
|
|
|
252
553
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
253
554
|
<section id="acces" className="scroll-mt-4">
|
|
254
555
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
255
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
556
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">2</span>
|
|
256
557
|
{t('sections.access')}
|
|
257
558
|
</h2>
|
|
258
|
-
<div className="card
|
|
559
|
+
<div className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
259
560
|
{/* Breadcrumb de navigation et URL */}
|
|
260
561
|
<div className="flex items-center gap-2 text-sm">
|
|
261
562
|
<span>Administration</span> <span>›</span>
|
|
@@ -281,19 +582,19 @@ export default function {Module}DocPage() {
|
|
|
281
582
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
282
583
|
<section id="interface" className="scroll-mt-4">
|
|
283
584
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
284
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
585
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">3</span>
|
|
285
586
|
{t('sections.interface')}
|
|
286
587
|
</h2>
|
|
287
588
|
|
|
288
589
|
{/* Mock UI reproduisant la vraie page */}
|
|
289
|
-
<div className="card
|
|
590
|
+
<div className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
290
591
|
{/* ... MOCK UI FIDELE A LA VRAIE PAGE ... */}
|
|
291
592
|
</div>
|
|
292
593
|
|
|
293
594
|
{/* ANNOTATIONS OBLIGATOIRES apres le Mock UI */}
|
|
294
|
-
<div className="space-y-
|
|
295
|
-
<Annotation
|
|
296
|
-
<Annotation
|
|
595
|
+
<div className="space-y-1.5 mt-3">
|
|
596
|
+
<Annotation>{t('interface.annotations.element1')}</Annotation>
|
|
597
|
+
<Annotation>{t('interface.annotations.element2')}</Annotation>
|
|
297
598
|
{/* ... une annotation par element visuel important ... */}
|
|
298
599
|
</div>
|
|
299
600
|
</section>
|
|
@@ -303,7 +604,7 @@ export default function {Module}DocPage() {
|
|
|
303
604
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
304
605
|
<section id="form" className="scroll-mt-4">
|
|
305
606
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
306
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
607
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">4</span>
|
|
307
608
|
{t('sections.createForm')}
|
|
308
609
|
</h2>
|
|
309
610
|
|
|
@@ -316,7 +617,7 @@ export default function {Module}DocPage() {
|
|
|
316
617
|
{/* Champs de formulaire adaptes au module */}
|
|
317
618
|
</div>
|
|
318
619
|
<div className="flex items-center gap-3 mt-6 pt-6 border-t border-[var(--border-color)]">
|
|
319
|
-
<button className="px-4 py-2 bg-[var(--color-
|
|
620
|
+
<button className="px-4 py-2 bg-[var(--color-accent-600)] text-white rounded-lg">
|
|
320
621
|
{t('form.create')}
|
|
321
622
|
</button>
|
|
322
623
|
<button className="px-4 py-2 border border-[var(--border-color)] rounded-lg">
|
|
@@ -326,10 +627,10 @@ export default function {Module}DocPage() {
|
|
|
326
627
|
</div>
|
|
327
628
|
|
|
328
629
|
{/* ANNOTATIONS OBLIGATOIRES apres le formulaire */}
|
|
329
|
-
<div className="space-y-
|
|
330
|
-
<Annotation
|
|
331
|
-
<Annotation
|
|
332
|
-
<Annotation
|
|
630
|
+
<div className="space-y-1.5 mt-3">
|
|
631
|
+
<Annotation>{t('form.annotations.field1')}</Annotation>
|
|
632
|
+
<Annotation>{t('form.annotations.field2')}</Annotation>
|
|
633
|
+
<Annotation>{t('form.annotations.actions')}</Annotation>
|
|
333
634
|
</div>
|
|
334
635
|
</section>
|
|
335
636
|
|
|
@@ -338,7 +639,7 @@ export default function {Module}DocPage() {
|
|
|
338
639
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
339
640
|
<section id="detail" className="scroll-mt-4">
|
|
340
641
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
341
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
642
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">5</span>
|
|
342
643
|
{t('sections.detailView')}
|
|
343
644
|
</h2>
|
|
344
645
|
|
|
@@ -346,15 +647,15 @@ export default function {Module}DocPage() {
|
|
|
346
647
|
<p className="text-[var(--text-secondary)] mb-4">{t('detail.desc')}</p>
|
|
347
648
|
|
|
348
649
|
{/* Mock UI de la vue detail */}
|
|
349
|
-
<div className="card
|
|
650
|
+
<div className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
350
651
|
{/* ... MOCK UI FIDELE A LA VRAIE VUE DETAIL ... */}
|
|
351
652
|
</div>
|
|
352
653
|
|
|
353
654
|
{/* ANNOTATIONS OBLIGATOIRES */}
|
|
354
|
-
<div className="space-y-
|
|
355
|
-
<Annotation
|
|
356
|
-
<Annotation
|
|
357
|
-
<Annotation
|
|
655
|
+
<div className="space-y-1.5 mt-3">
|
|
656
|
+
<Annotation>{t('detail.annotations.header')}</Annotation>
|
|
657
|
+
<Annotation>{t('detail.annotations.tabs')}</Annotation>
|
|
658
|
+
<Annotation>{t('detail.annotations.stats')}</Annotation>
|
|
358
659
|
</div>
|
|
359
660
|
</section>
|
|
360
661
|
|
|
@@ -363,13 +664,13 @@ export default function {Module}DocPage() {
|
|
|
363
664
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
364
665
|
<section id="cas-usage" className="scroll-mt-4">
|
|
365
666
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
366
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
667
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">6</span>
|
|
367
668
|
{t('sections.useCases')}
|
|
368
669
|
</h2>
|
|
369
670
|
|
|
370
671
|
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4">
|
|
371
672
|
{[1, 2, 3].map((i) => (
|
|
372
|
-
<div key={i} className="card
|
|
673
|
+
<div key={i} className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
373
674
|
<div className="flex items-center gap-3 mb-4">
|
|
374
675
|
<div className="w-10 h-10 rounded-full bg-[var(--accent-bg)] flex items-center justify-center">
|
|
375
676
|
<Users className="w-5 h-5 text-[var(--accent-text)]" />
|
|
@@ -384,9 +685,10 @@ export default function {Module}DocPage() {
|
|
|
384
685
|
<span className="font-medium text-[var(--text-secondary)]">Situation:</span>
|
|
385
686
|
<p>{t(`useCases.${i}.situation`)}</p>
|
|
386
687
|
</div>
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
<
|
|
688
|
+
{/* Bloc "Avec la fonctionnalite" discret — accent gauche, pas de fond vif */}
|
|
689
|
+
<div className="text-sm p-3 rounded-md border-l-2 border-[var(--color-accent-500)] bg-[var(--bg-secondary)]">
|
|
690
|
+
<span className="font-medium text-[var(--text-primary)]">Avec la fonctionnalite:</span>
|
|
691
|
+
<p className="text-[var(--text-secondary)]">{t(`useCases.${i}.withFeature`)}</p>
|
|
390
692
|
</div>
|
|
391
693
|
</div>
|
|
392
694
|
</div>
|
|
@@ -399,22 +701,22 @@ export default function {Module}DocPage() {
|
|
|
399
701
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
400
702
|
<section id="fonctionnalites" className="scroll-mt-4">
|
|
401
703
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
402
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
704
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">7</span>
|
|
403
705
|
{t('sections.features')}
|
|
404
706
|
</h2>
|
|
405
707
|
|
|
406
708
|
<div className="space-y-4">
|
|
407
709
|
{[1, 2, 3, 4, 5].map((i) => (
|
|
408
|
-
<div key={i} className="card
|
|
710
|
+
<div key={i} className="p-6 bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
409
711
|
<div className="flex items-start gap-4">
|
|
410
|
-
<div className="w-10 h-10 rounded-lg bg-[var(--
|
|
411
|
-
<Zap className="w-5 h-5 text-[var(--
|
|
712
|
+
<div className="w-10 h-10 rounded-lg bg-[var(--accent-bg)] flex items-center justify-center flex-shrink-0">
|
|
713
|
+
<Zap className="w-5 h-5 text-[var(--accent-text)]" />
|
|
412
714
|
</div>
|
|
413
715
|
<div className="flex-1">
|
|
414
716
|
<h3 className="font-semibold mb-2">{t(`features.${i}.title`)}</h3>
|
|
415
717
|
<p className="text-[var(--text-secondary)] mb-3">{t(`features.${i}.description`)}</p>
|
|
416
718
|
<div className="p-3 rounded-lg bg-[var(--bg-secondary)] text-sm">
|
|
417
|
-
<span className="font-medium text-[var(--color-
|
|
719
|
+
<span className="font-medium text-[var(--color-accent-600)]">Exemple: </span>
|
|
418
720
|
{t(`features.${i}.example`)}
|
|
419
721
|
</div>
|
|
420
722
|
</div>
|
|
@@ -429,14 +731,14 @@ export default function {Module}DocPage() {
|
|
|
429
731
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
430
732
|
<section id="faq" className="scroll-mt-4">
|
|
431
733
|
<h2 className="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
432
|
-
<span className="w-8 h-8 rounded-full bg-[var(--color-
|
|
734
|
+
<span className="w-8 h-8 rounded-full bg-[var(--color-accent-600)] text-white flex items-center justify-center text-sm">8</span>
|
|
433
735
|
{t('sections.faq')}
|
|
434
736
|
</h2>
|
|
435
737
|
|
|
436
738
|
<div className="space-y-3">
|
|
437
739
|
{[1, 2, 3, 4, 5].map((i) => (
|
|
438
|
-
<details key={i} className="card group">
|
|
439
|
-
<summary className="p-4 cursor-pointer hover:bg-[var(--bg-secondary)] rounded-
|
|
740
|
+
<details key={i} className="bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)] group">
|
|
741
|
+
<summary className="p-4 cursor-pointer hover:bg-[var(--bg-secondary)] rounded-[var(--radius-card)] font-medium flex items-center justify-between">
|
|
440
742
|
{t(`faq.${i}.question`)}
|
|
441
743
|
<ChevronDown className="w-4 h-4 text-[var(--text-secondary)] group-open:rotate-180 transition-transform" />
|
|
442
744
|
</summary>
|
|
@@ -452,8 +754,8 @@ export default function {Module}DocPage() {
|
|
|
452
754
|
{/* SECTION 9: REFERENCE TECHNIQUE (collapsible) */}
|
|
453
755
|
{/* ══════════════════════════════════════════════════════════════════ */}
|
|
454
756
|
<section id="reference" className="scroll-mt-4">
|
|
455
|
-
<details className="card">
|
|
456
|
-
<summary className="p-4 cursor-pointer hover:bg-[var(--bg-secondary)] rounded-
|
|
757
|
+
<details className="bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]">
|
|
758
|
+
<summary className="p-4 cursor-pointer hover:bg-[var(--bg-secondary)] rounded-[var(--radius-card)] font-semibold flex items-center gap-2">
|
|
457
759
|
<span className="w-8 h-8 rounded-full bg-[var(--bg-tertiary)] text-[var(--text-secondary)] flex items-center justify-center text-sm">9</span>
|
|
458
760
|
{t('sections.technicalRef')}
|
|
459
761
|
</summary>
|
|
@@ -540,27 +842,27 @@ export default function {Module}DocPage() {
|
|
|
540
842
|
"backToParent": "Retour a {Parent}"
|
|
541
843
|
},
|
|
542
844
|
"title": "Nom du module",
|
|
543
|
-
"
|
|
845
|
+
"summary": "Une phrase accent resumant l'usage du module (tagline header — REQUISE)",
|
|
544
846
|
"subtitle": "Description en 1-2 phrases",
|
|
545
847
|
|
|
848
|
+
"header": {
|
|
849
|
+
"businessRules": "regles metier",
|
|
850
|
+
"apiEndpoints": "endpoints API"
|
|
851
|
+
},
|
|
852
|
+
|
|
546
853
|
"sections": {
|
|
547
|
-
"
|
|
548
|
-
"problem": "Le probleme",
|
|
549
|
-
"solution": "La solution",
|
|
854
|
+
"objective": "Objectif",
|
|
550
855
|
"access": "Acces",
|
|
551
856
|
"interface": "Apercu de l'interface",
|
|
552
857
|
"createForm": "Formulaire de creation",
|
|
553
858
|
"detailView": "Vue detail",
|
|
554
859
|
"useCases": "Exemples d'utilisation",
|
|
555
|
-
"benefits": "Benefices concrets",
|
|
556
|
-
"beforeAfter": "Avant / Apres",
|
|
557
860
|
"features": "Ce que vous pouvez faire",
|
|
558
861
|
"faq": "Questions frequentes",
|
|
559
862
|
"technicalRef": "Reference technique (administrateurs)"
|
|
560
863
|
},
|
|
561
864
|
|
|
562
|
-
"
|
|
563
|
-
"solution": "Comment ce module resout le probleme",
|
|
865
|
+
"objective": "Description simple, redigee comme un objectif, de ce que permet le module (ce qu'il fait, a quoi il sert) — sans probleme/solution ni argumentaire",
|
|
564
866
|
|
|
565
867
|
"access": {
|
|
566
868
|
"navigation": "Navigation"
|
|
@@ -642,13 +944,22 @@ Avant de valider une documentation de module `user`, verifier:
|
|
|
642
944
|
- [ ] **Mock UI Section 4: Formulaire** avec champs du vrai formulaire
|
|
643
945
|
- [ ] **Mock UI Section 5: Vue detail** avec onglets/stats de la vraie page
|
|
644
946
|
- [ ] **Annotations** sur chaque section Mock UI (composant `Annotation`)
|
|
645
|
-
- [ ] **
|
|
646
|
-
- [ ] **
|
|
947
|
+
- [ ] **Header complet** : titre + **tagline accent `t('summary')`** (REQUISE — gate `missingRequired`) + sous-titre + **ligne de stats inline** (`{N} {t('header.xxx')}`, compteur en texte frere, PAS de pills, PAS de `{count}` i18n)
|
|
948
|
+
- [ ] **Resume descriptif** clair en 1 phrase (neutre, pas une accroche marketing)
|
|
949
|
+
- [ ] **Objectif** = Section 1 a part entiere (`t('sections.objective')` + `t('objective')`), decrit simplement ce qu'il fait / a quoi il sert — PAS de probleme/solution, PAS fondu dans le subtitle. (Gate step-03 : `missingRequired` doit etre vide.)
|
|
647
950
|
- [ ] **2-3 cas d'usage** avec personas nommes
|
|
648
951
|
- [ ] **5 fonctionnalites** avec exemples concrets
|
|
649
952
|
- [ ] **5 FAQ** non-techniques
|
|
650
953
|
- [ ] **Reference technique** collapsible: regles metier + API endpoints reels
|
|
651
|
-
- [ ] **
|
|
954
|
+
- [ ] **Theme tokens uniquement** (`var(--bg-secondary)`, `var(--color-accent-*)`, `var(--text-secondary)`, etc.) — JAMAIS de `bg-blue-50`, `border-green-200`, ni `--info-bg`/`--success-bg` pour les blocs d'emphase
|
|
955
|
+
- [ ] **Couleur de marque = `--color-accent-*`** (rampe thématisable qui suit l'éditeur de thème) — **JAMAIS `--color-primary-*`** (indigo figé, "flashy"). Badges/halos subtils = `bg-[var(--accent-bg)] text-[var(--accent-text)]`. Vérifier : `grep "color-primary" <fichier>` → 0 match
|
|
956
|
+
- [ ] **Graphiques & KPI dashboard = palette `--dataviz-*`** : séries via `--dataviz-accent`/`--dataviz-cat-N`, tendances via `--dataviz-trend-*` — jamais `--color-primary-*`/`--color-accent-*` pour les données
|
|
957
|
+
- [ ] **ZERO couleur Tailwind palette** : verifier `grep -E "(bg|text|border)-(blue|red|green|yellow|amber|purple|violet|gray|slate|zinc|indigo|teal|cyan|sky|orange|pink|rose|emerald|lime)-[0-9]"` → 0 match
|
|
958
|
+
- [ ] **Cards = pattern officiel** : `p-N bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)]` — PAS `className="card"`, PAS `rounded-lg`, PAS `bg-white`/`bg-gray-*`
|
|
959
|
+
- [ ] **Annotation discrete** : `bg-[var(--bg-secondary)] border-l-2 border-[var(--color-accent-500)]` — pas de boite encadree flashy
|
|
960
|
+
- [ ] **Charts fideles + expressifs** : type recharts respecte (histogramme vertical ≠ barres horizontales), ratio max/min ≥ 5x, hauteur ≥ h-24/h-20
|
|
961
|
+
- [ ] **Pas d'overflow DocPanel** : `overflow-hidden` sur cards de chart, `min-w-0` sur flex children, pas de width px
|
|
962
|
+
- [ ] **Racine sans `px-`** : `<div className="space-y-8 max-w-5xl mx-auto pb-12">` pour compatibilite DocPanel (~480px)
|
|
652
963
|
- [ ] **i18n** via `useTranslation()` — pas de texte hardcode
|
|
653
964
|
- [ ] **i18n 4 langues** : FR, EN, DE, IT (JSON plat, pas de cle racine)
|
|
654
965
|
- [ ] **PAS de section "Benefices"** ni "Avant/Apres"
|