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
@@ -38,7 +38,16 @@ required_files:
38
38
  - AGENTS.md
39
39
  - CONTEXT.md
40
40
  - skills-lock.json
41
+ - .agents/skills/.yss-skills-manifest.json
42
+ - .mcp.json
43
+ - .agents/mcp_config.json
44
+ - .cursor/mcp.json
45
+ - .gemini/settings.json
46
+ - .kiro/settings/mcp.json
47
+ - .vscode/mcp.json
41
48
  - docs/agents/yss-skill-registry.yaml
49
+ - docs/agents/yss-ui-skills-integration.md
50
+ - docs/user-guide/yss-ui-mcp.md
42
51
  - docs/agents/digital-human-roles.yaml
43
52
  - docs/process/lifecycle-registry.yaml
44
53
  - docs/process/lifecycle-registry-baseline.json
@@ -138,6 +147,8 @@ routing:
138
147
  groups: [governance-release]
139
148
  - patterns: [skills-lock.json, ".agents/skills/**", ".claude/skills/**", ".codex/skills/**", ".cursor/skills/**", ".hermes/skills/**", ".pi/skills/**", ".qoder/skills/**", ".trae/skills/**", "docs/agents/yss-skill-registry.yaml", "docs/agents/skills-maintenance.md", "scripts/*skill*"]
140
149
  groups: [skills]
150
+ - patterns: [.mcp.json, .agents/mcp_config.json, .cursor/mcp.json, .gemini/settings.json, .kiro/settings/mcp.json, .vscode/mcp.json, docs/user-guide/yss-ui-mcp.md, docs/agents/yss-ui-skills-integration.md]
151
+ groups: [skills]
141
152
  - patterns: ["docs/process/maintenance-*", "docs/process/harness-process-tailoring.md", "docs/process/schemas/maintenance-*", "scripts/*maintenance*", "scripts/lib/maintenance-*"]
142
153
  groups: [maintenance]
143
154
  - patterns: ["docs/process/lifecycle-*", "docs/process/templates/lifecycle-*", "scripts/*lifecycle*", "scripts/lib/lifecycle-*"]
@@ -40,7 +40,7 @@ owner: ai
40
40
  | Harness 内项目根路径符合 `apps/<backend|frontend>/<project>/` | 是 / 否 / 不适用 | `apps/backend/`、`apps/frontend/` 仅为容器 |
41
41
  | 未使用 `app/backend/`、`app/frontend/` 及其子路径 | 是 / 否 / 不适用 | 命中即阻断生成和实现 |
42
42
  | 原型确认后先完成后端脚手架,再进入业务代码路由 | 是 / 否 / 不适用 | `backend_scaffold_policy_satisfied` |
43
- | 后端脚手架合同字段完整且版本当前 | 是 / 否 / 不适用 | `contract_id`、`contract_version`、Router draft、生命周期批准、持久化引用、允许写路径、预期证据、验证命令 |
43
+ | 后端脚手架合同字段完整且版本当前 | 是 / 否 / 不适用 | schema v2:`scaffold_request_id`、项目/输出目录、Router draft、生命周期批准、base package、Maven 坐标、target DDD/Profile、initialize-only、允许写路径、预期证据、验证命令 |
44
44
  | 后端构建 / 测试 / OpenAPI / CI 命令均使用项目根目录 `./mvnw ...`,或已记录受控例外 | 是 / 否 / 不适用 | 裸 `mvn ...` 默认为规范偏离 |
45
45
  | 持久化文档正文和章节标题已转换为中文,仅保留必要英文技术标识 / metadata | 是 / 否 | 英文 skill / 模板不得原样落地为交付文档 |
46
46
  | YSS skill 路由已完成 | 是 / 否 | |
@@ -245,10 +245,12 @@ owner: ai
245
245
  | 前置 | `prototype_confirmation`、工程基线、实现仓库和脚手架目标已确认;Router 脚手架合同 draft 已经生命周期批准并持久化为结构化 JSON,生成器通过 `--contract-file` 消费 |
