create-yss-spec 3.0.1 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/package.json +1 -1
- package/template/.agents/rules/yss-ai-skills.md +3 -55
- package/template/.agents/skills/.strategic-design-skills-manifest.json +11 -6
- package/template/.agents/skills/.yss-skills-manifest.json +1 -3
- package/template/.agents/skills/alibaba-java-code-style/SKILL.md +1 -0
- package/template/.agents/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.agents/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
- package/template/.agents/skills/domain-modeling/SKILL.md +10 -26
- package/template/.agents/skills/grill-with-docs/SKILL.md +6 -5
- package/template/.agents/skills/lombok/SKILL.md +2 -1
- package/template/.agents/skills/mapstruct/SKILL.md +3 -2
- package/template/.agents/skills/setup-matt-pocock-skills/SKILL.md +5 -6
- package/template/.agents/skills/setup-matt-pocock-skills/domain.md +6 -20
- package/template/.agents/skills/wait-what/SKILL.md +1 -1
- package/template/.agents/skills/yss-antdv-next-design/SKILL.md +48 -0
- package/template/.agents/skills/yss-antdv-next-design/references/boundaries.md +25 -0
- package/template/.agents/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
- package/template/.agents/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
- package/template/.agents/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
- package/template/.agents/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
- package/template/.agents/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
- package/template/.agents/skills/yss-application/SKILL.md +6 -0
- package/template/.agents/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
- package/template/.agents/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.agents/skills/yss-application/references/profiles/target-domain-model.md +3 -0
- package/template/.agents/skills/yss-components/SKILL.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
- 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 +21 -7
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
- package/template/.agents/skills/yss-design-system/SKILL.md +25 -22
- package/template/.agents/skills/yss-design-system/references/design-qa-theme.md +22 -24
- package/template/.agents/skills/yss-design-system/references/design-system.md +39 -56
- package/template/.agents/skills/yss-domain/SKILL.md +1 -1
- package/template/.agents/skills/yss-dto/SKILL.md +1 -0
- package/template/.agents/skills/yss-exception/SKILL.md +1 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
- package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
- package/template/.agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
- package/template/.agents/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
- package/template/.agents/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
- package/template/.agents/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
- package/template/.agents/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
- package/template/.agents/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +31 -7
- package/template/.agents/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
- package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +9 -3
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +7 -2
- package/template/.agents/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +9 -8
- package/template/.agents/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
- package/template/.agents/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
- package/template/.agents/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
- package/template/.agents/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
- package/template/.agents/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
- package/template/.agents/skills/yss-repository/SKILL.md +6 -0
- package/template/.agents/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
- package/template/.agents/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.agents/skills/yss-repository/references/profiles/target-domain-model.md +3 -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 +1 -1
- package/template/.agents/skills/yss-stage-decision/SKILL.md +16 -12
- package/template/.agents/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
- package/template/.agents/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
- package/template/.agents/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
- package/template/.agents/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
- package/template/.agents/skills/yss-stage-decision/references/validation-rules.md +1 -1
- package/template/.agents/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
- package/template/.agents/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
- package/template/.agents/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
- package/template/.agents/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
- package/template/.agents/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
- package/template/.agents/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
- package/template/.agents/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
- package/template/.agents/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
- package/template/.agents/skills/yss-tactical-design/SKILL.md +8 -2
- package/template/.agents/skills/yss-tactical-design/references/output-template.md +3 -0
- package/template/.agents/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
- package/template/.agents/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
- package/template/.agents/skills/yss-ui/SKILL.md +1 -2
- package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +3 -3
- package/template/.agents/skills/yss-validation/SKILL.md +1 -0
- package/template/.agents/skills/yss-web-controller/SKILL.md +6 -0
- package/template/.agents/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
- package/template/.agents/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.agents/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
- package/template/.agents/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
- package/template/.claude/skills/alibaba-java-code-style/SKILL.md +1 -0
- package/template/.claude/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.claude/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
- package/template/.claude/skills/domain-modeling/SKILL.md +10 -26
- package/template/.claude/skills/grill-with-docs/SKILL.md +6 -5
- package/template/.claude/skills/lombok/SKILL.md +2 -1
- package/template/.claude/skills/mapstruct/SKILL.md +3 -2
- package/template/.claude/skills/setup-matt-pocock-skills/SKILL.md +5 -6
- package/template/.claude/skills/setup-matt-pocock-skills/domain.md +6 -20
- package/template/.claude/skills/wait-what/SKILL.md +1 -1
- package/template/.claude/skills/yss-antdv-next-design/SKILL.md +48 -0
- package/template/.claude/skills/yss-antdv-next-design/references/boundaries.md +25 -0
- package/template/.claude/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
- package/template/.claude/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
- package/template/.claude/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
- package/template/.claude/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
- package/template/.claude/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
- package/template/.claude/skills/yss-application/SKILL.md +6 -0
- package/template/.claude/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
- package/template/.claude/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.claude/skills/yss-application/references/profiles/target-domain-model.md +3 -0
- package/template/.claude/skills/yss-components/SKILL.md +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
- package/template/.claude/skills/yss-design-system/SKILL.md +25 -22
- package/template/.claude/skills/yss-design-system/references/design-qa-theme.md +22 -24
- package/template/.claude/skills/yss-design-system/references/design-system.md +39 -56
- package/template/.claude/skills/yss-domain/SKILL.md +1 -1
- package/template/.claude/skills/yss-dto/SKILL.md +1 -0
- package/template/.claude/skills/yss-exception/SKILL.md +1 -0
- package/template/.claude/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.claude/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
- package/template/.claude/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
- package/template/.claude/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
- package/template/.claude/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
- package/template/.claude/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
- package/template/.claude/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
- package/template/.claude/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
- package/template/.claude/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
- package/template/.claude/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.claude/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
- package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
- package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
- package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
- package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
- package/template/.claude/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
- package/template/.claude/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
- package/template/.claude/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
- package/template/.claude/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
- package/template/.claude/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.claude/skills/yss-product-lifecycle/SKILL.md +31 -7
- package/template/.claude/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
- package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +9 -3
- package/template/.claude/skills/yss-product-lifecycle/references/state-model.md +7 -2
- package/template/.claude/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
- package/template/.claude/skills/yss-prototype-stage/SKILL.md +9 -8
- package/template/.claude/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
- package/template/.claude/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
- package/template/.claude/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
- package/template/.claude/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
- package/template/.claude/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
- package/template/.claude/skills/yss-repository/SKILL.md +6 -0
- package/template/.claude/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
- package/template/.claude/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.claude/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
- package/template/.claude/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
- package/template/.claude/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.claude/skills/yss-stage-decision/SKILL.md +16 -12
- package/template/.claude/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
- package/template/.claude/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
- package/template/.claude/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
- package/template/.claude/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
- package/template/.claude/skills/yss-stage-decision/references/validation-rules.md +1 -1
- package/template/.claude/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
- package/template/.claude/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
- package/template/.claude/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
- package/template/.claude/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
- package/template/.claude/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
- package/template/.claude/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
- package/template/.claude/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
- package/template/.claude/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
- package/template/.claude/skills/yss-tactical-design/SKILL.md +8 -2
- package/template/.claude/skills/yss-tactical-design/references/output-template.md +3 -0
- package/template/.claude/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
- package/template/.claude/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
- package/template/.claude/skills/yss-ui/SKILL.md +1 -2
- package/template/.claude/skills/yss-ui-business-page-generation/SKILL.md +3 -3
- package/template/.claude/skills/yss-validation/SKILL.md +1 -0
- package/template/.claude/skills/yss-web-controller/SKILL.md +6 -0
- package/template/.claude/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
- package/template/.claude/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.claude/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
- package/template/.claude/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
- package/template/.claude/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
- package/template/.claude/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
- package/template/.codex/skills/alibaba-java-code-style/SKILL.md +1 -0
- package/template/.codex/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.codex/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
- package/template/.codex/skills/domain-modeling/SKILL.md +10 -26
- package/template/.codex/skills/grill-with-docs/SKILL.md +6 -5
- package/template/.codex/skills/lombok/SKILL.md +2 -1
- package/template/.codex/skills/mapstruct/SKILL.md +3 -2
- package/template/.codex/skills/setup-matt-pocock-skills/SKILL.md +5 -6
- package/template/.codex/skills/setup-matt-pocock-skills/domain.md +6 -20
- package/template/.codex/skills/wait-what/SKILL.md +1 -1
- package/template/.codex/skills/yss-antdv-next-design/SKILL.md +48 -0
- package/template/.codex/skills/yss-antdv-next-design/references/boundaries.md +25 -0
- package/template/.codex/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
- package/template/.codex/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
- package/template/.codex/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
- package/template/.codex/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
- package/template/.codex/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
- package/template/.codex/skills/yss-application/SKILL.md +6 -0
- package/template/.codex/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
- package/template/.codex/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.codex/skills/yss-application/references/profiles/target-domain-model.md +3 -0
- package/template/.codex/skills/yss-components/SKILL.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
- 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 +21 -7
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
- package/template/.codex/skills/yss-design-system/SKILL.md +25 -22
- package/template/.codex/skills/yss-design-system/references/design-qa-theme.md +22 -24
- package/template/.codex/skills/yss-design-system/references/design-system.md +39 -56
- package/template/.codex/skills/yss-domain/SKILL.md +1 -1
- package/template/.codex/skills/yss-dto/SKILL.md +1 -0
- package/template/.codex/skills/yss-exception/SKILL.md +1 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
- package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
- package/template/.codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
- package/template/.codex/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
- package/template/.codex/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
- package/template/.codex/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
- package/template/.codex/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
- package/template/.codex/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +31 -7
- package/template/.codex/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
- package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +9 -3
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +7 -2
- package/template/.codex/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +9 -8
- package/template/.codex/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
- package/template/.codex/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
- package/template/.codex/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
- package/template/.codex/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
- package/template/.codex/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
- package/template/.codex/skills/yss-repository/SKILL.md +6 -0
- package/template/.codex/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
- package/template/.codex/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.codex/skills/yss-repository/references/profiles/target-domain-model.md +3 -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 +1 -1
- package/template/.codex/skills/yss-stage-decision/SKILL.md +16 -12
- package/template/.codex/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
- package/template/.codex/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
- package/template/.codex/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
- package/template/.codex/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
- package/template/.codex/skills/yss-stage-decision/references/validation-rules.md +1 -1
- package/template/.codex/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
- package/template/.codex/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
- package/template/.codex/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
- package/template/.codex/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
- package/template/.codex/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
- package/template/.codex/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
- package/template/.codex/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
- package/template/.codex/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
- package/template/.codex/skills/yss-tactical-design/SKILL.md +8 -2
- package/template/.codex/skills/yss-tactical-design/references/output-template.md +3 -0
- package/template/.codex/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
- package/template/.codex/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
- package/template/.codex/skills/yss-ui/SKILL.md +1 -2
- package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +3 -3
- package/template/.codex/skills/yss-validation/SKILL.md +1 -0
- package/template/.codex/skills/yss-web-controller/SKILL.md +6 -0
- package/template/.codex/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
- package/template/.codex/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.codex/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
- package/template/.codex/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
- package/template/.cursor/skills/alibaba-java-code-style/SKILL.md +1 -0
- package/template/.cursor/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.cursor/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
- package/template/.cursor/skills/domain-modeling/SKILL.md +10 -26
- package/template/.cursor/skills/grill-with-docs/SKILL.md +6 -5
- package/template/.cursor/skills/lombok/SKILL.md +2 -1
- package/template/.cursor/skills/mapstruct/SKILL.md +3 -2
- package/template/.cursor/skills/setup-matt-pocock-skills/SKILL.md +5 -6
- package/template/.cursor/skills/setup-matt-pocock-skills/domain.md +6 -20
- package/template/.cursor/skills/wait-what/SKILL.md +1 -1
- package/template/.cursor/skills/yss-antdv-next-design/SKILL.md +48 -0
- package/template/.cursor/skills/yss-antdv-next-design/references/boundaries.md +25 -0
- package/template/.cursor/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
- package/template/.cursor/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
- package/template/.cursor/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
- package/template/.cursor/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
- package/template/.cursor/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
- package/template/.cursor/skills/yss-application/SKILL.md +6 -0
- package/template/.cursor/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
- package/template/.cursor/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.cursor/skills/yss-application/references/profiles/target-domain-model.md +3 -0
- package/template/.cursor/skills/yss-components/SKILL.md +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
- 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 +21 -7
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
- package/template/.cursor/skills/yss-design-system/SKILL.md +25 -22
- package/template/.cursor/skills/yss-design-system/references/design-qa-theme.md +22 -24
- package/template/.cursor/skills/yss-design-system/references/design-system.md +39 -56
- package/template/.cursor/skills/yss-domain/SKILL.md +1 -1
- package/template/.cursor/skills/yss-dto/SKILL.md +1 -0
- package/template/.cursor/skills/yss-exception/SKILL.md +1 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
- package/template/.cursor/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
- package/template/.cursor/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
- package/template/.cursor/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +31 -7
- package/template/.cursor/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +9 -3
- package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +7 -2
- package/template/.cursor/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
- package/template/.cursor/skills/yss-prototype-stage/SKILL.md +9 -8
- package/template/.cursor/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
- package/template/.cursor/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
- package/template/.cursor/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
- package/template/.cursor/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
- package/template/.cursor/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
- package/template/.cursor/skills/yss-repository/SKILL.md +6 -0
- package/template/.cursor/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
- package/template/.cursor/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.cursor/skills/yss-repository/references/profiles/target-domain-model.md +3 -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 +1 -1
- package/template/.cursor/skills/yss-stage-decision/SKILL.md +16 -12
- package/template/.cursor/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
- package/template/.cursor/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
- package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
- package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
- package/template/.cursor/skills/yss-stage-decision/references/validation-rules.md +1 -1
- package/template/.cursor/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
- package/template/.cursor/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
- package/template/.cursor/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
- package/template/.cursor/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
- package/template/.cursor/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
- package/template/.cursor/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
- package/template/.cursor/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
- package/template/.cursor/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
- package/template/.cursor/skills/yss-tactical-design/SKILL.md +8 -2
- package/template/.cursor/skills/yss-tactical-design/references/output-template.md +3 -0
- package/template/.cursor/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
- package/template/.cursor/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
- package/template/.cursor/skills/yss-ui/SKILL.md +1 -2
- package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +3 -3
- package/template/.cursor/skills/yss-validation/SKILL.md +1 -0
- package/template/.cursor/skills/yss-web-controller/SKILL.md +6 -0
- package/template/.cursor/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
- package/template/.cursor/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.cursor/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
- package/template/.cursor/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
- package/template/.cursorrules +6 -34
- package/template/.pi/skills/alibaba-java-code-style/SKILL.md +1 -0
- package/template/.pi/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.pi/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
- package/template/.pi/skills/domain-modeling/SKILL.md +10 -26
- package/template/.pi/skills/grill-with-docs/SKILL.md +6 -5
- package/template/.pi/skills/lombok/SKILL.md +2 -1
- package/template/.pi/skills/mapstruct/SKILL.md +3 -2
- package/template/.pi/skills/setup-matt-pocock-skills/SKILL.md +5 -6
- package/template/.pi/skills/setup-matt-pocock-skills/domain.md +6 -20
- package/template/.pi/skills/wait-what/SKILL.md +1 -1
- package/template/.pi/skills/yss-antdv-next-design/SKILL.md +48 -0
- package/template/.pi/skills/yss-antdv-next-design/references/boundaries.md +25 -0
- package/template/.pi/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
- package/template/.pi/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
- package/template/.pi/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
- package/template/.pi/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
- package/template/.pi/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
- package/template/.pi/skills/yss-application/SKILL.md +6 -0
- package/template/.pi/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
- package/template/.pi/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.pi/skills/yss-application/references/profiles/target-domain-model.md +3 -0
- package/template/.pi/skills/yss-components/SKILL.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
- 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 +21 -7
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
- package/template/.pi/skills/yss-design-system/SKILL.md +25 -22
- package/template/.pi/skills/yss-design-system/references/design-qa-theme.md +22 -24
- package/template/.pi/skills/yss-design-system/references/design-system.md +39 -56
- package/template/.pi/skills/yss-domain/SKILL.md +1 -1
- package/template/.pi/skills/yss-dto/SKILL.md +1 -0
- package/template/.pi/skills/yss-exception/SKILL.md +1 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
- package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
- package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
- package/template/.pi/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
- package/template/.pi/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +31 -7
- package/template/.pi/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
- package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +9 -3
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +7 -2
- package/template/.pi/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +9 -8
- package/template/.pi/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
- package/template/.pi/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
- package/template/.pi/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
- package/template/.pi/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
- package/template/.pi/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
- package/template/.pi/skills/yss-repository/SKILL.md +6 -0
- package/template/.pi/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
- package/template/.pi/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.pi/skills/yss-repository/references/profiles/target-domain-model.md +3 -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 +1 -1
- package/template/.pi/skills/yss-stage-decision/SKILL.md +16 -12
- package/template/.pi/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
- package/template/.pi/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
- package/template/.pi/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
- package/template/.pi/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
- package/template/.pi/skills/yss-stage-decision/references/validation-rules.md +1 -1
- package/template/.pi/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
- package/template/.pi/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
- package/template/.pi/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
- package/template/.pi/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
- package/template/.pi/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
- package/template/.pi/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
- package/template/.pi/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
- package/template/.pi/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
- package/template/.pi/skills/yss-tactical-design/SKILL.md +8 -2
- package/template/.pi/skills/yss-tactical-design/references/output-template.md +3 -0
- package/template/.pi/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
- package/template/.pi/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
- package/template/.pi/skills/yss-ui/SKILL.md +1 -2
- package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +3 -3
- package/template/.pi/skills/yss-validation/SKILL.md +1 -0
- package/template/.pi/skills/yss-web-controller/SKILL.md +6 -0
- package/template/.pi/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
- package/template/.pi/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.pi/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
- package/template/.pi/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
- package/template/.qoder/skills/alibaba-java-code-style/SKILL.md +1 -0
- package/template/.qoder/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.qoder/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
- package/template/.qoder/skills/domain-modeling/SKILL.md +10 -26
- package/template/.qoder/skills/grill-with-docs/SKILL.md +6 -5
- package/template/.qoder/skills/lombok/SKILL.md +2 -1
- package/template/.qoder/skills/mapstruct/SKILL.md +3 -2
- package/template/.qoder/skills/setup-matt-pocock-skills/SKILL.md +5 -6
- package/template/.qoder/skills/setup-matt-pocock-skills/domain.md +6 -20
- package/template/.qoder/skills/wait-what/SKILL.md +1 -1
- package/template/.qoder/skills/yss-antdv-next-design/SKILL.md +48 -0
- package/template/.qoder/skills/yss-antdv-next-design/references/boundaries.md +25 -0
- package/template/.qoder/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
- package/template/.qoder/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
- package/template/.qoder/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
- package/template/.qoder/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
- package/template/.qoder/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
- package/template/.qoder/skills/yss-application/SKILL.md +6 -0
- package/template/.qoder/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
- package/template/.qoder/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.qoder/skills/yss-application/references/profiles/target-domain-model.md +3 -0
- package/template/.qoder/skills/yss-components/SKILL.md +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
- package/template/.qoder/skills/yss-design-system/SKILL.md +25 -22
- package/template/.qoder/skills/yss-design-system/references/design-qa-theme.md +22 -24
- package/template/.qoder/skills/yss-design-system/references/design-system.md +39 -56
- package/template/.qoder/skills/yss-domain/SKILL.md +1 -1
- package/template/.qoder/skills/yss-dto/SKILL.md +1 -0
- package/template/.qoder/skills/yss-exception/SKILL.md +1 -0
- package/template/.qoder/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.qoder/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
- package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
- package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
- package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
- package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
- package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
- package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
- package/template/.qoder/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
- package/template/.qoder/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
- package/template/.qoder/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
- package/template/.qoder/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
- package/template/.qoder/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +31 -7
- package/template/.qoder/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
- package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +9 -3
- package/template/.qoder/skills/yss-product-lifecycle/references/state-model.md +7 -2
- package/template/.qoder/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
- package/template/.qoder/skills/yss-prototype-stage/SKILL.md +9 -8
- package/template/.qoder/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
- package/template/.qoder/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
- package/template/.qoder/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
- package/template/.qoder/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
- package/template/.qoder/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
- package/template/.qoder/skills/yss-repository/SKILL.md +6 -0
- package/template/.qoder/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
- package/template/.qoder/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.qoder/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
- package/template/.qoder/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
- package/template/.qoder/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.qoder/skills/yss-stage-decision/SKILL.md +16 -12
- package/template/.qoder/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
- package/template/.qoder/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
- package/template/.qoder/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
- package/template/.qoder/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
- package/template/.qoder/skills/yss-stage-decision/references/validation-rules.md +1 -1
- package/template/.qoder/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
- package/template/.qoder/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
- package/template/.qoder/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
- package/template/.qoder/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
- package/template/.qoder/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
- package/template/.qoder/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
- package/template/.qoder/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
- package/template/.qoder/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
- package/template/.qoder/skills/yss-tactical-design/SKILL.md +8 -2
- package/template/.qoder/skills/yss-tactical-design/references/output-template.md +3 -0
- package/template/.qoder/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
- package/template/.qoder/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
- package/template/.qoder/skills/yss-ui/SKILL.md +1 -2
- package/template/.qoder/skills/yss-ui-business-page-generation/SKILL.md +3 -3
- package/template/.qoder/skills/yss-validation/SKILL.md +1 -0
- package/template/.qoder/skills/yss-web-controller/SKILL.md +6 -0
- package/template/.qoder/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
- package/template/.qoder/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.qoder/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
- package/template/.qoder/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
- package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
- package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
- package/template/.trae/skills/alibaba-java-code-style/SKILL.md +1 -0
- package/template/.trae/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.trae/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
- package/template/.trae/skills/domain-modeling/SKILL.md +10 -26
- package/template/.trae/skills/grill-with-docs/SKILL.md +6 -5
- package/template/.trae/skills/lombok/SKILL.md +2 -1
- package/template/.trae/skills/mapstruct/SKILL.md +3 -2
- package/template/.trae/skills/setup-matt-pocock-skills/SKILL.md +5 -6
- package/template/.trae/skills/setup-matt-pocock-skills/domain.md +6 -20
- package/template/.trae/skills/wait-what/SKILL.md +1 -1
- package/template/.trae/skills/yss-antdv-next-design/SKILL.md +48 -0
- package/template/.trae/skills/yss-antdv-next-design/references/boundaries.md +25 -0
- package/template/.trae/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
- package/template/.trae/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
- package/template/.trae/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
- package/template/.trae/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
- package/template/.trae/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
- package/template/.trae/skills/yss-application/SKILL.md +6 -0
- package/template/.trae/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
- package/template/.trae/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.trae/skills/yss-application/references/profiles/target-domain-model.md +3 -0
- package/template/.trae/skills/yss-components/SKILL.md +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
- package/template/.trae/skills/yss-design-system/SKILL.md +25 -22
- package/template/.trae/skills/yss-design-system/references/design-qa-theme.md +22 -24
- package/template/.trae/skills/yss-design-system/references/design-system.md +39 -56
- package/template/.trae/skills/yss-domain/SKILL.md +1 -1
- package/template/.trae/skills/yss-dto/SKILL.md +1 -0
- package/template/.trae/skills/yss-exception/SKILL.md +1 -0
- package/template/.trae/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.trae/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
- package/template/.trae/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
- package/template/.trae/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
- package/template/.trae/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
- package/template/.trae/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
- package/template/.trae/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
- package/template/.trae/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.trae/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
- package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
- package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
- package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
- package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
- package/template/.trae/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
- package/template/.trae/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
- package/template/.trae/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
- package/template/.trae/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
- package/template/.trae/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.trae/skills/yss-product-lifecycle/SKILL.md +31 -7
- package/template/.trae/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
- package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +9 -3
- package/template/.trae/skills/yss-product-lifecycle/references/state-model.md +7 -2
- package/template/.trae/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
- package/template/.trae/skills/yss-prototype-stage/SKILL.md +9 -8
- package/template/.trae/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
- package/template/.trae/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
- package/template/.trae/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
- package/template/.trae/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
- package/template/.trae/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
- package/template/.trae/skills/yss-repository/SKILL.md +6 -0
- package/template/.trae/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
- package/template/.trae/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.trae/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
- package/template/.trae/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
- package/template/.trae/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.trae/skills/yss-stage-decision/SKILL.md +16 -12
- package/template/.trae/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
- package/template/.trae/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
- package/template/.trae/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
- package/template/.trae/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
- package/template/.trae/skills/yss-stage-decision/references/validation-rules.md +1 -1
- package/template/.trae/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
- package/template/.trae/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
- package/template/.trae/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
- package/template/.trae/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
- package/template/.trae/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
- package/template/.trae/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
- package/template/.trae/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
- package/template/.trae/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
- package/template/.trae/skills/yss-tactical-design/SKILL.md +8 -2
- package/template/.trae/skills/yss-tactical-design/references/output-template.md +3 -0
- package/template/.trae/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
- package/template/.trae/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
- package/template/.trae/skills/yss-ui/SKILL.md +1 -2
- package/template/.trae/skills/yss-ui-business-page-generation/SKILL.md +3 -3
- package/template/.trae/skills/yss-validation/SKILL.md +1 -0
- package/template/.trae/skills/yss-web-controller/SKILL.md +6 -0
- package/template/.trae/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
- package/template/.trae/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
- package/template/.trae/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
- package/template/.trae/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
- package/template/.trae/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
- package/template/.trae/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
- package/template/AGENTS.md +52 -91
- package/template/CONTEXT.md +15 -5
- package/template/DESIGN.md +85 -41
- package/template/__yss_dotfile__.gitignore +1 -0
- package/template/docs/agents/backend-architecture-profiles.md +25 -0
- package/template/docs/agents/digital-human-roles.md +3 -3
- package/template/docs/agents/digital-human-roles.yaml +46 -13
- package/template/docs/agents/domain.md +7 -6
- package/template/docs/agents/skill-migrations.md +20 -2
- package/template/docs/agents/skills-maintenance.md +3 -3
- package/template/docs/agents/strategic-design-skills-integration.md +6 -1
- package/template/docs/agents/yss-skill-registry.yaml +78 -94
- package/template/docs/agents/yss-ui-skills-integration.md +3 -3
- package/template/docs/api/templates/openapi-draft-review-checklist.md +2 -2
- package/template/docs/architecture/templates/engineering-baseline-review-template.md +18 -6
- package/template/docs/design/README.md +9 -6
- package/template/docs/design/design-system-sync.yaml +1 -1
- package/template/docs/design/design.md +86 -118
- package/template/docs/design/facts/antdv-next/1.5.2/cli-help.txt +38 -0
- package/template/docs/design/facts/antdv-next/1.5.2/component-list.json +434 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/demo-basic.json +7 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/info.json +246 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/semantic.json +40 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/token.json +32 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Button/demo-basic.json +7 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Button/info.json +190 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Button/semantic.json +20 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Button/token.json +256 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Input/demo-basic.json +7 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Input/info.json +460 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Input/semantic.json +70 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Input/token.json +123 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/demo-basic.json +7 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/info.json +646 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/semantic.json +50 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/token.json +130 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Select/demo-basic.json +7 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Select/info.json +640 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Select/semantic.json +70 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Select/token.json +172 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Table/demo-basic.json +7 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Table/info.json +1010 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Table/semantic.json +70 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Table/token.json +263 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/demo-basic.json +7 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/info.json +321 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/semantic.json +25 -0
- package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/token.json +25 -0
- package/template/docs/design/facts/antdv-next/1.5.2/design-md.json +3 -0
- package/template/docs/design/facts/antdv-next/1.5.2/manifest.json +215 -0
- package/template/docs/design/facts/antdv-next/1.5.2/resolution-probe.json +5 -0
- package/template/docs/design/preview-dark.html +170 -7
- package/template/docs/design/preview.css +730 -0
- package/template/docs/design/preview.html +168 -10
- package/template/docs/design/preview.js +71 -0
- package/template/docs/design/schemas/visual-baseline.schema.json +66 -0
- package/template/docs/design/templates/interaction-spec-template.md +1 -1
- package/template/docs/design/templates/product-overview-design-template.md +6 -6
- package/template/docs/design/templates/prototype-evidence-template.yaml +21 -8
- package/template/docs/design/templates/prototype-review-checklist.md +1 -1
- package/template/docs/design/templates/visual-baseline-template.yaml +70 -0
- package/template/docs/design/tokens/.design-md-projection.json +3 -3
- package/template/docs/design/tokens/theme.json +2 -2
- package/template/docs/design/tokens/variables.css +5 -0
- package/template/docs/process/harness-executive-blueprint.md +1 -1
- package/template/docs/process/harness-process-tailoring.md +1 -0
- package/template/docs/process/lifecycle-artifact-map.md +5 -4
- package/template/docs/process/lifecycle-registry-baseline.json +7 -5
- package/template/docs/process/lifecycle-registry.yaml +22 -0
- package/template/docs/process/schemas/backend-architecture-identity.schema.json +19 -0
- package/template/docs/process/schemas/context-reconciliation.schema.json +57 -0
- package/template/docs/process/schemas/digital-human-task-package.schema.json +10 -0
- package/template/docs/process/schemas/frontend-implementation-evidence.schema.json +62 -29
- package/template/docs/process/schemas/lifecycle-checkpoint.schema.json +16 -2
- package/template/docs/process/schemas/lifecycle-registry.schema.json +4 -4
- package/template/docs/process/schemas/scaffold-architecture-decisions.schema.json +68 -0
- package/template/docs/process/schemas/strategic-design-handoff.schema.json +670 -0
- package/template/docs/process/schemas/strategic-handoff-domain-strategy.schema.json +146 -0
- package/template/docs/process/schemas/strategic-handoff-export.schema.json +295 -0
- package/template/docs/process/schemas/strategic-handoff-package.schema.json +97 -0
- package/template/docs/process/schemas/strategic-handoff-stage-decision-package.schema.json +98 -0
- package/template/docs/process/schemas/user-decision.schema.json +357 -0
- package/template/docs/process/strategic-handoff-package.md +56 -0
- package/template/docs/process/template-verification-profiles.yaml +60 -1
- package/template/docs/process/templates/context-reconciliation-template.yaml +18 -0
- package/template/docs/process/templates/frontend-implementation-plan-template.yaml +11 -5
- package/template/docs/process/templates/frontend-implementation-verification-template.yaml +25 -5
- package/template/docs/process/templates/lifecycle-checkpoint-template.yaml +9 -0
- package/template/docs/process/templates/scaffold-architecture-decisions-template.yaml +32 -0
- package/template/docs/process/templates/stage-checkpoint-template.md +5 -0
- package/template/docs/process/templates/user-decision-template.yaml +30 -0
- package/template/docs/templates/approval-record-template.yaml +4 -0
- package/template/docs/templates/build-architecture-checklist-template.md +3 -3
- package/template/docs/templates/implementation-repo-registry-template.md +3 -1
- package/template/docs/templates/implementation-routing-template.md +8 -6
- package/template/docs/templates/requirement-freeze-template.md +1 -1
- package/template/docs/templates/review-report-template.md +1 -1
- package/template/docs/templates/spec-template.md +5 -5
- package/template/docs/user-guide//346/210/230/346/234/257/350/256/276/350/256/241/345/255/220/351/241/271/347/233/256/347/224/250/346/210/267/346/211/213/345/206/214.md +3 -1
- package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214.md +1 -1
- package/template/scripts/fixtures/strategic-handoff/base-stage.json +91 -0
- package/template/scripts/fixtures/strategic-handoff/base-strategy.json +205 -0
- package/template/scripts/fixtures/strategic-handoff/fixture.mjs +57 -0
- package/template/scripts/fixtures/strategic-handoff/source-roles.json +528 -0
- package/template/scripts/fixtures/user-decision/build-fixture.mjs +61 -0
- package/template/scripts/lib/approval-record.mjs +32 -1
- package/template/scripts/lib/backend-architecture.mjs +43 -0
- package/template/scripts/lib/context-contract.mjs +203 -0
- package/template/scripts/lib/digital-human-roles.mjs +21 -3
- package/template/scripts/lib/first-slice-architecture.mjs +23 -0
- package/template/scripts/lib/implementation-contract-compiler.mjs +34 -1
- package/template/scripts/lib/lifecycle-registry.mjs +14 -6
- package/template/scripts/lib/lifecycle-transition.mjs +19 -4
- package/template/scripts/lib/scaffold-local-database.mjs +26 -0
- package/template/scripts/lib/scenario-checks.mjs +25 -12
- package/template/scripts/lib/skill-governance.mjs +25 -10
- package/template/scripts/lib/skill-registry.mjs +1 -1
- package/template/scripts/lib/skill-supply-chain.mjs +1 -1
- package/template/scripts/lib/strategic-handoff-consumption.mjs +76 -0
- package/template/scripts/lib/strategic-handoff-io.mjs +75 -0
- package/template/scripts/lib/strategic-handoff-rules.mjs +37 -0
- package/template/scripts/lib/strategic-handoff-zip.py +52 -0
- package/template/scripts/lib/strategic-handoff.mjs +259 -0
- package/template/scripts/lib/task-package.mjs +10 -2
- package/template/scripts/lib/user-decision.mjs +210 -0
- package/template/scripts/strategic-handoff +14 -0
- package/template/scripts/sync-strategic-handoff-tools +18 -0
- package/template/scripts/verify-approval-record +5 -4
- package/template/scripts/verify-business-language-scenarios +59 -0
- package/template/scripts/verify-context-contract +15 -0
- package/template/scripts/verify-context-contract-scenarios +105 -0
- package/template/scripts/verify-context-reconciliation +58 -0
- package/template/scripts/verify-context-reconciliation-scenarios +69 -0
- package/template/scripts/verify-digital-human-roles-scenarios +1 -1
- package/template/scripts/verify-frontend-implementation-evidence +31 -8
- package/template/scripts/verify-frontend-implementation-evidence-scenarios +56 -0
- package/template/scripts/verify-grill-with-docs-context-scenarios +15 -0
- package/template/scripts/verify-lifecycle-checkpoint +9 -1
- package/template/scripts/verify-lifecycle-transition-scenarios +13 -3
- package/template/scripts/verify-retired-skill-ids +30 -4
- package/template/scripts/verify-scaffold-architecture-decision-scenarios +30 -0
- package/template/scripts/verify-scaffold-architecture-decisions +61 -0
- package/template/scripts/verify-scaffold-generator-scenarios +74 -3
- package/template/scripts/verify-strategic-context-import +65 -0
- package/template/scripts/verify-strategic-context-import-scenarios +50 -0
- package/template/scripts/verify-strategic-handoff-consumption +10 -0
- package/template/scripts/verify-strategic-handoff-package-scenarios +102 -0
- package/template/scripts/verify-subagent-task-package-scenarios +17 -3
- package/template/scripts/verify-template-verification-scenarios +6 -1
- package/template/scripts/verify-user-decision +17 -0
- package/template/scripts/verify-user-decision-scenarios +103 -0
- package/template/skills-lock.json +77 -270
- package/template/yss-public-skills.json +4 -4
- package/template.snapshot.json +4 -4
- package/template/.agents/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.agents/skills/ask-matt/SKILL.md +0 -95
- package/template/.agents/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.agents/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.agents/skills/loop-me/SKILL.md +0 -32
- package/template/.agents/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.agents/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.agents/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.agents/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.agents/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.agents/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.agents/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.agents/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.agents/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.agents/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.agents/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.agents/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.agents/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.agents/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.agents/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.agents/skills/teach/SKILL.md +0 -140
- package/template/.agents/skills/teach/agents/openai.yaml +0 -5
- package/template/.agents/skills/writing-beats/SKILL.md +0 -67
- package/template/.agents/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.agents/skills/writing-fragments/SKILL.md +0 -79
- package/template/.agents/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.agents/skills/writing-shape/SKILL.md +0 -79
- package/template/.agents/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.agents/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.agents/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.agents/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.agents/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.agents/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.agents/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.agents/skills/yss-page-module-development/references/utils-map.md +0 -14
- package/template/.claude/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.claude/skills/ask-matt/SKILL.md +0 -95
- package/template/.claude/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.claude/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.claude/skills/loop-me/SKILL.md +0 -32
- package/template/.claude/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.claude/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.claude/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.claude/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.claude/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.claude/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.claude/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.claude/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.claude/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.claude/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.claude/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.claude/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.claude/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.claude/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.claude/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.claude/skills/teach/SKILL.md +0 -140
- package/template/.claude/skills/teach/agents/openai.yaml +0 -5
- package/template/.claude/skills/writing-beats/SKILL.md +0 -67
- package/template/.claude/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.claude/skills/writing-fragments/SKILL.md +0 -79
- package/template/.claude/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.claude/skills/writing-shape/SKILL.md +0 -79
- package/template/.claude/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.claude/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.claude/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.claude/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.claude/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.claude/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.claude/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.claude/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.claude/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.claude/skills/yss-page-module-development/references/utils-map.md +0 -14
- package/template/.codex/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.codex/skills/ask-matt/SKILL.md +0 -95
- package/template/.codex/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.codex/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.codex/skills/loop-me/SKILL.md +0 -32
- package/template/.codex/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.codex/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.codex/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.codex/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.codex/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.codex/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.codex/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.codex/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.codex/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.codex/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.codex/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.codex/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.codex/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.codex/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.codex/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.codex/skills/teach/SKILL.md +0 -140
- package/template/.codex/skills/teach/agents/openai.yaml +0 -5
- package/template/.codex/skills/writing-beats/SKILL.md +0 -67
- package/template/.codex/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.codex/skills/writing-fragments/SKILL.md +0 -79
- package/template/.codex/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.codex/skills/writing-shape/SKILL.md +0 -79
- package/template/.codex/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.codex/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.codex/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.codex/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.codex/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.codex/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.codex/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.codex/skills/yss-page-module-development/references/utils-map.md +0 -14
- package/template/.cursor/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.cursor/skills/ask-matt/SKILL.md +0 -95
- package/template/.cursor/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.cursor/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.cursor/skills/loop-me/SKILL.md +0 -32
- package/template/.cursor/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.cursor/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.cursor/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.cursor/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.cursor/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.cursor/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.cursor/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.cursor/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.cursor/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.cursor/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.cursor/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.cursor/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.cursor/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.cursor/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.cursor/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.cursor/skills/teach/SKILL.md +0 -140
- package/template/.cursor/skills/teach/agents/openai.yaml +0 -5
- package/template/.cursor/skills/writing-beats/SKILL.md +0 -67
- package/template/.cursor/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.cursor/skills/writing-fragments/SKILL.md +0 -79
- package/template/.cursor/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.cursor/skills/writing-shape/SKILL.md +0 -79
- package/template/.cursor/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.cursor/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.cursor/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.cursor/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.cursor/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.cursor/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.cursor/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.cursor/skills/yss-page-module-development/references/utils-map.md +0 -14
- package/template/.pi/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.pi/skills/ask-matt/SKILL.md +0 -95
- package/template/.pi/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.pi/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.pi/skills/loop-me/SKILL.md +0 -32
- package/template/.pi/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.pi/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.pi/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.pi/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.pi/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.pi/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.pi/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.pi/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.pi/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.pi/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.pi/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.pi/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.pi/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.pi/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.pi/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.pi/skills/teach/SKILL.md +0 -140
- package/template/.pi/skills/teach/agents/openai.yaml +0 -5
- package/template/.pi/skills/writing-beats/SKILL.md +0 -67
- package/template/.pi/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.pi/skills/writing-fragments/SKILL.md +0 -79
- package/template/.pi/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.pi/skills/writing-shape/SKILL.md +0 -79
- package/template/.pi/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.pi/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.pi/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.pi/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.pi/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.pi/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.pi/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.pi/skills/yss-page-module-development/references/utils-map.md +0 -14
- package/template/.qoder/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.qoder/skills/ask-matt/SKILL.md +0 -95
- package/template/.qoder/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.qoder/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.qoder/skills/loop-me/SKILL.md +0 -32
- package/template/.qoder/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.qoder/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.qoder/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.qoder/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.qoder/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.qoder/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.qoder/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.qoder/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.qoder/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.qoder/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.qoder/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.qoder/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.qoder/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.qoder/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.qoder/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.qoder/skills/teach/SKILL.md +0 -140
- package/template/.qoder/skills/teach/agents/openai.yaml +0 -5
- package/template/.qoder/skills/writing-beats/SKILL.md +0 -67
- package/template/.qoder/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.qoder/skills/writing-fragments/SKILL.md +0 -79
- package/template/.qoder/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.qoder/skills/writing-shape/SKILL.md +0 -79
- package/template/.qoder/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.qoder/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.qoder/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.qoder/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.qoder/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.qoder/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.qoder/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.qoder/skills/yss-page-module-development/references/utils-map.md +0 -14
- package/template/.trae/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.trae/skills/ask-matt/SKILL.md +0 -95
- package/template/.trae/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.trae/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.trae/skills/loop-me/SKILL.md +0 -32
- package/template/.trae/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.trae/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.trae/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.trae/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.trae/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.trae/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.trae/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.trae/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.trae/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.trae/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.trae/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.trae/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.trae/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.trae/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.trae/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.trae/skills/teach/SKILL.md +0 -140
- package/template/.trae/skills/teach/agents/openai.yaml +0 -5
- package/template/.trae/skills/writing-beats/SKILL.md +0 -67
- package/template/.trae/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.trae/skills/writing-fragments/SKILL.md +0 -79
- package/template/.trae/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.trae/skills/writing-shape/SKILL.md +0 -79
- package/template/.trae/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.trae/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.trae/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.trae/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.trae/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.trae/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.trae/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.trae/skills/yss-page-module-development/references/utils-map.md +0 -14
package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { attachScaffoldDecisionFixture } from "../../../../scripts/fixtures/user-decision/build-fixture.mjs";
|
|
1
2
|
import assert from "node:assert/strict";
|
|
2
3
|
import { execFile } from "node:child_process";
|
|
3
4
|
import { createHash } from "node:crypto";
|
|
@@ -30,7 +31,7 @@ async function treeDigest(root) {
|
|
|
30
31
|
}
|
|
31
32
|
function contract(outputDir, overrides = {}) {
|
|
32
33
|
return {
|
|
33
|
-
schema_version:
|
|
34
|
+
schema_version: 3,
|
|
34
35
|
contract_id: "scaffold-1",
|
|
35
36
|
contract_version: 1,
|
|
36
37
|
scaffold_request_id: "scaffold-request-1",
|
|
@@ -45,6 +46,11 @@ function contract(outputDir, overrides = {}) {
|
|
|
45
46
|
project_name: "demo-service",
|
|
46
47
|
target_output_dir: outputDir,
|
|
47
48
|
base_package: "com.yss.demo",
|
|
49
|
+
architecture_family: "domain-driven", architecture_profile: "target-domain-model",
|
|
50
|
+
generator_skill: "yss-ddd-scaffold-generator",
|
|
51
|
+
decision_ref: "scaffold-architecture-decisions.yaml",
|
|
52
|
+
decision_id: "scaffold-decision.demo-service",
|
|
53
|
+
decision_digest: `sha256:${"0".repeat(64)}`,
|
|
48
54
|
maven_coordinates: {
|
|
49
55
|
group_id: "com.yss.datamiddle",
|
|
50
56
|
project_version: "1.0.0-SNAPSHOT",
|
|
@@ -54,12 +60,13 @@ function contract(outputDir, overrides = {}) {
|
|
|
54
60
|
profiles: {
|
|
55
61
|
architecture: "target-domain-model",
|
|
56
62
|
persistence: "mybatis-plus",
|
|
57
|
-
|
|
63
|
+
verification_database: "h2", production_database: "not-bound",
|
|
58
64
|
platform: "spring-boot-2.7-jdk8",
|
|
59
65
|
validation_namespace: "javax",
|
|
60
66
|
dto_placement: "web",
|
|
61
67
|
repository: "yss-internal"
|
|
62
68
|
},
|
|
69
|
+
module_profile: { resolution_version: 1, requested_capabilities: [], resolved_modules: ["domain", "application", "infrastructure", "adapter", "bootstrap"] },
|
|
63
70
|
allowed_write_paths: ["."],
|
|
64
71
|
expected_evidence_files: [".yss/scaffold-generation.json"],
|
|
65
72
|
verification_commands: ["./mvnw validate", "./mvnw test", "./mvnw package"],
|
|
@@ -69,7 +76,21 @@ function contract(outputDir, overrides = {}) {
|
|
|
69
76
|
...overrides
|
|
70
77
|
};
|
|
71
78
|
}
|
|
72
|
-
async function fixture(contractOverrides = {}) {
|
|
79
|
+
async function fixture(contractOverrides = {}) {
|
|
80
|
+
const root = await mkdtemp(path.join(os.tmpdir(), "yss-scaffold-node-"));
|
|
81
|
+
const output = path.join(root, "implementation");
|
|
82
|
+
await mkdir(output);
|
|
83
|
+
const decisionFile = path.join(root, "scaffold-architecture-decisions.yaml");
|
|
84
|
+
let decisionText = `${JSON.stringify({ schema_version: 1, kind: "scaffold-architecture-decisions", template: false, status: "current", decisions: [{ decision_id: "scaffold-decision.demo-service", project_id: "demo-service", parent_project_id: null, status: "lifecycle-approved", recommended_architecture: "domain-driven", recommendation_reasons: ["存在复杂领域规则"], confirmed_architecture: "domain-driven", override_reason: null, inheritance_mode: "root-default", inherited_from: null, platform_profile: "spring-boot-2.7-jdk8", architecture_profile: "target-domain-model", verification_database: "h2", production_database: "not-bound", requested_capabilities: [], resolved_modules: ["domain", "application", "infrastructure", "adapter", "bootstrap"], resolution_version: 1, user_confirmation: { confirmed_by: "tester", channel: "test", confirmation_ref: "test://confirmation", confirmed_at: "2026-09-05T00:00:00Z", normalized_text: "确认使用 DDD" }, decision_inputs_digest: `sha256:${"1".repeat(64)}` }] }, null, 2)}\n`;
|
|
85
|
+
const decisionSet = JSON.parse(decisionText);
|
|
86
|
+
decisionSet.decisions = decisionSet.decisions.map((decision) => attachScaffoldDecisionFixture(path.join(root, "user-decision"), decision));
|
|
87
|
+
decisionText = JSON.stringify(decisionSet, null, 2) + "\n";
|
|
88
|
+
await writeFile(decisionFile, decisionText);
|
|
89
|
+
const decisionDigest = `sha256:${createHash("sha256").update(decisionText).digest("hex")}`;
|
|
90
|
+
const contractFile = path.join(root, "contract.json");
|
|
91
|
+
await writeFile(contractFile, `${JSON.stringify(contract(output, { decision_digest: decisionDigest, ...contractOverrides }), null, 2)}\n`);
|
|
92
|
+
return { root, output, contractFile, decisionFile, args: ["--project-name", "demo-service", "--base-package", "com.yss.demo", "--output-dir", output, "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile, "--group-id", "com.yss.datamiddle", "--project-version", "1.0.0-SNAPSHOT", "--parent-group-id", "com.yss.datamiddle", "--parent-artifact-id", "yss-datamiddle-parent", "--parent-version", "2.0.0-SNAPSHOT", "--yss-components-version", "2.0.0-SNAPSHOT"] };
|
|
93
|
+
}
|
|
73
94
|
|
|
74
95
|
const controlledEnvironment = {
|
|
75
96
|
...process.env,
|
|
@@ -79,7 +100,7 @@ const controlledEnvironment = {
|
|
|
79
100
|
};
|
|
80
101
|
function targetManifest(overrides = {}) {
|
|
81
102
|
return {
|
|
82
|
-
schema_version:
|
|
103
|
+
schema_version: 3,
|
|
83
104
|
contract_id: "id",
|
|
84
105
|
contract_version: 1,
|
|
85
106
|
scaffold_request_id: "request",
|
|
@@ -96,6 +117,11 @@ function targetManifest(overrides = {}) {
|
|
|
96
117
|
verification_commands: ["./mvnw validate", "./mvnw test", "./mvnw package"],
|
|
97
118
|
generation_mode: "controlled-generation",
|
|
98
119
|
completion_level: "generated",
|
|
120
|
+
architecture_family: "domain-driven", architecture_profile: "target-domain-model",
|
|
121
|
+
generator_skill: "yss-ddd-scaffold-generator",
|
|
122
|
+
decision_id: "scaffold-decision.demo-service",
|
|
123
|
+
decision_digest: `sha256:${"a".repeat(64)}`,
|
|
124
|
+
module_profile: { resolution_version: 1, requested_capabilities: [], resolved_modules: ["domain", "application", "infrastructure", "adapter", "bootstrap"] },
|
|
99
125
|
profiles: { architecture: "target-domain-model", repository: "yss-internal" },
|
|
100
126
|
ownership: { generated_files: [] },
|
|
101
127
|
readiness: { downstream_skills: {}, architecture_ruleset: "b".repeat(64) },
|
|
@@ -112,7 +138,7 @@ async function prepareVerifierProject(project, manifest = targetManifest()) {
|
|
|
112
138
|
await writeFile(path.join(project, ".yss", "scaffold-generation.json"), `${JSON.stringify(manifest)}\n`);
|
|
113
139
|
}
|
|
114
140
|
|
|
115
|
-
test("生成批准的服务级 target profile 骨架,并写入可追溯 Manifest
|
|
141
|
+
test("生成批准的服务级 target profile 骨架,并写入可追溯 Manifest v3", async (t) => { const data = await fixture(); t.after(() => rm(data.root, { recursive: true, force: true })); const result = await command(data.args); assert.equal(result.code, 0, result.stderr); const project = path.join(data.output, "demo-service"); const manifest = JSON.parse(await readFile(path.join(project, ".yss/scaffold-generation.json"), "utf8")); assert.equal(manifest.schema_version, 3); assert.equal(manifest.architecture_family, "domain-driven"); assert.equal(manifest.generator_skill, "yss-ddd-scaffold-generator"); assert.equal(manifest.decision_id, "scaffold-decision.demo-service"); assert.equal(manifest.scaffold_request_id, "scaffold-request-1"); assert.equal(manifest.slice_id, undefined); assert.equal(manifest.completion_level, "generated"); assert.equal(manifest.profiles.architecture, "target-domain-model"); assert.deepEqual(manifest.generation_policy, { mode: "initialize-only", existing_target: "unsupported", old_project_migration: "unsupported", template_upgrade: "unsupported" }); assert.match(manifest.generator.template_digest, /^[a-f0-9]{64}$/); assert.match(manifest.contract_digest, /^[a-f0-9]{64}$/); assert.ok(manifest.ownership.generated_files.length > 8); assert.ok(manifest.ownership.generated_files.every((item) => item.owner === "generator" && /^[a-f0-9]{64}$/.test(item.sha256))); assert.equal(manifest.generation_mode, "controlled-generation"); assert.deepEqual(manifest.verification_commands, ["./mvnw validate", "./mvnw test", "./mvnw package"]); assert.equal(manifest.bootstrap_main_class, "com.yss.demo.DemoServiceApplication"); assert.equal(manifest.bootstrap_main_source, "demo-service-bootstrap/src/main/java/com/yss/demo/DemoServiceApplication.java"); assert.match(await readFile(path.join(project, manifest.bootstrap_main_source), "utf8"), /class DemoServiceApplication/); assert.match(await readFile(path.join(project, "pom.xml"), "utf8"), /demo-service/); assert.equal(manifest.readiness.downstream_skills["yss-domain"], await treeDigest(path.resolve(scripts, "../../yss-domain"))); assert.match(manifest.readiness.contracts.scaffold_parent, /^[a-f0-9]{64}$/); assert.match(manifest.readiness.contracts.compiler_contract, /^[a-f0-9]{64}$/); });
|
|
116
142
|
|
|
117
143
|
test("schema v1 scaffold contract is unsupported and is never upgraded", async (t) => {
|
|
118
144
|
const data = await fixture({ schema_version: 1 });
|
|
@@ -235,9 +261,12 @@ test("生成工程固定平台 profile、Wrapper checksum,并把调试日志
|
|
|
235
261
|
assert.match(wrapper, /^distributionSha256Sum=[a-f0-9]{64}$/m);
|
|
236
262
|
const application = await readFile(path.join(project, "demo-service-bootstrap", "src", "main", "resources", "application.yml"), "utf8");
|
|
237
263
|
assert.doesNotMatch(application, /StdOutImpl|DEBUG/);
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
assert.match(local, /
|
|
264
|
+
assert.doesNotMatch(application, /datasource|jdbc:|profiles:/);
|
|
265
|
+
const local = await readFile(path.join(project, "demo-service-bootstrap", "src", "main", "resources", "application-scaffold-local.yml"), "utf8");
|
|
266
|
+
assert.match(local, /jdbc:h2:mem:/);
|
|
267
|
+
assert.match(local, /mode: never/);
|
|
268
|
+
const pom = await readFile(path.join(project, "demo-service-infrastructure/pom.xml"), "utf8");
|
|
269
|
+
assert.doesNotMatch(pom, /mysql-connector|ojdbc|oceanbase|druid/);
|
|
241
270
|
});
|
|
242
271
|
|
|
243
272
|
test("initialize-only 在写文件前拒绝任何已存在目标和 --force", async (t) => { const data = await fixture(); t.after(() => rm(data.root, { recursive: true, force: true })); const rejected = await command(data.args.map((value) => value === data.contractFile ? path.join(data.root, "missing.json") : value)); assert.equal(rejected.code, 1); assert.match(rejected.stderr, /合同/); await mkdir(path.join(data.output, "demo-service")); await writeFile(path.join(data.output, "demo-service", "keep.txt"), "keep"); const noForce = await command(data.args); assert.equal(noForce.code, 1); assert.match(noForce.stderr, /initialize-only/); const forced = await command([...data.args, "--force"]); assert.equal(forced.code, 1); assert.match(forced.stderr, /initialize-only/); assert.equal(await readFile(path.join(data.output, "demo-service", "keep.txt"), "utf8"), "keep"); });
|
|
@@ -279,7 +308,7 @@ test("initialize-only 拒绝以 --force 覆盖 .gitmodules 登记的挂载点",
|
|
|
279
308
|
await writeFile(path.join(superproject, ".gitmodules"), "[submodule \"demo-service\"]\n\tpath = apps/backend/demo-service\n\turl = https://example.invalid/demo-service.git\n");
|
|
280
309
|
const contractFile = path.join(data.root, "gitlink-contract.json");
|
|
281
310
|
await writeFile(contractFile, `${JSON.stringify(contract(output), null, 2)}\n`);
|
|
282
|
-
const result = await command(["--project-name", "demo-service", "--base-package", "com.yss.demo", "--output-dir", output, "--
|
|
311
|
+
const result = await command(["--project-name", "demo-service", "--base-package", "com.yss.demo", "--output-dir", output, "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile, "--force"]);
|
|
283
312
|
assert.equal(result.code, 1, result.stderr);
|
|
284
313
|
assert.match(`${result.stdout}\n${result.stderr}`, /initialize-only|gitlink 不得由脚手架覆盖/);
|
|
285
314
|
});
|
|
@@ -292,7 +321,7 @@ test("拒绝在 detached HEAD 子仓工作树内当成普通目录生成", async
|
|
|
292
321
|
const output = path.join(detached.superproject, detached.mount);
|
|
293
322
|
const contractFile = path.join(data.root, "detached-contract.json");
|
|
294
323
|
await writeFile(contractFile, `${JSON.stringify(contract(output), null, 2)}\n`);
|
|
295
|
-
const result = await command(["--project-name", "nested-service", "--base-package", "com.yss.demo", "--output-dir", output, "--
|
|
324
|
+
const result = await command(["--project-name", "nested-service", "--base-package", "com.yss.demo", "--output-dir", output, "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile]);
|
|
296
325
|
const text = `${result.stdout}\n${result.stderr}`;
|
|
297
326
|
assert.equal(result.code, 1, text);
|
|
298
327
|
assert.doesNotMatch(text, /请显式传入 --force/);
|
|
@@ -309,7 +338,7 @@ test("--force 覆盖真实 gitlink 不得走普通目录覆盖路径", async (t)
|
|
|
309
338
|
const output = path.join(empty.superproject, "apps/backend");
|
|
310
339
|
const contractFile = path.join(data.root, "empty-gitlink-contract.json");
|
|
311
340
|
await writeFile(contractFile, `${JSON.stringify(contract(output), null, 2)}\n`);
|
|
312
|
-
const result = await command(["--project-name", "billing-service", "--base-package", "com.yss.demo", "--output-dir", output, "--
|
|
341
|
+
const result = await command(["--project-name", "billing-service", "--base-package", "com.yss.demo", "--output-dir", output, "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile, "--force"]);
|
|
313
342
|
const text = `${result.stdout}\n${result.stderr}`;
|
|
314
343
|
assert.equal(result.code, 1, text);
|
|
315
344
|
assert.doesNotMatch(text, /请显式传入 --force/);
|
|
@@ -357,7 +386,7 @@ test("验证器单独标记 Java 编译失败和 Bootstrap 主类缺失", async
|
|
|
357
386
|
|
|
358
387
|
test("验证器在全部 Maven 命令成功时通过并保留日志引用", async (t) => { const root = await mkdtemp(path.join(os.tmpdir(), "yss-scaffold-verifier-success-")); t.after(() => rm(root, { recursive: true, force: true })); const project = path.join(root, "project"); await prepareVerifierProject(project); const wrapper = path.join(project, "mvnw"); await writeFile(wrapper, "#!/bin/sh\nprintf 'ran %s\\n' \"$1\"\n"); await chmod(wrapper, 0o755); const report = await run(project, path.join(root, "evidence"), controlledEnvironment); assert.equal(report.status, "passed"); assert.ok(report.commands.every((item) => item.exit_code === 0 && item.stdout_ref.endsWith(".stdout.log"))); });
|
|
359
388
|
|
|
360
|
-
test("Manifest
|
|
389
|
+
test("Manifest v3 在缺少受控仓库环境时先于 Maven 执行阻断", async (t) => {
|
|
361
390
|
const root = await mkdtemp(path.join(os.tmpdir(), "yss-scaffold-v2-preflight-"));
|
|
362
391
|
t.after(() => rm(root, { recursive: true, force: true }));
|
|
363
392
|
const project = path.join(root, "project");
|
|
@@ -9,38 +9,39 @@ description: Use when YSS 产品设计系统与 Ant Design 企业级 UI 风格
|
|
|
9
9
|
|
|
10
10
|
## 权威资料
|
|
11
11
|
|
|
12
|
-
-
|
|
13
|
-
-
|
|
12
|
+
- 规范源:根 `DESIGN.md`,是项目视觉 Token 与组件视觉变体的唯一事实来源,使用 Google `design.md` alpha canonical H2 章节。
|
|
13
|
+
- 团队治理说明:`docs/design/design.md`,解释 YSS 生命周期、组件路线、状态与验收,不重新定义 `DESIGN.md` 中的具体值。
|
|
14
|
+
- 项目 Token 快照:`docs/design/tokens/theme.json`、`docs/design/tokens/tokens.default.json`、`docs/design/tokens/tokens.dark.json`、`docs/design/tokens/tokens.compact.json`、`docs/design/tokens/variables.css`、`docs/design/tokens/variables.dark.css`;它们是派生实现视图,不得反向覆盖规范源。
|
|
14
15
|
- 本技能执行清单:`references/design-system.md`,用于 Agent 执行和评审,不替代 `docs/design/design.md`。
|
|
15
16
|
- 历史输入包:`/Users/zhudaoming/Downloads/Product-Design-System`,只用于追溯首次引入来源,不作为后续工程依赖。
|
|
16
17
|
- 默认亮色覆盖:项目 Ant Design 5 Less / `:root` 变量已裁定进 `docs/design/design.md` 与 token 快照;原始 Less 不是实现语言。
|
|
17
18
|
- Codex `$design-qa` 项目对照:`references/design-qa-theme.md`,不替代官方 `design-qa` 流程,也不改上游插件正文。
|
|
18
|
-
- 原型阶段合同:`yss-prototype-stage`,用于统一 H1/H2 原型资产和浏览器验证证据。
|
|
19
|
+
- 原型阶段合同:`yss-prototype-stage`,用于统一 H1/H2 原型资产和浏览器验证证据。H2 默认由 `yss-antdv-next-design` 提供 Vue/Antdv Next 事实;显式 React 兼容路线由 `yss-antd-design` 提供事实。
|
|
19
20
|
|
|
20
|
-
如果只需要快速判断,先读本文件。若要写 UI 规范、实现页面、评审设计或调整
|
|
21
|
+
如果只需要快速判断,先读本文件。若要写 UI 规范、实现页面、评审设计或调整 Token,必须按 `DESIGN.md` → `docs/design/design.md` → `docs/design/tokens/*` 顺序读取;若要执行评审或实现检查,再读 `references/design-system.md`。
|
|
21
22
|
|
|
22
23
|
## 使用流程
|
|
23
24
|
|
|
24
25
|
1. 先判断任务阶段:设计系统引入 / 产品设计 / 原型评审 / 前端实现 / UI 改造 / 主题 token 落地。
|
|
25
|
-
2.
|
|
26
|
+
2. 读取已有资产:先读根 `DESIGN.md`,再读 `docs/design/design.md` 和 Token 派生快照,最后按任务读取相关 Spec、交互说明、状态矩阵、OpenAPI Draft、现有页面代码。
|
|
26
27
|
3. 按设计系统基线约束输出或修改产物:颜色、排版、间距、圆角、动效、组件、状态、响应式。
|
|
27
28
|
4. 若是产品设计阶段,先使用 `yss-prototype-stage`;Codex 以 `product-design:index` 为主入口,其他 Agent 必须交付等价合同资产和证据。
|
|
28
|
-
5. 若是前端实现阶段,配合 `yss-ui`、`yss-ui-business-page-generation`、`yss-components`、`yss-formily
|
|
29
|
-
6.
|
|
29
|
+
5. 若是前端实现阶段,配合 `yss-ui`、`yss-ui-business-page-generation`、`yss-components`、`yss-formily`,但本技能负责风格与体验一致性门禁。
|
|
30
|
+
6. 若发现视觉 Token 或组件变体不足,先更新根 `DESIGN.md` 并重新生成投影;只有治理、流程或验收说明不足时才更新 `docs/design/design.md`。
|
|
30
31
|
|
|
31
32
|
## 核心基线
|
|
32
33
|
|
|
33
34
|
- UI 定位:中后台、数据密集、表单密集、流程密集、可扫描、低装饰。
|
|
34
|
-
-
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
35
|
+
- 颜色:使用 `DESIGN.md` 的 `colors.*`;品牌 seed 与高对比主控件变体是不同角色,不得用 seed 绕过 `components.button-primary*`。
|
|
36
|
+
- 排版:使用 `DESIGN.md` 的 `typography.*`,状态不能只靠字重表达。
|
|
37
|
+
- 密度:使用 `DESIGN.md` 的组件高度与 `spacing.*`;默认工作界面只应用一次 compact algorithm,不手工二次压缩。
|
|
38
|
+
- 圆角:使用 `rounded.*`,控件、容器和 pill 角色不得用页面级 magic number 替代。
|
|
38
39
|
- 运行时换肤:短名 CSS 变量必须指向 `--brand-*`,不要再维护第二套色值。
|
|
39
40
|
- 表面层级:页面背景、内容容器、浮层三层模型。
|
|
40
41
|
- 组件语言:优先 Ant Design / YSS UI 语义,不自造同类控件。
|
|
41
42
|
- 状态完整性:loading、empty、error、readonly、disabled、no-permission、conflict、success 必须在设计或实现中可解释。
|
|
42
|
-
- 原型基线:先用项目语义 token 定义角色,再用组件 token 或 CSS variables 落地;不以局部硬编码替代主题层。H2
|
|
43
|
-
- 档位版本边界:H1 只依赖项目 Token;H2 React AntD
|
|
43
|
+
- 原型基线:先用项目语义 token 定义角色,再用组件 token 或 CSS variables 落地;不以局部硬编码替代主题层。H2 默认 Vue/Antdv Next 只消费精确版本且 digest 新鲜的 fact pack;React AntD 只用于显式兼容路线。
|
|
44
|
+
- 档位版本边界:H1 只依赖项目 Token;H2 Vue/Antdv Next 默认路线与 React AntD 兼容路线分别精确锁版本。两条原型路线都不改变生产实现边界;生产 API 只在实现阶段从目标仓 lockfile 读取 Vue 3 + YSS UI + AntDV 事实。
|
|
44
45
|
|
|
45
46
|
## 强制规则
|
|
46
47
|
|
|
@@ -50,8 +51,9 @@ description: Use when YSS 产品设计系统与 Ant Design 企业级 UI 风格
|
|
|
50
51
|
- 每个页面或决策区域只保留一个 single primary action;其余动作降级为默认、链接或危险操作。
|
|
51
52
|
- 不硬编码表面色、边框色、状态色;优先使用 token 或主题变量。
|
|
52
53
|
- 交互原型中的每个可点击主动作都必须给出 interaction feedback:状态变化、禁用原因、成功或失败反馈至少覆盖其一。
|
|
53
|
-
- accessibility:品牌 Seed
|
|
54
|
-
- React
|
|
54
|
+
- accessibility:品牌 Seed 保持 `colors.primary`;实际文字/背景组合不满足 WCAG 2.2 AA 时,优先使用 `components.*` 中的高对比变体或 `ConfigProvider` component token 调整,并验证 default/hover/active/disabled/focus、键盘焦点、200% zoom、reduced motion 与目标尺寸,不新增页面级特例色。
|
|
55
|
+
- Antdv Next 默认路线与 React Ant Design 兼容路线的暗色或紧凑密度必须使用各自精确版本支持的 theme algorithm;基础 seed 和 compact 结果均从规范源/派生快照读取,不手工反转颜色、逐控件压缩或重复 compact。
|
|
56
|
+
- 不依赖 Ant Design v6 / Antdv Next 的内部 DOM、生成类名或未记录 API;只使用公开 API、semantic token 与项目主题变量。
|
|
55
57
|
- 不用 Tag 表达关键错误、阻断或审批状态;关键状态必须有可读文本和语义反馈。
|
|
56
58
|
- 不让按钮、标签、表头、弹窗、卡片中的文字溢出或遮挡。
|
|
57
59
|
- 不在表格 / 筛选 / 批量操作密集页面使用松散营销式布局。
|
|
@@ -71,7 +73,7 @@ description: Use when YSS 产品设计系统与 Ant Design 企业级 UI 风格
|
|
|
71
73
|
|
|
72
74
|
- 是否通过 `ConfigProvider`、CSS variables 或项目 token 消费主题。
|
|
73
75
|
- 是否将颜色、圆角、阴影和状态样式绑定到 semantic token,而不是复制表面色和交互色。
|
|
74
|
-
-
|
|
76
|
+
- 是否使用当前 `DESIGN.md` 和 compact 派生快照中的控件、排版与间距值,且没有重复 compact。
|
|
75
77
|
- 是否使用 YSS UI / Ant Design 的语义组件,而不是自造同类组件。
|
|
76
78
|
- 是否保留 hover、focus、active、disabled、loading、error、empty 状态。
|
|
77
79
|
- 是否为可提交、导出、保存、发布、审批等操作提供明确的 interaction feedback 与不可逆操作确认。
|
|
@@ -85,10 +87,11 @@ description: Use when YSS 产品设计系统与 Ant Design 企业级 UI 风格
|
|
|
85
87
|
| 低保真原型进入高保真前评审 | `prototype-review` |
|
|
86
88
|
| 低保真评审后的原型交付物 | `yss-prototype-stage` 选择 H1/H2;`high-fidelity-html-prototype` 仅只读迁移 |
|
|
87
89
|
| 低保真线框或流程图 | `product-design:index` |
|
|
88
|
-
| 前端页面实现 | `yss-ui` / `yss-ui-business-page-generation
|
|
90
|
+
| 前端页面实现 | `yss-ui` / `yss-ui-business-page-generation` |
|
|
89
91
|
| 表单 schema | `yss-formily` |
|
|
90
92
|
| YTable / YTree / 高度自适应 | `yss-components` / `yss-use-table-height` / `yss-use-tree-height` |
|
|
91
|
-
| H2
|
|
93
|
+
| H2 Vue/Antdv Next 默认原型的组件 / token / demo 查询 | `yss-antdv-next-design`(精确版本 fact pack,不用于 H1) |
|
|
94
|
+
| H2 React/AntD 显式兼容原型的组件 / token / demo 查询 | `yss-antd-design`(fact pack 优先,不用于 H1) |
|
|
92
95
|
| Codex 原型交接前的视觉 QA | `design-qa`;token / 字体对照读 `references/design-qa-theme.md`,以项目覆盖为准 |
|
|
93
96
|
| 原型渲染适配 | `yss-prototype-stage/references/product-design-adapter.md`;H1 静态、H2 可运行流程;不得调用 `yss-ui` |
|
|
94
97
|
| API 契约 / 接入 | `yss-openapi-governance` / `yss-api-integration` |
|
|
@@ -98,8 +101,8 @@ description: Use when YSS 产品设计系统与 Ant Design 企业级 UI 风格
|
|
|
98
101
|
当用户要求“引入设计系统”“形成项目规范”“更新设计系统 skill”时:
|
|
99
102
|
|
|
100
103
|
1. 分析来源设计系统,不原样堆拷贝。
|
|
101
|
-
2.
|
|
102
|
-
3.
|
|
103
|
-
4. 将 Agent
|
|
104
|
+
2. 将稳定视觉 Token 与组件变体先落到根 `DESIGN.md`;治理、流程和验收说明再落到 `docs/design/design.md`。
|
|
105
|
+
3. 运行 `node .template-source/tooling/node/scripts/design-md.mjs export dtcg --write --write-manifest` 更新派生视图,并更新 `docs/design/design-system-sync.yaml` 的规范源摘要。
|
|
106
|
+
4. 将 Agent 执行入口落到 `.agents/skills/yss-design-system/SKILL.md`,执行清单落到 `references/design-system.md`;两者只引用 Token 名和角色,不复制具体值。
|
|
104
107
|
5. 更新 `docs/design/README.md` 和必要的 `AGENTS.md` 入口规则。
|
|
105
|
-
6. 运行
|
|
108
|
+
6. 运行 frontmatter、对应 `node --test`、`design-md lint/drift`、技能投影与 lock 校验。
|
|
@@ -4,46 +4,44 @@
|
|
|
4
4
|
|
|
5
5
|
## Source visual truth
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
7
|
+
- 规范:根 `DESIGN.md`
|
|
8
|
+
- 治理说明:`docs/design/design.md`
|
|
9
|
+
- Token 投影:`docs/design/tokens/theme.json`、`docs/design/tokens/tokens.default.json`、`docs/design/tokens/variables.css`
|
|
9
10
|
- 实现截图:当前原型或页面在同一 viewport / 主题 / 状态下的渲染
|
|
10
11
|
|
|
11
|
-
官方 `https://ant.design/design.md`
|
|
12
|
+
官方 `https://ant.design/design.md` 只是上游默认。项目覆盖与官方不同时,以根 `DESIGN.md` 为准;本清单不复制规范值。
|
|
12
13
|
|
|
13
14
|
## 必查 fidelity surface(项目覆盖)
|
|
14
15
|
|
|
15
16
|
### Colors and visual tokens
|
|
16
17
|
|
|
17
|
-
| 角色 | 必须对照 | 记为 P1
|
|
18
|
+
| 角色 | 必须对照 | 记为 P1 Token drift |
|
|
18
19
|
| --- | --- | --- |
|
|
19
|
-
|
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
23
|
-
|
|
|
24
|
-
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
| 运行时变量 | `--primary-color` 指向 `--brand-color-primary` | 页面另写一套 Less 色值 |
|
|
28
|
-
|
|
29
|
-
`blue` 预设色板里的 `#1677ff` 不是品牌主色,不要据此判定主色漂移。
|
|
20
|
+
| 品牌 seed | `colors.primary` | 使用上游默认或历史值覆盖根规范 |
|
|
21
|
+
| 主控件 default / hover / active / disabled | `components.button-primary*` | 用品牌 seed 代替高对比组件变体 |
|
|
22
|
+
| 功能状态 | `colors.success*` / `warning*` / `error*` / `info-bg` | 改成非功能色装饰 |
|
|
23
|
+
| 页面 / 容器 / 浮层 | `colors.canvas-layout` / `surface*` | 用阴影或局部硬编码堆叠表面层级 |
|
|
24
|
+
| 主次文本 | `colors.text*` | 使用历史文本值或页面特例 |
|
|
25
|
+
| 运行时变量 | `docs/design/tokens/variables.css` 必须与根规范 digest 同步 | 页面另写一套 Less/CSS 色值 |
|
|
26
|
+
|
|
27
|
+
上游预设色板不是品牌 seed,不要据此判定规范漂移。
|
|
30
28
|
|
|
31
29
|
### Fonts and typography
|
|
32
30
|
|
|
33
31
|
| 角色 | 必须对照 | 记为 P1 token drift |
|
|
34
32
|
| --- | --- | --- |
|
|
35
|
-
|
|
|
36
|
-
|
|
|
37
|
-
| 字体栈 |
|
|
38
|
-
| 字重 |
|
|
33
|
+
| 正文与标题 | `typography.*` | 使用未登记的营销字号或字体 |
|
|
34
|
+
| 控件高度 | `components.button-*` / `input-*` | 用 seed 或页面硬编码替代组件变体 |
|
|
35
|
+
| 字体栈 | `typography.*.fontFamily` | 强制未登记品牌字体 |
|
|
36
|
+
| 字重 | `typography.*.fontWeight` | 用额外重粗表达选中或激活 |
|
|
39
37
|
|
|
40
38
|
### Spacing and layout rhythm
|
|
41
39
|
|
|
42
40
|
| 角色 | 必须对照 | 记为 P1 token drift |
|
|
43
41
|
| --- | --- | --- |
|
|
44
|
-
| 圆角 |
|
|
45
|
-
|
|
|
46
|
-
|
|
|
42
|
+
| 圆角 | `rounded.*` 与组件变体 | 页面级 magic number 或历史品牌圆角 |
|
|
43
|
+
| 间距 | `spacing.*` 与组件变体 padding | 未登记的中间值撑开中后台密度 |
|
|
44
|
+
| 布局 | `components.page-shell` 与治理说明 | 未说明就改成营销式布局 |
|
|
47
45
|
|
|
48
46
|
### Image quality and copy
|
|
49
47
|
|
|
@@ -51,7 +49,7 @@
|
|
|
51
49
|
|
|
52
50
|
## 判定
|
|
53
51
|
|
|
54
|
-
-
|
|
52
|
+
- 使用上游默认、历史品牌值或未登记字体/圆角覆盖根 `DESIGN.md`:P1。
|
|
55
53
|
- 只改局部组件、且 `prototype-evidence.yaml` 的 `theme_override` 已记录:按官方 severity 评估,不自动升 P1。
|
|
56
54
|
- 暗色模式:本轮未重派生完整暗色色板;暗色对照前若缺少新的 algorithm 派生证据,`final result: blocked`,写明 blocker。
|
|
57
55
|
|
|
@@ -59,6 +57,6 @@
|
|
|
59
57
|
|
|
60
58
|
`design-qa.md` 必须写明:
|
|
61
59
|
|
|
62
|
-
- source visual truth path
|
|
60
|
+
- source visual truth path:根 `DESIGN.md`、治理说明与对应 Token 投影文件
|
|
63
61
|
- 已按本清单核对 Colors/tokens 与 Fonts/typography
|
|
64
62
|
- 与官方默认的差异是否被接受为项目覆盖
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# YSS 设计系统执行规范
|
|
2
2
|
|
|
3
|
-
本文件是
|
|
3
|
+
本文件是 YSS 设计系统的 skill 侧执行清单,面向 Agent 执行、设计评审和前端实现,不单独承载新的 Token 决策或具体值。
|
|
4
4
|
|
|
5
5
|
权威资料:
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
7
|
+
- 规范源:根 `DESIGN.md`(项目视觉 Token 与组件视觉变体)
|
|
8
|
+
- 治理说明:`docs/design/design.md`(生命周期、组件路线、状态与验收)
|
|
9
|
+
- 派生快照:`docs/design/tokens/*`(实现映射,不得反向覆盖规范源)
|
|
9
10
|
- Skill 入口:`.agents/skills/yss-design-system/SKILL.md`
|
|
10
11
|
|
|
11
12
|
## 设计定位
|
|
@@ -37,24 +38,14 @@
|
|
|
37
38
|
|
|
38
39
|
### 颜色
|
|
39
40
|
|
|
40
|
-
|
|
|
41
|
+
| 角色 | 规范源 | 运行时映射 |
|
|
41
42
|
| --- | --- | --- |
|
|
42
|
-
| `
|
|
43
|
-
|
|
|
44
|
-
| `
|
|
45
|
-
|
|
|
46
|
-
| `
|
|
47
|
-
|
|
|
48
|
-
| `colorInfo` | `#3371ff` | 信息提示 |
|
|
49
|
-
| `colorBgLayout` | `#f0f2f5` | 页面背景 |
|
|
50
|
-
| `colorBgContainer` | `#ffffff` | 内容容器 |
|
|
51
|
-
| `colorBgElevated` | `#ffffff` | 浮层容器 |
|
|
52
|
-
| `colorText` | `rgba(0, 0, 0, 0.88)` | 主文本 |
|
|
53
|
-
| `colorTextSecondary` | `rgba(0, 0, 0, 0.65)` | 次级文本 |
|
|
54
|
-
| `colorTextTertiary` | `#8c8c8c` | 弱说明 |
|
|
55
|
-
| `colorTextQuaternary` | `#bfbfbf` | placeholder / disabled |
|
|
56
|
-
| `colorBorder` | `#d9d9d9` | 主边框 |
|
|
57
|
-
| `colorBorderSecondary` | `#f0f0f0` | 次级分割线 |
|
|
43
|
+
| 品牌 seed | `colors.primary` | `colorPrimary` / `--brand-color-primary` |
|
|
44
|
+
| 高对比主控件 | `components.button-primary*` | `--yss-color-primary-control*` 或组件 Token |
|
|
45
|
+
| 页面 / 容器 / 浮层 | `colors.canvas-layout` / `surface` / `surface-elevated` | 对应 `colorBg*` / `--brand-color-bg-*` |
|
|
46
|
+
| 主次文本 | `colors.text*` | 对应 `colorText*` / `--brand-color-text*` |
|
|
47
|
+
| 功能状态 | `colors.success*` / `warning*` / `error*` / `info-bg` | 对应状态 semantic Token |
|
|
48
|
+
| 边框 | `colors.border-secondary` | 对应边框 semantic Token |
|
|
58
49
|
|
|
59
50
|
颜色规则:
|
|
60
51
|
|
|
@@ -64,62 +55,47 @@
|
|
|
64
55
|
- 不硬编码白色、灰色、状态色;优先引用 token、CSS variables 或 Ant Design theme。
|
|
65
56
|
- semantic token 优先于色值:页面先声明背景、容器、浮层、文本、边框、状态等角色,再映射到具体 token。
|
|
66
57
|
- 运行时短名 `--primary-color`、`--text-color`、`--bg-color` 必须指向 `--brand-*`,不要再维护第二套色值。
|
|
67
|
-
-
|
|
58
|
+
- 上游预设色板与项目品牌 seed 是不同角色;色板预设 ≠ 品牌主色。
|
|
68
59
|
- accessibility contrast 不足时,通过 `ConfigProvider` 的 seed token 或组件 token 调整;不要为单个页面制造不可复用的深浅色例外。
|
|
69
60
|
- Codex `$design-qa` 的 token / 字体对照读 `references/design-qa-theme.md`。
|
|
70
61
|
|
|
71
62
|
### 排版
|
|
72
63
|
|
|
73
|
-
|
|
|
74
|
-
| --- | --- | --- |
|
|
75
|
-
|
|
|
76
|
-
|
|
|
77
|
-
|
|
|
78
|
-
|
|
|
79
|
-
|
|
|
80
|
-
| Body | 14 | 400 | 默认正文、控件、表格 |
|
|
81
|
-
| Small | 12 | 400 | 辅助信息、Tag |
|
|
64
|
+
| 角色 | 规范源 | 用途 |
|
|
65
|
+
| --- | --- | --- |
|
|
66
|
+
| 正文 | `typography.body` | 默认正文、控件、表格 |
|
|
67
|
+
| 强调正文 | `typography.body-strong` | 表头与必要强调 |
|
|
68
|
+
| 大 / 中标题 | `typography.heading-lg` / `heading-md` | 页面与分区层级 |
|
|
69
|
+
| 辅助文本 | `typography.caption` | 说明、Tag 与次级信息 |
|
|
70
|
+
| 按钮 | `typography.button` | 控件文字 |
|
|
82
71
|
|
|
83
72
|
排版规则:
|
|
84
73
|
|
|
85
|
-
-
|
|
86
|
-
- UI 字重优先 400 / 600。
|
|
74
|
+
- 正文、标题、辅助文本和按钮的字号、字重、行高均从 `DESIGN.md` 对应角色读取。
|
|
87
75
|
- 字体栈使用系统字体,不强制 `Inter`。
|
|
88
76
|
- 不用 700+ 粗体表达选中或激活状态。
|
|
89
77
|
- 选中状态优先使用颜色、边框、下划线、背景表达。
|
|
90
78
|
|
|
91
79
|
### 间距、尺寸、圆角
|
|
92
80
|
|
|
93
|
-
| 类型 |
|
|
81
|
+
| 类型 | 规范源 |
|
|
94
82
|
| --- | --- |
|
|
95
|
-
|
|
|
96
|
-
|
|
|
97
|
-
|
|
|
98
|
-
|
|
|
99
|
-
| 默认字号 | 14px |
|
|
100
|
-
| 字体栈 | 系统栈,不强制 `Inter` |
|
|
101
|
-
| 小控件圆角 | 4px |
|
|
102
|
-
| 默认控件圆角 | 6px |
|
|
103
|
-
| 大容器 / 浮层圆角 | 8px |
|
|
104
|
-
| 顶栏高度 | 64px |
|
|
105
|
-
| 深色侧栏 | `#001529` |
|
|
83
|
+
| 间距 | `spacing.*` 与组件变体的 `padding` |
|
|
84
|
+
| 控件高度 | `components.button-*` / `input-*` 的 `height`;算法 seed 见治理说明 |
|
|
85
|
+
| 控件 / 容器圆角 | `rounded.*` 与组件变体的 `rounded` |
|
|
86
|
+
| 页面 / Card 内边距 | `components.page-shell` / `card-compact` |
|
|
106
87
|
|
|
107
88
|
执行规则:
|
|
108
89
|
|
|
109
|
-
-
|
|
90
|
+
- 间距只使用 `spacing.*`,不要补写未登记的中间值。
|
|
91
|
+
- 默认工作界面叠加一次 compact algorithm;seed 与计算结果从规范源和派生快照读取,不得二次 compact。
|
|
110
92
|
- 表单、筛选区、工具栏、表格、详情页使用密集但有节奏的布局。
|
|
111
93
|
- 控件圆角不得明显大于容器圆角。
|
|
112
94
|
- 不使用任意 magic number;确需新增尺寸时,先说明为什么 token 不够。
|
|
113
95
|
|
|
114
96
|
### 动效
|
|
115
97
|
|
|
116
|
-
|
|
117
|
-
| --- | --- | --- |
|
|
118
|
-
| `motionDurationFast` | `0.1s` | hover、focus、press |
|
|
119
|
-
| `motionDurationMid` | `0.2s` | 折叠、淡入淡出、控件内部状态 |
|
|
120
|
-
| `motionDurationSlow` | `0.3s` | Modal、Drawer、页面级浮层 |
|
|
121
|
-
|
|
122
|
-
动效只服务于状态反馈、层级变化和空间关系。不自造 easing。
|
|
98
|
+
动效只服务于状态反馈、层级变化和空间关系。使用目标 Provider 的 semantic motion Token,不在页面或本执行清单中自造 duration/easing;项目需要稳定覆盖时先登记到根 `DESIGN.md`。
|
|
123
99
|
|
|
124
100
|
## 组件规则
|
|
125
101
|
|
|
@@ -127,7 +103,7 @@
|
|
|
127
103
|
| --- | --- |
|
|
128
104
|
| Button Primary | 每个决策区域只保留一个主按钮 |
|
|
129
105
|
| Button Default | 次级动作默认使用默认按钮或描边按钮 |
|
|
130
|
-
| Input / Select |
|
|
106
|
+
| Input / Select | 使用 `components.input-*` 高度和圆角,focus 可见;不得以算法 seed 冒充 compact 结果 |
|
|
131
107
|
| Card | 只用于真实内容容器,不做卡片套卡片 |
|
|
132
108
|
| Modal | 用于阻断式决策和关键表单 |
|
|
133
109
|
| Drawer | 用于详情、编辑、辅助流程,不打断主列表上下文 |
|
|
@@ -206,15 +182,22 @@
|
|
|
206
182
|
React + Ant Design:
|
|
207
183
|
|
|
208
184
|
- 使用 `ConfigProvider` 注入主题。
|
|
209
|
-
-
|
|
185
|
+
- 默认工作界面使用 `theme.compactAlgorithm`;暗色紧凑模式组合 `theme.darkAlgorithm` 与 `theme.compactAlgorithm`,不手工反转色值或逐组件压缩。
|
|
186
|
+
- seed 与 compact 计算值以 `DESIGN.md` / `tokens.compact.json` 为准;不要重复 compact。
|
|
210
187
|
- 优先通过 token、component token、CSS variables、theme algorithm 实现样式。
|
|
211
188
|
- 静态反馈 API 使用 `App`、hook API 或 context holder,避免主题上下文丢失。
|
|
212
189
|
- 暗色模式使用 `darkAlgorithm` 或 `variables.dark.css`。
|
|
213
190
|
- 紧凑模式使用 `compactAlgorithm` 或 `tokens.compact.json`。
|
|
214
191
|
|
|
192
|
+
实验 Vue + Antdv Next:
|
|
193
|
+
|
|
194
|
+
- H2 默认先使用 `yss-antdv-next-design` 校验精确版本 fact pack、组件集合与项目 baseline digest。
|
|
195
|
+
- 共享本规范的 semantic token、紧凑密度和验收语义;props、events、slots 与主题 API 只从 Antdv Next fact pack 读取。
|
|
196
|
+
- `yss-antd-design` 只保留为显式 React/AntD 兼容路线;默认 Provider 与兼容 Provider 都不替换生产 `yss-ui` 路线。
|
|
197
|
+
|
|
215
198
|
YSS UI / Vue:
|
|
216
199
|
|
|
217
|
-
-
|
|
200
|
+
- 业务页面实现与生命周期编排统一走 `yss-ui` 和 `yss-ui-business-page-generation`。
|
|
218
201
|
- 新业务表单使用 `YFormily` schema;`YssFormily` 仅用于历史兼容。
|
|
219
202
|
- 表格使用 `YTable`,列定义使用项目约定字段。
|
|
220
203
|
- 高度自适应使用 `useTableHeight` / `useTreeHeight`。
|
|
@@ -237,7 +220,7 @@ YSS UI / Vue:
|
|
|
237
220
|
|
|
238
221
|
- 是否消费 token,而不是硬编码颜色和尺寸。
|
|
239
222
|
- 是否以 semantic token 表达颜色、圆角、阴影和状态层级。
|
|
240
|
-
-
|
|
223
|
+
- 是否使用当前 `DESIGN.md` 与 `tokens.compact.json` 的排版、控件和间距值,且没有重复 compact。
|
|
241
224
|
- 是否保留 hover、focus、active、disabled、loading、empty、error 状态。
|
|
242
225
|
- 是否只保留一个 single primary action,并让每个关键操作提供 interaction feedback。
|
|
243
226
|
- 是否在目标字号和背景下复核 accessibility contrast。
|
|
@@ -7,7 +7,7 @@ description: 用于构建或重构 YSS 领域层代码。当用户要求设计
|
|
|
7
7
|
|
|
8
8
|
这是一个领域实现 skill。核心目标是消费已批准的战术模型,将领域行为落实为代码;战术模型的设计与批准由 `yss-tactical-design` 和 `yss-product-lifecycle` 负责。
|
|
9
9
|
|
|
10
|
-
本 skill 在新脚手架链路只支持 `target-domain-model`。`
|
|
10
|
+
本 skill 在新脚手架链路只支持 `domain-driven` / `target-domain-model`。`layered-mvc-service` 与 `mvc-data-analysis-v1` 是独立 MVC Profile,不是失败的 DDD 工程;它们不加载本 skill,也不生成 Domain Gateway。既有旧架构不在本链路内迁移。
|
|
11
11
|
|
|
12
12
|
## 何时使用
|
|
13
13
|
|
|
@@ -11,6 +11,7 @@ description: Use when YSS `Result`, `SingleResult`, `MultiResult`, `PageResult`,
|
|
|
11
11
|
|
|
12
12
|
## 所有权边界
|
|
13
13
|
|
|
14
|
+
- 先消费 `architecture_identity`:DDD 的 HTTP DTO 在 Web;通用 MVC 私有 DTO 在 server、已批准公开 DTO 在 client;数据分析 MVC 公开 DTO 在 client。service/core 自有内部 Command/Query/Result,不依赖 client DTO;server 用 MapStruct 转换。共用 wire profile 不意味着共用模块路径。
|
|
14
15
|
- `Result` / `SingleResult` / `MultiResult` / `PageResult`、`CommandDTO` / `QueryDTO` / `PageQuery` 的 canonical package、工厂方法、字段语义、默认值、枚举和禁用字段由本 skill 及 `references/openapi-wire-profile.yaml` 唯一持有。
|
|
15
16
|
- Web skill 只生成 endpoint-specific Page Request、Request/Response 与 Convertor,并通过批准合同中的 profile 引用和 digest 消费上述协议;不得生成 wrapper/page base,也不得维护分页字段或默认值副本。
|
|
16
17
|
- OpenAPI skill 只把该 profile 组合进 endpoint schema;不得从 Java getter 或本地常量反向建立第二份 wire 协议。
|
|
@@ -25,6 +25,7 @@ Read `references/source-index.md` as a path-hint index whenever the task depends
|
|
|
25
25
|
4. Check `YssGlobalExceptionProperties` when global exception output/logging behavior is configurable.
|
|
26
26
|
5. Keep logging semantics aligned: business exceptions usually do not require error-stack logging; system/unknown exceptions usually do.
|
|
27
27
|
6. In the `target-domain-model` profile, Domain owns stable error meaning and parameters but does not depend directly on YSS `BizException` or HTTP. Translate at the Web boundary after verifying the component handler precedence.
|
|
28
|
+
7. MVC Profile 的稳定业务错误归 service/core;Repository 保留 cause;server 持有 HTTP 映射与脱敏。不要为了复用错误码引入 Domain 层或让 core 依赖 client。分层依据 `docs/agents/backend-architecture-profiles.md`。
|
|
28
29
|
|
|
29
30
|
## Current Source Behavior
|
|
30
31
|
|
|
@@ -63,7 +63,7 @@ packages/package.json
|
|
|
63
63
|
- 不修改模板既有的代码生成配置,也不把客户端生成加入 CI。
|
|
64
64
|
- 不得把 `apps/frontend/` 容器根登记为项目根;Harness 内每个前端项目必须有独立的 `apps/frontend/<project>/` 路径。
|
|
65
65
|
- 不把模板示例页面当作业务功能交付。
|
|
66
|
-
- 生成后仍需使用 `yss-page-
|
|
66
|
+
- 生成后仍需使用 `yss-ui-business-page-generation`、`yss-components`、`yss-api-integration` 等专项 skill 实现业务页面。
|
|
67
67
|
|
|
68
68
|
## Output
|
|
69
69
|
|
|
@@ -29,7 +29,7 @@ description: Use when a YSS vertical slice is entering implementation, spans mul
|
|
|
29
29
|
- 编译器不得输出 `approved`、`ready-for-agent` 或 `completed`。
|
|
30
30
|
- Registry、Slice Contract 或编译器合同 schema v1 一律拒绝并给出迁移到 v2 的提示;不自动升级,不提供旧技能名兼容。
|
|
31
31
|
- `required_capabilities` 与 `required_skills` 必须同时冻结;Registry 或编译器摘要变化后合同立即 `stale`,重新编译后仍须交生命周期重新批准。
|
|
32
|
-
- UI
|
|
32
|
+
- UI 影响缺少正式原型确认、批准且 digest 当前的 Visual Baseline manifest 或当前切片 `case_id` 时,不得路由页面实现。模型必须先读 manifest 与语义引用,再查看对应 PNG;禁止目录 glob 和图片独立猜义。
|
|
33
33
|
- Repository/数据模型影响缺少数据架构时,不得路由持久化实现。
|
|
34
34
|
- 领域影响缺少批准且版本当前的 tactical-design contract 时,不得路由 Domain 实现;无领域影响必须记录 `not-applicable`。
|
|
35
35
|
- API 变化必须回到生命周期 Draft/Review/Freeze;半成品 backend 不得冒充稳定 source of truth。
|
|
@@ -37,7 +37,7 @@ description: Use when a YSS vertical slice is entering implementation, spans mul
|
|
|
37
37
|
- Harness 内实现路径必须落在 `apps/backend/<project>/` 或 `apps/frontend/<project>/` 的具体项目目录;`apps/backend/`、`apps/frontend/` 只能作为容器,`app/backend/`、`app/frontend/` 及其子路径一律阻断。外部实现仓库使用其登记的真实项目根路径。`git-submodule` 使用 `implementation_path_policy: git-submodule-harness-apps`,空 gitlink、detached HEAD 或 `--force` 覆盖挂载点不得脚手架;`inspectWorkingTreeScope.writable` 必须为显式布尔值。
|
|
38
38
|
- 当前用户、缓存、审计、Excel、分布式 ID、请求校验、错误映射、加解密或网关韧性命中时,必须按 `compiler-contract.yaml` 的 `impact_to_capabilities` 补齐入口 capability;不能只在 `boundaries.md` 中提及。仅复用已经验证的平台认证 / 授权能力不算 component impact,不自动增加权限专项 skill。
|
|
39
39
|
- 业务行为使用 `behavior-tdd`;只有机械脚手架/生成物可用 `controlled-generation`,并记录例外和验证。
|
|
40
|
-
- 原型确认后若 backend `scaffold_status=required
|
|
40
|
+
- 原型确认后若 backend `scaffold_status=required`,必须先读取工程基线中的 `scaffold-architecture-decisions.yaml`。编译器按已达到 `lifecycle-approved` 且 digest 当前的选择,把 `domain-driven` 解析为 `backend.ddd-scaffold` / `yss-ddd-scaffold-generator`,把 `layered-mvc` 解析为 `backend.mvc-scaffold` / `yss-layered-mvc-scaffold-generator`;处于 `undecided`、`recommended`、`awaiting-user-decision` 或 `stale` 时返回 `blocked`,不得默认 DDD。随后按 `scaffold_contract_schema` v3 编译 `controlled-generation` 工作单元合同 draft;合同必须带选择引用与 digest、`generator_skill`、Profile、能力模块闭包、批准/持久化引用、允许写路径、预期证据和验证命令。经生命周期批准并持久化后才能运行对应生成器,再由受控工作单元实际执行固定的 `./mvnw validate`、`./mvnw test`、`./mvnw package` 并记录逐条结果,随后重新编译业务合同;脚手架不承载业务行为。
|
|
41
41
|
- 脚手架合同在编译阶段只能是 `draft` / `ready-for-lifecycle-review` / `blocked`;只有生命周期编排器可以把已持久化脚手架合同标记为 `approved`。脚手架合同只覆盖业务代码前的工程骨架工作单元;生成、基线校验和合同重编译完成后,它不能替代脚手架后的 Slice Implementation Contract。
|
|
42
42
|
- 脚手架输出消费批准的脚手架合同;脚手架后的所有生成后端代码都必须绑定当前批准且版本当前的 Slice Implementation Contract、主 YSS skill、依赖闭包、允许写路径、预期证据和 YSS Skill Execution Result。打印命令、`./mvnw validate` 单项通过或脚手架成功不能替代合同批准;生成范围从机械内容变成业务行为时触发完整重路由。
|
|
43
43
|
- 专项结果中的越界路径、缺失证据、`drift`、`violation` 或 `new_impacts` 必须阻断或重路由。
|
|
@@ -53,3 +53,9 @@ description: Use when a YSS vertical slice is entering implementation, spans mul
|
|
|
53
53
|
## 输出
|
|
54
54
|
|
|
55
55
|
输出合同草案、capability/Recipe 解析记录、技能依赖闭包、不适用理由、阻塞项、TDD 模式、工作单元、预期证据、验证命令、人工审查点、完整重路由触发器,以及建议的 `suggested_owner_role_id`(UI 影响 → `role.frontend-engineer`,后端影响 → `role.backend-engineer`,测试/审查 → `role.test-engineer`)。自然语言说明不能替代结构化合同字段。编译器不得自行批准合同、设置 `ready-for-agent` 或关闭会签门禁;owner 建议只供主控派活。
|
|
56
|
+
|
|
57
|
+
## 战略交接快照包
|
|
58
|
+
|
|
59
|
+
跨仓交接使用 `scripts/strategic-handoff export / verify / import`。正式导出前补齐源战略的稳定规则 ID、关键场景和当前批准绑定;源资产原字节冻结、包内路径通过清单解析。目标导入只产生快照和对账/承接草案,正式 reconciliation 通过后才能进入战术设计。流程与字段见 `docs/process/strategic-handoff-package.md`。
|
|
60
|
+
|
|
61
|
+
战术合同必须绑定 `strategic_handoff` 导入收据、包摘要、正式目标对账及逐条承接 rows。来自导入包时禁止仅填 `upstream_current: true`。批准前执行 `scripts/verify-strategic-handoff-consumption --root <target> <tactical>`;存在受控延期时按切片执行 `--slice <slice-id>`,实际核验通过且合同批准后才可继续相关切片。最新源规则、关键场景或资产变化使依赖项 stale;未知依赖扩大阻断,业务冲突回交战略方。结果绑定当前包与战术摘要,不能复用旧输出宣布 ready-for-agent。
|