create-yss-spec 3.3.8 → 3.4.1
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/README.md +1 -1
- package/package.json +1 -1
- package/template/.agents/skills/.strategic-design-skills-manifest.json +3 -13
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/layer-skill-routing.md +18 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +13 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +9 -8
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +6 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +108 -12
- package/template/.agents/skills/yss-design-system/SKILL.md +19 -19
- package/template/.agents/skills/yss-design-system/references/data-quality-theme.md +13 -0
- package/template/.agents/skills/yss-design-system/references/design-qa-theme.md +3 -1
- package/template/.agents/skills/yss-design-system/references/design-system.md +7 -9
- package/template/.agents/skills/yss-formily/SKILL.md +21 -258
- package/template/.agents/skills/yss-frontend-scaffold-generator/SKILL.md +17 -13
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.eslintrc.cjs +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.npmrc.example +2 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/DESIGN.md +264 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +13 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/__yss_dotfile__.gitignore +6 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/micro-config.json +5 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/orval.config.ts +2 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +30 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.development +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.example +5 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production.standalone +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/index.html +2 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/package.json +34 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/public/favicon.svg +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/App.vue +15 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/api/mutator.ts +7 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/components/ThemeScope.vue +11 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/config/theme.json +41 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/env.d.ts +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/main.ts +40 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/router/index.ts +8 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/store/theme.ts +37 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/styles/index.less +6 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/types/microAppBridge.ts +28 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/utils/microAppRouterBridge.ts +266 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/NotFound.vue +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/Welcome.vue +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/tsconfig.json +23 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/vite.config.ts +16 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +9026 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-workspace.yaml +7 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/references/data-quality-baseline.md +17 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +49 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/scripts/generate_scaffold.mjs +41 -13
- package/template/.agents/skills/yss-frontend-scaffold-generator/scripts/refresh_baseline.mjs +29 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/scripts/run_scaffold_verification.mjs +5 -1
- package/template/.agents/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +32 -0
- package/template/.agents/skills/yss-hook/SKILL.md +1 -1
- package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +1 -1
- package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +5 -3
- package/template/.agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +13 -5
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/SKILL.md +2 -2
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +12 -8
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +97 -9
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +2 -2
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +1 -1
- package/template/.agents/skills/yss-openapi-governance/SKILL.md +2 -0
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +43 -15
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +12 -8
- package/template/.agents/skills/yss-prototype-stage/assets/antd-authoring/package.json +16 -0
- package/template/.agents/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +1678 -0
- package/template/.agents/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +23 -0
- package/template/.agents/skills/yss-prototype-stage/assets/native-workbench/app.js +20 -0
- package/template/.agents/skills/yss-prototype-stage/assets/native-workbench/index.html +11 -0
- package/template/.agents/skills/yss-prototype-stage/assets/native-workbench/styles.css +28 -0
- package/template/.agents/skills/yss-prototype-stage/assets/offline-html/app.js +50 -0
- package/template/.agents/skills/yss-prototype-stage/assets/offline-html/index.html +38 -0
- package/template/.agents/skills/yss-prototype-stage/assets/offline-html/scenarios.js +7 -0
- package/template/.agents/skills/yss-prototype-stage/assets/offline-html/styles.css +20 -0
- package/template/.agents/skills/yss-prototype-stage/references/antd-component-catalog.json +736 -0
- package/template/.agents/skills/yss-prototype-stage/references/antd-integration.md +61 -0
- package/template/.agents/skills/yss-prototype-stage/references/html-prototype-practices.md +14 -0
- package/template/.agents/skills/yss-prototype-stage/references/product-design-adapter.md +28 -51
- package/template/.agents/skills/yss-prototype-stage/references/prototype-profile-routing.md +15 -4
- package/template/.agents/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +71 -0
- package/template/.agents/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +26 -0
- package/template/.agents/skills/yss-prototype-stage/scripts/offline-html.mjs +121 -0
- package/template/.agents/skills/yss-prototype-stage/scripts/prototype-contract.mjs +52 -143
- package/template/.agents/skills/yss-prototype-stage/tests/antd-reference.test.mjs +24 -0
- package/template/.agents/skills/yss-prototype-stage/tests/browser-smoke.mjs +77 -0
- package/template/.agents/skills/yss-prototype-stage/tests/run-scenarios.mjs +73 -26
- package/template/.agents/skills/yss-prototype-stage/tests/workbench-smoke.mjs +57 -0
- package/template/.agents/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
- package/template/.agents/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +0 -1
- package/template/.agents/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.agents/skills/yss-ui/SKILL.md +3 -2
- package/template/.agents/skills/yss-ui/references/component-routing.md +11 -10
- package/template/.agents/skills/yss-ui/references/specialized-components.md +52 -0
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.mjs +4 -3
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/layer-skill-routing.md +18 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +13 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +9 -8
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +6 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +108 -12
- package/template/.codex/skills/yss-design-system/SKILL.md +19 -19
- package/template/.codex/skills/yss-design-system/references/data-quality-theme.md +13 -0
- package/template/.codex/skills/yss-design-system/references/design-qa-theme.md +3 -1
- package/template/.codex/skills/yss-design-system/references/design-system.md +7 -9
- package/template/.codex/skills/yss-formily/SKILL.md +21 -258
- package/template/.codex/skills/yss-frontend-scaffold-generator/SKILL.md +17 -13
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.eslintrc.cjs +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.npmrc.example +2 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/DESIGN.md +264 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +13 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/__yss_dotfile__.gitignore +6 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/micro-config.json +5 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/orval.config.ts +2 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +30 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.development +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.example +5 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production.standalone +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/index.html +2 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/package.json +34 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/public/favicon.svg +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/App.vue +15 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/api/mutator.ts +7 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/components/ThemeScope.vue +11 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/config/theme.json +41 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/env.d.ts +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/main.ts +40 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/router/index.ts +8 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/store/theme.ts +37 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/styles/index.less +6 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/types/microAppBridge.ts +28 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/utils/microAppRouterBridge.ts +266 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/NotFound.vue +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/Welcome.vue +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/tsconfig.json +23 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/vite.config.ts +16 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +9026 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-workspace.yaml +7 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/references/data-quality-baseline.md +17 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +49 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/scripts/generate_scaffold.mjs +41 -13
- package/template/.codex/skills/yss-frontend-scaffold-generator/scripts/refresh_baseline.mjs +29 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/scripts/run_scaffold_verification.mjs +5 -1
- package/template/.codex/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +32 -0
- package/template/.codex/skills/yss-hook/SKILL.md +1 -1
- package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +1 -1
- package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +5 -3
- package/template/.codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +13 -5
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/SKILL.md +2 -2
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +12 -8
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +97 -9
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +2 -2
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +1 -1
- package/template/.codex/skills/yss-openapi-governance/SKILL.md +2 -0
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +43 -15
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +12 -8
- package/template/.codex/skills/yss-prototype-stage/assets/antd-authoring/package.json +16 -0
- package/template/.codex/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +1678 -0
- package/template/.codex/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +23 -0
- package/template/.codex/skills/yss-prototype-stage/assets/native-workbench/app.js +20 -0
- package/template/.codex/skills/yss-prototype-stage/assets/native-workbench/index.html +11 -0
- package/template/.codex/skills/yss-prototype-stage/assets/native-workbench/styles.css +28 -0
- package/template/.codex/skills/yss-prototype-stage/assets/offline-html/app.js +50 -0
- package/template/.codex/skills/yss-prototype-stage/assets/offline-html/index.html +38 -0
- package/template/.codex/skills/yss-prototype-stage/assets/offline-html/scenarios.js +7 -0
- package/template/.codex/skills/yss-prototype-stage/assets/offline-html/styles.css +20 -0
- package/template/.codex/skills/yss-prototype-stage/references/antd-component-catalog.json +736 -0
- package/template/.codex/skills/yss-prototype-stage/references/antd-integration.md +61 -0
- package/template/.codex/skills/yss-prototype-stage/references/html-prototype-practices.md +14 -0
- package/template/.codex/skills/yss-prototype-stage/references/product-design-adapter.md +28 -51
- package/template/.codex/skills/yss-prototype-stage/references/prototype-profile-routing.md +15 -4
- package/template/.codex/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +71 -0
- package/template/.codex/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +26 -0
- package/template/.codex/skills/yss-prototype-stage/scripts/offline-html.mjs +121 -0
- package/template/.codex/skills/yss-prototype-stage/scripts/prototype-contract.mjs +52 -143
- package/template/.codex/skills/yss-prototype-stage/tests/antd-reference.test.mjs +24 -0
- package/template/.codex/skills/yss-prototype-stage/tests/browser-smoke.mjs +77 -0
- package/template/.codex/skills/yss-prototype-stage/tests/run-scenarios.mjs +73 -26
- package/template/.codex/skills/yss-prototype-stage/tests/workbench-smoke.mjs +57 -0
- package/template/.codex/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
- package/template/.codex/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +0 -1
- package/template/.codex/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.codex/skills/yss-ui/SKILL.md +3 -2
- package/template/.codex/skills/yss-ui/references/component-routing.md +11 -10
- package/template/.codex/skills/yss-ui/references/specialized-components.md +52 -0
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.mjs +4 -3
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +3 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/layer-skill-routing.md +18 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +13 -4
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +9 -8
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +6 -4
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +108 -12
- package/template/.cursor/skills/yss-design-system/SKILL.md +19 -19
- package/template/.cursor/skills/yss-design-system/references/data-quality-theme.md +13 -0
- package/template/.cursor/skills/yss-design-system/references/design-qa-theme.md +3 -1
- package/template/.cursor/skills/yss-design-system/references/design-system.md +7 -9
- package/template/.cursor/skills/yss-formily/SKILL.md +21 -258
- package/template/.cursor/skills/yss-frontend-scaffold-generator/SKILL.md +17 -13
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.eslintrc.cjs +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.npmrc.example +2 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/DESIGN.md +264 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +13 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/__yss_dotfile__.gitignore +6 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/micro-config.json +5 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/orval.config.ts +2 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +30 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.development +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.example +5 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production.standalone +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/index.html +2 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/package.json +34 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/public/favicon.svg +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/App.vue +15 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/api/mutator.ts +7 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/components/ThemeScope.vue +11 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/config/theme.json +41 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/env.d.ts +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/main.ts +40 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/router/index.ts +8 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/store/theme.ts +37 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/styles/index.less +6 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/types/microAppBridge.ts +28 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/utils/microAppRouterBridge.ts +266 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/NotFound.vue +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/Welcome.vue +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/tsconfig.json +23 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/vite.config.ts +16 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +9026 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-workspace.yaml +7 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/references/data-quality-baseline.md +17 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +49 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/scripts/generate_scaffold.mjs +41 -13
- package/template/.cursor/skills/yss-frontend-scaffold-generator/scripts/refresh_baseline.mjs +29 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/scripts/run_scaffold_verification.mjs +5 -1
- package/template/.cursor/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +32 -0
- package/template/.cursor/skills/yss-hook/SKILL.md +1 -1
- package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +1 -1
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +5 -3
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +13 -5
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/SKILL.md +2 -2
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +12 -8
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +97 -9
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +2 -2
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +1 -1
- package/template/.cursor/skills/yss-openapi-governance/SKILL.md +2 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +43 -15
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.cursor/skills/yss-prototype-stage/SKILL.md +12 -8
- package/template/.cursor/skills/yss-prototype-stage/assets/antd-authoring/package.json +16 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +1678 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +23 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/native-workbench/app.js +20 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/native-workbench/index.html +11 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/native-workbench/styles.css +28 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/offline-html/app.js +50 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/offline-html/index.html +38 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/offline-html/scenarios.js +7 -0
- package/template/.cursor/skills/yss-prototype-stage/assets/offline-html/styles.css +20 -0
- package/template/.cursor/skills/yss-prototype-stage/references/antd-component-catalog.json +736 -0
- package/template/.cursor/skills/yss-prototype-stage/references/antd-integration.md +61 -0
- package/template/.cursor/skills/yss-prototype-stage/references/html-prototype-practices.md +14 -0
- package/template/.cursor/skills/yss-prototype-stage/references/product-design-adapter.md +28 -51
- package/template/.cursor/skills/yss-prototype-stage/references/prototype-profile-routing.md +15 -4
- package/template/.cursor/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +71 -0
- package/template/.cursor/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +26 -0
- package/template/.cursor/skills/yss-prototype-stage/scripts/offline-html.mjs +121 -0
- package/template/.cursor/skills/yss-prototype-stage/scripts/prototype-contract.mjs +52 -143
- package/template/.cursor/skills/yss-prototype-stage/tests/antd-reference.test.mjs +24 -0
- package/template/.cursor/skills/yss-prototype-stage/tests/browser-smoke.mjs +77 -0
- package/template/.cursor/skills/yss-prototype-stage/tests/run-scenarios.mjs +73 -26
- package/template/.cursor/skills/yss-prototype-stage/tests/workbench-smoke.mjs +57 -0
- package/template/.cursor/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
- package/template/.cursor/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +0 -1
- package/template/.cursor/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.cursor/skills/yss-ui/SKILL.md +3 -2
- package/template/.cursor/skills/yss-ui/references/component-routing.md +11 -10
- package/template/.cursor/skills/yss-ui/references/specialized-components.md +52 -0
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +4 -3
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/layer-skill-routing.md +18 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +13 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +9 -8
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +6 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +108 -12
- package/template/.pi/skills/yss-design-system/SKILL.md +19 -19
- package/template/.pi/skills/yss-design-system/references/data-quality-theme.md +13 -0
- package/template/.pi/skills/yss-design-system/references/design-qa-theme.md +3 -1
- package/template/.pi/skills/yss-design-system/references/design-system.md +7 -9
- package/template/.pi/skills/yss-formily/SKILL.md +21 -258
- package/template/.pi/skills/yss-frontend-scaffold-generator/SKILL.md +17 -13
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.eslintrc.cjs +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.npmrc.example +2 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/DESIGN.md +264 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +13 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/__yss_dotfile__.gitignore +6 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/micro-config.json +5 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/orval.config.ts +2 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +30 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.development +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.example +5 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/.env.production.standalone +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/index.html +2 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/package.json +34 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/public/favicon.svg +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/App.vue +15 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/api/mutator.ts +7 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/components/ThemeScope.vue +11 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/config/theme.json +41 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/env.d.ts +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/main.ts +40 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/router/index.ts +8 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/store/theme.ts +37 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/styles/index.less +6 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/types/microAppBridge.ts +28 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/utils/microAppRouterBridge.ts +266 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/NotFound.vue +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/src/views/Welcome.vue +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/tsconfig.json +23 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/packages/vite.config.ts +16 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +9026 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-workspace.yaml +7 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/references/data-quality-baseline.md +17 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +49 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/scripts/generate_scaffold.mjs +41 -13
- package/template/.pi/skills/yss-frontend-scaffold-generator/scripts/refresh_baseline.mjs +29 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/scripts/run_scaffold_verification.mjs +5 -1
- package/template/.pi/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +32 -0
- package/template/.pi/skills/yss-hook/SKILL.md +1 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +1 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +5 -3
- package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +13 -5
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/SKILL.md +2 -2
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +12 -8
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +97 -9
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +2 -2
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +1 -1
- package/template/.pi/skills/yss-openapi-governance/SKILL.md +2 -0
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +43 -15
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +12 -8
- package/template/.pi/skills/yss-prototype-stage/assets/antd-authoring/package.json +16 -0
- package/template/.pi/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +1678 -0
- package/template/.pi/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +23 -0
- package/template/.pi/skills/yss-prototype-stage/assets/native-workbench/app.js +20 -0
- package/template/.pi/skills/yss-prototype-stage/assets/native-workbench/index.html +11 -0
- package/template/.pi/skills/yss-prototype-stage/assets/native-workbench/styles.css +28 -0
- package/template/.pi/skills/yss-prototype-stage/assets/offline-html/app.js +50 -0
- package/template/.pi/skills/yss-prototype-stage/assets/offline-html/index.html +38 -0
- package/template/.pi/skills/yss-prototype-stage/assets/offline-html/scenarios.js +7 -0
- package/template/.pi/skills/yss-prototype-stage/assets/offline-html/styles.css +20 -0
- package/template/.pi/skills/yss-prototype-stage/references/antd-component-catalog.json +736 -0
- package/template/.pi/skills/yss-prototype-stage/references/antd-integration.md +61 -0
- package/template/.pi/skills/yss-prototype-stage/references/html-prototype-practices.md +14 -0
- package/template/.pi/skills/yss-prototype-stage/references/product-design-adapter.md +28 -51
- package/template/.pi/skills/yss-prototype-stage/references/prototype-profile-routing.md +15 -4
- package/template/.pi/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +71 -0
- package/template/.pi/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +26 -0
- package/template/.pi/skills/yss-prototype-stage/scripts/offline-html.mjs +121 -0
- package/template/.pi/skills/yss-prototype-stage/scripts/prototype-contract.mjs +52 -143
- package/template/.pi/skills/yss-prototype-stage/tests/antd-reference.test.mjs +24 -0
- package/template/.pi/skills/yss-prototype-stage/tests/browser-smoke.mjs +77 -0
- package/template/.pi/skills/yss-prototype-stage/tests/run-scenarios.mjs +73 -26
- package/template/.pi/skills/yss-prototype-stage/tests/workbench-smoke.mjs +57 -0
- package/template/.pi/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
- package/template/.pi/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +0 -1
- package/template/.pi/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.pi/skills/yss-ui/SKILL.md +3 -2
- package/template/.pi/skills/yss-ui/references/component-routing.md +11 -10
- package/template/.pi/skills/yss-ui/references/specialized-components.md +52 -0
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.mjs +4 -3
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/CONTEXT.md +1 -0
- package/template/DESIGN.md +31 -14
- package/template/__yss_dotfile__.gitignore +4 -0
- package/template/docs/agents/digital-human-roles.yaml +4 -4
- package/template/docs/agents/skill-migrations.md +15 -2
- package/template/docs/agents/yss-skill-registry.yaml +6 -40
- package/template/docs/design/README.md +4 -4
- package/template/docs/design/design-system-sync.yaml +2 -1
- package/template/docs/design/design.md +23 -31
- package/template/docs/design/preview-dark.html +3 -3
- package/template/docs/design/preview.css +1 -1
- package/template/docs/design/preview.html +2 -2
- package/template/docs/design/templates/interaction-spec-template.md +2 -2
- package/template/docs/design/templates/prototype-evidence-template.yaml +18 -22
- package/template/docs/design/templates/prototype-review-checklist.md +3 -1
- package/template/docs/design/templates/state-matrix-template.md +1 -1
- package/template/docs/design/templates/visual-baseline-template.yaml +3 -2
- package/template/docs/design/tokens/.design-md-projection.json +7 -7
- package/template/docs/design/tokens/theme.json +16 -10
- package/template/docs/design/tokens/tokens.compact.json +521 -237
- package/template/docs/design/tokens/tokens.dark.json +527 -240
- package/template/docs/design/tokens/tokens.default.json +513 -235
- package/template/docs/design/tokens/variables.css +67 -65
- package/template/docs/design/tokens/variables.dark.css +41 -41
- package/template/docs/process/delivery-preflight.md +1 -1
- package/template/docs/process/frontend-backend-delivery.md +2 -1
- package/template/docs/process/lifecycle-registry-baseline.json +1 -1
- package/template/docs/process/lifecycle-registry.yaml +5 -5
- package/template/docs/process/schemas/api-contract-decision.schema.json +74 -0
- package/template/docs/process/schemas/data-architecture-decision.schema.json +34 -0
- package/template/docs/process/schemas/implementation-repository-preparation-result.schema.json +80 -24
- package/template/docs/process/schemas/project-scaffold-contract.schema.json +85 -11
- package/template/docs/process/schemas/strategic-design-handoff.schema.json +296 -107
- package/template/docs/process/schemas/strategic-handoff-delivery-verification.schema.json +19 -0
- package/template/docs/process/schemas/strategic-handoff-delivery.schema.json +84 -0
- package/template/docs/process/schemas/strategic-handoff-import-receipt-v3.schema.json +42 -0
- package/template/docs/process/strategic-handoff-package.md +26 -9
- package/template/docs/user-guide//350/256/276/345/244/207/345/200/237/347/224/250/350/264/257/347/251/277/346/241/210/344/276/213.md +1 -1
- package/template/scripts/audit-legacy-backend-scaffold +29 -0
- package/template/scripts/lib/api-contract-decision.mjs +49 -0
- package/template/scripts/lib/api-contract-decision.test.mjs +69 -0
- package/template/scripts/lib/backend-scaffold-prerequisites.mjs +123 -0
- package/template/scripts/lib/legacy-backend-scaffold-audit.mjs +87 -0
- package/template/scripts/lib/legacy-backend-scaffold-audit.test.mjs +64 -0
- package/template/scripts/lib/lifecycle-transition.mjs +153 -5
- package/template/scripts/lib/openapi-draft-validation.mjs +111 -0
- package/template/scripts/lib/skill-registry.mjs +17 -3
- package/template/scripts/lib/skill-supply-chain.mjs +12 -1
- package/template/scripts/lib/strategic-feedback.mjs +2 -2
- package/template/scripts/lib/strategic-handoff-consumption.mjs +2 -2
- package/template/scripts/lib/strategic-handoff.mjs +77 -3
- package/template/scripts/strategic-handoff +6 -4
- package/template/scripts/verify-openapi-draft-validation-record +10 -129
- package/template/scripts/verify-strategic-context-import +12 -14
- package/template/skills-lock.json +22 -77
- package/template/yss-public-skills.json +0 -6
- package/template.snapshot.json +8 -4
- package/template/.agents/skills/yss-antd-design/SKILL.md +0 -35
- package/template/.agents/skills/yss-antd-design/references/boundaries.md +0 -30
- package/template/.agents/skills/yss-antd-design/references/cli-matrix.md +0 -38
- package/template/.agents/skills/yss-antd-design/references/evidence.md +0 -35
- package/template/.agents/skills/yss-antd-design/scripts/validate-frontmatter.mjs +0 -46
- package/template/.agents/skills/yss-antd-design/scripts/validate-frontmatter.test.mjs +0 -27
- package/template/.agents/skills/yss-antdv-next-design/SKILL.md +0 -48
- package/template/.agents/skills/yss-antdv-next-design/references/boundaries.md +0 -25
- package/template/.agents/skills/yss-antdv-next-design/references/cli-matrix.md +0 -34
- package/template/.agents/skills/yss-antdv-next-design/references/fact-pack.md +0 -38
- package/template/.agents/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +0 -213
- package/template/.agents/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +0 -168
- package/template/.agents/skills/yss-antdv-next-design/tests/run-scenarios.mjs +0 -139
- package/template/.agents/skills/yss-components/SKILL.md +0 -386
- package/template/.agents/skills/yss-components/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-components/references/frontend-docs.md +0 -9
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +0 -31
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +0 -8
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +0 -8
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +0 -8
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +0 -8
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-mvc-scaffold-generator/SKILL.md +0 -8
- package/template/.agents/skills/yss-mvc-scaffold-generator/agents/openai.yaml +0 -4
- package/template/.agents/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +0 -50
- package/template/.agents/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +0 -42
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/architecture.md +0 -28
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +0 -137
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +0 -341
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/skill.md +0 -87
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +0 -3
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +0 -9
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +0 -74
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +0 -36
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +0 -114
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +0 -90
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +0 -54
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +0 -103
- package/template/.codex/skills/yss-antd-design/SKILL.md +0 -35
- package/template/.codex/skills/yss-antd-design/references/boundaries.md +0 -30
- package/template/.codex/skills/yss-antd-design/references/cli-matrix.md +0 -38
- package/template/.codex/skills/yss-antd-design/references/evidence.md +0 -35
- package/template/.codex/skills/yss-antd-design/scripts/validate-frontmatter.mjs +0 -46
- package/template/.codex/skills/yss-antd-design/scripts/validate-frontmatter.test.mjs +0 -27
- package/template/.codex/skills/yss-antdv-next-design/SKILL.md +0 -48
- package/template/.codex/skills/yss-antdv-next-design/references/boundaries.md +0 -25
- package/template/.codex/skills/yss-antdv-next-design/references/cli-matrix.md +0 -34
- package/template/.codex/skills/yss-antdv-next-design/references/fact-pack.md +0 -38
- package/template/.codex/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +0 -213
- package/template/.codex/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +0 -168
- package/template/.codex/skills/yss-antdv-next-design/tests/run-scenarios.mjs +0 -139
- package/template/.codex/skills/yss-components/SKILL.md +0 -386
- package/template/.codex/skills/yss-components/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-components/references/frontend-docs.md +0 -9
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +0 -31
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +0 -8
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +0 -8
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +0 -8
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +0 -8
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-mvc-scaffold-generator/SKILL.md +0 -8
- package/template/.codex/skills/yss-mvc-scaffold-generator/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +0 -50
- package/template/.codex/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +0 -42
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/architecture.md +0 -28
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +0 -137
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +0 -341
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/skill.md +0 -87
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +0 -3
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +0 -9
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +0 -74
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +0 -36
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +0 -114
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +0 -90
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +0 -54
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +0 -103
- package/template/.cursor/skills/yss-antd-design/SKILL.md +0 -35
- package/template/.cursor/skills/yss-antd-design/references/boundaries.md +0 -30
- package/template/.cursor/skills/yss-antd-design/references/cli-matrix.md +0 -38
- package/template/.cursor/skills/yss-antd-design/references/evidence.md +0 -35
- package/template/.cursor/skills/yss-antd-design/scripts/validate-frontmatter.mjs +0 -46
- package/template/.cursor/skills/yss-antd-design/scripts/validate-frontmatter.test.mjs +0 -27
- package/template/.cursor/skills/yss-antdv-next-design/SKILL.md +0 -48
- package/template/.cursor/skills/yss-antdv-next-design/references/boundaries.md +0 -25
- package/template/.cursor/skills/yss-antdv-next-design/references/cli-matrix.md +0 -34
- package/template/.cursor/skills/yss-antdv-next-design/references/fact-pack.md +0 -38
- package/template/.cursor/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +0 -213
- package/template/.cursor/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +0 -168
- package/template/.cursor/skills/yss-antdv-next-design/tests/run-scenarios.mjs +0 -139
- package/template/.cursor/skills/yss-components/SKILL.md +0 -386
- package/template/.cursor/skills/yss-components/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-components/references/frontend-docs.md +0 -9
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +0 -31
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +0 -8
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +0 -8
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +0 -8
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +0 -8
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-mvc-scaffold-generator/SKILL.md +0 -8
- package/template/.cursor/skills/yss-mvc-scaffold-generator/agents/openai.yaml +0 -4
- package/template/.cursor/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +0 -50
- package/template/.cursor/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +0 -42
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/architecture.md +0 -28
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +0 -137
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +0 -341
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/skill.md +0 -87
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +0 -3
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +0 -9
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +0 -74
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +0 -36
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +0 -114
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +0 -90
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +0 -54
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +0 -103
- package/template/.pi/skills/yss-antd-design/SKILL.md +0 -35
- package/template/.pi/skills/yss-antd-design/references/boundaries.md +0 -30
- package/template/.pi/skills/yss-antd-design/references/cli-matrix.md +0 -38
- package/template/.pi/skills/yss-antd-design/references/evidence.md +0 -35
- package/template/.pi/skills/yss-antd-design/scripts/validate-frontmatter.mjs +0 -46
- package/template/.pi/skills/yss-antd-design/scripts/validate-frontmatter.test.mjs +0 -27
- package/template/.pi/skills/yss-antdv-next-design/SKILL.md +0 -48
- package/template/.pi/skills/yss-antdv-next-design/references/boundaries.md +0 -25
- package/template/.pi/skills/yss-antdv-next-design/references/cli-matrix.md +0 -34
- package/template/.pi/skills/yss-antdv-next-design/references/fact-pack.md +0 -38
- package/template/.pi/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +0 -213
- package/template/.pi/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +0 -168
- package/template/.pi/skills/yss-antdv-next-design/tests/run-scenarios.mjs +0 -139
- package/template/.pi/skills/yss-components/SKILL.md +0 -386
- package/template/.pi/skills/yss-components/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-components/references/frontend-docs.md +0 -9
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +0 -31
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +0 -8
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +0 -8
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +0 -8
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +0 -8
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-mvc-scaffold-generator/SKILL.md +0 -8
- package/template/.pi/skills/yss-mvc-scaffold-generator/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +0 -50
- package/template/.pi/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +0 -42
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/architecture.md +0 -28
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +0 -137
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +0 -341
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/skill.md +0 -87
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +0 -3
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +0 -9
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +0 -74
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +0 -36
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +0 -114
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +0 -90
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +0 -54
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +0 -103
|
@@ -1,272 +1,35 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: yss-formily
|
|
3
|
-
description:
|
|
3
|
+
description: 路由 YSS UI 业务页面中的 YFormily 场景;当查询、编辑、详情、联动、分步表单或 schema 生成需求出现时,加载最小 Formily 专项 Skill。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# YFormily
|
|
6
|
+
# YFormily 场景路由
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
本技能只负责选择最小专项 Skill,不复制 Formily API、schema、代码骨架或页面编排规则。新代码 canonical 组件名是 `YFormily`;`YssFormily` 仅作为已确认导出的历史兼容名。
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
- 需要 JSON Schema、字段联动、动态显隐、远程字典、Slot 自定义渲染。
|
|
12
|
-
- 需要 `mode=0/1/2`、详情 Descriptions、分步表单。
|
|
10
|
+
## 必选路由
|
|
13
11
|
|
|
14
|
-
|
|
12
|
+
任何 YFormily 使用都必须加载 `formily-foundation`,以确认公开 Props、schema 层级、提交、校验和错误处理边界。
|
|
15
13
|
|
|
16
|
-
|
|
17
|
-
- 只处理表格操作列或分页:使用 `../ytable-usage/SKILL.md`。
|
|
18
|
-
- 组件库内部改造 YFormily 源码:回到 yss-ui 源仓库,使用其 `categories.library` 维护流程;该类 skill 不随业务模板分发。
|
|
14
|
+
## 条件路由
|
|
19
15
|
|
|
20
|
-
|
|
16
|
+
| 场景 | 追加 Skill |
|
|
17
|
+
|---|---|
|
|
18
|
+
| 字段显隐、值联动、异步 effects、跨字段副作用 | `formily-linkage-effects` |
|
|
19
|
+
| 新增、编辑、查看模式,详情插槽或 disabled 规则 | `formily-mode-slot-detail` |
|
|
20
|
+
| 分步录入、跨步骤校验、步骤状态 | `formily-step-flow` |
|
|
21
|
+
| Modal / Drawer 的打开、回填、保存、关闭和回退 | `page-form-module` |
|
|
22
|
+
| 从自然语言、截图或 Figma 生成 schema | `yss-formily-schema-generator` |
|
|
21
23
|
|
|
22
|
-
|
|
23
|
-
2. MCP 查询未命中时先用 `search_docs/list_components` 校正名称;只有 MCP 不可用、调用失败或校正后仍无结果时,才读取最新 `llms-full.txt`。文档与当前项目依赖版本不一致时,用当前源码和可编译导出核验,不猜测 API。
|
|
24
|
-
3. 本 Skill 已加载时不得用 `get_skill` 重复查询自身;只在所需 Formily 子 Skill 未同步到本地时使用 `get_skill` 兜底。
|
|
24
|
+
一个任务可以同时加载多个专项 Skill。`page-form-module` 只在页面容器生命周期命中时加载,不作为本技能的固定依赖。
|
|
25
25
|
|
|
26
|
-
##
|
|
26
|
+
## 边界
|
|
27
27
|
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
- `Submit` 组件必须传 `onSubmit`,否则不会触发提交校验。
|
|
33
|
-
- 标准业务列表/CRUD 查询区默认让 `YFormily` 只渲染查询字段;“查询/重置”用外部 `YButton` 放在 `.xxx__search-actions`,由 hook 的 `handleSearch/handleReset` 控制分页重置和请求。
|
|
34
|
-
- `AutoButtonGroup + Submit + Reset` 仅用于纯 Formily 表单提交场景,不作为业务列表查询区默认方案。
|
|
35
|
-
- 查询区禁止把 `.xxx__search-content` 写成横向“表单 + 按钮”并用大 `gap`、`align-items: flex-start`、`padding-top` 硬调按钮位置;字段换行时按钮必须仍在搜索卡片右下角。
|
|
36
|
-
- 横向业务表单必须显式设置 `FormLayout` 的 `labelWidth` 和 `labelAlign: 'right'`;抽屉/弹窗表单不得让 label 宽度随文本抖动。
|
|
37
|
-
- `FormGrid` 必须保持响应式:默认 `minColumns: 1`,通过 `maxColumns`、`minWidth` 控制宽屏列数;禁止把 `minColumns` 写成与 `maxColumns` 相同的固定列数,除非用户明确要求固定不响应。
|
|
38
|
-
- 抽屉/弹窗编辑表单默认 `labelWidth: 140`、`labelAlign: 'right'`、`FormGrid { maxColumns: 2, minColumns: 1, minWidth: 320~360 }`;备注、长文本等字段用 `gridSpan` 占满整行。
|
|
39
|
-
- **数据前置同步原则(必守)**:弹窗/抽屉表单数据必须在 `openCreate`/`openEdit` 打开方法中**同步赋好 `formModel.value`**,严禁在子组件内部通过 `watch(visible) + await nextTick() + initForm()` 滞后回填数据。
|
|
40
|
-
- **单一信任源**:优先使用 `v-model="formModel"` + `ref="formRef"` 调用 `formRef.value.submit()` 获取校验后数据;严禁在业务组件顶层写 `const form = createForm()` 单例并与 `v-model`、`form.setValues()`、`form.reset()` 混用导致状态死锁。
|
|
41
|
-
- **禁止滥用动态 `:key`**:严禁在 `YFormily`/`YssFormily` 上使用 `:key="isEdit ? 'edit' : 'create'"` 强制 Remount,必须通过响应式数据或 `:mode` 驱动。
|
|
42
|
-
- **弹窗生命周期隔离**:Modal/Drawer 必须配置 `:destroy-on-close="true"`,且内部 `YFormily` 必须带 `v-if="visible/open"` 随容器打开挂载、关闭销毁,保证数据干净无残留。
|
|
43
|
-
- 下拉/选择器(`Select`, `TreeSelect`, `Radio.Group` 等)异步数据源**必须使用 `enum` 或 `x-reactions` / `field.dataSource` 注入**;**严禁将异步 options 数组直接写入 `x-component-props.options`**(会导致 Formily 首次挂载覆盖为空数组且外部响应式无法通知,产生首次打开弹窗显示“暂无数据”、关闭再打开才展示的经典 Bug)。
|
|
44
|
-
- 弹窗/抽屉表单的基础字典下拉数据,优先在打开前 `await fetchOptions()` 或在页面 `onMounted` 提前拉取;在组件内部 `watch` 更新选项时,必须使用精确字段路径并在 `await nextTick()` 后调用 `form.setFieldState('fieldName', state => { state.dataSource = options })`。
|
|
45
|
-
- `mode=2` 自动进入详情查看态;不要生成旧式详情开关 prop,配置描述列表用 `detail-options`。
|
|
46
|
-
- 只使用源码已公开的 Props 和实例方法;当前没有 `show-button-group`、`detail-as`、`validate`、`reset`、`clearValidate` 等 YFormily API,禁止根据旧 demo 猜测。
|
|
47
|
-
- 分步表单默认使用 AntDV `Steps + 多 YFormily`,不默认使用 `FormStep`。
|
|
48
|
-
- Orval API 的网络错误及 `success === false` 业务错误已由 `mutator.ts` 统一 `message.error` 并 reject;提交 hook 的 `else`/`catch` 只做状态恢复或业务补偿,禁止重复 `message.error`。
|
|
49
|
-
- 需要统一提示客户端校验失败时使用 `onFormSubmitValidateFailed`;禁止在 `onFormSubmitFailed` 或 `Submit.onSubmitFailed` 中调用 `message.error`,因为 API reject 也会进入这些通用失败回调。
|
|
28
|
+
- 查询、列表、页面目录与弹窗编排不在本技能重复定义。
|
|
29
|
+
- 不根据旧 Demo 猜测 Props、实例方法或组件名。
|
|
30
|
+
- API 错误提示服从项目 mutator 与 `yss-api-integration`,不得在通用失败回调重复提示。
|
|
31
|
+
- 从截图或设计稿生成 schema 时,本技能只做路由;生成结果仍须按基础、联动、模式或分步专项校验。
|
|
50
32
|
|
|
51
|
-
##
|
|
33
|
+
## 输出
|
|
52
34
|
|
|
53
|
-
|
|
54
|
-
<script setup lang="ts">
|
|
55
|
-
import { YFormily, type ISchema } from '@yss-ui/components';
|
|
56
|
-
|
|
57
|
-
/** 表单保存回调 Props。 */
|
|
58
|
-
interface SaveFormProps {
|
|
59
|
-
onSave: (values: Record<string, any>) => Promise<void>;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/** 表单保存回调。 */
|
|
63
|
-
const props = defineProps<SaveFormProps>();
|
|
64
|
-
|
|
65
|
-
/** 校验通过后提交表单数据。 */
|
|
66
|
-
const onSubmit = (values: Record<string, any>) => {
|
|
67
|
-
return props.onSave(values);
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
/** 基础业务表单 Schema。 */
|
|
71
|
-
const schema: ISchema = {
|
|
72
|
-
type: 'object',
|
|
73
|
-
properties: {
|
|
74
|
-
layout: {
|
|
75
|
-
type: 'void',
|
|
76
|
-
'x-component': 'FormLayout',
|
|
77
|
-
'x-component-props': { layout: 'horizontal', labelWidth: 100, labelAlign: 'right' },
|
|
78
|
-
properties: {
|
|
79
|
-
grid: {
|
|
80
|
-
type: 'void',
|
|
81
|
-
'x-component': 'FormGrid',
|
|
82
|
-
'x-component-props': { maxColumns: 3, minColumns: 1, minWidth: 260 },
|
|
83
|
-
properties: {
|
|
84
|
-
name: {
|
|
85
|
-
type: 'string',
|
|
86
|
-
title: '名称',
|
|
87
|
-
required: true,
|
|
88
|
-
'x-decorator': 'FormItem',
|
|
89
|
-
'x-component': 'Input',
|
|
90
|
-
'x-component-props': { placeholder: '请输入' },
|
|
91
|
-
},
|
|
92
|
-
submit: {
|
|
93
|
-
type: 'void',
|
|
94
|
-
'x-component': 'Submit',
|
|
95
|
-
'x-content': '提交',
|
|
96
|
-
'x-component-props': { onSubmit: '{{ onSubmit }}' },
|
|
97
|
-
},
|
|
98
|
-
},
|
|
99
|
-
},
|
|
100
|
-
},
|
|
101
|
-
},
|
|
102
|
-
},
|
|
103
|
-
};
|
|
104
|
-
</script>
|
|
105
|
-
|
|
106
|
-
<template>
|
|
107
|
-
<YFormily :schema="schema" :scope="{ onSubmit }" />
|
|
108
|
-
</template>
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### 表单布局基准
|
|
112
|
-
|
|
113
|
-
- 普通业务表单:`FormLayout { layout: 'horizontal', labelWidth: 120, labelAlign: 'right' }`,`FormGrid { maxColumns: 3, minColumns: 1, minWidth: 260 }`。
|
|
114
|
-
- 抽屉/弹窗表单:长 label 较多时用 `labelWidth: 140`,`FormGrid { maxColumns: 2, minColumns: 1, minWidth: 320 或 360 }`。
|
|
115
|
-
- 查询表单:字段少时用 `labelWidth: 100~120`,`FormGrid { maxColumns: 3 或 4, minColumns: 1, minWidth: 260~360 }`;查询/重置按钮放在表单外部的右下角按钮行。
|
|
116
|
-
- 不要为了复刻宽屏两列布局写 `minColumns: 2`;这会破坏组件库 demo 中默认的响应式收缩行为。
|
|
117
|
-
- 备注、说明、富文本、长输入框等横跨整行字段,在字段 `x-decorator-props` 上设置 `gridSpan`,例如两列表单使用 `gridSpan: 2`。
|
|
118
|
-
|
|
119
|
-
### 业务列表查询区固定模板
|
|
120
|
-
|
|
121
|
-
```typescript
|
|
122
|
-
import { YButton, YCard, YFormily, type ISchema } from '@yss-ui/components';
|
|
123
|
-
|
|
124
|
-
/** 查询表单 Schema。 */
|
|
125
|
-
const searchSchema: ISchema = {
|
|
126
|
-
type: 'object',
|
|
127
|
-
properties: {
|
|
128
|
-
layout: {
|
|
129
|
-
type: 'void',
|
|
130
|
-
'x-component': 'FormLayout',
|
|
131
|
-
'x-component-props': { layout: 'horizontal', labelWidth: 120, labelAlign: 'right' },
|
|
132
|
-
properties: {
|
|
133
|
-
grid: {
|
|
134
|
-
type: 'void',
|
|
135
|
-
'x-component': 'FormGrid',
|
|
136
|
-
'x-component-props': { maxColumns: 4, minColumns: 1, minWidth: 260, columnGap: 16, rowGap: 0 },
|
|
137
|
-
properties: {
|
|
138
|
-
keyword: {
|
|
139
|
-
type: 'string',
|
|
140
|
-
title: '关键字',
|
|
141
|
-
'x-decorator': 'FormItem',
|
|
142
|
-
'x-component': 'Input',
|
|
143
|
-
'x-component-props': { placeholder: '请输入关键字', allowClear: true },
|
|
144
|
-
},
|
|
145
|
-
},
|
|
146
|
-
},
|
|
147
|
-
},
|
|
148
|
-
},
|
|
149
|
-
},
|
|
150
|
-
};
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
```vue
|
|
154
|
-
<template>
|
|
155
|
-
<YCard class="demo-page__search-card" :padding="16">
|
|
156
|
-
<div class="demo-page__search-content">
|
|
157
|
-
<div class="demo-page__search-form">
|
|
158
|
-
<YFormily v-model="queryModel" :schema="searchSchema" />
|
|
159
|
-
</div>
|
|
160
|
-
<div class="demo-page__search-actions">
|
|
161
|
-
<YButton type="primary" @click="handleSearch">查询</YButton>
|
|
162
|
-
<YButton @click="handleReset">重置</YButton>
|
|
163
|
-
</div>
|
|
164
|
-
</div>
|
|
165
|
-
</YCard>
|
|
166
|
-
</template>
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
```less
|
|
170
|
-
.demo-page {
|
|
171
|
-
&__search-content {
|
|
172
|
-
display: flex;
|
|
173
|
-
flex-direction: column;
|
|
174
|
-
align-items: stretch;
|
|
175
|
-
gap: 16px;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
&__search-form {
|
|
179
|
-
width: 100%;
|
|
180
|
-
min-width: 0;
|
|
181
|
-
|
|
182
|
-
:deep(.ant-formily-form-item) {
|
|
183
|
-
margin-bottom: 0;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
:deep(.ant-formily-form-grid) {
|
|
187
|
-
width: 100%;
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
&__search-actions {
|
|
192
|
-
display: flex;
|
|
193
|
-
width: 100%;
|
|
194
|
-
flex: 0 0 auto;
|
|
195
|
-
align-items: center;
|
|
196
|
-
justify-content: flex-end;
|
|
197
|
-
gap: 12px;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
> 只有纯 Formily 提交表单才把按钮放回 schema 内,例如 `AutoButtonGroup -> Submit/Reset`。
|
|
203
|
-
|
|
204
|
-
### 抽屉/弹窗表单模板
|
|
205
|
-
|
|
206
|
-
```typescript
|
|
207
|
-
/** 抽屉或弹窗内的编辑表单 Schema。 */
|
|
208
|
-
const formSchema: ISchema = {
|
|
209
|
-
type: 'object',
|
|
210
|
-
properties: {
|
|
211
|
-
layout: {
|
|
212
|
-
type: 'void',
|
|
213
|
-
'x-component': 'FormLayout',
|
|
214
|
-
'x-component-props': { layout: 'horizontal', labelWidth: 140, labelAlign: 'right' },
|
|
215
|
-
properties: {
|
|
216
|
-
grid: {
|
|
217
|
-
type: 'void',
|
|
218
|
-
'x-component': 'FormGrid',
|
|
219
|
-
'x-component-props': { maxColumns: 2, minColumns: 1, minWidth: 360, columnGap: 24, rowGap: 16 },
|
|
220
|
-
properties: {
|
|
221
|
-
orgName: {
|
|
222
|
-
type: 'string',
|
|
223
|
-
title: '机构名称',
|
|
224
|
-
required: true,
|
|
225
|
-
'x-decorator': 'FormItem',
|
|
226
|
-
'x-component': 'Input',
|
|
227
|
-
'x-component-props': { placeholder: '请输入机构名称' },
|
|
228
|
-
},
|
|
229
|
-
remark: {
|
|
230
|
-
type: 'string',
|
|
231
|
-
title: '备注',
|
|
232
|
-
'x-decorator': 'FormItem',
|
|
233
|
-
'x-decorator-props': { gridSpan: 2 },
|
|
234
|
-
'x-component': 'Input.TextArea',
|
|
235
|
-
'x-component-props': { placeholder: '请输入备注', rows: 4 },
|
|
236
|
-
},
|
|
237
|
-
},
|
|
238
|
-
},
|
|
239
|
-
},
|
|
240
|
-
},
|
|
241
|
-
},
|
|
242
|
-
};
|
|
243
|
-
```
|
|
244
|
-
|
|
245
|
-
## 关联 skill
|
|
246
|
-
|
|
247
|
-
- 基础表单:`../formily-foundation/SKILL.md`
|
|
248
|
-
- 联动副作用:`../formily-linkage-effects/SKILL.md`
|
|
249
|
-
- 模式与详情插槽:`../formily-mode-slot-detail/SKILL.md`
|
|
250
|
-
- 分步流程:`../formily-step-flow/SKILL.md`
|
|
251
|
-
- 完整示例:`../formily-foundation/references/examples.md`
|
|
252
|
-
|
|
253
|
-
## 交付检查清单
|
|
254
|
-
|
|
255
|
-
- [ ] 使用 `YFormily`,模板名和 import 一致。
|
|
256
|
-
- [ ] 只使用文档和源码已公开的 Props/实例方法,未出现 `show-button-group`、`detail-as` 等旧式或虚构 API。
|
|
257
|
-
- [ ] 未生成旧式详情开关 prop。
|
|
258
|
-
- [ ] 未导入业务层 `@formily/antdv` UI 组件。
|
|
259
|
-
- [ ] Schema 层级完整:`FormLayout -> FormGrid -> 字段`,`Submit.onSubmit` 可触发校验。
|
|
260
|
-
- [ ] 所有横向表单已设置固定 `labelWidth` 和 `labelAlign: 'right'`。
|
|
261
|
-
- [ ] `FormGrid` 保持响应式,未用 `minColumns: maxColumns` 固定列数。
|
|
262
|
-
- [ ] 业务列表查询区的查询/重置按钮在外部 `.xxx__search-actions`,按钮行独占下一行并右对齐;缩窄后不会贴在第一行字段旁。
|
|
263
|
-
- [ ] 抽屉/弹窗表单 label 宽度统一、右对齐,窄屏可响应式换列,长字段已占满整行。
|
|
264
|
-
- [ ] 复杂联动已选择表达式、`x-reactions`、`scope` 或 `effects` 中合适的一种。
|
|
265
|
-
- [ ] API 失败仅由 `mutator.ts` 统一提示,hook 的 `else`/`catch` 未重复 `message.error`。
|
|
266
|
-
|
|
267
|
-
## 失败兜底策略
|
|
268
|
-
|
|
269
|
-
- 字段不显示时,先检查 `FormLayout -> FormGrid -> 字段` 层级。
|
|
270
|
-
- 提交不触发时,先检查 `Submit.x-component-props.onSubmit` 或外部 `formRef.submit()`。
|
|
271
|
-
- 查看态显示异常时,先检查 `mode=2`、`detail-options` 和 `detail-<path>` 插槽命名。
|
|
272
|
-
- API 调用被 reject 时,让错误继续中断当前流程;只在 `finally` 恢复 loading,不在业务 hook 重复提示。
|
|
35
|
+
返回本次命中的专项 Skill、未命中项的理由,以及需要由目标工程版本或源码确认的组件事实。
|
|
@@ -9,19 +9,20 @@ description: Use when creating a new YSS frontend micro-application from the sta
|
|
|
9
9
|
|
|
10
10
|
## Template Source
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
默认使用随 Skill 分发的 `assets/data-quality-v1/`,从 Data Quality 抽取工作区、主题与微应用模式,重建为通用空骨架。来源、差异、支持范围见 `references/data-quality-baseline.md`;`references/data-quality-v1.manifest.json` 是文件白名单与 SHA-256 依据。
|
|
13
|
+
|
|
14
|
+
技术栈:Vue 3、TypeScript、Vite、Pinia、Vue Router、Qiankun、pnpm、Ant Design Vue 4、YSS UI、Orval。Ant Design v6 是视觉设计参考,不是此 Vue 工程的运行时包。默认主题继承根 `DESIGN.md` 的 Data Quality 浅色、14px 正文、32px 控件、20px Card 内距;暗色 / compact 显式开启。
|
|
15
|
+
|
|
16
|
+
合同 `frontend.template` 默认填 `{ "kind": "bundled", "baseline_id": "data-quality-v1", "manifest_digest": "sha256:<当前manifest字节摘要>" }`。用 `node .agents/skills/yss-frontend-scaffold-generator/scripts/refresh_baseline.mjs` 只读核验摘要;维护主题或骨架后先审阅改动,再用 `--write` 更新派生。
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
兼容已有 `{ repository, commit }` 合同:只有明确选择外部 Git 模板时传 `--template-checkout` 并核验 origin 与精确 40 位 commit;不再默认从私网浮动分支获取模板。
|
|
18
19
|
|
|
19
20
|
## Inputs
|
|
20
21
|
|
|
21
22
|
- `app_name`:应用名。
|
|
22
23
|
- `microapp_name`:微应用注册名。
|
|
23
24
|
- `base_route`:基础路由。
|
|
24
|
-
- Project Scaffold Contract schema v4:包含用户确认的仓库 scope、目标路径、`init_git`、模板 commit、应用参数、允许写路径和验证命令。
|
|
25
|
+
- Project Scaffold Contract schema v4:包含用户确认的仓库 scope、目标路径、`init_git`、模板 manifest 摘要或 Git commit、应用参数、允许写路径和验证命令。
|
|
25
26
|
- OpenAPI Freeze 记录:有 API 影响时提供已批准的冻结 YAML 版本和引用;无 API 影响时提供带原因的 `not-applicable`。
|
|
26
27
|
- OpenAPI JSON 派生记录:`docs/.scratch/<feature>/api/<feature>-json-export.md`,包含 YAML / JSON SHA-256、Redocly CLI 版本和 lockfile 引用。
|
|
27
28
|
- 冻结 JSON 产物:`docs/.scratch/<feature>/api/<feature>.json`;这是唯一允许交给既有前端代码生成流程的上游产物。
|
|
@@ -35,18 +36,20 @@ branch: template
|
|
|
35
36
|
|
|
36
37
|
1. 确认当前任务已经通过 Harness 入口分诊、逐项目脚手架决定已由真实用户确认,且 schema v4 合同已由生命周期批准、持久化并保持当前。
|
|
37
38
|
2. 确认目标是外部实现仓库;只有用户明确选择时才输出到 Harness 仓库的 `apps/frontend/<project>/`。`apps/frontend/` 只能作为项目容器,`app/frontend/`、`app/backend/` 及其子路径禁止作为输出位置。`git-submodule` 只能在已初始化且附加分支的子仓工作树生成;空 gitlink、detached HEAD、`--force` 覆盖挂载点不得当成普通目录。
|
|
38
|
-
3.
|
|
39
|
-
4. 使用 `scripts/generate_and_verify_scaffold.mjs
|
|
39
|
+
3. 默认核验 bundled manifest 摘要、白名单和每个文件字节;Git 兼容方式核验合同的精确 commit。生成不读取 Data Quality 本机路径或未提交业务代码。
|
|
40
|
+
4. 使用 `scripts/generate_and_verify_scaffold.mjs --contract-file <合同> --output-dir <目录> --evidence-dir <证据目录>` 生成白名单骨架;Git 来源额外提供 checkout,导出批准 commit 并排除 `.git` 及未提交工作树内容;目标必须不存在或为空。不得默认写入 Harness、不得 `--force`。仅合同 `init_git=true` 时初始化目标 Git。
|
|
40
41
|
5. 替换应用名、微应用名、路由、`micro-config.json`、环境变量和 README 中的模板占位。
|
|
41
42
|
6. 有 API 影响时核验 OpenAPI Freeze 记录和 JSON 派生记录,将摘要一致的 JSON 原样物化到 `<frontend>/openapi/openapi.json`;`openapi_impact=not-applicable` 时必须有原因并禁止生成 API client。
|
|
42
43
|
7. 保持模板既有的前端代码生成配置不变;本 Harness 只将 SHA-256 一致的 JSON 原样交给既有前端代码生成流程,不修改该配置、不在此仓库执行生成,也不设置生成 CI 门禁。目标前端项目在需要时手动运行其既有命令。
|
|
43
|
-
8.
|
|
44
|
+
8. 企业 registry / 认证由目标环境用户级 npm 配置提供,禁止复制来源 `.npmrc` 或 token。实际执行并记录 `pnpm install --frozen-lockfile`、`pnpm lint:check`、`pnpm type-check`、`pnpm build`、`pnpm build:standalone` 的退出码和日志;缺失脚本只能由批准的工程基线提供替代命令。任何必需命令失败都阻断。
|
|
44
45
|
9. 按 `docs/templates/implementation-repo-registry-template.md` 回写前端实现仓库登记。
|
|
45
46
|
|
|
46
47
|
## Expected Template Shape
|
|
47
48
|
|
|
48
49
|
```text
|
|
49
|
-
|
|
50
|
+
DESIGN.md
|
|
51
|
+
packages/src/config/theme.json
|
|
52
|
+
openapi/ # 仅有冻结 API 时物化
|
|
50
53
|
packages/src/api/
|
|
51
54
|
packages/src/router/
|
|
52
55
|
packages/src/views/
|
|
@@ -64,15 +67,16 @@ packages/package.json
|
|
|
64
67
|
- 不推送、不创建 MR / PR,除非用户明确要求。
|
|
65
68
|
- 不绕过 OpenAPI Draft / Freeze;API client 只消费与 OpenAPI JSON 派生记录 SHA-256 一致的冻结 JSON。
|
|
66
69
|
- 不接受任意 URL、未冻结 YAML、后端运行时输出或手工 JSON 作为既有前端代码生成流程的输入。
|
|
67
|
-
-
|
|
70
|
+
- 目标生成时不修改既有代码生成配置,也不把客户端生成加入 CI;本模板维护允许审阅和更新标准配置。
|
|
71
|
+
- 不携带 Data Quality 业务页面、默认管理员、生产接口、私网 Postman 同步、部署凭证或残缺 JSP 命令;当前支持 Qiankun 与 standalone,JSP 不在可用基线内。
|
|
68
72
|
- 不得把 `apps/frontend/` 容器根登记为项目根;Harness 内每个前端项目必须有独立的 `apps/frontend/<project>/` 路径。
|
|
69
73
|
- 不把模板示例页面当作业务功能交付。
|
|
70
|
-
- 生成后仍需使用 `yss-ui-business-page-generation`、`
|
|
74
|
+
- 生成后仍需使用 `yss-ui-business-page-generation`、`component-selection-imports`、`yss-api-integration` 以及实际命中的表格、树、Formily 等专项 skill 实现业务页面。
|
|
71
75
|
|
|
72
76
|
## Output
|
|
73
77
|
|
|
74
78
|
- 前端工程生成位置或目标仓库信息。
|
|
75
|
-
-
|
|
79
|
+
- 模板 baseline / manifest 摘要,或 Git repository / commit 证据。
|
|
76
80
|
- 替换参数清单。
|
|
77
81
|
- install / lint / type-check / build 命令,以及目标前端项目既有的手动客户端生成命令(如有)。
|
|
78
82
|
- OpenAPI Freeze 记录、OpenAPI JSON 派生记录、JSON SHA-256 和 `openapi/openapi.json` 物化证据。
|
package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/.eslintrc.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = { root: true, env: { browser: true, node: true, es2022: true }, extends: ['eslint:recommended', 'plugin:vue/vue3-essential', 'plugin:@typescript-eslint/recommended'], parser: 'vue-eslint-parser', parserOptions: { parser: '@typescript-eslint/parser', ecmaVersion: 'latest', sourceType: 'module', extraFileExtensions: ['.vue'] }, ignorePatterns: ['packages/src/api/generated/**'], rules: { 'vue/multi-word-component-names': 'off' } };
|
package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/DESIGN.md
ADDED
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: alpha
|
|
3
|
+
name: YSS Data Quality Design System
|
|
4
|
+
description: A machine-readable Data Quality default visual contract for YSS enterprise applications, aligned with YSS enterprise visual semantics and framework-independent HTML prototypes. It complements the product lifecycle and does not define product behavior, API contracts, permissions, or business states.
|
|
5
|
+
|
|
6
|
+
colors:
|
|
7
|
+
primary: "#3371ff"
|
|
8
|
+
primary-control: "#245bdb"
|
|
9
|
+
primary-control-hover: "#2f68eb"
|
|
10
|
+
primary-active: "#0958d9"
|
|
11
|
+
primary-bg: "#e6f4ff"
|
|
12
|
+
on-primary: "#ffffff"
|
|
13
|
+
text: "rgba(0, 0, 0, 0.88)"
|
|
14
|
+
text-secondary: "rgba(0, 0, 0, 0.65)"
|
|
15
|
+
text-tertiary: "rgba(0, 0, 0, 0.45)"
|
|
16
|
+
canvas-layout: "#f0f2f5"
|
|
17
|
+
surface: "#ffffff"
|
|
18
|
+
surface-elevated: "#ffffff"
|
|
19
|
+
surface-subtle: "#fafafa"
|
|
20
|
+
border: "#d9d9d9"
|
|
21
|
+
border-secondary: "#f0f0f0"
|
|
22
|
+
success: "#52c41a"
|
|
23
|
+
success-bg: "#f6ffed"
|
|
24
|
+
warning: "#faad14"
|
|
25
|
+
warning-bg: "#fffbe6"
|
|
26
|
+
error: "#f5222d"
|
|
27
|
+
error-bg: "#fff2f0"
|
|
28
|
+
info-bg: "#e6f4ff"
|
|
29
|
+
|
|
30
|
+
typography:
|
|
31
|
+
body:
|
|
32
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif'
|
|
33
|
+
fontSize: 14px
|
|
34
|
+
fontWeight: 400
|
|
35
|
+
lineHeight: 1.571
|
|
36
|
+
body-strong:
|
|
37
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif'
|
|
38
|
+
fontSize: 14px
|
|
39
|
+
fontWeight: 600
|
|
40
|
+
lineHeight: 1.571
|
|
41
|
+
heading-lg:
|
|
42
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif'
|
|
43
|
+
fontSize: 24px
|
|
44
|
+
fontWeight: 600
|
|
45
|
+
lineHeight: 1.333
|
|
46
|
+
heading-md:
|
|
47
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif'
|
|
48
|
+
fontSize: 18px
|
|
49
|
+
fontWeight: 600
|
|
50
|
+
lineHeight: 1.333
|
|
51
|
+
caption:
|
|
52
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif'
|
|
53
|
+
fontSize: 12px
|
|
54
|
+
fontWeight: 400
|
|
55
|
+
lineHeight: 1.571
|
|
56
|
+
button:
|
|
57
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif'
|
|
58
|
+
fontSize: 14px
|
|
59
|
+
fontWeight: 600
|
|
60
|
+
lineHeight: 1.571
|
|
61
|
+
|
|
62
|
+
rounded:
|
|
63
|
+
none: 0px
|
|
64
|
+
sm: 4px
|
|
65
|
+
md: 6px
|
|
66
|
+
lg: 8px
|
|
67
|
+
pill: 9999px
|
|
68
|
+
|
|
69
|
+
spacing:
|
|
70
|
+
xxs: 4px
|
|
71
|
+
xs: 8px
|
|
72
|
+
sm: 12px
|
|
73
|
+
md: 16px
|
|
74
|
+
card: 20px
|
|
75
|
+
lg: 24px
|
|
76
|
+
xl: 32px
|
|
77
|
+
xxl: 48px
|
|
78
|
+
|
|
79
|
+
components:
|
|
80
|
+
separator:
|
|
81
|
+
backgroundColor: "{colors.border}"
|
|
82
|
+
height: 1px
|
|
83
|
+
button-primary:
|
|
84
|
+
backgroundColor: "{colors.primary-control}"
|
|
85
|
+
textColor: "{colors.on-primary}"
|
|
86
|
+
typography: "{typography.button}"
|
|
87
|
+
rounded: "{rounded.md}"
|
|
88
|
+
padding: "{spacing.xxs} {spacing.sm}"
|
|
89
|
+
height: 32px
|
|
90
|
+
button-primary-hover:
|
|
91
|
+
backgroundColor: "{colors.primary-control-hover}"
|
|
92
|
+
textColor: "{colors.on-primary}"
|
|
93
|
+
typography: "{typography.button}"
|
|
94
|
+
rounded: "{rounded.md}"
|
|
95
|
+
padding: "{spacing.xxs} {spacing.sm}"
|
|
96
|
+
height: 32px
|
|
97
|
+
button-primary-disabled:
|
|
98
|
+
backgroundColor: "{colors.border-secondary}"
|
|
99
|
+
textColor: "{colors.text-tertiary}"
|
|
100
|
+
typography: "{typography.button}"
|
|
101
|
+
rounded: "{rounded.md}"
|
|
102
|
+
padding: "{spacing.xxs} {spacing.sm}"
|
|
103
|
+
height: 32px
|
|
104
|
+
button-default:
|
|
105
|
+
backgroundColor: "{colors.surface}"
|
|
106
|
+
textColor: "{colors.text}"
|
|
107
|
+
typography: "{typography.button}"
|
|
108
|
+
rounded: "{rounded.md}"
|
|
109
|
+
padding: "{spacing.xxs} {spacing.sm}"
|
|
110
|
+
height: 32px
|
|
111
|
+
input-default:
|
|
112
|
+
backgroundColor: "{colors.surface}"
|
|
113
|
+
textColor: "{colors.text}"
|
|
114
|
+
typography: "{typography.body}"
|
|
115
|
+
rounded: "{rounded.md}"
|
|
116
|
+
padding: "{spacing.xxs} {spacing.xs}"
|
|
117
|
+
height: 32px
|
|
118
|
+
input-error:
|
|
119
|
+
backgroundColor: "{colors.surface}"
|
|
120
|
+
textColor: "{colors.text}"
|
|
121
|
+
typography: "{typography.body}"
|
|
122
|
+
rounded: "{rounded.md}"
|
|
123
|
+
padding: "{spacing.xxs} {spacing.xs}"
|
|
124
|
+
height: 32px
|
|
125
|
+
table-header:
|
|
126
|
+
backgroundColor: "{colors.surface-subtle}"
|
|
127
|
+
textColor: "{colors.text}"
|
|
128
|
+
typography: "{typography.body-strong}"
|
|
129
|
+
padding: "{spacing.xs} {spacing.sm}"
|
|
130
|
+
table-row-selected:
|
|
131
|
+
backgroundColor: "{colors.primary-bg}"
|
|
132
|
+
textColor: "{colors.text}"
|
|
133
|
+
typography: "{typography.body}"
|
|
134
|
+
padding: "{spacing.xs} {spacing.sm}"
|
|
135
|
+
modal-default:
|
|
136
|
+
backgroundColor: "{colors.surface-elevated}"
|
|
137
|
+
textColor: "{colors.text}"
|
|
138
|
+
typography: "{typography.body}"
|
|
139
|
+
rounded: "{rounded.lg}"
|
|
140
|
+
padding: "{spacing.md}"
|
|
141
|
+
button-primary-active:
|
|
142
|
+
backgroundColor: "{colors.primary-active}"
|
|
143
|
+
textColor: "{colors.on-primary}"
|
|
144
|
+
typography: "{typography.button}"
|
|
145
|
+
rounded: "{rounded.md}"
|
|
146
|
+
padding: "{spacing.xxs} {spacing.sm}"
|
|
147
|
+
height: 32px
|
|
148
|
+
page-shell:
|
|
149
|
+
backgroundColor: "{colors.canvas-layout}"
|
|
150
|
+
textColor: "{colors.text}"
|
|
151
|
+
typography: "{typography.body}"
|
|
152
|
+
padding: "{spacing.md}"
|
|
153
|
+
alert-success:
|
|
154
|
+
backgroundColor: "{colors.success-bg}"
|
|
155
|
+
textColor: "{colors.text}"
|
|
156
|
+
typography: "{typography.body}"
|
|
157
|
+
rounded: "{rounded.sm}"
|
|
158
|
+
padding: "{spacing.xs} {spacing.sm}"
|
|
159
|
+
alert-warning:
|
|
160
|
+
backgroundColor: "{colors.warning-bg}"
|
|
161
|
+
textColor: "{colors.text}"
|
|
162
|
+
typography: "{typography.body}"
|
|
163
|
+
rounded: "{rounded.sm}"
|
|
164
|
+
padding: "{spacing.xs} {spacing.sm}"
|
|
165
|
+
alert-error:
|
|
166
|
+
backgroundColor: "{colors.error-bg}"
|
|
167
|
+
textColor: "{colors.text}"
|
|
168
|
+
typography: "{typography.body}"
|
|
169
|
+
rounded: "{rounded.sm}"
|
|
170
|
+
padding: "{spacing.xs} {spacing.sm}"
|
|
171
|
+
alert-info:
|
|
172
|
+
backgroundColor: "{colors.info-bg}"
|
|
173
|
+
textColor: "{colors.text}"
|
|
174
|
+
typography: "{typography.body}"
|
|
175
|
+
rounded: "{rounded.sm}"
|
|
176
|
+
padding: "{spacing.xs} {spacing.sm}"
|
|
177
|
+
badge-processing-solid:
|
|
178
|
+
backgroundColor: "{colors.primary}"
|
|
179
|
+
textColor: "#000000"
|
|
180
|
+
typography: "{typography.caption}"
|
|
181
|
+
rounded: "{rounded.sm}"
|
|
182
|
+
padding: "{spacing.xxs} {spacing.xs}"
|
|
183
|
+
badge-success-solid:
|
|
184
|
+
backgroundColor: "{colors.success}"
|
|
185
|
+
textColor: "#000000"
|
|
186
|
+
typography: "{typography.caption}"
|
|
187
|
+
rounded: "{rounded.sm}"
|
|
188
|
+
padding: "{spacing.xxs} {spacing.xs}"
|
|
189
|
+
badge-warning-solid:
|
|
190
|
+
backgroundColor: "{colors.warning}"
|
|
191
|
+
textColor: "#000000"
|
|
192
|
+
typography: "{typography.caption}"
|
|
193
|
+
rounded: "{rounded.sm}"
|
|
194
|
+
padding: "{spacing.xxs} {spacing.xs}"
|
|
195
|
+
badge-error-solid:
|
|
196
|
+
backgroundColor: "{colors.error}"
|
|
197
|
+
textColor: "#000000"
|
|
198
|
+
typography: "{typography.caption}"
|
|
199
|
+
rounded: "{rounded.sm}"
|
|
200
|
+
padding: "{spacing.xxs} {spacing.xs}"
|
|
201
|
+
secondary-copy:
|
|
202
|
+
textColor: "{colors.text-secondary}"
|
|
203
|
+
typography: "{typography.caption}"
|
|
204
|
+
card-default:
|
|
205
|
+
backgroundColor: "{colors.surface}"
|
|
206
|
+
textColor: "{colors.text}"
|
|
207
|
+
typography: "{typography.body}"
|
|
208
|
+
rounded: "{rounded.lg}"
|
|
209
|
+
padding: "{spacing.card}"
|
|
210
|
+
button-compact:
|
|
211
|
+
height: 28px
|
|
212
|
+
button-small:
|
|
213
|
+
height: 24px
|
|
214
|
+
button-large:
|
|
215
|
+
height: 40px
|
|
216
|
+
card-compact:
|
|
217
|
+
backgroundColor: "{colors.surface}"
|
|
218
|
+
textColor: "{colors.text}"
|
|
219
|
+
typography: "{typography.body}"
|
|
220
|
+
rounded: "{rounded.lg}"
|
|
221
|
+
padding: "{spacing.md}"
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Overview
|
|
226
|
+
|
|
227
|
+
YSS is an enterprise UI system for dense, scannable work surfaces: tables, forms, filters, workflows and operational feedback. This file is the normative source for visual tokens and component visual variants. Product behavior remains in Spec, interaction specifications and state matrices.
|
|
228
|
+
|
|
229
|
+
The default theme adopts Data Quality global tokens on the Ant Design v6 design foundation: light mode, primary #3371ff, body 14px, controls 32/24/40px, radii 6/4/8px and card padding 20px. Compact and dark modes are opt-in. Data Quality runs Vue 3 + Ant Design Vue 4.2.6 + YSS UI; that runtime version is distinct from the design foundation. Client-specific JSP themes and page-local glass effects are not defaults. Prototypes use HTML/CSS/JavaScript with local token CSS. Production applications use the target implementation contract and lockfile; prototype visuals do not establish production component API compatibility.
|
|
230
|
+
|
|
231
|
+
## Colors
|
|
232
|
+
|
|
233
|
+
Use semantic roles (`primary`, `text`, `surface`, `border`, `success`, `warning`, `error`) instead of literal values in product pages. Keep a single primary action per decision area. The brand seed remains Data Quality #3371ff; primary-control #245bdb and its hover variant are deliberate YSS accessibility adaptations for white small text, not values copied from Data Quality. State colors must be paired with readable text or an icon and must meet WCAG 2.2 AA.
|
|
234
|
+
|
|
235
|
+
## Typography
|
|
236
|
+
|
|
237
|
+
Use the system font stack, 14px body text and 400/600 weights. Use `caption` only for supporting information; do not encode business status through weight alone.
|
|
238
|
+
|
|
239
|
+
## Layout
|
|
240
|
+
|
|
241
|
+
Use a 4px spacing grid and the spacing tokens above. Use the default 32px control variant directly in HTML prototypes. The explicit compact variant uses 28px; small and large controls use 24px and 40px. When production uses an Ant Design theme algorithm, keep its seed `controlHeight` at 32px and apply compact once; never seed 28px and compact again. Page, container and overlay surfaces form the base three-layer model. On narrow screens, toolbars and filters reflow or collapse; table overflow is restricted to the table container.
|
|
242
|
+
|
|
243
|
+
## Elevation & Depth
|
|
244
|
+
|
|
245
|
+
Prefer surface and border changes over decorative shadows. Use the component library elevation tokens when available. Shadow values remain an implementation detail until the upstream DESIGN.md schema provides a stable structured elevation contract.
|
|
246
|
+
|
|
247
|
+
## Shapes
|
|
248
|
+
|
|
249
|
+
Controls use `rounded.md` (6px); cards and overlays use `rounded.lg` (8px); compact tags may use `rounded.sm` or `rounded.pill`. A container radius must not be smaller than the radius of its child controls.
|
|
250
|
+
|
|
251
|
+
## Components
|
|
252
|
+
|
|
253
|
+
The component keys above describe default visual variants and explicitly named optional sizes, not business states. Default controls use a 32px computed height, 14px body type, pale semantic feedback surfaces and visible focus rings. Required implementation states include hover, focus, active, disabled, loading, error, empty, readonly, no-permission, conflict and success. Define those behavior and acceptance details in the lifecycle state-matrix and prototype evidence assets.
|
|
254
|
+
|
|
255
|
+
## Do's and Don'ts
|
|
256
|
+
|
|
257
|
+
- Do consume tokens through ConfigProvider, CSS variables or the target component library theme.
|
|
258
|
+
- Do use the verified derived dark/compact token snapshot for HTML; production theme algorithms remain implementation-specific.
|
|
259
|
+
- Do verify desktop (`1440x900`), mobile (`390x844`) and impacted intermediate viewports.
|
|
260
|
+
- Do provide visible feedback for save, submit, publish, export and retry actions.
|
|
261
|
+
- Don’t use marketing hero layouts, large gradients or decorative cards in operational pages.
|
|
262
|
+
- Don’t hard-code colors, arbitrary spacing or duplicate controls that already exist in YSS UI.
|
|
263
|
+
- Don’t target component-library internal DOM or generated class names; v6 internal markup is not a stable contract.
|
|
264
|
+
- Don’t use a Tag as the only representation of an error, permission or approval state.
|
package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# __APP_NAME__
|
|
2
|
+
|
|
3
|
+
Data Quality v1 通用骨架:Vue 3 / Ant Design Vue 4 / YSS UI,默认浅色、14px 正文、32px 控件。`packages/` 是应用根。YSS 按需注册,新增页面再按实现合同引入表格或表单组件。骨架不含业务页面、用户权限、生产 API 地址或部署凭证。
|
|
4
|
+
|
|
5
|
+
使用 Node >=22.12、pnpm 10.15、TypeScript5.9.3;在用户级 npm 配置中设置企业 @yss-ui registry 和认证,然后运行 `pnpm install --frozen-lockfile`。检查使用 `pnpm lint:check`、`pnpm type-check`、`pnpm build` 和 `pnpm build:standalone`。
|
|
6
|
+
|
|
7
|
+
`pnpm dev` 独立预览;Qiankun 注册名为 `__MICROAPP_NAME__`、默认激活路由 `__BASE_ROUTE__`,门户传入 `container` / `routerBase` / `bridgeVersion: 1` / `themeConfig.mode`。资源部署路径由 `VITE_PUBLIC_BASE` 明确设置,不能从路由猜测。复制 `packages/.env.example` 到 `.env.local` 配置本地代理。
|
|
8
|
+
|
|
9
|
+
主题文件 `packages/src/config/theme.json` 派生自随工程提供的 `DESIGN.md`,不得与设计源并列维护;更新设计后经 Harness 主题投影再同步。暗色/compact 可由宿主串行化 DTO 设置。弹层挂到当前容器,主题 CSS 只写该容器;卸载时移除容器和监听。宿主仍须约定 CSS 隔离,组件 reset / YSS 样式不是跨应用完全隔离的证明。
|
|
10
|
+
|
|
11
|
+
有已冻结 API 时,受控生成器物化 `openapi/openapi.json`,再在本工程手动执行 `pnpm generate:api`。不自动联网拉取接口、不改写 schema、不覆盖业务 API 包装、不把生成加入 CI。`apiClient` 是认证/错误处理的接入 seam,需依实现合同配置。
|
|
12
|
+
|
|
13
|
+
仅支持全新空工程,JSP 模式和既有工程升级尚不支持。空白首页只验证启动,不代表业务交付。
|