246
246
  | 生成器 | `yss-ddd-scaffold-generator` |
247
247
  | 模式 | `controlled-generation` |
248
+ | Java / Maven 身份 | `base_package` 与 Maven `group_id` 分开登记;项目版本、父 POM GAV、`yss-components.version` 进入批准合同并原样传给 CLI |
248
249
  | 允许生成 | Domain / Application / Infrastructure / Adapter / Bootstrap 目录骨架、POM、配置、Wrapper 和非业务机械模板 |
249
250
  | 禁止生成 | 业务规则、状态机、权限、事务、复杂查询、错误映射、业务字段和用户可见行为 |
250
- | 生成选项 | 关闭 `--with-example`;非空目录 `--force` 默认阻断,覆盖范围、备份、回滚点和批准引用齐全后才能单独审查 |
251
- | 验证 | 受控验证器实际执行项目根目录 `./mvnw validate`、`./mvnw test`、`./mvnw package`,逐条记录 `exit_code`、`duration_ms`、stdout/stderr 引用和执行时间;打印命令不算证据 |
251
+ | 生成选项 | 关闭 `--with-example`;生成器严格 initialize-only,非空目录、`--force`、旧项目迁移和当前模板升级均为 `unsupported` |
252
+ | Profile | `target-domain-model` / `mybatis-plus` / `mysql` / `spring-boot-2.7-jdk8` / `javax` / `web` / `yss-internal`;其他组合须先通过独立 fixture |
253
+ | 验证 | 使用一键生成验证入口,实际执行项目根目录 `./mvnw validate`、`./mvnw test`、`./mvnw package`;通过后仅为 `empty-scaffold-verified`,golden first slice 通过后才是 `first-slice-verified` |
252
254
  | 后置 | `yss-backend-scaffold-parent`、`yss-router` 业务合同重编译、YSS Skill Execution Result |
253
255
 
254
256
  所有后续生成代码必须绑定当前批准且版本一致的 Slice Implementation Contract、主 YSS skill、依赖闭包、允许写路径、预期证据和 Execution Result。业务行为必须使用 `behavior-tdd`;缺任一条件即阻断,不得以脚手架成功或时间压力豁免。
@@ -87,8 +87,8 @@ rg -n "class (SingleResult|MultiResult|PageResult|Result)<|public static class .
87
87
 
88
88
  | 检查项 | 结论 | 证据 |
89
89
  |---|---|---|
90
- | `yss-ui` 组件路由已落实:YSS `required` 封装(如 `YTable` / `YTree` / `YssFormily`)未被 AntDV 裸组件或其他重型方案绕过;受控回退有能力缺口记录 | pass / violation / not-applicable | |
91
- | `yss-page-module-development` 页面骨架已落实:`index.vue` 只编排,请求与分页不堆在页面根组件 | pass / violation / not-applicable | |
90
+ | `yss-ui` 组件路由已落实:YSS `required` 封装(如 `YTable` / `YTree` / `YFormily`)未被 AntDV 裸组件或其他重型方案绕过;受控回退有能力缺口记录 | pass / violation / not-applicable | |
91
+ | `yss-ui-business-page-generation` 页面生成与 `yss-page-module-development` 生命周期编排已落实:`index.vue` 只编排,请求与分页不堆在页面根组件 | pass / violation / not-applicable | |
92
92
  | 切片合同 `required_skills` 中的 Formily / 表格 / 树 / 高度 / 主题 / API 专项 skill 已按影响面引用规则;未命中项有 `not-applicable` 原因 | pass / violation / not-applicable | |
93
93
  | 前端验证使用项目根 `pnpm ...`;实际退出码已记录。只做 type-check 或声称“已对齐”不算通过 | pass / violation / not-applicable | |
