create-yss-spec 2.2.9 → 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.
Files changed (580) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/template/.agents/mcp_config.json +8 -0
  4. package/template/.agents/rules/yss-ai-skills.md +3 -1
  5. package/template/.agents/skills/.yss-skills-manifest.json +51 -25
  6. package/template/.agents/skills/code-review/references/yss-review-standards.md +3 -3
  7. package/template/.agents/skills/component-selection-imports/SKILL.md +2 -2
  8. package/template/.agents/skills/frontend-commit/SKILL.md +1 -1
  9. package/template/.agents/skills/yss-api-integration/SKILL.md +85 -339
  10. package/template/.agents/skills/yss-application/SKILL.md +7 -5
  11. package/template/.agents/skills/yss-application/references/application-layer-guide.md +60 -105
  12. package/template/.agents/skills/yss-components/SKILL.md +1 -1
  13. package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  14. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  15. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  16. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  17. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  18. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  19. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  20. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  21. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  22. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  23. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  24. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  25. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  26. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  27. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  28. package/template/.agents/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  29. package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  30. package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  31. package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  32. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  33. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  34. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  35. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  36. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  37. package/template/.agents/skills/yss-design-system/SKILL.md +2 -2
  38. package/template/.agents/skills/yss-design-system/references/design-system.md +2 -2
  39. package/template/.agents/skills/yss-domain/SKILL.md +3 -3
  40. package/template/.agents/skills/yss-domain/references/domain-layer-guide.md +61 -236
  41. package/template/.agents/skills/yss-dto/SKILL.md +5 -5
  42. package/template/.agents/skills/yss-dto/references/README.md +2 -2
  43. package/template/.agents/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  44. package/template/.agents/skills/yss-exception/SKILL.md +2 -0
  45. package/template/.agents/skills/yss-formily/SKILL.md +1 -1
  46. package/template/.agents/skills/yss-mybatis/SKILL.md +2 -2
  47. package/template/.agents/skills/yss-page-module-development/SKILL.md +2 -0
  48. package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  49. package/template/.agents/skills/yss-repository/SKILL.md +7 -5
  50. package/template/.agents/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  51. package/template/.agents/skills/yss-router/references/router-contract.yaml +41 -7
  52. package/template/.agents/skills/yss-ui/SKILL.md +6 -5
  53. package/template/.agents/skills/yss-ui/references/component-routing.md +1 -1
  54. package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  55. package/template/.agents/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  56. package/template/.agents/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  57. package/template/.agents/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  58. package/template/.agents/skills/yss-use-table-height/SKILL.md +78 -297
  59. package/template/.agents/skills/yss-use-tree-height/SKILL.md +51 -393
  60. package/template/.agents/skills/yss-web-controller/SKILL.md +12 -11
  61. package/template/.agents/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  62. package/template/.agents/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  63. 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
  64. package/template/.agents/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  65. package/template/.agents/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  66. package/template/.agents/skills/yss-web-controller/assets/templates/{domain/dto/cmd/AddCmd.java.template → web/dto/UpdateRequest.java.template} +7 -11
  67. package/template/.agents/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  68. package/template/.agents/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  69. package/template/.agents/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  70. package/template/.claude/skills/code-review/references/yss-review-standards.md +3 -3
  71. package/template/.claude/skills/component-selection-imports/SKILL.md +2 -2
  72. package/template/.claude/skills/frontend-commit/SKILL.md +1 -1
  73. package/template/.claude/skills/yss-api-integration/SKILL.md +85 -339
  74. package/template/.claude/skills/yss-application/SKILL.md +7 -5
  75. package/template/.claude/skills/yss-application/references/application-layer-guide.md +60 -105
  76. package/template/.claude/skills/yss-components/SKILL.md +1 -1
  77. package/template/.claude/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  78. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  79. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  80. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  81. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  82. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  83. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  84. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  85. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  86. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  87. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  88. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  89. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  90. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  91. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  92. package/template/.claude/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  93. package/template/.claude/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  94. package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  95. package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  96. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  97. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  98. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  99. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  100. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  101. package/template/.claude/skills/yss-design-system/SKILL.md +2 -2
  102. package/template/.claude/skills/yss-design-system/references/design-system.md +2 -2
  103. package/template/.claude/skills/yss-domain/SKILL.md +3 -3
  104. package/template/.claude/skills/yss-domain/references/domain-layer-guide.md +61 -236
  105. package/template/.claude/skills/yss-dto/SKILL.md +5 -5
  106. package/template/.claude/skills/yss-dto/references/README.md +2 -2
  107. package/template/.claude/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  108. package/template/.claude/skills/yss-exception/SKILL.md +2 -0
  109. package/template/.claude/skills/yss-formily/SKILL.md +1 -1
  110. package/template/.claude/skills/yss-mybatis/SKILL.md +2 -2
  111. package/template/.claude/skills/yss-page-module-development/SKILL.md +2 -0
  112. package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  113. package/template/.claude/skills/yss-repository/SKILL.md +7 -5
  114. package/template/.claude/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  115. package/template/.claude/skills/yss-router/references/router-contract.yaml +41 -7
  116. package/template/.claude/skills/yss-ui/SKILL.md +6 -5
  117. package/template/.claude/skills/yss-ui/references/component-routing.md +1 -1
  118. package/template/.claude/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  119. package/template/.claude/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  120. package/template/.claude/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  121. package/template/.claude/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  122. package/template/.claude/skills/yss-use-table-height/SKILL.md +78 -297
  123. package/template/.claude/skills/yss-use-tree-height/SKILL.md +51 -393
  124. package/template/.claude/skills/yss-web-controller/SKILL.md +12 -11
  125. package/template/.claude/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  126. package/template/.claude/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  127. 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
  128. package/template/.claude/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  129. package/template/.claude/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  130. 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
  131. package/template/.claude/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  132. package/template/.claude/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  133. package/template/.claude/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  134. package/template/.codex/skills/code-review/references/yss-review-standards.md +3 -3
  135. package/template/.codex/skills/component-selection-imports/SKILL.md +2 -2
  136. package/template/.codex/skills/frontend-commit/SKILL.md +1 -1
  137. package/template/.codex/skills/yss-api-integration/SKILL.md +85 -339
  138. package/template/.codex/skills/yss-application/SKILL.md +7 -5
  139. package/template/.codex/skills/yss-application/references/application-layer-guide.md +60 -105
  140. package/template/.codex/skills/yss-components/SKILL.md +1 -1
  141. package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  142. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  143. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  144. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  145. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  146. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  147. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  148. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  149. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  150. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  151. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  152. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  153. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  154. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  155. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  156. package/template/.codex/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  157. package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  158. package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  159. package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  160. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  161. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  162. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  163. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  164. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  165. package/template/.codex/skills/yss-design-system/SKILL.md +2 -2
  166. package/template/.codex/skills/yss-design-system/references/design-system.md +2 -2
  167. package/template/.codex/skills/yss-domain/SKILL.md +3 -3
  168. package/template/.codex/skills/yss-domain/references/domain-layer-guide.md +61 -236
  169. package/template/.codex/skills/yss-dto/SKILL.md +5 -5
  170. package/template/.codex/skills/yss-dto/references/README.md +2 -2
  171. package/template/.codex/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  172. package/template/.codex/skills/yss-exception/SKILL.md +2 -0
  173. package/template/.codex/skills/yss-formily/SKILL.md +1 -1
  174. package/template/.codex/skills/yss-mybatis/SKILL.md +2 -2
  175. package/template/.codex/skills/yss-page-module-development/SKILL.md +2 -0
  176. package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  177. package/template/.codex/skills/yss-repository/SKILL.md +7 -5
  178. package/template/.codex/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  179. package/template/.codex/skills/yss-router/references/router-contract.yaml +41 -7
  180. package/template/.codex/skills/yss-ui/SKILL.md +6 -5
  181. package/template/.codex/skills/yss-ui/references/component-routing.md +1 -1
  182. package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  183. package/template/.codex/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  184. package/template/.codex/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  185. package/template/.codex/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  186. package/template/.codex/skills/yss-use-table-height/SKILL.md +78 -297
  187. package/template/.codex/skills/yss-use-tree-height/SKILL.md +51 -393
  188. package/template/.codex/skills/yss-web-controller/SKILL.md +12 -11
  189. package/template/.codex/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  190. package/template/.codex/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  191. package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
  192. package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  193. package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  194. package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
  195. package/template/.codex/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  196. package/template/.codex/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  197. package/template/.codex/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  198. package/template/.cursor/mcp.json +8 -0
  199. package/template/.cursor/skills/code-review/references/yss-review-standards.md +3 -3
  200. package/template/.cursor/skills/component-selection-imports/SKILL.md +2 -2
  201. package/template/.cursor/skills/frontend-commit/SKILL.md +1 -1
  202. package/template/.cursor/skills/yss-api-integration/SKILL.md +85 -339
  203. package/template/.cursor/skills/yss-application/SKILL.md +7 -5
  204. package/template/.cursor/skills/yss-application/references/application-layer-guide.md +60 -105
  205. package/template/.cursor/skills/yss-components/SKILL.md +1 -1
  206. package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  207. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  208. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  209. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  210. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  211. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  212. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  213. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  214. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  215. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  216. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  217. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  218. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  219. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  220. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  221. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  222. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  223. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  224. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  225. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  226. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  227. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  228. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  229. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  230. package/template/.cursor/skills/yss-design-system/SKILL.md +2 -2
  231. package/template/.cursor/skills/yss-design-system/references/design-system.md +2 -2
  232. package/template/.cursor/skills/yss-domain/SKILL.md +3 -3
  233. package/template/.cursor/skills/yss-domain/references/domain-layer-guide.md +61 -236
  234. package/template/.cursor/skills/yss-dto/SKILL.md +5 -5
  235. package/template/.cursor/skills/yss-dto/references/README.md +2 -2
  236. package/template/.cursor/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  237. package/template/.cursor/skills/yss-exception/SKILL.md +2 -0
  238. package/template/.cursor/skills/yss-formily/SKILL.md +1 -1
  239. package/template/.cursor/skills/yss-mybatis/SKILL.md +2 -2
  240. package/template/.cursor/skills/yss-page-module-development/SKILL.md +2 -0
  241. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  242. package/template/.cursor/skills/yss-repository/SKILL.md +7 -5
  243. package/template/.cursor/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  244. package/template/.cursor/skills/yss-router/references/router-contract.yaml +41 -7
  245. package/template/.cursor/skills/yss-ui/SKILL.md +6 -5
  246. package/template/.cursor/skills/yss-ui/references/component-routing.md +1 -1
  247. package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  248. package/template/.cursor/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  249. package/template/.cursor/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  250. package/template/.cursor/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  251. package/template/.cursor/skills/yss-use-table-height/SKILL.md +78 -297
  252. package/template/.cursor/skills/yss-use-tree-height/SKILL.md +51 -393
  253. package/template/.cursor/skills/yss-web-controller/SKILL.md +12 -11
  254. package/template/.cursor/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  255. package/template/.cursor/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  256. package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
  257. package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  258. package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  259. package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
  260. package/template/.cursor/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  261. package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  262. package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  263. package/template/.cursorrules +9 -5
  264. package/template/.gemini/settings.json +8 -0
  265. package/template/.hermes/skills/code-review/references/yss-review-standards.md +3 -3
  266. package/template/.hermes/skills/component-selection-imports/SKILL.md +2 -2
  267. package/template/.hermes/skills/frontend-commit/SKILL.md +1 -1
  268. package/template/.hermes/skills/yss-api-integration/SKILL.md +85 -339
  269. package/template/.hermes/skills/yss-application/SKILL.md +7 -5
  270. package/template/.hermes/skills/yss-application/references/application-layer-guide.md +60 -105
  271. package/template/.hermes/skills/yss-components/SKILL.md +1 -1
  272. package/template/.hermes/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  273. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  274. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  275. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  276. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  277. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  278. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  279. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  280. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  281. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  282. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  283. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  284. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  285. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  286. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  287. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  288. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  289. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  290. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  291. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  292. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  293. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  294. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  295. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  296. package/template/.hermes/skills/yss-design-system/SKILL.md +2 -2
  297. package/template/.hermes/skills/yss-design-system/references/design-system.md +2 -2
  298. package/template/.hermes/skills/yss-domain/SKILL.md +3 -3
  299. package/template/.hermes/skills/yss-domain/references/domain-layer-guide.md +61 -236
  300. package/template/.hermes/skills/yss-dto/SKILL.md +5 -5
  301. package/template/.hermes/skills/yss-dto/references/README.md +2 -2
  302. package/template/.hermes/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  303. package/template/.hermes/skills/yss-exception/SKILL.md +2 -0
  304. package/template/.hermes/skills/yss-formily/SKILL.md +1 -1
  305. package/template/.hermes/skills/yss-mybatis/SKILL.md +2 -2
  306. package/template/.hermes/skills/yss-page-module-development/SKILL.md +2 -0
  307. package/template/.hermes/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  308. package/template/.hermes/skills/yss-repository/SKILL.md +7 -5
  309. package/template/.hermes/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  310. package/template/.hermes/skills/yss-router/references/router-contract.yaml +41 -7
  311. package/template/.hermes/skills/yss-ui/SKILL.md +6 -5
  312. package/template/.hermes/skills/yss-ui/references/component-routing.md +1 -1
  313. package/template/.hermes/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  314. package/template/.hermes/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  315. package/template/.hermes/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  316. package/template/.hermes/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  317. package/template/.hermes/skills/yss-use-table-height/SKILL.md +78 -297
  318. package/template/.hermes/skills/yss-use-tree-height/SKILL.md +51 -393
  319. package/template/.hermes/skills/yss-web-controller/SKILL.md +12 -11
  320. package/template/.hermes/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  321. package/template/.hermes/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  322. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
  323. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  324. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  325. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
  326. package/template/.hermes/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  327. package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  328. package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  329. package/template/.kiro/settings/mcp.json +8 -0
  330. package/template/.mcp.json +8 -0
  331. package/template/.pi/skills/code-review/references/yss-review-standards.md +3 -3
  332. package/template/.pi/skills/component-selection-imports/SKILL.md +2 -2
  333. package/template/.pi/skills/frontend-commit/SKILL.md +1 -1
  334. package/template/.pi/skills/yss-api-integration/SKILL.md +85 -339
  335. package/template/.pi/skills/yss-application/SKILL.md +7 -5
  336. package/template/.pi/skills/yss-application/references/application-layer-guide.md +60 -105
  337. package/template/.pi/skills/yss-components/SKILL.md +1 -1
  338. package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  339. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  340. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  341. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  342. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  343. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  344. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  345. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  346. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  347. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  348. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  349. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  350. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  351. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  352. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  353. package/template/.pi/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  354. package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  355. package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  356. package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  357. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  358. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  359. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  360. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  361. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  362. package/template/.pi/skills/yss-design-system/SKILL.md +2 -2
  363. package/template/.pi/skills/yss-design-system/references/design-system.md +2 -2
  364. package/template/.pi/skills/yss-domain/SKILL.md +3 -3
  365. package/template/.pi/skills/yss-domain/references/domain-layer-guide.md +61 -236
  366. package/template/.pi/skills/yss-dto/SKILL.md +5 -5
  367. package/template/.pi/skills/yss-dto/references/README.md +2 -2
  368. package/template/.pi/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  369. package/template/.pi/skills/yss-exception/SKILL.md +2 -0
  370. package/template/.pi/skills/yss-formily/SKILL.md +1 -1
  371. package/template/.pi/skills/yss-mybatis/SKILL.md +2 -2
  372. package/template/.pi/skills/yss-page-module-development/SKILL.md +2 -0
  373. package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  374. package/template/.pi/skills/yss-repository/SKILL.md +7 -5
  375. package/template/.pi/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  376. package/template/.pi/skills/yss-router/references/router-contract.yaml +41 -7
  377. package/template/.pi/skills/yss-ui/SKILL.md +6 -5
  378. package/template/.pi/skills/yss-ui/references/component-routing.md +1 -1
  379. package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  380. package/template/.pi/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  381. package/template/.pi/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  382. package/template/.pi/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  383. package/template/.pi/skills/yss-use-table-height/SKILL.md +78 -297
  384. package/template/.pi/skills/yss-use-tree-height/SKILL.md +51 -393
  385. package/template/.pi/skills/yss-web-controller/SKILL.md +12 -11
  386. package/template/.pi/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  387. package/template/.pi/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  388. package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
  389. package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  390. package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  391. package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
  392. package/template/.pi/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  393. package/template/.pi/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  394. package/template/.pi/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  395. package/template/.qoder/skills/code-review/references/yss-review-standards.md +3 -3
  396. package/template/.qoder/skills/component-selection-imports/SKILL.md +2 -2
  397. package/template/.qoder/skills/frontend-commit/SKILL.md +1 -1
  398. package/template/.qoder/skills/yss-api-integration/SKILL.md +85 -339
  399. package/template/.qoder/skills/yss-application/SKILL.md +7 -5
  400. package/template/.qoder/skills/yss-application/references/application-layer-guide.md +60 -105
  401. package/template/.qoder/skills/yss-components/SKILL.md +1 -1
  402. package/template/.qoder/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  403. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  404. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  405. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  406. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  407. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  408. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  409. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  410. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  411. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  412. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  413. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  414. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  415. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  416. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  417. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  418. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  419. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  420. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  421. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  422. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  423. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  424. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  425. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  426. package/template/.qoder/skills/yss-design-system/SKILL.md +2 -2
  427. package/template/.qoder/skills/yss-design-system/references/design-system.md +2 -2
  428. package/template/.qoder/skills/yss-domain/SKILL.md +3 -3
  429. package/template/.qoder/skills/yss-domain/references/domain-layer-guide.md +61 -236
  430. package/template/.qoder/skills/yss-dto/SKILL.md +5 -5
  431. package/template/.qoder/skills/yss-dto/references/README.md +2 -2
  432. package/template/.qoder/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  433. package/template/.qoder/skills/yss-exception/SKILL.md +2 -0
  434. package/template/.qoder/skills/yss-formily/SKILL.md +1 -1
  435. package/template/.qoder/skills/yss-mybatis/SKILL.md +2 -2
  436. package/template/.qoder/skills/yss-page-module-development/SKILL.md +2 -0
  437. package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  438. package/template/.qoder/skills/yss-repository/SKILL.md +7 -5
  439. package/template/.qoder/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  440. package/template/.qoder/skills/yss-router/references/router-contract.yaml +41 -7
  441. package/template/.qoder/skills/yss-ui/SKILL.md +6 -5
  442. package/template/.qoder/skills/yss-ui/references/component-routing.md +1 -1
  443. package/template/.qoder/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  444. package/template/.qoder/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  445. package/template/.qoder/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  446. package/template/.qoder/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  447. package/template/.qoder/skills/yss-use-table-height/SKILL.md +78 -297
  448. package/template/.qoder/skills/yss-use-tree-height/SKILL.md +51 -393
  449. package/template/.qoder/skills/yss-web-controller/SKILL.md +12 -11
  450. package/template/.qoder/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  451. package/template/.qoder/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  452. package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
  453. package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  454. package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  455. package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
  456. package/template/.qoder/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  457. package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  458. package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  459. package/template/.trae/skills/code-review/references/yss-review-standards.md +3 -3
  460. package/template/.trae/skills/component-selection-imports/SKILL.md +2 -2
  461. package/template/.trae/skills/frontend-commit/SKILL.md +1 -1
  462. package/template/.trae/skills/yss-api-integration/SKILL.md +85 -339
  463. package/template/.trae/skills/yss-application/SKILL.md +7 -5
  464. package/template/.trae/skills/yss-application/references/application-layer-guide.md +60 -105
  465. package/template/.trae/skills/yss-components/SKILL.md +1 -1
  466. package/template/.trae/skills/yss-ddd-scaffold-generator/SKILL.md +27 -13
  467. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +8 -0
  468. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +2 -3
  469. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +36 -0
  470. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +15 -0
  471. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +3 -3
  472. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +13 -4
  473. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +24 -4
  474. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +6 -20
  475. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +26 -6
  476. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +70 -10
  477. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +24 -10
  478. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +2 -3
  479. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +18 -105
  480. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +4 -2
  481. package/template/.trae/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +78 -156
  482. package/template/.trae/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +83 -389
  483. package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +20 -188
  484. package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +41 -122
  485. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +191 -0
  486. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +126 -0
  487. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +139 -42
  488. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +87 -7
  489. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +322 -12
  490. package/template/.trae/skills/yss-design-system/SKILL.md +2 -2
  491. package/template/.trae/skills/yss-design-system/references/design-system.md +2 -2
  492. package/template/.trae/skills/yss-domain/SKILL.md +3 -3
  493. package/template/.trae/skills/yss-domain/references/domain-layer-guide.md +61 -236
  494. package/template/.trae/skills/yss-dto/SKILL.md +5 -5
  495. package/template/.trae/skills/yss-dto/references/README.md +2 -2
  496. package/template/.trae/skills/yss-dto/references/openapi-wire-profile.yaml +3 -3
  497. package/template/.trae/skills/yss-exception/SKILL.md +2 -0
  498. package/template/.trae/skills/yss-formily/SKILL.md +1 -1
  499. package/template/.trae/skills/yss-mybatis/SKILL.md +2 -2
  500. package/template/.trae/skills/yss-page-module-development/SKILL.md +2 -0
  501. package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +42 -11
  502. package/template/.trae/skills/yss-repository/SKILL.md +7 -5
  503. package/template/.trae/skills/yss-repository/references/infrastructure-layer-guide.md +70 -155
  504. package/template/.trae/skills/yss-router/references/router-contract.yaml +41 -7
  505. package/template/.trae/skills/yss-ui/SKILL.md +6 -5
  506. package/template/.trae/skills/yss-ui/references/component-routing.md +1 -1
  507. package/template/.trae/skills/yss-ui-business-page-generation/SKILL.md +159 -0
  508. package/template/.trae/skills/yss-ui-business-page-generation/references/component-map.md +39 -0
  509. package/template/.trae/skills/yss-ui-business-page-generation/references/hooks-map.md +70 -0
  510. package/template/.trae/skills/yss-ui-business-page-generation/references/utils-map.md +51 -0
  511. package/template/.trae/skills/yss-use-table-height/SKILL.md +78 -297
  512. package/template/.trae/skills/yss-use-tree-height/SKILL.md +51 -393
  513. package/template/.trae/skills/yss-web-controller/SKILL.md +12 -11
  514. package/template/.trae/skills/yss-web-controller/assets/templates/Controller.java.template +15 -16
  515. package/template/.trae/skills/yss-web-controller/assets/templates/WebConvertor.java.template +21 -11
  516. package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +19 -0
  517. package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +24 -0
  518. package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +18 -0
  519. package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +19 -0
  520. package/template/.trae/skills/yss-web-controller/references/web-adapter-layer-guide.md +61 -145
  521. package/template/.trae/skills/yss-web-controller/scripts/generate_controller.mjs +45 -17
  522. package/template/.trae/skills/yss-web-controller/scripts/generate_controller.test.mjs +44 -3
  523. package/template/.vscode/mcp.json +8 -0
  524. package/template/README.md +3 -0
  525. package/template/docs/agents/digital-human-roles.yaml +1 -1
  526. package/template/docs/agents/skills-maintenance.md +7 -4
  527. package/template/docs/agents/yss-skill-registry.yaml +7 -1
  528. package/template/docs/agents/yss-ui-skills-integration.md +24 -0
  529. package/template/docs/process/template-verification-profiles.yaml +11 -0
  530. package/template/docs/templates/implementation-routing-template.md +5 -3
  531. package/template/docs/templates/review-report-template.md +2 -2
  532. package/template/docs/user-guide/yss-ui-mcp.md +43 -0
  533. package/template/scripts/lib/scenario-checks.mjs +3 -3
  534. package/template/scripts/lib/skill-governance.mjs +36 -2
  535. package/template/scripts/lib/skill-registry.mjs +2 -1
  536. package/template/scripts/lib/skill-supply-chain.mjs +72 -1
  537. package/template/scripts/verify-scaffold-generator-scenarios +150 -44
  538. package/template/scripts/verify-skill-governance +1 -1
  539. package/template/scripts/verify-upstream-skill-source +38 -3
  540. package/template/scripts/verify-yss-dto-openapi-profile +4 -2
  541. package/template/skills-lock.json +159 -84
  542. package/template/yss-public-skills.json +2 -0
  543. package/template.manifest.json +4 -0
  544. package/template.snapshot.json +5 -5
  545. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  546. package/template/.agents/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  547. package/template/.agents/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  548. package/template/.agents/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
  549. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  550. package/template/.claude/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  551. package/template/.claude/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  552. package/template/.claude/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
  553. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  554. package/template/.codex/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  555. package/template/.codex/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  556. package/template/.codex/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
  557. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  558. package/template/.cursor/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  559. package/template/.cursor/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  560. package/template/.cursor/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
  561. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  562. package/template/.hermes/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
  563. package/template/.hermes/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  564. package/template/.hermes/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  565. package/template/.hermes/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
  566. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  567. package/template/.pi/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
  568. package/template/.pi/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  569. package/template/.pi/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  570. package/template/.pi/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
  571. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  572. package/template/.qoder/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
  573. package/template/.qoder/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  574. package/template/.qoder/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  575. package/template/.qoder/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +0 -20
  576. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +0 -84
  577. package/template/.trae/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +0 -23
  578. package/template/.trae/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +0 -23
  579. package/template/.trae/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +0 -21
  580. 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": 1,
