create-yss-spec 2.2.8 → 2.2.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/template/.agents/mcp_config.json +8 -0
- package/template/.agents/rules/yss-ai-skills.md +3 -1
- package/template/.agents/skills/.yss-skills-manifest.json +51 -25
- package/template/.agents/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.agents/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.agents/skills/frontend-commit/SKILL.md +1 -1
- package/template/.agents/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.agents/skills/yss-application/SKILL.md +7 -5
- package/template/.agents/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.agents/skills/yss-components/SKILL.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.agents/skills/yss-design-system/SKILL.md +2 -2
- package/template/.agents/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.agents/skills/yss-domain/SKILL.md +3 -3
- package/template/.agents/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.agents/skills/yss-dto/SKILL.md +5 -5
- package/template/.agents/skills/yss-dto/references/README.md +2 -2
- package/template/.agents/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.agents/skills/yss-exception/SKILL.md +2 -0
- package/template/.agents/skills/yss-formily/SKILL.md +1 -1
- package/template/.agents/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.agents/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.agents/skills/yss-repository/SKILL.md +7 -5
- package/template/.agents/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.agents/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.agents/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.agents/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.agents/skills/yss-ui/SKILL.md +6 -5
- package/template/.agents/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.agents/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.agents/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.agents/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.agents/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.agents/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.agents/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.agents/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.agents/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/{.claude/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template → .agents/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template} +7 -11
- package/template/.agents/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.agents/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/.agents/skills/yss-web-controller/assets/templates/{domain/dto/cmd/AddCmd.java.template → web/dto/UpdateRequest.java.template} +7 -11
- package/template/.agents/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.claude/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.claude/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.claude/skills/frontend-commit/SKILL.md +1 -1
- package/template/.claude/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.claude/skills/yss-application/SKILL.md +7 -5
- package/template/.claude/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.claude/skills/yss-components/SKILL.md +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.claude/skills/yss-design-system/SKILL.md +2 -2
- package/template/.claude/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.claude/skills/yss-domain/SKILL.md +3 -3
- package/template/.claude/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.claude/skills/yss-dto/SKILL.md +5 -5
- package/template/.claude/skills/yss-dto/references/README.md +2 -2
- package/template/.claude/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.claude/skills/yss-exception/SKILL.md +2 -0
- package/template/.claude/skills/yss-formily/SKILL.md +1 -1
- package/template/.claude/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.claude/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.claude/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.claude/skills/yss-repository/SKILL.md +7 -5
- package/template/.claude/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.claude/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.claude/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.claude/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.claude/skills/yss-ui/SKILL.md +6 -5
- package/template/.claude/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.claude/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.claude/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.claude/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.claude/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.claude/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.claude/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.claude/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.claude/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.claude/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/{.codex/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template → .claude/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template} +7 -11
- package/template/.claude/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.claude/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/{.cursor/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template → .claude/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template} +7 -11
- package/template/.claude/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.claude/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.claude/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.codex/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.codex/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.codex/skills/frontend-commit/SKILL.md +1 -1
- package/template/.codex/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.codex/skills/yss-application/SKILL.md +7 -5
- package/template/.codex/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.codex/skills/yss-components/SKILL.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.codex/skills/yss-design-system/SKILL.md +2 -2
- package/template/.codex/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.codex/skills/yss-domain/SKILL.md +3 -3
- package/template/.codex/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.codex/skills/yss-dto/SKILL.md +5 -5
- package/template/.codex/skills/yss-dto/references/README.md +2 -2
- package/template/.codex/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.codex/skills/yss-exception/SKILL.md +2 -0
- package/template/.codex/skills/yss-formily/SKILL.md +1 -1
- package/template/.codex/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.codex/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.codex/skills/yss-repository/SKILL.md +7 -5
- package/template/.codex/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.codex/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.codex/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.codex/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.codex/skills/yss-ui/SKILL.md +6 -5
- package/template/.codex/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.codex/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.codex/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.codex/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.codex/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.codex/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.codex/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.codex/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.codex/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
- package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
- package/template/.codex/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.cursor/mcp.json +8 -0
- package/template/.cursor/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.cursor/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.cursor/skills/frontend-commit/SKILL.md +1 -1
- package/template/.cursor/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.cursor/skills/yss-application/SKILL.md +7 -5
- package/template/.cursor/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.cursor/skills/yss-components/SKILL.md +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.cursor/skills/yss-design-system/SKILL.md +2 -2
- package/template/.cursor/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.cursor/skills/yss-domain/SKILL.md +3 -3
- package/template/.cursor/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.cursor/skills/yss-dto/SKILL.md +5 -5
- package/template/.cursor/skills/yss-dto/references/README.md +2 -2
- package/template/.cursor/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.cursor/skills/yss-exception/SKILL.md +2 -0
- package/template/.cursor/skills/yss-formily/SKILL.md +1 -1
- package/template/.cursor/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.cursor/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.cursor/skills/yss-repository/SKILL.md +7 -5
- package/template/.cursor/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.cursor/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.cursor/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.cursor/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.cursor/skills/yss-ui/SKILL.md +6 -5
- package/template/.cursor/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.cursor/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.cursor/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.cursor/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.cursor/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.cursor/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.cursor/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.cursor/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.cursor/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
- package/template/.cursor/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.cursorrules +9 -5
- package/template/.gemini/settings.json +8 -0
- package/template/.hermes/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.hermes/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.hermes/skills/frontend-commit/SKILL.md +1 -1
- package/template/.hermes/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.hermes/skills/yss-application/SKILL.md +7 -5
- package/template/.hermes/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.hermes/skills/yss-components/SKILL.md +1 -1
- package/template/.hermes/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.hermes/skills/yss-design-system/SKILL.md +2 -2
- package/template/.hermes/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.hermes/skills/yss-domain/SKILL.md +3 -3
- package/template/.hermes/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.hermes/skills/yss-dto/SKILL.md +5 -5
- package/template/.hermes/skills/yss-dto/references/README.md +2 -2
- package/template/.hermes/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.hermes/skills/yss-exception/SKILL.md +2 -0
- package/template/.hermes/skills/yss-formily/SKILL.md +1 -1
- package/template/.hermes/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.hermes/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.hermes/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.hermes/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.hermes/skills/yss-repository/SKILL.md +7 -5
- package/template/.hermes/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.hermes/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.hermes/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.hermes/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.hermes/skills/yss-ui/SKILL.md +6 -5
- package/template/.hermes/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.hermes/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.hermes/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.hermes/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.hermes/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.hermes/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.hermes/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.hermes/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.hermes/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.hermes/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
- package/template/.hermes/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.kiro/settings/mcp.json +8 -0
- package/template/.mcp.json +8 -0
- package/template/.pi/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.pi/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.pi/skills/frontend-commit/SKILL.md +1 -1
- package/template/.pi/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.pi/skills/yss-application/SKILL.md +7 -5
- package/template/.pi/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.pi/skills/yss-components/SKILL.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.pi/skills/yss-design-system/SKILL.md +2 -2
- package/template/.pi/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.pi/skills/yss-domain/SKILL.md +3 -3
- package/template/.pi/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.pi/skills/yss-dto/SKILL.md +5 -5
- package/template/.pi/skills/yss-dto/references/README.md +2 -2
- package/template/.pi/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.pi/skills/yss-exception/SKILL.md +2 -0
- package/template/.pi/skills/yss-formily/SKILL.md +1 -1
- package/template/.pi/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.pi/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.pi/skills/yss-repository/SKILL.md +7 -5
- package/template/.pi/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.pi/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.pi/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.pi/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.pi/skills/yss-ui/SKILL.md +6 -5
- package/template/.pi/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.pi/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.pi/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.pi/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.pi/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.pi/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.pi/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.pi/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.pi/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
- package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
- package/template/.pi/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.qoder/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.qoder/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.qoder/skills/frontend-commit/SKILL.md +1 -1
- package/template/.qoder/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.qoder/skills/yss-application/SKILL.md +7 -5
- package/template/.qoder/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.qoder/skills/yss-components/SKILL.md +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.qoder/skills/yss-design-system/SKILL.md +2 -2
- package/template/.qoder/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.qoder/skills/yss-domain/SKILL.md +3 -3
- package/template/.qoder/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.qoder/skills/yss-dto/SKILL.md +5 -5
- package/template/.qoder/skills/yss-dto/references/README.md +2 -2
- package/template/.qoder/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.qoder/skills/yss-exception/SKILL.md +2 -0
- package/template/.qoder/skills/yss-formily/SKILL.md +1 -1
- package/template/.qoder/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.qoder/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.qoder/skills/yss-repository/SKILL.md +7 -5
- package/template/.qoder/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.qoder/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.qoder/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.qoder/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.qoder/skills/yss-ui/SKILL.md +6 -5
- package/template/.qoder/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.qoder/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.qoder/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.qoder/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.qoder/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.qoder/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.qoder/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.qoder/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.qoder/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.qoder/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
- package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
- package/template/.qoder/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.trae/skills/code-review/references/yss-review-standards.md +3 -3
- package/template/.trae/skills/component-selection-imports/SKILL.md +2 -2
- package/template/.trae/skills/frontend-commit/SKILL.md +1 -1
- package/template/.trae/skills/yss-api-integration/SKILL.md +85 -339
- package/template/.trae/skills/yss-application/SKILL.md +7 -5
- package/template/.trae/skills/yss-application/references/application-layer-guide.md +60 -105
- package/template/.trae/skills/yss-components/SKILL.md +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
- package/template/.trae/skills/yss-design-system/SKILL.md +2 -2
- package/template/.trae/skills/yss-design-system/references/design-system.md +2 -2
- package/template/.trae/skills/yss-domain/SKILL.md +3 -3
- package/template/.trae/skills/yss-domain/references/domain-layer-guide.md +61 -236
- package/template/.trae/skills/yss-dto/SKILL.md +5 -5
- package/template/.trae/skills/yss-dto/references/README.md +2 -2
- package/template/.trae/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
- package/template/.trae/skills/yss-exception/SKILL.md +2 -0
- package/template/.trae/skills/yss-formily/SKILL.md +1 -1
- package/template/.trae/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.trae/skills/yss-page-module-development/SKILL.md +2 -0
- package/template/.trae/skills/yss-product-lifecycle/SKILL.md +2 -0
- package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +2 -2
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +84 -12
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +6 -0
- package/template/.trae/skills/yss-repository/SKILL.md +7 -5
- package/template/.trae/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
- package/template/.trae/skills/yss-router/references/router-contract.yaml +71 -10
- package/template/.trae/skills/yss-router/references/slice-implementation-contract.md +14 -0
- package/template/.trae/skills/yss-router/references/yss-skill-execution-result.md +5 -0
- package/template/.trae/skills/yss-ui/SKILL.md +6 -5
- package/template/.trae/skills/yss-ui/references/component-routing.md +1 -1
- package/template/.trae/skills/yss-ui-business-page-generation/SKILL.md +159 -0
- package/template/.trae/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
- package/template/.trae/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
- package/template/.trae/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
- package/template/.trae/skills/yss-use-table-height/SKILL.md +78 -297
- package/template/.trae/skills/yss-use-tree-height/SKILL.md +51 -393
- package/template/.trae/skills/yss-web-controller/SKILL.md +12 -11
- package/template/.trae/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
- package/template/.trae/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
- package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
- package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
- package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
- package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
- package/template/.trae/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
- package/template/.trae/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
- package/template/.trae/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
- package/template/.vscode/mcp.json +8 -0
- package/template/AGENTS.md +1 -0
- package/template/CONTEXT.md +2 -2
- package/template/DESIGN.md +203 -0
- package/template/README.md +3 -0
- package/template/docs/agents/digital-human-roles.md +1 -1
- package/template/docs/agents/digital-human-roles.yaml +18 -22
- package/template/docs/agents/skills-maintenance.md +7 -4
- package/template/docs/agents/yss-plugin-dependency-contract.md +45 -0
- package/template/docs/agents/yss-skill-registry.yaml +37 -2
- package/template/docs/agents/yss-ui-skills-integration.md +24 -0
- package/template/docs/architecture/templates/engineering-baseline-review-template.md +19 -0
- package/template/docs/design/README.md +12 -1
- package/template/docs/design/design-system-sync.yaml +12 -0
- package/template/docs/design/design.md +22 -2
- package/template/docs/design/preview-dark.html +15 -0
- package/template/docs/design/preview.html +20 -0
- package/template/docs/design/tokens/.design-md-projection.json +13 -0
- package/template/docs/discovery/reports/agent-governance-options.md +71 -0
- package/template/docs/process/harness-process-tailoring.md +7 -0
- package/template/docs/process/lifecycle-registry-baseline.json +1 -1
- package/template/docs/process/lifecycle-registry.yaml +1 -1
- package/template/docs/process/template-verification-profiles.yaml +18 -0
- package/template/docs/templates/build-architecture-checklist-template.md +2 -0
- package/template/docs/templates/implementation-routing-template.md +28 -3
- package/template/docs/templates/review-report-template.md +2 -2
- package/template/docs/user-guide/yss-ui-mcp.md +43 -0
- 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 +218 -0
- package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214.md +55 -2
- package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214/347/264/242/345/274/225.md +21 -0
- package/template/scripts/lib/digital-human-roles.mjs +0 -1
- package/template/scripts/lib/scenario-checks.mjs +3 -3
- package/template/scripts/lib/skill-governance.mjs +36 -2
- package/template/scripts/lib/skill-registry.mjs +72 -1
- package/template/scripts/lib/skill-supply-chain.mjs +72 -1
- package/template/scripts/verify-digital-human-roles-scenarios +1 -1
- package/template/scripts/verify-scaffold-generator-scenarios +150 -44
- package/template/scripts/verify-skill-governance +1 -1
- package/template/scripts/verify-upstream-skill-source +38 -3
- package/template/scripts/verify-yss-dto-openapi-profile +4 -2
- package/template/skills-lock.json +159 -84
- package/template/yss-public-skills.json +2 -0
- package/template.manifest.json +5 -0
- package/template.snapshot.json +5 -5
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.agents/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.agents/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.agents/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
- package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.claude/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.claude/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.claude/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.codex/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.codex/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.codex/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.cursor/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.cursor/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.cursor/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.hermes/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
- package/template/.hermes/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.hermes/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.hermes/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.pi/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
- package/template/.pi/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.pi/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.pi/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
- package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.qoder/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
- package/template/.qoder/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.qoder/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.qoder/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
- package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
- package/template/.trae/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
- package/template/.trae/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
- package/template/.trae/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
- package/template/.trae/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
|
@@ -29,6 +29,14 @@ VERIFIER = (
|
|
|
29
29
|
/ "scripts"
|
|
30
30
|
/ "run_scaffold_verification.mjs"
|
|
31
31
|
)
|
|
32
|
+
WORKFLOW = (
|
|
33
|
+
REPOSITORY_ROOT
|
|
34
|
+
/ ".agents"
|
|
35
|
+
/ "skills"
|
|
36
|
+
/ "yss-ddd-scaffold-generator"
|
|
37
|
+
/ "scripts"
|
|
38
|
+
/ "generate_and_verify_scaffold.mjs"
|
|
39
|
+
)
|
|
32
40
|
|
|
33
41
|
|
|
34
42
|
def run_generator(*arguments: str) -> subprocess.CompletedProcess[str]:
|
|
@@ -54,15 +62,12 @@ def write_contract(
|
|
|
54
62
|
approval_ref: str,
|
|
55
63
|
router_draft_ref: str,
|
|
56
64
|
persisted_ref: str,
|
|
57
|
-
force_allowed: bool = False,
|
|
58
65
|
) -> None:
|
|
59
|
-
overwrite_scope = f"{project_name}/**" if force_allowed else None
|
|
60
|
-
rollback_ref = "git:checkpoint-001" if force_allowed else None
|
|
61
66
|
contract = {
|
|
62
|
-
"schema_version":
|
|
67
|
+
"schema_version": 2,
|
|
63
68
|
"contract_id": contract_id,
|
|
64
69
|
"contract_version": 1,
|
|
65
|
-
"
|
|
70
|
+
"scaffold_request_id": f"{project_name}-request",
|
|
66
71
|
"status": "approved",
|
|
67
72
|
"router_draft_ref": router_draft_ref,
|
|
68
73
|
"lifecycle_approval_ref": approval_ref,
|
|
@@ -71,8 +76,29 @@ def write_contract(
|
|
|
71
76
|
"implementation_repository": str(output_root),
|
|
72
77
|
"backend_repository": str(output_root),
|
|
73
78
|
"scaffold_status": "required",
|
|
74
|
-
"
|
|
75
|
-
"
|
|
79
|
+
"project_name": project_name,
|
|
80
|
+
"target_output_dir": str(output_root),
|
|
81
|
+
"base_package": f"com.yss.{project_name.removesuffix('-service')}",
|
|
82
|
+
"maven_coordinates": {
|
|
83
|
+
"group_id": "com.yss.datamiddle",
|
|
84
|
+
"project_version": "1.0.0-SNAPSHOT",
|
|
85
|
+
"parent": {
|
|
86
|
+
"group_id": "com.yss.datamiddle",
|
|
87
|
+
"artifact_id": "yss-datamiddle-parent",
|
|
88
|
+
"version": "2.0.0-SNAPSHOT",
|
|
89
|
+
},
|
|
90
|
+
"yss_components_version": "2.0.0-SNAPSHOT",
|
|
91
|
+
},
|
|
92
|
+
"profiles": {
|
|
93
|
+
"architecture": "target-domain-model",
|
|
94
|
+
"persistence": "mybatis-plus",
|
|
95
|
+
"database": "mysql",
|
|
96
|
+
"platform": "spring-boot-2.7-jdk8",
|
|
97
|
+
"validation_namespace": "javax",
|
|
98
|
+
"dto_placement": "web",
|
|
99
|
+
"repository": "yss-internal",
|
|
100
|
+
},
|
|
101
|
+
"allowed_write_paths": ["."],
|
|
76
102
|
"expected_evidence_files": [
|
|
77
103
|
f"{project_name}/.yss/scaffold-generation.json",
|
|
78
104
|
"scaffold-verification.json",
|
|
@@ -94,7 +120,7 @@ def write_contract(
|
|
|
94
120
|
"primary_skill": "yss-ddd-scaffold-generator",
|
|
95
121
|
"supporting_skills": ["yss-backend-scaffold-parent", "alibaba-java-code-style"],
|
|
96
122
|
"tdd_mode": "controlled-generation",
|
|
97
|
-
"allowed_write_paths": [
|
|
123
|
+
"allowed_write_paths": ["."],
|
|
98
124
|
"expected_evidence": [".yss/scaffold-generation.json", "scaffold-verification.json"],
|
|
99
125
|
"verification_commands": [
|
|
100
126
|
"./mvnw validate",
|
|
@@ -103,10 +129,11 @@ def write_contract(
|
|
|
103
129
|
],
|
|
104
130
|
"controlled_generation": True,
|
|
105
131
|
},
|
|
106
|
-
"
|
|
107
|
-
"
|
|
108
|
-
"
|
|
109
|
-
"
|
|
132
|
+
"generation_policy": {
|
|
133
|
+
"mode": "initialize-only",
|
|
134
|
+
"existing_target": "unsupported",
|
|
135
|
+
"old_project_migration": "unsupported",
|
|
136
|
+
"template_upgrade": "unsupported",
|
|
110
137
|
},
|
|
111
138
|
}
|
|
112
139
|
path.write_text(json.dumps(contract, ensure_ascii=False, indent=2), encoding="utf-8")
|
|
@@ -116,6 +143,11 @@ def assert_pure_scaffold(project_root: Path, contract_id: str) -> None:
|
|
|
116
143
|
require(project_root.is_dir(), "默认生成必须创建项目目录")
|
|
117
144
|
require((project_root / "pom.xml").is_file(), "默认生成必须包含父级 pom.xml")
|
|
118
145
|
require((project_root / "mvnw").is_file(), "默认生成必须包含 Maven wrapper")
|
|
146
|
+
application_class = "".join(part.capitalize() for part in project_root.name.split("-")) + "Application.java"
|
|
147
|
+
require(
|
|
148
|
+
any(project_root.glob(f"*-bootstrap/src/main/java/**/{application_class}")),
|
|
149
|
+
"默认生成必须包含可被 Spring Boot 插件发现的机械启动入口",
|
|
150
|
+
)
|
|
119
151
|
manifest_path = project_root / ".yss" / "scaffold-generation.json"
|
|
120
152
|
require(manifest_path.is_file(), "生成项目必须携带脚手架合同元数据清单")
|
|
121
153
|
manifest = json.loads(manifest_path.read_text(encoding="utf-8"))
|
|
@@ -125,6 +157,13 @@ def assert_pure_scaffold(project_root: Path, contract_id: str) -> None:
|
|
|
125
157
|
require(manifest["router_draft_ref"], "生成清单必须记录 Router draft 引用")
|
|
126
158
|
require(manifest["persisted_ref"], "生成清单必须记录合同持久化引用")
|
|
127
159
|
require(manifest["generation_mode"] == "controlled-generation", "生成清单必须记录受控生成模式")
|
|
160
|
+
require(manifest["schema_version"] == 2, "生成清单必须使用 schema v2")
|
|
161
|
+
require(manifest["scaffold_request_id"], "生成清单必须记录服务级 scaffold_request_id")
|
|
162
|
+
require("slice_id" not in manifest, "脚手架清单不得伪造 slice_id")
|
|
163
|
+
require(manifest["maven_coordinates_source"] == "approved-contract", "Maven 坐标必须来自批准合同")
|
|
164
|
+
require(manifest["profiles"]["architecture"] == "target-domain-model", "生成清单必须记录目标架构 Profile")
|
|
165
|
+
require(manifest["completion_level"] == "generated", "仅生成文件时完成等级必须是 generated")
|
|
166
|
+
require(manifest["base_package"].startswith("com.yss."), "生成清单必须把 base_package 与 Maven 坐标分开记录")
|
|
128
167
|
require(not (project_root / "API.md").exists(), "默认生成不得写入业务 API 文档")
|
|
129
168
|
require(not (project_root / "db" / "schema.sql").exists(), "默认生成不得写入业务 schema")
|
|
130
169
|
require(not (project_root / "db" / "data.sql").exists(), "默认生成不得写入业务初始化数据")
|
|
@@ -144,6 +183,7 @@ def assert_pure_scaffold(project_root: Path, contract_id: str) -> None:
|
|
|
144
183
|
|
|
145
184
|
|
|
146
185
|
def main() -> int:
|
|
186
|
+
require(WORKFLOW.is_file(), "脚手架必须提供一键生成并验证入口")
|
|
147
187
|
template_root = REPOSITORY_ROOT / ".agents/skills/yss-ddd-scaffold-generator/assets/templates"
|
|
148
188
|
user_templates = list(template_root.rglob("User*.java.template"))
|
|
149
189
|
require(not user_templates, "脚手架资产不得保留 User 业务 Java 模板")
|
|
@@ -166,6 +206,44 @@ def main() -> int:
|
|
|
166
206
|
"缺少批准脚手架合同元数据时不得生成项目",
|
|
167
207
|
)
|
|
168
208
|
|
|
209
|
+
schema_v1_root = temp_root / "schema-v1-output"
|
|
210
|
+
schema_v1_contract = temp_root / "schema-v1-contract.json"
|
|
211
|
+
write_contract(
|
|
212
|
+
schema_v1_contract,
|
|
213
|
+
schema_v1_root,
|
|
214
|
+
"schemav1-service",
|
|
215
|
+
"backend-scaffold-schema-v1",
|
|
216
|
+
"lifecycle/approval-schema-v1",
|
|
217
|
+
"router/draft-schema-v1",
|
|
218
|
+
"lifecycle/contracts/backend-scaffold-schema-v1.yaml",
|
|
219
|
+
)
|
|
220
|
+
schema_v1_payload = json.loads(schema_v1_contract.read_text(encoding="utf-8"))
|
|
221
|
+
schema_v1_payload["schema_version"] = 1
|
|
222
|
+
schema_v1_contract.write_text(json.dumps(schema_v1_payload), encoding="utf-8")
|
|
223
|
+
schema_v1_result = run_generator(
|
|
224
|
+
"--project-name", "schemav1-service",
|
|
225
|
+
"--base-package", "com.yss.schemav1",
|
|
226
|
+
"--output-dir", str(schema_v1_root),
|
|
227
|
+
"--contract-id", "backend-scaffold-schema-v1",
|
|
228
|
+
"--contract-version", "1",
|
|
229
|
+
"--approval-ref", "lifecycle/approval-schema-v1",
|
|
230
|
+
"--router-draft-ref", "router/draft-schema-v1",
|
|
231
|
+
"--persisted-ref", "lifecycle/contracts/backend-scaffold-schema-v1.yaml",
|
|
232
|
+
"--contract-file", str(schema_v1_contract),
|
|
233
|
+
"--group-id", "com.yss.datamiddle",
|
|
234
|
+
"--project-version", "1.0.0-SNAPSHOT",
|
|
235
|
+
"--parent-group-id", "com.yss.datamiddle",
|
|
236
|
+
"--parent-artifact-id", "yss-datamiddle-parent",
|
|
237
|
+
"--parent-version", "2.0.0-SNAPSHOT",
|
|
238
|
+
"--yss-components-version", "2.0.0-SNAPSHOT",
|
|
239
|
+
)
|
|
240
|
+
require(
|
|
241
|
+
schema_v1_result.returncode != 0
|
|
242
|
+
and "unsupported: scaffold contract schema_version=1" in (schema_v1_result.stdout + schema_v1_result.stderr),
|
|
243
|
+
"schema v1 脚手架合同必须直接返回 unsupported,且不得自动升级",
|
|
244
|
+
)
|
|
245
|
+
require(not (schema_v1_root / "schemav1-service").exists(), "schema v1 拒绝后不得留下生成目录")
|
|
246
|
+
|
|
169
247
|
forbidden_harness_output = run_generator(
|
|
170
248
|
"--project-name",
|
|
171
249
|
"forbidden-service",
|
|
@@ -248,6 +326,12 @@ def main() -> int:
|
|
|
248
326
|
"lifecycle/contracts/backend-scaffold-000.yaml",
|
|
249
327
|
"--contract-file",
|
|
250
328
|
str(default_contract),
|
|
329
|
+
"--group-id", "com.yss.datamiddle",
|
|
330
|
+
"--project-version", "1.0.0-SNAPSHOT",
|
|
331
|
+
"--parent-group-id", "com.yss.datamiddle",
|
|
332
|
+
"--parent-artifact-id", "yss-datamiddle-parent",
|
|
333
|
+
"--parent-version", "2.0.0-SNAPSHOT",
|
|
334
|
+
"--yss-components-version", "2.0.0-SNAPSHOT",
|
|
251
335
|
)
|
|
252
336
|
require(
|
|
253
337
|
default_result.returncode == 0,
|
|
@@ -262,10 +346,11 @@ def main() -> int:
|
|
|
262
346
|
verification_manifest.write_text(
|
|
263
347
|
json.dumps(
|
|
264
348
|
{
|
|
265
|
-
"schema_version":
|
|
349
|
+
"schema_version": 2,
|
|
266
350
|
"contract_id": "backend-scaffold-verification",
|
|
267
351
|
"contract_version": 1,
|
|
268
|
-
"
|
|
352
|
+
"scaffold_request_id": "verification-service-request",
|
|
353
|
+
"contract_digest": "a" * 64,
|
|
269
354
|
"approval_ref": "lifecycle/verification",
|
|
270
355
|
"lifecycle_approval_ref": "lifecycle/verification",
|
|
271
356
|
"router_draft_ref": "router/verification",
|
|
@@ -281,6 +366,23 @@ def main() -> int:
|
|
|
281
366
|
"./mvnw package",
|
|
282
367
|
],
|
|
283
368
|
"generation_mode": "controlled-generation",
|
|
369
|
+
"completion_level": "generated",
|
|
370
|
+
"profiles": {
|
|
371
|
+
"architecture": "target-domain-model",
|
|
372
|
+
"repository": "yss-internal",
|
|
373
|
+
},
|
|
374
|
+
"ownership": {"generated_files": []},
|
|
375
|
+
"readiness": {
|
|
376
|
+
"downstream_skills": {},
|
|
377
|
+
"architecture_ruleset": "b" * 64,
|
|
378
|
+
},
|
|
379
|
+
"generation_policy": {
|
|
380
|
+
"mode": "initialize-only",
|
|
381
|
+
"existing_target": "unsupported",
|
|
382
|
+
"old_project_migration": "unsupported",
|
|
383
|
+
"template_upgrade": "unsupported",
|
|
384
|
+
},
|
|
385
|
+
"maven_coordinates_source": "approved-contract",
|
|
284
386
|
}
|
|
285
387
|
),
|
|
286
388
|
encoding="utf-8",
|
|
@@ -293,7 +395,21 @@ def main() -> int:
|
|
|
293
395
|
encoding="utf-8",
|
|
294
396
|
)
|
|
295
397
|
os.chmod(wrapper, 0o755)
|
|
398
|
+
maven_dir = verification_project / ".mvn"
|
|
399
|
+
maven_dir.mkdir()
|
|
400
|
+
(maven_dir / "maven.config").write_text(
|
|
401
|
+
"-s .mvn/settings.xml\n-P yss-internal\n", encoding="utf-8"
|
|
402
|
+
)
|
|
403
|
+
(maven_dir / "settings.xml").write_text("<settings/>\n", encoding="utf-8")
|
|
296
404
|
evidence_dir = verification_project / "evidence"
|
|
405
|
+
verification_env = os.environ.copy()
|
|
406
|
+
verification_env.update(
|
|
407
|
+
{
|
|
408
|
+
"YSS_MAVEN_REPOSITORY_URL": "https://repo.example.invalid/repository/maven-public/",
|
|
409
|
+
"MAVEN_REPO_USERNAME": "test-user",
|
|
410
|
+
"MAVEN_REPO_PASSWORD": "test-password",
|
|
411
|
+
}
|
|
412
|
+
)
|
|
297
413
|
verification_result = subprocess.run(
|
|
298
414
|
[
|
|
299
415
|
"node",
|
|
@@ -307,6 +423,7 @@ def main() -> int:
|
|
|
307
423
|
text=True,
|
|
308
424
|
capture_output=True,
|
|
309
425
|
check=False,
|
|
426
|
+
env=verification_env,
|
|
310
427
|
)
|
|
311
428
|
require(
|
|
312
429
|
verification_result.returncode == 0,
|
|
@@ -338,6 +455,8 @@ def main() -> int:
|
|
|
338
455
|
all(item["duration_ms"] >= 0 and item["started_at"] and item["executed_at"] for item in report["commands"]),
|
|
339
456
|
"验证报告必须记录耗时和执行时间",
|
|
340
457
|
)
|
|
458
|
+
require(report["failure_category"] is None, "全部成功时 failure_category 必须为空")
|
|
459
|
+
require(report["preflight"]["wrapper_executable"] is True, "验证报告必须包含 Wrapper 预检")
|
|
341
460
|
require(
|
|
342
461
|
(verification_project / "commands.log").read_text(encoding="utf-8").splitlines()
|
|
343
462
|
== ["validate", "test", "package"],
|
|
@@ -382,17 +501,7 @@ def main() -> int:
|
|
|
382
501
|
require(sentinel.read_text(encoding="utf-8") == "preserve me", "未批准覆盖不得改变原目录")
|
|
383
502
|
|
|
384
503
|
force_contract = temp_root / "force-contract.json"
|
|
385
|
-
write_contract(
|
|
386
|
-
force_contract,
|
|
387
|
-
force_root,
|
|
388
|
-
"force-service",
|
|
389
|
-
"backend-scaffold-001",
|
|
390
|
-
"lifecycle/approval-001",
|
|
391
|
-
"router/draft-001",
|
|
392
|
-
"lifecycle/contracts/backend-scaffold-001.yaml",
|
|
393
|
-
force_allowed=True,
|
|
394
|
-
)
|
|
395
|
-
|
|
504
|
+
write_contract(force_contract, force_root, "force-service", "backend-scaffold-001", "lifecycle/approval-001", "router/draft-001", "lifecycle/contracts/backend-scaffold-001.yaml")
|
|
396
505
|
approved_force_result = run_generator(
|
|
397
506
|
"--project-name",
|
|
398
507
|
"force-service",
|
|
@@ -413,22 +522,19 @@ def main() -> int:
|
|
|
413
522
|
"lifecycle/contracts/backend-scaffold-001.yaml",
|
|
414
523
|
"--contract-file",
|
|
415
524
|
str(force_contract),
|
|
416
|
-
"--
|
|
417
|
-
"
|
|
418
|
-
"--
|
|
419
|
-
"
|
|
525
|
+
"--group-id", "com.yss.datamiddle",
|
|
526
|
+
"--project-version", "1.0.0-SNAPSHOT",
|
|
527
|
+
"--parent-group-id", "com.yss.datamiddle",
|
|
528
|
+
"--parent-artifact-id", "yss-datamiddle-parent",
|
|
529
|
+
"--parent-version", "2.0.0-SNAPSHOT",
|
|
530
|
+
"--yss-components-version", "2.0.0-SNAPSHOT",
|
|
420
531
|
)
|
|
421
532
|
require(
|
|
422
|
-
approved_force_result.returncode
|
|
423
|
-
|
|
424
|
-
)
|
|
425
|
-
assert_pure_scaffold(force_root / "force-service", "backend-scaffold-001")
|
|
426
|
-
backup_dirs = list(force_root.glob(".force-service.backup-*"))
|
|
427
|
-
require(backup_dirs, "批准覆盖必须保留可回滚备份")
|
|
428
|
-
require(
|
|
429
|
-
(backup_dirs[0] / "user-owned.txt").read_text(encoding="utf-8") == "preserve me",
|
|
430
|
-
"批准覆盖的备份必须保留原目录内容",
|
|
533
|
+
approved_force_result.returncode != 0,
|
|
534
|
+
"即使合同已批准,initialize-only 生成器也必须拒绝 --force",
|
|
431
535
|
)
|
|
536
|
+
require(sentinel.read_text(encoding="utf-8") == "preserve me", "批准合同也不得覆盖已有目录")
|
|
537
|
+
require(not list(force_root.glob(".force-service.backup-*")), "initialize-only 不创建覆盖备份")
|
|
432
538
|
|
|
433
539
|
gitlink_root = temp_root / "gitlink-superproject"
|
|
434
540
|
gitlink_backend = gitlink_root / "apps" / "backend"
|
|
@@ -449,7 +555,6 @@ def main() -> int:
|
|
|
449
555
|
"lifecycle/approval-gitlink",
|
|
450
556
|
"router/draft-gitlink",
|
|
451
557
|
"lifecycle/contracts/backend-scaffold-gitlink.yaml",
|
|
452
|
-
force_allowed=True,
|
|
453
558
|
)
|
|
454
559
|
gitlink_result = run_generator(
|
|
455
560
|
"--project-name",
|
|
@@ -458,7 +563,6 @@ def main() -> int:
|
|
|
458
563
|
"com.yss.gitlink",
|
|
459
564
|
"--output-dir",
|
|
460
565
|
str(gitlink_backend),
|
|
461
|
-
"--force",
|
|
462
566
|
"--contract-id",
|
|
463
567
|
"backend-scaffold-gitlink",
|
|
464
568
|
"--contract-version",
|
|
@@ -471,10 +575,12 @@ def main() -> int:
|
|
|
471
575
|
"lifecycle/contracts/backend-scaffold-gitlink.yaml",
|
|
472
576
|
"--contract-file",
|
|
473
577
|
str(gitlink_contract),
|
|
474
|
-
"--
|
|
475
|
-
"
|
|
476
|
-
"--
|
|
477
|
-
"
|
|
578
|
+
"--group-id", "com.yss.datamiddle",
|
|
579
|
+
"--project-version", "1.0.0-SNAPSHOT",
|
|
580
|
+
"--parent-group-id", "com.yss.datamiddle",
|
|
581
|
+
"--parent-artifact-id", "yss-datamiddle-parent",
|
|
582
|
+
"--parent-version", "2.0.0-SNAPSHOT",
|
|
583
|
+
"--yss-components-version", "2.0.0-SNAPSHOT",
|
|
478
584
|
)
|
|
479
585
|
require(
|
|
480
586
|
gitlink_result.returncode != 0
|
|
@@ -3,7 +3,7 @@ import { validateSkillGovernance } from "./lib/skill-governance.mjs";
|
|
|
3
3
|
|
|
4
4
|
try {
|
|
5
5
|
const result = validateSkillGovernance();
|
|
6
|
-
process.stdout.write(`技能规范冲突扫描通过(${result.legacy_aliases} 个兼容 alias)\n`);
|
|
6
|
+
process.stdout.write(`技能规范冲突扫描通过(${result.legacy_aliases} 个兼容 alias,${result.yss_ui_skills} 个 YSS UI 前端 skills)\n`);
|
|
7
7
|
} catch (error) {
|
|
8
8
|
process.stderr.write(`技能规范冲突扫描失败: ${error.message}\n`);
|
|
9
9
|
process.exitCode = 1;
|
|
@@ -2,24 +2,59 @@
|
|
|
2
2
|
import { existsSync, readFileSync } from "node:fs";
|
|
3
3
|
import { spawnSync } from "node:child_process";
|
|
4
4
|
import path from "node:path";
|
|
5
|
-
import { treeHash } from "./lib/skill-supply-chain.mjs";
|
|
5
|
+
import { skillNames, treeHash, validateYssUiSkillManifest } from "./lib/skill-supply-chain.mjs";
|
|
6
6
|
|
|
7
7
|
const root = path.resolve(path.dirname(new URL(import.meta.url).pathname), "..");
|
|
8
8
|
const args = process.argv.slice(2);
|
|
9
|
+
const source = args.find((arg) => arg.startsWith("--source="))?.slice("--source=".length) ?? "mattpocock/skills";
|
|
9
10
|
const sourceRootArg = args.find((arg) => arg.startsWith("--source-root="))?.slice("--source-root=".length);
|
|
10
11
|
if (!sourceRootArg) {
|
|
11
|
-
process.stderr.write("用法: scripts/verify-upstream-skill-source --source-root=<上游 checkout>\n");
|
|
12
|
+
process.stderr.write("用法: scripts/verify-upstream-skill-source [--source=<source-id>] --source-root=<上游 checkout>\n");
|
|
12
13
|
process.exit(2);
|
|
13
14
|
}
|
|
14
15
|
const sourceRoot = path.resolve(sourceRootArg);
|
|
15
16
|
const lock = JSON.parse(readFileSync(path.join(root, "skills-lock.json"), "utf8"));
|
|
16
|
-
const source = "mattpocock/skills";
|
|
17
17
|
const revision = lock.sources?.[source]?.revision;
|
|
18
18
|
if (!revision) throw new TypeError(`锁文件缺少 ${source} source revision`);
|
|
19
19
|
const git = spawnSync("git", ["-C", sourceRoot, "rev-parse", "HEAD"], { encoding: "utf8" });
|
|
20
20
|
if (git.status !== 0) throw new TypeError(`无法读取上游 checkout revision: ${sourceRoot}`);
|
|
21
21
|
if (git.stdout.trim() !== revision) throw new TypeError(`上游 revision 不匹配: expected=${revision} actual=${git.stdout.trim()}`);
|
|
22
22
|
|
|
23
|
+
if (source === "iloveZzz/yss-ui") {
|
|
24
|
+
const manifest = validateYssUiSkillManifest(JSON.parse(readFileSync(path.join(root, ".agents/skills/.yss-skills-manifest.json"), "utf8")));
|
|
25
|
+
if (manifest.source_revision !== revision) throw new TypeError(`yss-ui manifest revision 与锁文件不一致: ${manifest.source_revision}`);
|
|
26
|
+
const packageJson = JSON.parse(readFileSync(path.join(sourceRoot, manifest.source_root, "package.json"), "utf8"));
|
|
27
|
+
if (packageJson.name !== manifest.package.name || packageJson.version !== manifest.package.version) {
|
|
28
|
+
throw new TypeError(`yss-ui skills 包版本不匹配: expected=${manifest.package.name}@${manifest.package.version} actual=${packageJson.name}@${packageJson.version}`);
|
|
29
|
+
}
|
|
30
|
+
const upstreamRoot = path.join(sourceRoot, manifest.source_root);
|
|
31
|
+
const sourceConfig = JSON.parse(readFileSync(path.join(upstreamRoot, "skills.config.json"), "utf8"));
|
|
32
|
+
if (!sourceConfig.defaultSync?.includes(manifest.source_category)) throw new TypeError(`yss-ui 默认同步不包含分类: ${manifest.source_category}`);
|
|
33
|
+
const categorySkills = sourceConfig.categories?.[manifest.source_category];
|
|
34
|
+
if (!Array.isArray(categorySkills)) throw new TypeError(`yss-ui 上游缺少分类: ${manifest.source_category}`);
|
|
35
|
+
const actualFrontend = categorySkills.filter((name) => !manifest.excluded_skills.includes(name)).sort();
|
|
36
|
+
const physicalSkills = new Set(skillNames(upstreamRoot).filter((name) => existsSync(path.join(upstreamRoot, name, "SKILL.md"))));
|
|
37
|
+
for (const name of actualFrontend) if (!physicalSkills.has(name)) throw new TypeError(`yss-ui 上游分类引用不存在的 skill: ${name}`);
|
|
38
|
+
for (const category of manifest.excluded_categories) {
|
|
39
|
+
for (const name of sourceConfig.categories?.[category] ?? []) {
|
|
40
|
+
if (manifest.skills.some(({ upstream }) => upstream === name)) throw new TypeError(`yss-ui 清单误包含已排除分类 ${category}: ${name}`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const declaredFrontend = manifest.skills.map(({ upstream }) => upstream).sort();
|
|
44
|
+
if (JSON.stringify(actualFrontend) !== JSON.stringify(declaredFrontend)) {
|
|
45
|
+
throw new TypeError(`yss-ui 前端 skills 清单漂移: expected=${declaredFrontend.join(",")} actual=${actualFrontend.join(",")}`);
|
|
46
|
+
}
|
|
47
|
+
for (const skill of manifest.skills) {
|
|
48
|
+
const item = lock.skills?.shared?.[skill.canonical];
|
|
49
|
+
if (!item || item.source !== source) throw new TypeError(`${skill.canonical} 未按 yss-ui source 锁定`);
|
|
50
|
+
if (item.skillPath !== `${manifest.source_root}/${skill.upstream}/SKILL.md`) throw new TypeError(`${skill.canonical} 上游路径不一致`);
|
|
51
|
+
const actualHash = treeHash(path.join(upstreamRoot, skill.upstream));
|
|
52
|
+
if (actualHash !== skill.upstream_hash || item.upstreamHash !== actualHash) {
|
|
53
|
+
throw new TypeError(`${skill.canonical} upstreamHash 不匹配: manifest=${skill.upstream_hash} lock=${item.upstreamHash} actual=${actualHash}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
23
58
|
const shared = lock.skills?.shared ?? {};
|
|
24
59
|
for (const [name, item] of Object.entries(shared)) {
|
|
25
60
|
if (item.source !== source) continue;
|
|
@@ -51,8 +51,10 @@ try {
|
|
|
51
51
|
ensure(profile.canonical?.openapi?.response_wrapper_extension === "x-yss-response-wrapper", "响应包装扩展字段不正确");
|
|
52
52
|
ensure(profile.canonical?.openapi?.literal_java_generic_schema === false, "不得把 Java 泛型文字作为 OpenAPI schema");
|
|
53
53
|
|
|
54
|
-
const
|
|
55
|
-
ensure(
|
|
54
|
+
const unsupportedPackage = profile.unsupported_packages?.find((item) => item.java_package === "com.yss.cloud.dto.response");
|
|
55
|
+
ensure(unsupportedPackage?.status === "unsupported", "dto.response 必须标记为 unsupported");
|
|
56
|
+
ensure(unsupportedPackage?.use_for_new_contracts === false, "dto.response 不得用于新契约");
|
|
57
|
+
ensure(unsupportedPackage?.policy === "reject-in-new-contracts-no-auto-migration", "dto.response 必须拒绝新契约且不得自动迁移");
|
|
56
58
|
|
|
57
59
|
const commonFields = profile.common_response?.fields ?? {};
|
|
58
60
|
sameMembers(Object.keys(commonFields), ["success", "dataType", "code", "message", "tips"], "common response fields");
|