94
94
  | 机器检查(`pnpm lint` / `pnpm type-check` 等已存在脚本)已执行,或缺失工具已写 `not-applicable` 及原因 | pass / violation / not-applicable | |
@@ -0,0 +1,43 @@
1
+ # YSS UI MCP 接入
2
+
3
+ 模板已为支持项目级 MCP 配置的客户端预置 `yss-ui` server:
4
+
5
+ - Claude Code:`.mcp.json`
6
+ - Antigravity:`.agents/mcp_config.json`
7
+ - Cursor:`.cursor/mcp.json`
8
+ - Gemini CLI:`.gemini/settings.json`
9
+ - Kiro:`.kiro/settings/mcp.json`
10
+ - VS Code:`.vscode/mcp.json`
11
+
12
+ 这些配置统一通过 `npx -y @yss-ui/mcp` 启动,不写用户主目录,也不覆盖个人全局配置。首次加载模板后,重启或刷新对应客户端即可发现 MCP。
13
+
14
+ ## Codex 等全局配置客户端
15
+
16
+ 需要写入用户级配置的客户端不由模板自动修改。以 Codex 为例,由使用者明确执行:
17
+
18
+ ```bash
19
+ npx -y @yss-ui/mcp install codex
20
+ ```
21
+
22
+ 其他客户端的安装参数以 `@yss-ui/mcp` 当前 CLI 帮助为准。模板只提供说明,不替用户修改 `~/.codex/config.toml` 等全局文件。
23
+
24
+ ## 使用门禁
25
+
26
+ 生成或审查 YSS UI 页面时:
27
+
28
+ 1. 先调用 `get_codegen_rules` 获取当前代码生成约束。
29
+ 2. 不确定组件导出时调用 `list_components`。
30
+ 3. 配置组件、Hook 或 Utils 前调用 `get_component_docs`。
31
+ 4. 复杂场景调用 `get_demo`;无法确定归属时调用 `search_docs`。
32
+
33
+ 本次模板验证基线为 `@yss-ui/mcp@0.1.8`、YSS UI components `1.5.18`,MCP 对外提供 7 个工具。运行时返回值与项目 lockfile 仍优先于本文快照;MCP 不可用时,按 `AGENTS.md` 读取 `llms-full.txt`,并明确记录降级原因。
34
+
35
+ ## 快速自检
36
+
37
+ 客户端中至少确认以下结果:
38
+
39
+ - `list_components` 能返回 YSS UI 组件清单。
40
+ - `get_codegen_rules` 能返回当前生成规则。
41
+ - 查询 `YTable` 时,`get_component_docs` 能返回对应文档。
42
+
43
+ MCP 无法启动时,先确认 Node.js、`npx` 和网络/私有源访问,再直接运行 `npx -y @yss-ui/mcp` 查看启动错误;不要把 Registry 认证内容写入日志或提交到仓库。
@@ -46,7 +46,7 @@ function validateInvocationBoundary(data) {
46
46
  ensure(JSON.stringify(boundary?.lifecycle_managed_user_entries) === JSON.stringify(["setup-matt-pocock-skills", "grill-with-docs", "to-spec", "to-tickets", "implement"]), "生命周期管理的显式用户入口清单不完整");
47
47
  ensure(boundary?.lifecycle_may_invoke_user_invoked === false && boundary?.formal_artifact_owner === "explicit-user-entry", "生命周期仍可能自动调用 user-invoked skill 或产出其正式资产");
48
48
  ensure(JSON.stringify(boundary?.model_invoked_skills) === JSON.stringify(expectedModelInvoked) && JSON.stringify(boundary?.lifecycle_allowed_model_invoked_skills) === JSON.stringify(expectedLifecycleModelInvoked) && boundary?.continuous_orchestration === "compatibility-prepare-and-validate-only", "Matt invocation inventory 或生命周期 model-invoked 白名单不完整");
49
- ensure(JSON.stringify(data.skill_source_contract?.source_revisions_required) === JSON.stringify(["mattpocock/skills"]) && data.skill_source_contract?.adaptation_ref_required_when_effective_diff === true && data.skill_source_contract?.retired_shared_skills?.includes("batch-grill-me"), "上游来源或退役 skill 供应链契约不完整");
49
+ ensure(JSON.stringify(data.skill_source_contract?.source_revisions_required) === JSON.stringify(["mattpocock/skills", "iloveZzz/yss-ui"]) && data.skill_source_contract?.adaptation_ref_required_when_effective_diff === true && data.skill_source_contract?.retired_shared_skills?.includes("batch-grill-me"), "上游来源或退役 skill 供应链契约不完整");
50
50
  validateInvocationMetadata(boundary, (skill) => read(`.agents/skills/${skill}/SKILL.md`));
51
51
  const setup = data.setup_readiness;
52
52
  ensure(setup?.missing_action === "needs-human" && setup?.requested_skill === "setup-matt-pocock-skills" && setup?.resume_route === "setup-readiness" && setup?.preserves?.includes("lifecycle.status"), "readiness=missing 未形成显式用户 setup 的结构化暂停");
@@ -60,9 +60,9 @@ function validateInvocationBoundary(data) {
60
60
  const routes = data.work_unit_routes;
61
61
  ensure(routes?.["work-unit.discovery-requirements"]?.skills?.includes("grilling") && routes?.["work-unit.discovery-requirements"]?.skills?.includes("domain-modeling"), "需求分析工作单元缺少 grilling/domain-modeling");
62
62
  ensure(routes?.["work-unit.discovery-opportunity"]?.route_by?.market_or_competitor_fact === "competitive-intelligence" && routes["work-unit.discovery-opportunity"].route_by.technical_or_standard_fact === "research", "机会调研事实路由不准确");
63
- ensure(routes?.["work-unit.slice-implementation"]?.skills?.includes("tdd") && routes?.["work-unit.slice-implementation"]?.skills?.includes("yss-ui"), "原生实现工作单元缺少 TDD 或 UI 路由");
63
+ ensure(routes?.["work-unit.slice-implementation"]?.skills?.includes("tdd") && routes?.["work-unit.slice-implementation"]?.skills?.includes("yss-ui") && routes?.["work-unit.slice-implementation"]?.skills?.includes("yss-ui-business-page-generation"), "原生实现工作单元缺少 TDD、UI 或业务页面生成路由");
64
64
  const frontendRoute = routes?.["work-unit.slice-implementation"]?.frontend_route;
65
- ensure(frontendRoute?.primary_skill === "yss-ui" && frontendRoute?.page_orchestration_skill === "yss-page-module-development", "前端实现路由缺少 yss-ui 主入口或页面编排技能");
65
+ ensure(frontendRoute?.primary_skill === "yss-ui" && frontendRoute?.page_generation_skill === "yss-ui-business-page-generation" && frontendRoute?.page_orchestration_skill === "yss-page-module-development", "前端实现路由缺少 yss-ui 主入口、业务页面生成或页面编排技能");
66
66
  for (const impact of ["api_impact", "formily_impact", "table_impact", "tree_impact", "height_impact", "export_impact", "theme_impact"]) {
67
67
  ensure(Array.isArray(frontendRoute?.conditional_skills?.[impact]) && frontendRoute.conditional_skills[impact].length > 0 && typeof frontendRoute.not_applicable_reasons?.[impact] === "string", `前端条件专项路由缺少 ${impact}`);
68
68
  }
@@ -2,6 +2,7 @@ import { existsSync, readFileSync } from "node:fs";
2
2
  import path from "node:path";
3
3
  import { fileURLToPath } from "node:url";
4
4
  import { loadSkillRegistry } from "./skill-registry.mjs";
5
+ import { validateYssUiSkillManifest } from "./skill-supply-chain.mjs";
5
6
 
6
7
  export const ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../..");
7
8
 
@@ -27,10 +28,43 @@ export function validateSkillGovernance({ read = (relative) => readFileSync(path
27
28
  fail("页面模块 canonical 技能缺少条件化 toolbar-config 规则");
28
29
  }
29
30
 
31
+ const yssUiManifest = validateYssUiSkillManifest(JSON.parse(read(".agents/skills/.yss-skills-manifest.json")));
32
+ const lock = JSON.parse(read("skills-lock.json"));
33
+ for (const skill of yssUiManifest.skills) {
34
+ const skillPath = `.agents/skills/${skill.canonical}/SKILL.md`;
35
+ if (!exists(skillPath)) fail(`yss-ui 前端清单缺少 canonical skill: ${skill.canonical}`);
36
+ const item = lock.skills?.shared?.[skill.canonical];
37
+ if (!item || item.source !== yssUiManifest.source || item.sourceRevision !== yssUiManifest.source_revision) {
38
+ fail(`yss-ui skill 缺少一致的来源锁定: ${skill.canonical}`);
39
+ }
40
+ if (item.skillPath !== `${yssUiManifest.source_root}/${skill.upstream}/SKILL.md` || item.upstreamHash !== skill.upstream_hash) {
41
+ fail(`yss-ui skill 上游路径或 hash 不一致: ${skill.canonical}`);
42
+ }
43
+ const content = read(skillPath);
44
+ for (const match of content.matchAll(/\.\.\/([a-z0-9-]+)\/SKILL\.md/g)) {
45
+ if (!exists(`.agents/skills/${match[1]}/SKILL.md`)) fail(`${skill.canonical} 引用了不存在的本地 skill: ${match[1]}`);
46
+ }
47
+ }
48
+ const yssUiSkill = read(".agents/skills/yss-ui/SKILL.md");
49
+ if (!yssUiSkill.includes("`YFormily` 是新代码 canonical name")) fail("yss-ui 必须把 YFormily 声明为新代码 canonical name");
50
+ if (!yssUiSkill.includes("| 新建或改造完整业务页面 | `yss-ui-business-page-generation` |")) fail("yss-ui 缺少完整业务页面生成路由");
51
+ const expectedServer = { command: "npx", args: ["-y", "@yss-ui/mcp"] };
52
+ for (const config of yssUiManifest.mcp.project_configs) {
53
+ if (!exists(config.path)) fail(`缺少 yss-ui MCP 项目配置: ${config.path}`);
54
+ const document = JSON.parse(read(config.path));
55
+ if (JSON.stringify(document?.[config.container]?.[yssUiManifest.mcp.server_name]) !== JSON.stringify(expectedServer)) {
56
+ fail(`yss-ui MCP 配置不一致: ${config.path}`);
57
+ }
58
+ }
59
+ const mcpGuide = read(yssUiManifest.mcp.global_install_guide);
60
+ for (const marker of ["npx -y @yss-ui/mcp install codex", "不写用户主目录", "get_codegen_rules", "list_components"]) {
61
+ if (!mcpGuide.includes(marker)) fail(`YSS UI MCP 指南缺少边界或自检标记: ${marker}`);
62
+ }
63
+
30
64
  const registry = loadSkillRegistry();
31
65
  const canonicalIds = new Set(registry.skills.map((skill) => skill.id));
32
66
  const aliases = new Map(registry.skills.flatMap((skill) => skill.aliases.map((alias) => [alias, skill.id])));
33
- const legacy = new Set(["api-integration", "page-module-development", "use-table-height", "use-tree-height", "yss-ui-business-page-generation"]);
67
+ const legacy = new Set(["api-integration", "page-module-development", "use-table-height", "use-tree-height"]);
34
68
  for (const alias of legacy) {
35
69
  if (exists(`.agents/skills/${alias}`)) fail(`legacy alias 不得存在独立 canonical 目录: ${alias}`);
36
70
  if (!aliases.has(alias)) fail(`legacy alias 未登记: ${alias}`);
@@ -65,5 +99,5 @@ export function validateSkillGovernance({ read = (relative) => readFileSync(path
65
99
  }
66
100
  }
67
101
  }
68
- return { checked: true, legacy_aliases: legacy.size };
102
+ return { checked: true, legacy_aliases: legacy.size, yss_ui_skills: yssUiManifest.skills.length };
69
103
  }
@@ -392,6 +392,7 @@ export function validateSkillRegistry(registry, { lock, routerContract, lifecycl
392
392
  }
393
393
  if (route.frontend_route) {
394
394
  requireString(route.frontend_route.primary_skill, `${routeId}.frontend_route.primary_skill`);
395
+ requireString(route.frontend_route.page_generation_skill, `${routeId}.frontend_route.page_generation_skill`);
395
396
  requireString(route.frontend_route.page_orchestration_skill, `${routeId}.frontend_route.page_orchestration_skill`);
396
397
  const conditional = route.frontend_route.conditional_skills;
397
398
  if (!conditional || typeof conditional !== "object" || Array.isArray(conditional)) fail(`${routeId}.frontend_route.conditional_skills 必须是对象`);
@@ -402,7 +403,7 @@ export function validateSkillRegistry(registry, { lock, routerContract, lifecycl
402
403
  fail(`${routeId}.frontend_route.not_applicable_reasons.${impact} 必须是字符串`);
403
404
  }
404
405
  }
405
- if (!resolve(route.frontend_route.primary_skill) || !resolve(route.frontend_route.page_orchestration_skill)) {
406
+ if (!resolve(route.frontend_route.primary_skill) || !resolve(route.frontend_route.page_generation_skill) || !resolve(route.frontend_route.page_orchestration_skill)) {
406
407
  fail(`${routeId}.frontend_route 主入口引用了未登记技能`);
407
408
  }
408
409
  }
@@ -7,6 +7,7 @@ import { fileURLToPath } from "node:url";
7
7
  export const ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../..");
8
8
  const SOURCE_ROOT = path.join(ROOT, ".agents/skills");
9
9
  const LOCK_PATH = path.join(ROOT, "skills-lock.json");
10
+ const YSS_UI_MANIFEST_PATH = path.join(SOURCE_ROOT, ".yss-skills-manifest.json");
10
11
  export const PROJECTION_ROOTS = [".claude/skills", ".codex/skills", ".cursor/skills", ".hermes/skills", ".pi/skills", ".qoder/skills", ".trae/skills"];
11
12
  export const OBSOLETE = new Set(["to-" + "prd", "to-" + "issues", "design-an-interface", "qa", "request-refactor-plan", "ubiquitous-language", "edit-article", "obsidian-vault", "writing-great-skills", "code-review-process", "yss-domain-modeling", "yss-dir", "yss-duckdb", "yss-file", "yss-filerunner", "yss-db2mybatis", "yss-mail", "yss-mapper-dynamic", "yss-quality", "yss-sql-condition", "yss-sql-tpl", "yss-valuation", "yss-variable", "yss-openapi", "web-design-engineer", "web-video-presentation", "wireframe-prototype", "wizard", "git-guardrails-claude-code", "claude-handoff", "batch-grill-me", "product-design-prototype", "yss-dictionary", "yss-jdbc", "yss-log", "yss-taskflow", "yss-backend-scaffold-application", "yss-backend-scaffold-domain", "yss-backend-scaffold-infrastructure", "yss-backend-scaffold-web"]);
12
13
  export function obsoleteCanonicalResidues(names, obsolete = OBSOLETE) {
@@ -33,6 +34,61 @@ export function treeHash(directory) {
33
34
  }
34
35
  return digest.digest("hex");
35
36
  }
37
+
38
+ /**
39
+ * 校验并返回 YSS UI 前端 skills 与 MCP 的上游集成合同。
40
+ *
41
+ * @param {unknown} manifest 待校验的清单对象
42
+ * @returns {Record<string, any>} 已校验的清单
43
+ */
44
+ export function validateYssUiSkillManifest(manifest) {
45
+ if (!manifest || typeof manifest !== "object" || Array.isArray(manifest)) throw new TypeError("yss-ui 清单必须是对象");
46
+ const requiredStrings = ["source", "source_type", "source_root", "source_category", "source_revision", "adaptation_ref"];
47
+ for (const field of requiredStrings) {
48
+ if (typeof manifest[field] !== "string" || !manifest[field].trim()) throw new TypeError(`yss-ui 清单缺少 ${field}`);
49
+ }
50
+ if (manifest.schema_version !== 2) throw new TypeError("yss-ui 清单 schema_version 必须为 2");
51
+ if (!/^[0-9a-f]{40}$/.test(manifest.source_revision)) throw new TypeError("yss-ui source_revision 必须是完整 Git SHA");
52
+ if (!manifest.package || typeof manifest.package.name !== "string" || typeof manifest.package.version !== "string") {
53
+ throw new TypeError("yss-ui 清单缺少 package name/version");
54
+ }
55
+ if (!Array.isArray(manifest.excluded_categories) || manifest.excluded_categories.some((item) => typeof item !== "string" || !item)) {
56
+ throw new TypeError("yss-ui 清单缺少有效 excluded_categories");
57
+ }
58
+ if (!Array.isArray(manifest.excluded_skills) || manifest.excluded_skills.some((item) => typeof item !== "string" || !item)) {
59
+ throw new TypeError("yss-ui 清单缺少有效 excluded_skills");
60
+ }
61
+ if (!Array.isArray(manifest.skills) || !manifest.skills.length) throw new TypeError("yss-ui 清单缺少 skills");
62
+ const upstreamNames = new Set();
63
+ const canonicalNames = new Set();
64
+ for (const skill of manifest.skills) {
65
+ if (!skill || typeof skill.upstream !== "string" || typeof skill.canonical !== "string") throw new TypeError("yss-ui skill 缺少 upstream/canonical");
66
+ if (skill.upstream === "java-backend-commit") throw new TypeError("yss-ui 前端清单不得包含 java-backend-commit");
67
+ if (manifest.excluded_skills.includes(skill.upstream)) throw new TypeError(`yss-ui 清单包含已排除 skill: ${skill.upstream}`);
68
+ if (upstreamNames.has(skill.upstream)) throw new TypeError(`upstream 重复: ${skill.upstream}`);
69
+ if (canonicalNames.has(skill.canonical)) throw new TypeError(`canonical 重复: ${skill.canonical}`);
70
+ if (!/^[0-9a-f]{64}$/.test(skill.upstream_hash ?? "")) throw new TypeError(`${skill.canonical} 缺少有效 upstream_hash`);
71
+ upstreamNames.add(skill.upstream);
72
+ canonicalNames.add(skill.canonical);
73
+ }
74
+ const mcp = manifest.mcp;
75
+ if (!mcp || typeof mcp.package !== "string" || typeof mcp.version !== "string" || typeof mcp.components_version !== "string" || typeof mcp.server_name !== "string") {
76
+ throw new TypeError("yss-ui 清单缺少 MCP package/version/server 信息");
77
+ }
78
+ if (!Array.isArray(mcp.project_configs) || !mcp.project_configs.length) throw new TypeError("yss-ui 清单缺少 MCP project_configs");
79
+ const configPaths = new Set();
80
+ for (const config of mcp.project_configs) {
81
+ if (!config || typeof config.path !== "string" || !["mcpServers", "servers"].includes(config.container)) throw new TypeError("yss-ui MCP project_config 无效");
82
+ if (configPaths.has(config.path)) throw new TypeError(`yss-ui MCP config path 重复: ${config.path}`);
83
+ configPaths.add(config.path);
84
+ }
85
+ if (typeof mcp.global_install_guide !== "string" || !mcp.global_install_guide) throw new TypeError("yss-ui MCP 缺少 global_install_guide");
86
+ return manifest;
87
+ }
88
+
89
+ function loadYssUiSkillManifest() {
90
+ return validateYssUiSkillManifest(JSON.parse(readFileSync(YSS_UI_MANIFEST_PATH, "utf8")));
91
+ }
36
92
  function git(args) { return spawnSync("git", args, { cwd: ROOT, encoding: "utf8", stdio: ["ignore", "pipe", "ignore"] }); }
37
93
  function tracked(relativePath) { return git(["ls-files", "-z", "--", relativePath]).stdout.length > 0; }
38
94
  function parseLock() { return existsSync(LOCK_PATH) ? JSON.parse(readFileSync(LOCK_PATH, "utf8")) : null; }
@@ -140,6 +196,9 @@ function metadata(name, skillPath, directory, previous, canonical = false, sourc
140
196
  }
141
197
  export function updateSkillLock(arguments_ = process.argv.slice(2)) {
142
198
  const oldLock = parseLock(); const previous = priorMetadata(oldLock); const sources = sourceRevisionMap(oldLock, arguments_); const upstreamRoot = option(arguments_, "upstream-root");
199
+ const yssUiManifest = loadYssUiSkillManifest();
200
+ sources[yssUiManifest.source] = { ...(sources[yssUiManifest.source] ?? {}), revision: yssUiManifest.source_revision };
201
+ const yssUiSkills = new Map(yssUiManifest.skills.map((skill) => [skill.canonical, skill]));
143
202
  if (upstreamRoot && !existsSync(upstreamRoot)) throw new TypeError(`--upstream-root 不存在: ${upstreamRoot}`);
144
203
  const additions = arguments_.filter((arg) => arg.startsWith("--add=")).map((arg) => arg.slice(6));
145
204
  const removals = new Set(arguments_.filter((arg) => arg.startsWith("--remove=")).map((arg) => arg.slice(9)));
@@ -152,7 +211,19 @@ export function updateSkillLock(arguments_ = process.argv.slice(2)) {
152
211
  if (unlocked.length) throw new TypeError(`发现未登记到 skills-lock.json 的已跟踪共享 skills: ${unlocked.join(", ")}\n确认新增后运行 scripts/update-skill-lock --add=<skill-name>`);
153
212
  const targets = [".agents/skills", ...PROJECTION_ROOTS];
154
213
  const shared = Object.fromEntries(sharedNames.map((name) => {
155
- const item = metadata(name, `.agents/skills/${name}/SKILL.md`, path.join(SOURCE_ROOT, name), previous, true, sources, upstreamRoot); item.targets = targets; return [name, item];
214
+ const item = metadata(name, `.agents/skills/${name}/SKILL.md`, path.join(SOURCE_ROOT, name), previous, true, sources, upstreamRoot);
215
+ const yssUiSkill = yssUiSkills.get(name);
216
+ if (yssUiSkill) {
217
+ item.source = yssUiManifest.source;
218
+ item.sourceType = yssUiManifest.source_type;
219
+ item.skillPath = `${yssUiManifest.source_root}/${yssUiSkill.upstream}/SKILL.md`;
220
+ item.sourceRevision = yssUiManifest.source_revision;
221
+ item.upstreamHash = yssUiSkill.upstream_hash;
222
+ if (item.effectiveHash !== item.upstreamHash) item.adaptationRef = yssUiManifest.adaptation_ref;
223
+ else delete item.adaptationRef;
224
+ }
225
+ item.targets = targets;
226
+ return [name, item];
156
227
  }));
157
228
  const platform = {};
158
229
  for (const root of PROJECTION_ROOTS) {