67
+ "schema_version": 2,
63
68
  "contract_id": contract_id,
64
69
  "contract_version": 1,
65
- "slice_id": f"{project_name}-scaffold",
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
- "target_git_url_or_output_dir": str(output_root),
75
- "allowed_write_paths": [f"{project_name}/**"],
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": [f"{project_name}/**"],
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
- "overwrite_policy": {
107
- "force_allowed": force_allowed,
108
- "overwrite_scope": overwrite_scope,
109
- "rollback_ref": rollback_ref,
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": 1,
349
+ "schema_version": 2,
266
350
  "contract_id": "backend-scaffold-verification",
267
351
  "contract_version": 1,
268
- "slice_id": "verification-service-scaffold",
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
- "--overwrite-scope",
417
- "force-service/**",
418
- "--rollback-ref",
419
- "git:checkpoint-001",
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 == 0,
423
- f"具备合同元数据的覆盖生成失败:\n{approved_force_result.stdout}\n{approved_force_result.stderr}",
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
- "--overwrite-scope",
475
- "gitlink-service/**",
476
- "--rollback-ref",
477
- "git:checkpoint-gitlink",
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 compatibility = profile.compatibility_packages?.find((item) => item.java_package === "com.yss.cloud.dto.response");
55
- ensure(compatibility?.use_for_new_contracts === false, "dto.response 必须标记为非新契约 canonical");
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");