create-yss-spec 2.2.10 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1721) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/src/cli.js +0 -1
  4. package/template/.agents/skills/.strategic-design-skills-manifest.json +35 -0
  5. package/template/.agents/skills/.yss-skills-manifest.json +0 -2
  6. package/template/.agents/skills/ask-matt/SKILL.md +1 -1
  7. package/template/.agents/skills/code-review/SKILL.md +1 -1
  8. package/template/.agents/skills/code-review/references/yss-review-standards.md +1 -1
  9. package/template/.agents/skills/lombok/SKILL.md +1 -1
  10. package/template/.agents/skills/mapstruct/SKILL.md +1 -1
  11. package/template/.agents/skills/prototype-review/SKILL.md +7 -6
  12. package/template/.agents/skills/wayfinder/SKILL.md +2 -2
  13. package/template/.agents/skills/yss-antd-design/SKILL.md +8 -7
  14. package/template/.agents/skills/yss-antd-design/references/evidence.md +11 -6
  15. package/template/.agents/skills/yss-api-integration/SKILL.md +2 -2
  16. package/template/.agents/skills/yss-application/SKILL.md +2 -2
  17. package/template/.agents/skills/yss-audit-log/SKILL.md +2 -2
  18. package/template/.agents/skills/yss-audit-log/references/source-index.md +1 -1
  19. package/template/.agents/skills/yss-cache/SKILL.md +2 -2
  20. package/template/.agents/skills/yss-cache/references/source-index.md +1 -1
  21. package/template/.agents/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
  22. package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +18 -7
  23. package/template/.agents/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
  24. package/template/.agents/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +3 -3
  25. package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +14 -3
  26. package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -2
  27. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +48 -14
  28. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +164 -0
  29. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +24 -10
  30. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +172 -0
  31. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
  32. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +21 -8
  33. package/template/.agents/skills/yss-design-system/SKILL.md +6 -6
  34. package/template/.agents/skills/yss-distributed-id/SKILL.md +2 -2
  35. package/template/.agents/skills/yss-distributed-id/references/source-index.md +1 -1
  36. package/template/.agents/skills/yss-domain/SKILL.md +3 -2
  37. package/template/.agents/skills/yss-domain/agents/openai.yaml +2 -2
  38. package/template/.agents/skills/yss-domain/references/domain-layer-guide.md +2 -0
  39. package/template/.agents/skills/yss-dto/SKILL.md +8 -2
  40. package/template/.agents/skills/yss-dto/references/openapi-wire-profile.yaml +6 -0
  41. package/template/.agents/skills/yss-dto/references/source-index.md +1 -1
  42. package/template/.agents/skills/yss-excel-mvc/SKILL.md +2 -2
  43. package/template/.agents/skills/yss-excel-mvc/references/source-index.md +1 -1
  44. package/template/.agents/skills/yss-exception/SKILL.md +1 -1
  45. package/template/.agents/skills/yss-exception/references/source-index.md +1 -1
  46. package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
  47. package/template/.agents/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
  48. package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
  49. package/template/.agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
  50. package/template/.agents/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
  51. package/template/.agents/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
  52. package/template/.agents/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
  53. package/template/.agents/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
  54. package/template/.agents/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
  55. package/template/.agents/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
  56. package/template/.agents/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
  57. package/template/.agents/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
  58. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
  59. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
  60. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
  61. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
  62. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
  63. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
  64. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
  65. package/template/.agents/skills/yss-mybatis/SKILL.md +2 -2
  66. package/template/.agents/skills/yss-mybatis/references/source-index.md +1 -1
  67. package/template/.agents/skills/yss-page-module-development/SKILL.md +1 -1
  68. package/template/.agents/skills/yss-product-lifecycle/SKILL.md +7 -7
  69. package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -7
  70. package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +37 -27
  71. package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +7 -7
  72. package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +1 -1
  73. package/template/.agents/skills/yss-prototype-stage/SKILL.md +34 -24
  74. package/template/.agents/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
  75. package/template/.agents/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
  76. package/template/.agents/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
  77. package/template/.agents/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
  78. package/template/.agents/skills/yss-repository/SKILL.md +16 -14
  79. package/template/.agents/skills/yss-repository/agents/openai.yaml +2 -2
  80. package/template/.agents/skills/yss-repository/references/infrastructure-layer-guide.md +1 -1
  81. package/template/.agents/skills/yss-research/SKILL.md +73 -0
  82. package/template/.agents/skills/yss-research/agents/openai.yaml +3 -0
  83. package/template/.agents/skills/yss-research/assets/evidence-template.yaml +68 -0
  84. package/template/.agents/skills/yss-research/assets/research-brief-template.md +36 -0
  85. package/template/.agents/skills/yss-research/references/evidence-contract.md +42 -0
  86. package/template/.agents/skills/yss-research/scripts/validate-research-package.mjs +128 -0
  87. package/template/.agents/skills/yss-research/tests/run-scenarios.mjs +81 -0
  88. package/template/.agents/skills/yss-resilience4j/SKILL.md +1 -1
  89. package/template/.agents/skills/yss-resilience4j/references/source-index.md +1 -1
  90. package/template/.agents/skills/yss-security-algorithm/SKILL.md +1 -1
  91. package/template/.agents/skills/yss-security-algorithm/references/source-index.md +1 -1
  92. package/template/.agents/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
  93. package/template/.agents/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
  94. package/template/.agents/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
  95. package/template/.agents/skills/yss-stage-decision/SKILL.md +2 -1
  96. package/template/.agents/skills/yss-ui/SKILL.md +2 -1
  97. package/template/.agents/skills/yss-ui/assets/docs/guide/llms.md +0 -61
  98. package/template/.agents/skills/yss-up-springboot3/SKILL.md +1 -1
  99. package/template/.agents/skills/yss-userinfo/SKILL.md +1 -1
  100. package/template/.agents/skills/yss-userinfo/references/source-index.md +1 -1
  101. package/template/.agents/skills/yss-validation/SKILL.md +1 -1
  102. package/template/.agents/skills/yss-validation/references/source-index.md +1 -1
  103. package/template/.agents/skills/yss-web-controller/SKILL.md +17 -11
  104. package/template/.agents/skills/yss-web-controller/agents/openai.yaml +2 -2
  105. package/template/.agents/skills/yss-web-controller/assets/templates/Controller.java.template +11 -11
  106. package/template/.agents/skills/yss-web-controller/assets/templates/WebConvertor.java.template +4 -7
  107. package/template/.agents/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +2 -2
  108. package/template/.agents/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +4 -7
  109. package/template/.agents/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +2 -2
  110. package/template/.agents/skills/yss-web-controller/references/web-adapter-layer-guide.md +6 -4
  111. package/template/.agents/skills/yss-web-controller/references/web-generation-contract.schema.json +97 -0
  112. package/template/.agents/skills/yss-web-controller/scripts/generate_controller.mjs +141 -20
  113. package/template/.agents/skills/yss-web-controller/scripts/generate_controller.test.mjs +131 -35
  114. package/template/.claude/skills/ask-matt/SKILL.md +1 -1
  115. package/template/.claude/skills/code-review/SKILL.md +1 -1
  116. package/template/.claude/skills/code-review/references/yss-review-standards.md +1 -1
  117. package/template/.claude/skills/lombok/SKILL.md +1 -1
  118. package/template/.claude/skills/mapstruct/SKILL.md +1 -1
  119. package/template/.claude/skills/prototype-review/SKILL.md +7 -6
  120. package/template/.claude/skills/wayfinder/SKILL.md +2 -2
  121. package/template/.claude/skills/yss-antd-design/SKILL.md +8 -7
  122. package/template/.claude/skills/yss-antd-design/references/evidence.md +11 -6
  123. package/template/.claude/skills/yss-api-integration/SKILL.md +2 -2
  124. package/template/.claude/skills/yss-application/SKILL.md +2 -2
  125. package/template/.claude/skills/yss-audit-log/SKILL.md +2 -2
  126. package/template/.claude/skills/yss-audit-log/references/source-index.md +1 -1
  127. package/template/.claude/skills/yss-cache/SKILL.md +2 -2
  128. package/template/.claude/skills/yss-cache/references/source-index.md +1 -1
  129. package/template/.claude/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
  130. package/template/.claude/skills/yss-ddd-scaffold-generator/SKILL.md +18 -7
  131. package/template/.claude/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
  132. package/template/.claude/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +3 -3
  133. package/template/.claude/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +14 -3
  134. package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -2
  135. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +48 -14
  136. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +164 -0
  137. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +24 -10
  138. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +172 -0
  139. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
  140. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +21 -8
  141. package/template/.claude/skills/yss-design-system/SKILL.md +6 -6
  142. package/template/.claude/skills/yss-distributed-id/SKILL.md +2 -2
  143. package/template/.claude/skills/yss-distributed-id/references/source-index.md +1 -1
  144. package/template/.claude/skills/yss-domain/SKILL.md +3 -2
  145. package/template/.claude/skills/yss-domain/agents/openai.yaml +2 -2
  146. package/template/.claude/skills/yss-domain/references/domain-layer-guide.md +2 -0
  147. package/template/.claude/skills/yss-dto/SKILL.md +8 -2
  148. package/template/.claude/skills/yss-dto/references/openapi-wire-profile.yaml +6 -0
  149. package/template/.claude/skills/yss-dto/references/source-index.md +1 -1
  150. package/template/.claude/skills/yss-excel-mvc/SKILL.md +2 -2
  151. package/template/.claude/skills/yss-excel-mvc/references/source-index.md +1 -1
  152. package/template/.claude/skills/yss-exception/SKILL.md +1 -1
  153. package/template/.claude/skills/yss-exception/references/source-index.md +1 -1
  154. package/template/.claude/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
  155. package/template/.claude/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
  156. package/template/.claude/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
  157. package/template/.claude/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
  158. package/template/.claude/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
  159. package/template/.claude/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
  160. package/template/.claude/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
  161. package/template/.claude/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
  162. package/template/.claude/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
  163. package/template/.claude/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
  164. package/template/.claude/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
  165. package/template/.claude/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
  166. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
  167. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
  168. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
  169. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
  170. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
  171. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
  172. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
  173. package/template/.claude/skills/yss-mybatis/SKILL.md +2 -2
  174. package/template/.claude/skills/yss-mybatis/references/source-index.md +1 -1
  175. package/template/.claude/skills/yss-page-module-development/SKILL.md +1 -1
  176. package/template/.claude/skills/yss-product-lifecycle/SKILL.md +7 -7
  177. package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -7
  178. package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +37 -27
  179. package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +7 -7
  180. package/template/.claude/skills/yss-product-lifecycle/references/state-model.md +1 -1
  181. package/template/.claude/skills/yss-prototype-stage/SKILL.md +34 -24
  182. package/template/.claude/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
  183. package/template/.claude/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
  184. package/template/.claude/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
  185. package/template/.claude/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
  186. package/template/.claude/skills/yss-repository/SKILL.md +16 -14
  187. package/template/.claude/skills/yss-repository/agents/openai.yaml +2 -2
  188. package/template/.claude/skills/yss-repository/references/infrastructure-layer-guide.md +1 -1
  189. package/template/.claude/skills/yss-research/SKILL.md +73 -0
  190. package/template/.claude/skills/yss-research/agents/openai.yaml +3 -0
  191. package/template/.claude/skills/yss-research/assets/evidence-template.yaml +68 -0
  192. package/template/.claude/skills/yss-research/assets/research-brief-template.md +36 -0
  193. package/template/.claude/skills/yss-research/references/evidence-contract.md +42 -0
  194. package/template/.claude/skills/yss-research/scripts/validate-research-package.mjs +128 -0
  195. package/template/.claude/skills/yss-research/tests/run-scenarios.mjs +81 -0
  196. package/template/.claude/skills/yss-resilience4j/SKILL.md +1 -1
  197. package/template/.claude/skills/yss-resilience4j/references/source-index.md +1 -1
  198. package/template/.claude/skills/yss-security-algorithm/SKILL.md +1 -1
  199. package/template/.claude/skills/yss-security-algorithm/references/source-index.md +1 -1
  200. package/template/.claude/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
  201. package/template/.claude/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
  202. package/template/.claude/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
  203. package/template/.claude/skills/yss-stage-decision/SKILL.md +2 -1
  204. package/template/.claude/skills/yss-ui/SKILL.md +2 -1
  205. package/template/.claude/skills/yss-ui/assets/docs/guide/llms.md +0 -61
  206. package/template/.claude/skills/yss-up-springboot3/SKILL.md +1 -1
  207. package/template/.claude/skills/yss-userinfo/SKILL.md +1 -1
  208. package/template/.claude/skills/yss-userinfo/references/source-index.md +1 -1
  209. package/template/.claude/skills/yss-validation/SKILL.md +1 -1
  210. package/template/.claude/skills/yss-validation/references/source-index.md +1 -1
  211. package/template/.claude/skills/yss-web-controller/SKILL.md +17 -11
  212. package/template/.claude/skills/yss-web-controller/agents/openai.yaml +2 -2
  213. package/template/.claude/skills/yss-web-controller/assets/templates/Controller.java.template +11 -11
  214. package/template/.claude/skills/yss-web-controller/assets/templates/WebConvertor.java.template +4 -7
  215. package/template/.claude/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +2 -2
  216. package/template/.claude/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +4 -7
  217. package/template/.claude/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +2 -2
  218. package/template/.claude/skills/yss-web-controller/references/web-adapter-layer-guide.md +6 -4
  219. package/template/.claude/skills/yss-web-controller/references/web-generation-contract.schema.json +97 -0
  220. package/template/.claude/skills/yss-web-controller/scripts/generate_controller.mjs +141 -20
  221. package/template/.claude/skills/yss-web-controller/scripts/generate_controller.test.mjs +131 -35
  222. package/template/.codex/skills/ask-matt/SKILL.md +1 -1
  223. package/template/.codex/skills/code-review/SKILL.md +1 -1
  224. package/template/.codex/skills/code-review/references/yss-review-standards.md +1 -1
  225. package/template/.codex/skills/lombok/SKILL.md +1 -1
  226. package/template/.codex/skills/mapstruct/SKILL.md +1 -1
  227. package/template/.codex/skills/product-design/package.json +4 -2
  228. package/template/.codex/skills/product-design/skills/research/SKILL.md +22 -0
  229. package/template/.codex/skills/product-design/skills/research/assets/evidence-template.yaml +65 -0
  230. package/template/.codex/skills/product-design/skills/research/assets/research-brief-template.md +33 -0
  231. package/template/.codex/skills/product-design/skills/research/references/evidence-audited.md +80 -0
  232. package/template/.codex/skills/product-design/skills/research/scripts/validate-research-package.mjs +149 -0
  233. package/template/.codex/skills/product-design/skills/research/tests/run-scenarios.mjs +72 -0
  234. package/template/.codex/skills/prototype-review/SKILL.md +7 -6
  235. package/template/.codex/skills/wayfinder/SKILL.md +2 -2
  236. package/template/.codex/skills/yss-antd-design/SKILL.md +8 -7
  237. package/template/.codex/skills/yss-antd-design/references/evidence.md +11 -6
  238. package/template/.codex/skills/yss-api-integration/SKILL.md +2 -2
  239. package/template/.codex/skills/yss-application/SKILL.md +2 -2
  240. package/template/.codex/skills/yss-audit-log/SKILL.md +2 -2
  241. package/template/.codex/skills/yss-audit-log/references/source-index.md +1 -1
  242. package/template/.codex/skills/yss-cache/SKILL.md +2 -2
  243. package/template/.codex/skills/yss-cache/references/source-index.md +1 -1
  244. package/template/.codex/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
  245. package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +18 -7
  246. package/template/.codex/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
  247. package/template/.codex/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +3 -3
  248. package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +14 -3
  249. package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -2
  250. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +48 -14
  251. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +164 -0
  252. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +24 -10
  253. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +172 -0
  254. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
  255. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +21 -8
  256. package/template/.codex/skills/yss-design-system/SKILL.md +6 -6
  257. package/template/.codex/skills/yss-distributed-id/SKILL.md +2 -2
  258. package/template/.codex/skills/yss-distributed-id/references/source-index.md +1 -1
  259. package/template/.codex/skills/yss-domain/SKILL.md +3 -2
  260. package/template/.codex/skills/yss-domain/agents/openai.yaml +2 -2
  261. package/template/.codex/skills/yss-domain/references/domain-layer-guide.md +2 -0
  262. package/template/.codex/skills/yss-dto/SKILL.md +8 -2
  263. package/template/.codex/skills/yss-dto/references/openapi-wire-profile.yaml +6 -0
  264. package/template/.codex/skills/yss-dto/references/source-index.md +1 -1
  265. package/template/.codex/skills/yss-excel-mvc/SKILL.md +2 -2
  266. package/template/.codex/skills/yss-excel-mvc/references/source-index.md +1 -1
  267. package/template/.codex/skills/yss-exception/SKILL.md +1 -1
  268. package/template/.codex/skills/yss-exception/references/source-index.md +1 -1
  269. package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
  270. package/template/.codex/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
  271. package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
  272. package/template/.codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
  273. package/template/.codex/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
  274. package/template/.codex/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
  275. package/template/.codex/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
  276. package/template/.codex/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
  277. package/template/.codex/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
  278. package/template/.codex/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
  279. package/template/.codex/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
  280. package/template/.codex/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
  281. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
  282. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
  283. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
  284. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
  285. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
  286. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
  287. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
  288. package/template/.codex/skills/yss-mybatis/SKILL.md +2 -2
  289. package/template/.codex/skills/yss-mybatis/references/source-index.md +1 -1
  290. package/template/.codex/skills/yss-page-module-development/SKILL.md +1 -1
  291. package/template/.codex/skills/yss-product-lifecycle/SKILL.md +7 -7
  292. package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -7
  293. package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +37 -27
  294. package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +7 -7
  295. package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +1 -1
  296. package/template/.codex/skills/yss-prototype-stage/SKILL.md +34 -24
  297. package/template/.codex/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
  298. package/template/.codex/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
  299. package/template/.codex/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
  300. package/template/.codex/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
  301. package/template/.codex/skills/yss-repository/SKILL.md +16 -14
  302. package/template/.codex/skills/yss-repository/agents/openai.yaml +2 -2
  303. package/template/.codex/skills/yss-repository/references/infrastructure-layer-guide.md +1 -1
  304. package/template/.codex/skills/yss-research/SKILL.md +73 -0
  305. package/template/.codex/skills/yss-research/agents/openai.yaml +3 -0
  306. package/template/.codex/skills/yss-research/assets/evidence-template.yaml +68 -0
  307. package/template/.codex/skills/yss-research/assets/research-brief-template.md +36 -0
  308. package/template/.codex/skills/yss-research/references/evidence-contract.md +42 -0
  309. package/template/.codex/skills/yss-research/scripts/validate-research-package.mjs +128 -0
  310. package/template/.codex/skills/yss-research/tests/run-scenarios.mjs +81 -0
  311. package/template/.codex/skills/yss-resilience4j/SKILL.md +1 -1
  312. package/template/.codex/skills/yss-resilience4j/references/source-index.md +1 -1
  313. package/template/.codex/skills/yss-security-algorithm/SKILL.md +1 -1
  314. package/template/.codex/skills/yss-security-algorithm/references/source-index.md +1 -1
  315. package/template/.codex/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
  316. package/template/.codex/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
  317. package/template/.codex/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
  318. package/template/.codex/skills/yss-stage-decision/SKILL.md +2 -1
  319. package/template/.codex/skills/yss-ui/SKILL.md +2 -1
  320. package/template/.codex/skills/yss-ui/assets/docs/guide/llms.md +0 -61
  321. package/template/.codex/skills/yss-up-springboot3/SKILL.md +1 -1
  322. package/template/.codex/skills/yss-userinfo/SKILL.md +1 -1
  323. package/template/.codex/skills/yss-userinfo/references/source-index.md +1 -1
  324. package/template/.codex/skills/yss-validation/SKILL.md +1 -1
  325. package/template/.codex/skills/yss-validation/references/source-index.md +1 -1
  326. package/template/.codex/skills/yss-web-controller/SKILL.md +17 -11
  327. package/template/.codex/skills/yss-web-controller/agents/openai.yaml +2 -2
  328. package/template/.codex/skills/yss-web-controller/assets/templates/Controller.java.template +11 -11
  329. package/template/.codex/skills/yss-web-controller/assets/templates/WebConvertor.java.template +4 -7
  330. package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +2 -2
  331. package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +4 -7
  332. package/template/.codex/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +2 -2
  333. package/template/.codex/skills/yss-web-controller/references/web-adapter-layer-guide.md +6 -4
  334. package/template/.codex/skills/yss-web-controller/references/web-generation-contract.schema.json +97 -0
  335. package/template/.codex/skills/yss-web-controller/scripts/generate_controller.mjs +141 -20
  336. package/template/.codex/skills/yss-web-controller/scripts/generate_controller.test.mjs +131 -35
  337. package/template/.cursor/skills/ask-matt/SKILL.md +1 -1
  338. package/template/.cursor/skills/code-review/SKILL.md +1 -1
  339. package/template/.cursor/skills/code-review/references/yss-review-standards.md +1 -1
  340. package/template/.cursor/skills/lombok/SKILL.md +1 -1
  341. package/template/.cursor/skills/mapstruct/SKILL.md +1 -1
  342. package/template/.cursor/skills/prototype-review/SKILL.md +7 -6
  343. package/template/.cursor/skills/wayfinder/SKILL.md +2 -2
  344. package/template/.cursor/skills/yss-antd-design/SKILL.md +8 -7
  345. package/template/.cursor/skills/yss-antd-design/references/evidence.md +11 -6
  346. package/template/.cursor/skills/yss-api-integration/SKILL.md +2 -2
  347. package/template/.cursor/skills/yss-application/SKILL.md +2 -2
  348. package/template/.cursor/skills/yss-audit-log/SKILL.md +2 -2
  349. package/template/.cursor/skills/yss-audit-log/references/source-index.md +1 -1
  350. package/template/.cursor/skills/yss-cache/SKILL.md +2 -2
  351. package/template/.cursor/skills/yss-cache/references/source-index.md +1 -1
  352. package/template/.cursor/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
  353. package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +18 -7
  354. package/template/.cursor/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
  355. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +3 -3
  356. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +14 -3
  357. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -2
  358. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +48 -14
  359. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +164 -0
  360. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +24 -10
  361. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +172 -0
  362. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
  363. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +21 -8
  364. package/template/.cursor/skills/yss-design-system/SKILL.md +6 -6
  365. package/template/.cursor/skills/yss-distributed-id/SKILL.md +2 -2
  366. package/template/.cursor/skills/yss-distributed-id/references/source-index.md +1 -1
  367. package/template/.cursor/skills/yss-domain/SKILL.md +3 -2
  368. package/template/.cursor/skills/yss-domain/agents/openai.yaml +2 -2
  369. package/template/.cursor/skills/yss-domain/references/domain-layer-guide.md +2 -0
  370. package/template/.cursor/skills/yss-dto/SKILL.md +8 -2
  371. package/template/.cursor/skills/yss-dto/references/openapi-wire-profile.yaml +6 -0
  372. package/template/.cursor/skills/yss-dto/references/source-index.md +1 -1
  373. package/template/.cursor/skills/yss-excel-mvc/SKILL.md +2 -2
  374. package/template/.cursor/skills/yss-excel-mvc/references/source-index.md +1 -1
  375. package/template/.cursor/skills/yss-exception/SKILL.md +1 -1
  376. package/template/.cursor/skills/yss-exception/references/source-index.md +1 -1
  377. package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
  378. package/template/.cursor/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
  379. package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
  380. package/template/.cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
  381. package/template/.cursor/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
  382. package/template/.cursor/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
  383. package/template/.cursor/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
  384. package/template/.cursor/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
  385. package/template/.cursor/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
  386. package/template/.cursor/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
  387. package/template/.cursor/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
  388. package/template/.cursor/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
  389. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
  390. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
  391. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
  392. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
  393. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
  394. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
  395. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
  396. package/template/.cursor/skills/yss-mybatis/SKILL.md +2 -2
  397. package/template/.cursor/skills/yss-mybatis/references/source-index.md +1 -1
  398. package/template/.cursor/skills/yss-page-module-development/SKILL.md +1 -1
  399. package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +7 -7
  400. package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -7
  401. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +37 -27
  402. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +7 -7
  403. package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +1 -1
  404. package/template/.cursor/skills/yss-prototype-stage/SKILL.md +34 -24
  405. package/template/.cursor/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
  406. package/template/.cursor/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
  407. package/template/.cursor/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
  408. package/template/.cursor/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
  409. package/template/.cursor/skills/yss-repository/SKILL.md +16 -14
  410. package/template/.cursor/skills/yss-repository/agents/openai.yaml +2 -2
  411. package/template/.cursor/skills/yss-repository/references/infrastructure-layer-guide.md +1 -1
  412. package/template/.cursor/skills/yss-research/SKILL.md +73 -0
  413. package/template/.cursor/skills/yss-research/agents/openai.yaml +3 -0
  414. package/template/.cursor/skills/yss-research/assets/evidence-template.yaml +68 -0
  415. package/template/.cursor/skills/yss-research/assets/research-brief-template.md +36 -0
  416. package/template/.cursor/skills/yss-research/references/evidence-contract.md +42 -0
  417. package/template/.cursor/skills/yss-research/scripts/validate-research-package.mjs +128 -0
  418. package/template/.cursor/skills/yss-research/tests/run-scenarios.mjs +81 -0
  419. package/template/.cursor/skills/yss-resilience4j/SKILL.md +1 -1
  420. package/template/.cursor/skills/yss-resilience4j/references/source-index.md +1 -1
  421. package/template/.cursor/skills/yss-security-algorithm/SKILL.md +1 -1
  422. package/template/.cursor/skills/yss-security-algorithm/references/source-index.md +1 -1
  423. package/template/.cursor/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
  424. package/template/.cursor/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
  425. package/template/.cursor/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
  426. package/template/.cursor/skills/yss-stage-decision/SKILL.md +2 -1
  427. package/template/.cursor/skills/yss-ui/SKILL.md +2 -1
  428. package/template/.cursor/skills/yss-ui/assets/docs/guide/llms.md +0 -61
  429. package/template/.cursor/skills/yss-up-springboot3/SKILL.md +1 -1
  430. package/template/.cursor/skills/yss-userinfo/SKILL.md +1 -1
  431. package/template/.cursor/skills/yss-userinfo/references/source-index.md +1 -1
  432. package/template/.cursor/skills/yss-validation/SKILL.md +1 -1
  433. package/template/.cursor/skills/yss-validation/references/source-index.md +1 -1
  434. package/template/.cursor/skills/yss-web-controller/SKILL.md +17 -11
  435. package/template/.cursor/skills/yss-web-controller/agents/openai.yaml +2 -2
  436. package/template/.cursor/skills/yss-web-controller/assets/templates/Controller.java.template +11 -11
  437. package/template/.cursor/skills/yss-web-controller/assets/templates/WebConvertor.java.template +4 -7
  438. package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +2 -2
  439. package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +4 -7
  440. package/template/.cursor/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +2 -2
  441. package/template/.cursor/skills/yss-web-controller/references/web-adapter-layer-guide.md +6 -4
  442. package/template/.cursor/skills/yss-web-controller/references/web-generation-contract.schema.json +97 -0
  443. package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +141 -20
  444. package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +131 -35
  445. package/template/.pi/skills/ask-matt/SKILL.md +1 -1
  446. package/template/.pi/skills/code-review/SKILL.md +1 -1
  447. package/template/.pi/skills/code-review/references/yss-review-standards.md +1 -1
  448. package/template/.pi/skills/lombok/SKILL.md +1 -1
  449. package/template/.pi/skills/mapstruct/SKILL.md +1 -1
  450. package/template/.pi/skills/prototype-review/SKILL.md +7 -6
  451. package/template/.pi/skills/wayfinder/SKILL.md +2 -2
  452. package/template/.pi/skills/yss-antd-design/SKILL.md +8 -7
  453. package/template/.pi/skills/yss-antd-design/references/evidence.md +11 -6
  454. package/template/.pi/skills/yss-api-integration/SKILL.md +2 -2
  455. package/template/.pi/skills/yss-application/SKILL.md +2 -2
  456. package/template/.pi/skills/yss-audit-log/SKILL.md +2 -2
  457. package/template/.pi/skills/yss-audit-log/references/source-index.md +1 -1
  458. package/template/.pi/skills/yss-cache/SKILL.md +2 -2
  459. package/template/.pi/skills/yss-cache/references/source-index.md +1 -1
  460. package/template/.pi/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
  461. package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +18 -7
  462. package/template/.pi/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
  463. package/template/.pi/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +3 -3
  464. package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +14 -3
  465. package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -2
  466. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +48 -14
  467. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +164 -0
  468. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +24 -10
  469. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +172 -0
  470. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
  471. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +21 -8
  472. package/template/.pi/skills/yss-design-system/SKILL.md +6 -6
  473. package/template/.pi/skills/yss-distributed-id/SKILL.md +2 -2
  474. package/template/.pi/skills/yss-distributed-id/references/source-index.md +1 -1
  475. package/template/.pi/skills/yss-domain/SKILL.md +3 -2
  476. package/template/.pi/skills/yss-domain/agents/openai.yaml +2 -2
  477. package/template/.pi/skills/yss-domain/references/domain-layer-guide.md +2 -0
  478. package/template/.pi/skills/yss-dto/SKILL.md +8 -2
  479. package/template/.pi/skills/yss-dto/references/openapi-wire-profile.yaml +6 -0
  480. package/template/.pi/skills/yss-dto/references/source-index.md +1 -1
  481. package/template/.pi/skills/yss-excel-mvc/SKILL.md +2 -2
  482. package/template/.pi/skills/yss-excel-mvc/references/source-index.md +1 -1
  483. package/template/.pi/skills/yss-exception/SKILL.md +1 -1
  484. package/template/.pi/skills/yss-exception/references/source-index.md +1 -1
  485. package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
  486. package/template/.pi/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
  487. package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
  488. package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
  489. package/template/.pi/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
  490. package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
  491. package/template/.pi/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
  492. package/template/.pi/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
  493. package/template/.pi/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
  494. package/template/.pi/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
  495. package/template/.pi/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
  496. package/template/.pi/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
  497. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
  498. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
  499. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
  500. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
  501. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
  502. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
  503. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
  504. package/template/.pi/skills/yss-mybatis/SKILL.md +2 -2
  505. package/template/.pi/skills/yss-mybatis/references/source-index.md +1 -1
  506. package/template/.pi/skills/yss-page-module-development/SKILL.md +1 -1
  507. package/template/.pi/skills/yss-product-lifecycle/SKILL.md +7 -7
  508. package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -7
  509. package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +37 -27
  510. package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +7 -7
  511. package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +1 -1
  512. package/template/.pi/skills/yss-prototype-stage/SKILL.md +34 -24
  513. package/template/.pi/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
  514. package/template/.pi/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
  515. package/template/.pi/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
  516. package/template/.pi/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
  517. package/template/.pi/skills/yss-repository/SKILL.md +16 -14
  518. package/template/.pi/skills/yss-repository/agents/openai.yaml +2 -2
  519. package/template/.pi/skills/yss-repository/references/infrastructure-layer-guide.md +1 -1
  520. package/template/.pi/skills/yss-research/SKILL.md +73 -0
  521. package/template/.pi/skills/yss-research/agents/openai.yaml +3 -0
  522. package/template/.pi/skills/yss-research/assets/evidence-template.yaml +68 -0
  523. package/template/.pi/skills/yss-research/assets/research-brief-template.md +36 -0
  524. package/template/.pi/skills/yss-research/references/evidence-contract.md +42 -0
  525. package/template/.pi/skills/yss-research/scripts/validate-research-package.mjs +128 -0
  526. package/template/.pi/skills/yss-research/tests/run-scenarios.mjs +81 -0
  527. package/template/.pi/skills/yss-resilience4j/SKILL.md +1 -1
  528. package/template/.pi/skills/yss-resilience4j/references/source-index.md +1 -1
  529. package/template/.pi/skills/yss-security-algorithm/SKILL.md +1 -1
  530. package/template/.pi/skills/yss-security-algorithm/references/source-index.md +1 -1
  531. package/template/.pi/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
  532. package/template/.pi/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
  533. package/template/.pi/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
  534. package/template/.pi/skills/yss-stage-decision/SKILL.md +2 -1
  535. package/template/.pi/skills/yss-ui/SKILL.md +2 -1
  536. package/template/.pi/skills/yss-ui/assets/docs/guide/llms.md +0 -61
  537. package/template/.pi/skills/yss-up-springboot3/SKILL.md +1 -1
  538. package/template/.pi/skills/yss-userinfo/SKILL.md +1 -1
  539. package/template/.pi/skills/yss-userinfo/references/source-index.md +1 -1
  540. package/template/.pi/skills/yss-validation/SKILL.md +1 -1
  541. package/template/.pi/skills/yss-validation/references/source-index.md +1 -1
  542. package/template/.pi/skills/yss-web-controller/SKILL.md +17 -11
  543. package/template/.pi/skills/yss-web-controller/agents/openai.yaml +2 -2
  544. package/template/.pi/skills/yss-web-controller/assets/templates/Controller.java.template +11 -11
  545. package/template/.pi/skills/yss-web-controller/assets/templates/WebConvertor.java.template +4 -7
  546. package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +2 -2
  547. package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +4 -7
  548. package/template/.pi/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +2 -2
  549. package/template/.pi/skills/yss-web-controller/references/web-adapter-layer-guide.md +6 -4
  550. package/template/.pi/skills/yss-web-controller/references/web-generation-contract.schema.json +97 -0
  551. package/template/.pi/skills/yss-web-controller/scripts/generate_controller.mjs +141 -20
  552. package/template/.pi/skills/yss-web-controller/scripts/generate_controller.test.mjs +131 -35
  553. package/template/.qoder/skills/ask-matt/SKILL.md +1 -1
  554. package/template/.qoder/skills/code-review/SKILL.md +1 -1
  555. package/template/.qoder/skills/code-review/references/yss-review-standards.md +1 -1
  556. package/template/.qoder/skills/lombok/SKILL.md +1 -1
  557. package/template/.qoder/skills/mapstruct/SKILL.md +1 -1
  558. package/template/.qoder/skills/prototype-review/SKILL.md +7 -6
  559. package/template/.qoder/skills/wayfinder/SKILL.md +2 -2
  560. package/template/.qoder/skills/yss-antd-design/SKILL.md +8 -7
  561. package/template/.qoder/skills/yss-antd-design/references/evidence.md +11 -6
  562. package/template/.qoder/skills/yss-api-integration/SKILL.md +2 -2
  563. package/template/.qoder/skills/yss-application/SKILL.md +2 -2
  564. package/template/.qoder/skills/yss-audit-log/SKILL.md +2 -2
  565. package/template/.qoder/skills/yss-audit-log/references/source-index.md +1 -1
  566. package/template/.qoder/skills/yss-cache/SKILL.md +2 -2
  567. package/template/.qoder/skills/yss-cache/references/source-index.md +1 -1
  568. package/template/.qoder/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
  569. package/template/.qoder/skills/yss-ddd-scaffold-generator/SKILL.md +18 -7
  570. package/template/.qoder/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
  571. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +3 -3
  572. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +14 -3
  573. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -2
  574. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +48 -14
  575. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +164 -0
  576. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +24 -10
  577. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +172 -0
  578. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
  579. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +21 -8
  580. package/template/.qoder/skills/yss-design-system/SKILL.md +6 -6
  581. package/template/.qoder/skills/yss-distributed-id/SKILL.md +2 -2
  582. package/template/.qoder/skills/yss-distributed-id/references/source-index.md +1 -1
  583. package/template/.qoder/skills/yss-domain/SKILL.md +3 -2
  584. package/template/.qoder/skills/yss-domain/agents/openai.yaml +2 -2
  585. package/template/.qoder/skills/yss-domain/references/domain-layer-guide.md +2 -0
  586. package/template/.qoder/skills/yss-dto/SKILL.md +8 -2
  587. package/template/.qoder/skills/yss-dto/references/openapi-wire-profile.yaml +6 -0
  588. package/template/.qoder/skills/yss-dto/references/source-index.md +1 -1
  589. package/template/.qoder/skills/yss-excel-mvc/SKILL.md +2 -2
  590. package/template/.qoder/skills/yss-excel-mvc/references/source-index.md +1 -1
  591. package/template/.qoder/skills/yss-exception/SKILL.md +1 -1
  592. package/template/.qoder/skills/yss-exception/references/source-index.md +1 -1
  593. package/template/.qoder/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
  594. package/template/.qoder/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
  595. package/template/.qoder/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
  596. package/template/.qoder/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
  597. package/template/.qoder/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
  598. package/template/.qoder/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
  599. package/template/.qoder/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
  600. package/template/.qoder/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
  601. package/template/.qoder/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
  602. package/template/.qoder/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
  603. package/template/.qoder/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
  604. package/template/.qoder/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
  605. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
  606. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
  607. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
  608. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
  609. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
  610. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
  611. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
  612. package/template/.qoder/skills/yss-mybatis/SKILL.md +2 -2
  613. package/template/.qoder/skills/yss-mybatis/references/source-index.md +1 -1
  614. package/template/.qoder/skills/yss-page-module-development/SKILL.md +1 -1
  615. package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +7 -7
  616. package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -7
  617. package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +37 -27
  618. package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +7 -7
  619. package/template/.qoder/skills/yss-product-lifecycle/references/state-model.md +1 -1
  620. package/template/.qoder/skills/yss-prototype-stage/SKILL.md +34 -24
  621. package/template/.qoder/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
  622. package/template/.qoder/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
  623. package/template/.qoder/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
  624. package/template/.qoder/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
  625. package/template/.qoder/skills/yss-repository/SKILL.md +16 -14
  626. package/template/.qoder/skills/yss-repository/agents/openai.yaml +2 -2
  627. package/template/.qoder/skills/yss-repository/references/infrastructure-layer-guide.md +1 -1
  628. package/template/.qoder/skills/yss-research/SKILL.md +73 -0
  629. package/template/.qoder/skills/yss-research/agents/openai.yaml +3 -0
  630. package/template/.qoder/skills/yss-research/assets/evidence-template.yaml +68 -0
  631. package/template/.qoder/skills/yss-research/assets/research-brief-template.md +36 -0
  632. package/template/.qoder/skills/yss-research/references/evidence-contract.md +42 -0
  633. package/template/.qoder/skills/yss-research/scripts/validate-research-package.mjs +128 -0
  634. package/template/.qoder/skills/yss-research/tests/run-scenarios.mjs +81 -0
  635. package/template/.qoder/skills/yss-resilience4j/SKILL.md +1 -1
  636. package/template/.qoder/skills/yss-resilience4j/references/source-index.md +1 -1
  637. package/template/.qoder/skills/yss-security-algorithm/SKILL.md +1 -1
  638. package/template/.qoder/skills/yss-security-algorithm/references/source-index.md +1 -1
  639. package/template/.qoder/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
  640. package/template/.qoder/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
  641. package/template/.qoder/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
  642. package/template/.qoder/skills/yss-stage-decision/SKILL.md +2 -1
  643. package/template/.qoder/skills/yss-ui/SKILL.md +2 -1
  644. package/template/.qoder/skills/yss-ui/assets/docs/guide/llms.md +0 -61
  645. package/template/.qoder/skills/yss-up-springboot3/SKILL.md +1 -1
  646. package/template/.qoder/skills/yss-userinfo/SKILL.md +1 -1
  647. package/template/.qoder/skills/yss-userinfo/references/source-index.md +1 -1
  648. package/template/.qoder/skills/yss-validation/SKILL.md +1 -1
  649. package/template/.qoder/skills/yss-validation/references/source-index.md +1 -1
  650. package/template/.qoder/skills/yss-web-controller/SKILL.md +17 -11
  651. package/template/.qoder/skills/yss-web-controller/agents/openai.yaml +2 -2
  652. package/template/.qoder/skills/yss-web-controller/assets/templates/Controller.java.template +11 -11
  653. package/template/.qoder/skills/yss-web-controller/assets/templates/WebConvertor.java.template +4 -7
  654. package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +2 -2
  655. package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +4 -7
  656. package/template/.qoder/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +2 -2
  657. package/template/.qoder/skills/yss-web-controller/references/web-adapter-layer-guide.md +6 -4
  658. package/template/.qoder/skills/yss-web-controller/references/web-generation-contract.schema.json +97 -0
  659. package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.mjs +141 -20
  660. package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.test.mjs +131 -35
  661. package/template/.trae/skills/ask-matt/SKILL.md +1 -1
  662. package/template/.trae/skills/code-review/SKILL.md +1 -1
  663. package/template/.trae/skills/code-review/references/yss-review-standards.md +1 -1
  664. package/template/.trae/skills/lombok/SKILL.md +1 -1
  665. package/template/.trae/skills/mapstruct/SKILL.md +1 -1
  666. package/template/.trae/skills/prototype-review/SKILL.md +7 -6
  667. package/template/.trae/skills/wayfinder/SKILL.md +2 -2
  668. package/template/.trae/skills/yss-antd-design/SKILL.md +8 -7
  669. package/template/.trae/skills/yss-antd-design/references/evidence.md +11 -6
  670. package/template/.trae/skills/yss-api-integration/SKILL.md +2 -2
  671. package/template/.trae/skills/yss-application/SKILL.md +2 -2
  672. package/template/.trae/skills/yss-audit-log/SKILL.md +2 -2
  673. package/template/.trae/skills/yss-audit-log/references/source-index.md +1 -1
  674. package/template/.trae/skills/yss-cache/SKILL.md +2 -2
  675. package/template/.trae/skills/yss-cache/references/source-index.md +1 -1
  676. package/template/.trae/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
  677. package/template/.trae/skills/yss-ddd-scaffold-generator/SKILL.md +18 -7
  678. package/template/.trae/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
  679. package/template/.trae/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +3 -3
  680. package/template/.trae/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +14 -3
  681. package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -2
  682. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +48 -14
  683. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +164 -0
  684. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +24 -10
  685. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +172 -0
  686. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
  687. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +21 -8
  688. package/template/.trae/skills/yss-design-system/SKILL.md +6 -6
  689. package/template/.trae/skills/yss-distributed-id/SKILL.md +2 -2
  690. package/template/.trae/skills/yss-distributed-id/references/source-index.md +1 -1
  691. package/template/.trae/skills/yss-domain/SKILL.md +3 -2
  692. package/template/.trae/skills/yss-domain/agents/openai.yaml +2 -2
  693. package/template/.trae/skills/yss-domain/references/domain-layer-guide.md +2 -0
  694. package/template/.trae/skills/yss-dto/SKILL.md +8 -2
  695. package/template/.trae/skills/yss-dto/references/openapi-wire-profile.yaml +6 -0
  696. package/template/.trae/skills/yss-dto/references/source-index.md +1 -1
  697. package/template/.trae/skills/yss-excel-mvc/SKILL.md +2 -2
  698. package/template/.trae/skills/yss-excel-mvc/references/source-index.md +1 -1
  699. package/template/.trae/skills/yss-exception/SKILL.md +1 -1
  700. package/template/.trae/skills/yss-exception/references/source-index.md +1 -1
  701. package/template/.trae/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
  702. package/template/.trae/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
  703. package/template/.trae/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
  704. package/template/.trae/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
  705. package/template/.trae/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
  706. package/template/.trae/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
  707. package/template/.trae/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
  708. package/template/.trae/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
  709. package/template/.trae/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
  710. package/template/.trae/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
  711. package/template/.trae/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
  712. package/template/.trae/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
  713. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
  714. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
  715. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
  716. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
  717. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
  718. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
  719. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
  720. package/template/.trae/skills/yss-mybatis/SKILL.md +2 -2
  721. package/template/.trae/skills/yss-mybatis/references/source-index.md +1 -1
  722. package/template/.trae/skills/yss-page-module-development/SKILL.md +1 -1
  723. package/template/.trae/skills/yss-product-lifecycle/SKILL.md +7 -7
  724. package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -7
  725. package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +37 -27
  726. package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +7 -7
  727. package/template/.trae/skills/yss-product-lifecycle/references/state-model.md +1 -1
  728. package/template/.trae/skills/yss-prototype-stage/SKILL.md +34 -24
  729. package/template/.trae/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
  730. package/template/.trae/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
  731. package/template/.trae/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
  732. package/template/.trae/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
  733. package/template/.trae/skills/yss-repository/SKILL.md +16 -14
  734. package/template/.trae/skills/yss-repository/agents/openai.yaml +2 -2
  735. package/template/.trae/skills/yss-repository/references/infrastructure-layer-guide.md +1 -1
  736. package/template/.trae/skills/yss-research/SKILL.md +73 -0
  737. package/template/.trae/skills/yss-research/agents/openai.yaml +3 -0
  738. package/template/.trae/skills/yss-research/assets/evidence-template.yaml +68 -0
  739. package/template/.trae/skills/yss-research/assets/research-brief-template.md +36 -0
  740. package/template/.trae/skills/yss-research/references/evidence-contract.md +42 -0
  741. package/template/.trae/skills/yss-research/scripts/validate-research-package.mjs +128 -0
  742. package/template/.trae/skills/yss-research/tests/run-scenarios.mjs +81 -0
  743. package/template/.trae/skills/yss-resilience4j/SKILL.md +1 -1
  744. package/template/.trae/skills/yss-resilience4j/references/source-index.md +1 -1
  745. package/template/.trae/skills/yss-security-algorithm/SKILL.md +1 -1
  746. package/template/.trae/skills/yss-security-algorithm/references/source-index.md +1 -1
  747. package/template/.trae/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
  748. package/template/.trae/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
  749. package/template/.trae/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
  750. package/template/.trae/skills/yss-stage-decision/SKILL.md +2 -1
  751. package/template/.trae/skills/yss-ui/SKILL.md +2 -1
  752. package/template/.trae/skills/yss-ui/assets/docs/guide/llms.md +0 -61
  753. package/template/.trae/skills/yss-up-springboot3/SKILL.md +1 -1
  754. package/template/.trae/skills/yss-userinfo/SKILL.md +1 -1
  755. package/template/.trae/skills/yss-userinfo/references/source-index.md +1 -1
  756. package/template/.trae/skills/yss-validation/SKILL.md +1 -1
  757. package/template/.trae/skills/yss-validation/references/source-index.md +1 -1
  758. package/template/.trae/skills/yss-web-controller/SKILL.md +17 -11
  759. package/template/.trae/skills/yss-web-controller/agents/openai.yaml +2 -2
  760. package/template/.trae/skills/yss-web-controller/assets/templates/Controller.java.template +11 -11
  761. package/template/.trae/skills/yss-web-controller/assets/templates/WebConvertor.java.template +4 -7
  762. package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +2 -2
  763. package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +4 -7
  764. package/template/.trae/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +2 -2
  765. package/template/.trae/skills/yss-web-controller/references/web-adapter-layer-guide.md +6 -4
  766. package/template/.trae/skills/yss-web-controller/references/web-generation-contract.schema.json +97 -0
  767. package/template/.trae/skills/yss-web-controller/scripts/generate_controller.mjs +141 -20
  768. package/template/.trae/skills/yss-web-controller/scripts/generate_controller.test.mjs +131 -35
  769. package/template/AGENTS.md +13 -13
  770. package/template/CONTEXT.md +9 -8
  771. package/template/README.md +0 -1
  772. package/template/docs/agents/digital-human-roles.md +3 -3
  773. package/template/docs/agents/digital-human-roles.yaml +5 -5
  774. package/template/docs/agents/skill-migrations.md +18 -5
  775. package/template/docs/agents/skills-maintenance.md +3 -3
  776. package/template/docs/agents/strategic-design-skills-integration.md +41 -0
  777. package/template/docs/agents/yss-skill-registry.yaml +137 -16
  778. package/template/docs/api/templates/openapi-draft-review-checklist.md +3 -3
  779. package/template/docs/architecture/templates/engineering-baseline-review-template.md +3 -3
  780. package/template/docs/design/README.md +7 -7
  781. package/template/docs/design/design.md +25 -17
  782. package/template/docs/design/templates/interaction-spec-template.md +4 -4
  783. package/template/docs/design/templates/prototype-confirmation-template.md +13 -15
  784. package/template/docs/design/templates/prototype-evidence-template.yaml +99 -75
  785. package/template/docs/design/templates/prototype-review-checklist.md +5 -4
  786. package/template/docs/design/templates/state-matrix-template.md +11 -0
  787. package/template/docs/discovery/reports/agent-governance-options.md +8 -8
  788. package/template/docs/process/MATT-POCOCK-ENGINEERING-SKILLS.md +2 -1
  789. package/template/docs/process/implementation-repo-integration.md +1 -1
  790. package/template/docs/process/lifecycle-artifact-map.md +4 -2
  791. package/template/docs/process/lifecycle-registry-baseline.json +4 -1
  792. package/template/docs/process/lifecycle-registry.yaml +15 -9
  793. package/template/docs/process/template-engineering-overview.md +2 -2
  794. package/template/docs/process/template-verification-profiles.yaml +27 -6
  795. package/template/docs/templates/build-architecture-checklist-template.md +6 -6
  796. package/template/docs/templates/implementation-routing-template.md +8 -8
  797. package/template/docs/templates/requirement-freeze-template.md +2 -2
  798. package/template/docs/templates/review-report-template.md +4 -4
  799. package/template/docs/templates/spec-template.md +1 -1
  800. package/template/docs/templates/vertical-slice-ticket-template.md +4 -4
  801. package/template/docs/user-guide/yss-ui-mcp.md +0 -2
  802. package/template/docs/user-guide//346/210/230/346/234/257/350/256/276/350/256/241/345/255/220/351/241/271/347/233/256/347/224/250/346/210/267/346/211/213/345/206/214.md +2 -2
  803. package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214.md +5 -5
  804. package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214/347/264/242/345/274/225.md +4 -4
  805. package/template/scripts/audit-yss-backend-skills +56 -0
  806. package/template/scripts/generate-yss-skill-boundaries +67 -0
  807. package/template/scripts/lib/export-skills.mjs +4 -4
  808. package/template/scripts/lib/implementation-contract-compiler.mjs +194 -0
  809. package/template/scripts/lib/scenario-checks.mjs +17 -10
  810. package/template/scripts/lib/skill-governance.mjs +27 -5
  811. package/template/scripts/lib/skill-registry.mjs +129 -41
  812. package/template/scripts/lib/skill-supply-chain.mjs +47 -6
  813. package/template/scripts/verify-repository-scope-scenarios +2 -2
  814. package/template/scripts/verify-retired-skill-ids +37 -0
  815. package/template/scripts/verify-scaffold-generator-scenarios +18 -18
  816. package/template/scripts/verify-template-verification-scenarios +4 -1
  817. package/template/scripts/verify-yss-dto-openapi-profile +8 -0
  818. package/template/scripts/verify-yss-implementation-contract-compiler-scenarios +14 -0
  819. package/template/skills-lock.json +101 -171
  820. package/template/yss-public-skills.json +4 -4
  821. package/template.manifest.json +0 -3
  822. package/template.snapshot.json +5 -5
  823. package/template/.agents/skills/research/SKILL.md +0 -12
  824. package/template/.agents/skills/research/agents/openai.yaml +0 -3
  825. package/template/.agents/skills/yss-router/SKILL.md +0 -51
  826. package/template/.agents/skills/yss-router/agents/openai.yaml +0 -4
  827. package/template/.agents/skills/yss-router/references/boundaries.md +0 -50
  828. package/template/.agents/skills/yss-router/references/router-contract.yaml +0 -345
  829. package/template/.agents/skills/yss-router/references/slice-implementation-contract.md +0 -185
  830. package/template/.agents/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  831. package/template/.agents/skills/yss-source-index/SKILL.md +0 -63
  832. package/template/.agents/skills/yss-source-index/agents/openai.yaml +0 -4
  833. package/template/.agents/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  834. package/template/.claude/skills/research/SKILL.md +0 -12
  835. package/template/.claude/skills/research/agents/openai.yaml +0 -3
  836. package/template/.claude/skills/yss-router/SKILL.md +0 -51
  837. package/template/.claude/skills/yss-router/agents/openai.yaml +0 -4
  838. package/template/.claude/skills/yss-router/references/boundaries.md +0 -50
  839. package/template/.claude/skills/yss-router/references/router-contract.yaml +0 -345
  840. package/template/.claude/skills/yss-router/references/slice-implementation-contract.md +0 -185
  841. package/template/.claude/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  842. package/template/.claude/skills/yss-source-index/SKILL.md +0 -63
  843. package/template/.claude/skills/yss-source-index/agents/openai.yaml +0 -4
  844. package/template/.claude/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  845. package/template/.codex/skills/research/SKILL.md +0 -12
  846. package/template/.codex/skills/research/agents/openai.yaml +0 -3
  847. package/template/.codex/skills/yss-router/SKILL.md +0 -51
  848. package/template/.codex/skills/yss-router/agents/openai.yaml +0 -4
  849. package/template/.codex/skills/yss-router/references/boundaries.md +0 -50
  850. package/template/.codex/skills/yss-router/references/router-contract.yaml +0 -345
  851. package/template/.codex/skills/yss-router/references/slice-implementation-contract.md +0 -185
  852. package/template/.codex/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  853. package/template/.codex/skills/yss-source-index/SKILL.md +0 -63
  854. package/template/.codex/skills/yss-source-index/agents/openai.yaml +0 -4
  855. package/template/.codex/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  856. package/template/.cursor/skills/research/SKILL.md +0 -12
  857. package/template/.cursor/skills/research/agents/openai.yaml +0 -3
  858. package/template/.cursor/skills/yss-router/SKILL.md +0 -51
  859. package/template/.cursor/skills/yss-router/agents/openai.yaml +0 -4
  860. package/template/.cursor/skills/yss-router/references/boundaries.md +0 -50
  861. package/template/.cursor/skills/yss-router/references/router-contract.yaml +0 -345
  862. package/template/.cursor/skills/yss-router/references/slice-implementation-contract.md +0 -185
  863. package/template/.cursor/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  864. package/template/.cursor/skills/yss-source-index/SKILL.md +0 -63
  865. package/template/.cursor/skills/yss-source-index/agents/openai.yaml +0 -4
  866. package/template/.cursor/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  867. package/template/.gemini/settings.json +0 -8
  868. package/template/.hermes/skills/alibaba-java-code-style/SKILL.md +0 -51
  869. package/template/.hermes/skills/alibaba-java-code-style/agents/openai.yaml +0 -4
  870. package/template/.hermes/skills/alibaba-java-code-style/references/database-engineering-design.md +0 -147
  871. package/template/.hermes/skills/alibaba-java-code-style/references/java-programming.md +0 -178
  872. package/template/.hermes/skills/alibaba-java-code-style/references/reliability-test-security.md +0 -89
  873. package/template/.hermes/skills/archify/LICENSE +0 -22
  874. package/template/.hermes/skills/archify/SKILL.md +0 -156
  875. package/template/.hermes/skills/archify/assets/template.html +0 -14787
  876. package/template/.hermes/skills/archify/bin/archify.mjs +0 -1990
  877. package/template/.hermes/skills/archify/bin/open-artifact.mjs +0 -86
  878. package/template/.hermes/skills/archify/bin/preview.mjs +0 -648
  879. package/template/.hermes/skills/archify/bin/visual-check.mjs +0 -829
  880. package/template/.hermes/skills/archify/brand-marks/README.md +0 -31
  881. package/template/.hermes/skills/archify/brand-marks/catalog.json +0 -131
  882. package/template/.hermes/skills/archify/delta/architecture-delta.mjs +0 -1214
  883. package/template/.hermes/skills/archify/examples/agent-run.lifecycle.json +0 -71
  884. package/template/.hermes/skills/archify/examples/agent-tool-call.workflow.json +0 -94
  885. package/template/.hermes/skills/archify/examples/async-job-roundtrip.sequence.json +0 -61
  886. package/template/.hermes/skills/archify/examples/brand-aware-delivery.architecture.json +0 -47
  887. package/template/.hermes/skills/archify/examples/cache-miss-request.sequence.json +0 -81
  888. package/template/.hermes/skills/archify/examples/checkout-platform.base.architecture.json +0 -31
  889. package/template/.hermes/skills/archify/examples/checkout-platform.head.architecture.json +0 -31
  890. package/template/.hermes/skills/archify/examples/dataflow-product-analytics.html +0 -14898
  891. package/template/.hermes/skills/archify/examples/deployment-release.lifecycle.json +0 -49
  892. package/template/.hermes/skills/archify/examples/event-stream.dataflow.json +0 -57
  893. package/template/.hermes/skills/archify/examples/incident-response.workflow.json +0 -64
  894. package/template/.hermes/skills/archify/examples/lifecycle-agent-run.html +0 -14847
  895. package/template/.hermes/skills/archify/examples/product-analytics.dataflow.json +0 -76
  896. package/template/.hermes/skills/archify/examples/production-deployment.architecture.json +0 -71
  897. package/template/.hermes/skills/archify/examples/release-delivery.workflow.json +0 -62
  898. package/template/.hermes/skills/archify/examples/sequence-cache-miss-request.html +0 -14913
  899. package/template/.hermes/skills/archify/examples/web-app-rendered.html +0 -14862
  900. package/template/.hermes/skills/archify/examples/web-app.architecture.json +0 -46
  901. package/template/.hermes/skills/archify/examples/workflow-agent-tool-call-rendered.html +0 -14904
  902. package/template/.hermes/skills/archify/migrations/workflow-v2.mjs +0 -279
  903. package/template/.hermes/skills/archify/package-lock.json +0 -149
  904. package/template/.hermes/skills/archify/package.json +0 -37
  905. package/template/.hermes/skills/archify/recipes/scenarios.mjs +0 -391
  906. package/template/.hermes/skills/archify/references/authoring-contract.md +0 -191
  907. package/template/.hermes/skills/archify/references/brand-marks.md +0 -65
  908. package/template/.hermes/skills/archify/references/delivery-contract.md +0 -112
  909. package/template/.hermes/skills/archify/references/viewer-runtime.md +0 -45
  910. package/template/.hermes/skills/archify/renderers/architecture/grid.mjs +0 -62
  911. package/template/.hermes/skills/archify/renderers/architecture/render-architecture.mjs +0 -1078
  912. package/template/.hermes/skills/archify/renderers/dataflow/README.md +0 -104
  913. package/template/.hermes/skills/archify/renderers/dataflow/render-dataflow.mjs +0 -483
  914. package/template/.hermes/skills/archify/renderers/lifecycle/README.md +0 -115
  915. package/template/.hermes/skills/archify/renderers/lifecycle/render-lifecycle.mjs +0 -561
  916. package/template/.hermes/skills/archify/renderers/sequence/README.md +0 -114
  917. package/template/.hermes/skills/archify/renderers/sequence/render-sequence.mjs +0 -453
  918. package/template/.hermes/skills/archify/renderers/shared/brand-marks.mjs +0 -563
  919. package/template/.hermes/skills/archify/renderers/shared/cli.mjs +0 -218
  920. package/template/.hermes/skills/archify/renderers/shared/desktop-readability.mjs +0 -26
  921. package/template/.hermes/skills/archify/renderers/shared/diagnostics.mjs +0 -127
  922. package/template/.hermes/skills/archify/renderers/shared/engineering-profiles.mjs +0 -157
  923. package/template/.hermes/skills/archify/renderers/shared/generated-brand-marks.mjs +0 -2003
  924. package/template/.hermes/skills/archify/renderers/shared/generated-validators.mjs +0 -13
  925. package/template/.hermes/skills/archify/renderers/shared/geometry.mjs +0 -1423
  926. package/template/.hermes/skills/archify/renderers/shared/i18n.mjs +0 -594
  927. package/template/.hermes/skills/archify/renderers/shared/layout-report.mjs +0 -40
  928. package/template/.hermes/skills/archify/renderers/shared/legend.mjs +0 -217
  929. package/template/.hermes/skills/archify/renderers/shared/output-path.mjs +0 -321
  930. package/template/.hermes/skills/archify/renderers/shared/repository-evidence.mjs +0 -235
  931. package/template/.hermes/skills/archify/renderers/shared/text-fit.mjs +0 -49
  932. package/template/.hermes/skills/archify/renderers/shared/utils.mjs +0 -232
  933. package/template/.hermes/skills/archify/renderers/shared/validator.mjs +0 -86
  934. package/template/.hermes/skills/archify/renderers/workflow/README.md +0 -223
  935. package/template/.hermes/skills/archify/renderers/workflow/render-workflow.mjs +0 -35
  936. package/template/.hermes/skills/archify/renderers/workflow/workflow-compiler.mjs +0 -4400
  937. package/template/.hermes/skills/archify/renderers/workflow/workflow-migration-geometry.mjs +0 -144
  938. package/template/.hermes/skills/archify/schemas/README.md +0 -211
  939. package/template/.hermes/skills/archify/schemas/architecture.schema.json +0 -176
  940. package/template/.hermes/skills/archify/schemas/common.schema.json +0 -115
  941. package/template/.hermes/skills/archify/schemas/dataflow.schema.json +0 -243
  942. package/template/.hermes/skills/archify/schemas/lifecycle.schema.json +0 -266
  943. package/template/.hermes/skills/archify/schemas/sequence.schema.json +0 -223
  944. package/template/.hermes/skills/archify/schemas/workflow.schema.json +0 -428
  945. package/template/.hermes/skills/archify/scripts/check-render-output.mjs +0 -835
  946. package/template/.hermes/skills/archify/scripts/check-update.mjs +0 -1667
  947. package/template/.hermes/skills/archify/scripts/generate-brand-marks.mjs +0 -141
  948. package/template/.hermes/skills/archify/scripts/generate-validators.mjs +0 -66
  949. package/template/.hermes/skills/archify/scripts/render-examples.mjs +0 -26
  950. package/template/.hermes/skills/archify/scripts/update-contract.mjs +0 -182
  951. package/template/.hermes/skills/archify/scripts/yss-safe-deliver.mjs +0 -214
  952. package/template/.hermes/skills/archify/skill-release.json +0 -10
  953. package/template/.hermes/skills/archify/test/adaptive-reader-layout.test.mjs +0 -86
  954. package/template/.hermes/skills/archify/test/animation.test.mjs +0 -179
  955. package/template/.hermes/skills/archify/test/architecture-delta.test.mjs +0 -518
  956. package/template/.hermes/skills/archify/test/authored-reachability.test.mjs +0 -95
  957. package/template/.hermes/skills/archify/test/authoring-safety-contract.test.mjs +0 -54
  958. package/template/.hermes/skills/archify/test/automatic-port-spread.test.mjs +0 -376
  959. package/template/.hermes/skills/archify/test/base-input-compatibility.test.mjs +0 -42
  960. package/template/.hermes/skills/archify/test/brand-marks.test.mjs +0 -654
  961. package/template/.hermes/skills/archify/test/chapter-delta-preview.test.mjs +0 -157
  962. package/template/.hermes/skills/archify/test/chapter-handoff.test.mjs +0 -97
  963. package/template/.hermes/skills/archify/test/chapter-rail.test.mjs +0 -86
  964. package/template/.hermes/skills/archify/test/checkout-line-endings.test.mjs +0 -72
  965. package/template/.hermes/skills/archify/test/clean-skill-staging.test.mjs +0 -244
  966. package/template/.hermes/skills/archify/test/cli.test.mjs +0 -809
  967. package/template/.hermes/skills/archify/test/community-proof-intake.test.mjs +0 -104
  968. package/template/.hermes/skills/archify/test/cursor-onboarding.test.mjs +0 -74
  969. package/template/.hermes/skills/archify/test/degraded.test.mjs +0 -161
  970. package/template/.hermes/skills/archify/test/delivery-contract.test.mjs +0 -52
  971. package/template/.hermes/skills/archify/test/desktop-reader-browser.test.mjs +0 -58
  972. package/template/.hermes/skills/archify/test/diagram-guide.test.mjs +0 -92
  973. package/template/.hermes/skills/archify/test/engineering-profile.test.mjs +0 -209
  974. package/template/.hermes/skills/archify/test/finder.test.mjs +0 -104
  975. package/template/.hermes/skills/archify/test/fixtures/automatic-routing-node-border-clearance.workflow.json +0 -40
  976. package/template/.hermes/skills/archify/test/fixtures/fail-migration-cleanup.mjs +0 -17
  977. package/template/.hermes/skills/archify/test/fixtures/issue-126/custom-widths.workflow.json +0 -18
  978. package/template/.hermes/skills/archify/test/fixtures/issue-126/explicit-route.workflow.json +0 -28
  979. package/template/.hermes/skills/archify/test/fixtures/issue-126/explicit-viewbox.workflow.json +0 -19
  980. package/template/.hermes/skills/archify/test/fixtures/issue-126/labels.workflow.json +0 -18
  981. package/template/.hermes/skills/archify/test/fixtures/v1-baseline/agent-run.lifecycle.json +0 -64
  982. package/template/.hermes/skills/archify/test/fixtures/v1-baseline/agent-tool-call.workflow.json +0 -88
  983. package/template/.hermes/skills/archify/test/fixtures/v1-baseline/cache-miss-request.sequence.json +0 -75
  984. package/template/.hermes/skills/archify/test/fixtures/v1-baseline/event-stream.dataflow.json +0 -57
  985. package/template/.hermes/skills/archify/test/fixtures/v1-baseline/product-analytics.dataflow.json +0 -70
  986. package/template/.hermes/skills/archify/test/fixtures/v1-baseline/production-deployment.architecture.json +0 -71
  987. package/template/.hermes/skills/archify/test/fixtures/v1-baseline/web-app.architecture.json +0 -41
  988. package/template/.hermes/skills/archify/test/fixtures/v1-workflow-700x400.workflow.json +0 -22
  989. package/template/.hermes/skills/archify/test/fixtures/v1-workflow-explicit-coordinates.workflow.json +0 -47
  990. package/template/.hermes/skills/archify/test/gallery.test.mjs +0 -130
  991. package/template/.hermes/skills/archify/test/generate-validators.test.mjs +0 -59
  992. package/template/.hermes/skills/archify/test/generated-artifact-xml.test.mjs +0 -88
  993. package/template/.hermes/skills/archify/test/geometry.test.mjs +0 -739
  994. package/template/.hermes/skills/archify/test/golden.mjs +0 -207
  995. package/template/.hermes/skills/archify/test/grid.test.mjs +0 -47
  996. package/template/.hermes/skills/archify/test/guide-page.test.mjs +0 -59
  997. package/template/.hermes/skills/archify/test/guide.test.mjs +0 -81
  998. package/template/.hermes/skills/archify/test/guided-views.test.mjs +0 -144
  999. package/template/.hermes/skills/archify/test/helpers/xml.mjs +0 -37
  1000. package/template/.hermes/skills/archify/test/i18n.test.mjs +0 -422
  1001. package/template/.hermes/skills/archify/test/intent-trace.test.mjs +0 -111
  1002. package/template/.hermes/skills/archify/test/landing.test.mjs +0 -97
  1003. package/template/.hermes/skills/archify/test/layout-rules.test.mjs +0 -1449
  1004. package/template/.hermes/skills/archify/test/legend-contract.test.mjs +0 -404
  1005. package/template/.hermes/skills/archify/test/motion-governor.test.mjs +0 -111
  1006. package/template/.hermes/skills/archify/test/open-artifact.test.mjs +0 -118
  1007. package/template/.hermes/skills/archify/test/ordinary-model-floor.test.mjs +0 -1024
  1008. package/template/.hermes/skills/archify/test/output-path.test.mjs +0 -587
  1009. package/template/.hermes/skills/archify/test/presentation.test.mjs +0 -71
  1010. package/template/.hermes/skills/archify/test/preset-tryon.test.mjs +0 -113
  1011. package/template/.hermes/skills/archify/test/preview-contract.test.mjs +0 -40
  1012. package/template/.hermes/skills/archify/test/preview.test.mjs +0 -499
  1013. package/template/.hermes/skills/archify/test/proof-aperture.test.mjs +0 -78
  1014. package/template/.hermes/skills/archify/test/reach-share-card.test.mjs +0 -149
  1015. package/template/.hermes/skills/archify/test/readme-showcase.test.mjs +0 -318
  1016. package/template/.hermes/skills/archify/test/real-repository-proof.test.mjs +0 -209
  1017. package/template/.hermes/skills/archify/test/relationship-direct-explorer.test.mjs +0 -115
  1018. package/template/.hermes/skills/archify/test/relationship-lens.test.mjs +0 -128
  1019. package/template/.hermes/skills/archify/test/relationship-permalink.test.mjs +0 -130
  1020. package/template/.hermes/skills/archify/test/relationship-pulse.test.mjs +0 -122
  1021. package/template/.hermes/skills/archify/test/release-identity.test.mjs +0 -504
  1022. package/template/.hermes/skills/archify/test/release-package-gates.test.mjs +0 -508
  1023. package/template/.hermes/skills/archify/test/render-output-checks.test.mjs +0 -435
  1024. package/template/.hermes/skills/archify/test/repair-receipt.test.mjs +0 -181
  1025. package/template/.hermes/skills/archify/test/repository-evidence.test.mjs +0 -217
  1026. package/template/.hermes/skills/archify/test/repository-language-metadata.test.mjs +0 -52
  1027. package/template/.hermes/skills/archify/test/route-journey.test.mjs +0 -123
  1028. package/template/.hermes/skills/archify/test/route-probe.test.mjs +0 -114
  1029. package/template/.hermes/skills/archify/test/route-share-card.test.mjs +0 -163
  1030. package/template/.hermes/skills/archify/test/semantic-camera.test.mjs +0 -88
  1031. package/template/.hermes/skills/archify/test/semantic-flow.test.mjs +0 -90
  1032. package/template/.hermes/skills/archify/test/semantic-legend-gateway.test.mjs +0 -156
  1033. package/template/.hermes/skills/archify/test/semantic-lens.test.mjs +0 -103
  1034. package/template/.hermes/skills/archify/test/semantic-passport.test.mjs +0 -99
  1035. package/template/.hermes/skills/archify/test/semantic-radar.test.mjs +0 -575
  1036. package/template/.hermes/skills/archify/test/semantic-zoom.test.mjs +0 -86
  1037. package/template/.hermes/skills/archify/test/sequence-column-fit.test.mjs +0 -137
  1038. package/template/.hermes/skills/archify/test/settled-flow.test.mjs +0 -97
  1039. package/template/.hermes/skills/archify/test/share-card-export.test.mjs +0 -132
  1040. package/template/.hermes/skills/archify/test/site-language-continuity.test.mjs +0 -562
  1041. package/template/.hermes/skills/archify/test/site-language-integration.mjs +0 -9
  1042. package/template/.hermes/skills/archify/test/skill-metadata.test.mjs +0 -84
  1043. package/template/.hermes/skills/archify/test/stable-update-manifest.test.mjs +0 -167
  1044. package/template/.hermes/skills/archify/test/start-page.test.mjs +0 -312
  1045. package/template/.hermes/skills/archify/test/story-beat-navigator.test.mjs +0 -103
  1046. package/template/.hermes/skills/archify/test/story-carrier.test.mjs +0 -90
  1047. package/template/.hermes/skills/archify/test/story-director-strip.test.mjs +0 -91
  1048. package/template/.hermes/skills/archify/test/story-follow-camera.test.mjs +0 -103
  1049. package/template/.hermes/skills/archify/test/story-horizon.test.mjs +0 -89
  1050. package/template/.hermes/skills/archify/test/story-moment-link.test.mjs +0 -93
  1051. package/template/.hermes/skills/archify/test/story-shelf.test.mjs +0 -84
  1052. package/template/.hermes/skills/archify/test/story-trail.test.mjs +0 -81
  1053. package/template/.hermes/skills/archify/test/toolbar-polish.test.mjs +0 -57
  1054. package/template/.hermes/skills/archify/test/update-contract.test.mjs +0 -133
  1055. package/template/.hermes/skills/archify/test/update-notifier.test.mjs +0 -3317
  1056. package/template/.hermes/skills/archify/test/v1-compatibility.test.mjs +0 -329
  1057. package/template/.hermes/skills/archify/test/vertical-edge.test.mjs +0 -68
  1058. package/template/.hermes/skills/archify/test/viewer-chrome-layout.test.mjs +0 -872
  1059. package/template/.hermes/skills/archify/test/visual-check.test.mjs +0 -400
  1060. package/template/.hermes/skills/archify/test/webm-artifact.smoke.mjs +0 -1840
  1061. package/template/.hermes/skills/archify/test/workflow-compiler-hard-contract.test.mjs +0 -2135
  1062. package/template/.hermes/skills/archify/test/workflow-compiler.test.mjs +0 -1163
  1063. package/template/.hermes/skills/archify/test/workflow-migration.test.mjs +0 -620
  1064. package/template/.hermes/skills/archify/test/workflow-semantic-contract.test.mjs +0 -131
  1065. package/template/.hermes/skills/archify/test/yss-safe-deliver.test.mjs +0 -153
  1066. package/template/.hermes/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  1067. package/template/.hermes/skills/ask-matt/SKILL.md +0 -95
  1068. package/template/.hermes/skills/ask-matt/agents/openai.yaml +0 -5
  1069. package/template/.hermes/skills/code-review/SKILL.md +0 -122
  1070. package/template/.hermes/skills/code-review/agents/openai.yaml +0 -3
  1071. package/template/.hermes/skills/code-review/references/yss-review-standards.md +0 -54
  1072. package/template/.hermes/skills/codebase-design/DEEPENING.md +0 -37
  1073. package/template/.hermes/skills/codebase-design/DESIGN-IT-TWICE.md +0 -44
  1074. package/template/.hermes/skills/codebase-design/SKILL.md +0 -118
  1075. package/template/.hermes/skills/codebase-design/agents/openai.yaml +0 -3
  1076. package/template/.hermes/skills/competitive-intelligence/SKILL.md +0 -94
  1077. package/template/.hermes/skills/component-selection-imports/SKILL.md +0 -64
  1078. package/template/.hermes/skills/cross-repo-implementation-routing/SKILL.md +0 -51
  1079. package/template/.hermes/skills/diagnosing-bugs/SKILL.md +0 -138
  1080. package/template/.hermes/skills/diagnosing-bugs/agents/openai.yaml +0 -3
  1081. package/template/.hermes/skills/diagnosing-bugs/scripts/hitl-loop.template.sh +0 -44
  1082. package/template/.hermes/skills/dispatching-parallel-agents/SKILL.md +0 -185
  1083. package/template/.hermes/skills/domain-modeling/ADR-FORMAT.md +0 -47
  1084. package/template/.hermes/skills/domain-modeling/CONTEXT-FORMAT.md +0 -60
  1085. package/template/.hermes/skills/domain-modeling/SKILL.md +0 -74
  1086. package/template/.hermes/skills/domain-modeling/agents/openai.yaml +0 -3
  1087. package/template/.hermes/skills/file-export-download/SKILL.md +0 -160
  1088. package/template/.hermes/skills/file-export-download/agents/openai.yaml +0 -4
  1089. package/template/.hermes/skills/formily-foundation/SKILL.md +0 -176
  1090. package/template/.hermes/skills/formily-foundation/references/examples.md +0 -486
  1091. package/template/.hermes/skills/formily-linkage-effects/SKILL.md +0 -167
  1092. package/template/.hermes/skills/formily-mode-slot-detail/SKILL.md +0 -137
  1093. package/template/.hermes/skills/formily-step-flow/SKILL.md +0 -194
  1094. package/template/.hermes/skills/frontend-commit/SKILL.md +0 -118
  1095. package/template/.hermes/skills/frontend-commit/agents/openai.yaml +0 -7
  1096. package/template/.hermes/skills/frontend-commit/references/scope-and-examples.md +0 -111
  1097. package/template/.hermes/skills/grill-me/SKILL.md +0 -7
  1098. package/template/.hermes/skills/grill-me/agents/openai.yaml +0 -5
  1099. package/template/.hermes/skills/grill-with-docs/SKILL.md +0 -19
  1100. package/template/.hermes/skills/grill-with-docs/agents/openai.yaml +0 -5
  1101. package/template/.hermes/skills/grilling/SKILL.md +0 -28
  1102. package/template/.hermes/skills/grilling/agents/openai.yaml +0 -3
  1103. package/template/.hermes/skills/handoff/SKILL.md +0 -16
  1104. package/template/.hermes/skills/handoff/agents/openai.yaml +0 -5
  1105. package/template/.hermes/skills/implement/SKILL.md +0 -15
  1106. package/template/.hermes/skills/implement/agents/openai.yaml +0 -5
  1107. package/template/.hermes/skills/implementation-repo-onboarding/SKILL.md +0 -50
  1108. package/template/.hermes/skills/improve-codebase-architecture/HTML-REPORT.md +0 -123
  1109. package/template/.hermes/skills/improve-codebase-architecture/SKILL.md +0 -71
  1110. package/template/.hermes/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
  1111. package/template/.hermes/skills/java-backend-commit/SKILL.md +0 -121
  1112. package/template/.hermes/skills/java-backend-commit/agents/openai.yaml +0 -7
  1113. package/template/.hermes/skills/java-backend-commit/references/scope-and-examples.md +0 -118
  1114. package/template/.hermes/skills/llm-wiki/SKILL.md +0 -60
  1115. package/template/.hermes/skills/llm-wiki/assets/CLAUDE.md.template +0 -26
  1116. package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki/CLAUDE.md +0 -3
  1117. package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki/index.md +0 -5
  1118. package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki/log.md +0 -1
  1119. package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki//345/255/230/345/234/250/347/232/204/351/241/265.md +0 -7
  1120. package/template/.hermes/skills/llm-wiki/references/compile.md +0 -126
  1121. package/template/.hermes/skills/llm-wiki/references/discover.md +0 -42
  1122. package/template/.hermes/skills/llm-wiki/references/ingest.md +0 -36
  1123. package/template/.hermes/skills/llm-wiki/references/lint.md +0 -54
  1124. package/template/.hermes/skills/llm-wiki/references/query.md +0 -21
  1125. package/template/.hermes/skills/llm-wiki/references/schema.md +0 -45
  1126. package/template/.hermes/skills/llm-wiki/references/writing.md +0 -35
  1127. package/template/.hermes/skills/llm-wiki/scripts/advise.mjs +0 -196
  1128. package/template/.hermes/skills/llm-wiki/scripts/advise.test.mjs +0 -91
  1129. package/template/.hermes/skills/llm-wiki/scripts/extract.mjs +0 -55
  1130. package/template/.hermes/skills/llm-wiki/scripts/extract.test.mjs +0 -34
  1131. package/template/.hermes/skills/llm-wiki/scripts/inventory.mjs +0 -174
  1132. package/template/.hermes/skills/llm-wiki/scripts/inventory.test.mjs +0 -98
  1133. package/template/.hermes/skills/llm-wiki/scripts/lint-wikilinks.mjs +0 -177
  1134. package/template/.hermes/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +0 -212
  1135. package/template/.hermes/skills/lombok/SKILL.md +0 -351
  1136. package/template/.hermes/skills/loop-me/SKILL.md +0 -32
  1137. package/template/.hermes/skills/loop-me/agents/openai.yaml +0 -5
  1138. package/template/.hermes/skills/maintaining-skills/SKILL.md +0 -27
  1139. package/template/.hermes/skills/mapstruct/SKILL.md +0 -334
  1140. package/template/.hermes/skills/migrate-to-shoehorn/SKILL.md +0 -118
  1141. package/template/.hermes/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  1142. package/template/.hermes/skills/page-form-module/SKILL.md +0 -168
  1143. package/template/.hermes/skills/page-list-module/SKILL.md +0 -137
  1144. package/template/.hermes/skills/page-skeleton/SKILL.md +0 -76
  1145. package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/constant.ts +0 -34
  1146. package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -75
  1147. package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/index.vue +0 -107
  1148. package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1149. package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/style.less +0 -30
  1150. package/template/.hermes/skills/page-skeleton/examples/StandardListPage/constant.ts +0 -28
  1151. package/template/.hermes/skills/page-skeleton/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -58
  1152. package/template/.hermes/skills/page-skeleton/examples/StandardListPage/hooks/useRuleActions.ts +0 -65
  1153. package/template/.hermes/skills/page-skeleton/examples/StandardListPage/index.vue +0 -91
  1154. package/template/.hermes/skills/page-skeleton/examples/StandardListPage/style.less +0 -49
  1155. package/template/.hermes/skills/prototype/LOGIC.md +0 -67
  1156. package/template/.hermes/skills/prototype/SKILL.md +0 -26
  1157. package/template/.hermes/skills/prototype/UI.md +0 -112
  1158. package/template/.hermes/skills/prototype/agents/openai.yaml +0 -3
  1159. package/template/.hermes/skills/prototype-page-acceptance/SKILL.md +0 -62
  1160. package/template/.hermes/skills/prototype-review/SKILL.md +0 -74
  1161. package/template/.hermes/skills/prototype-review/agents/openai.yaml +0 -4
  1162. package/template/.hermes/skills/research/SKILL.md +0 -12
  1163. package/template/.hermes/skills/research/agents/openai.yaml +0 -3
  1164. package/template/.hermes/skills/resolving-merge-conflicts/SKILL.md +0 -14
  1165. package/template/.hermes/skills/resolving-merge-conflicts/agents/openai.yaml +0 -3
  1166. package/template/.hermes/skills/scaffold-exercises/SKILL.md +0 -106
  1167. package/template/.hermes/skills/scaffold-exercises/agents/openai.yaml +0 -3
  1168. package/template/.hermes/skills/setup-matt-pocock-skills/SKILL.md +0 -125
  1169. package/template/.hermes/skills/setup-matt-pocock-skills/agents/openai.yaml +0 -5
  1170. package/template/.hermes/skills/setup-matt-pocock-skills/domain.md +0 -51
  1171. package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-github.md +0 -45
  1172. package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +0 -46
  1173. package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-local.md +0 -66
  1174. package/template/.hermes/skills/setup-matt-pocock-skills/triage-labels.md +0 -15
  1175. package/template/.hermes/skills/setup-pre-commit/SKILL.md +0 -91
  1176. package/template/.hermes/skills/setup-pre-commit/agents/openai.yaml +0 -3
  1177. package/template/.hermes/skills/setup-ts-deep-modules/SKILL.md +0 -102
  1178. package/template/.hermes/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  1179. package/template/.hermes/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  1180. package/template/.hermes/skills/tdd/SKILL.md +0 -38
  1181. package/template/.hermes/skills/tdd/agents/openai.yaml +0 -3
  1182. package/template/.hermes/skills/tdd/mocking.md +0 -59
  1183. package/template/.hermes/skills/tdd/tests.md +0 -77
  1184. package/template/.hermes/skills/teach/GLOSSARY-FORMAT.md +0 -35
  1185. package/template/.hermes/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  1186. package/template/.hermes/skills/teach/MISSION-FORMAT.md +0 -31
  1187. package/template/.hermes/skills/teach/RESOURCES-FORMAT.md +0 -32
  1188. package/template/.hermes/skills/teach/SKILL.md +0 -140
  1189. package/template/.hermes/skills/teach/agents/openai.yaml +0 -5
  1190. package/template/.hermes/skills/theme-token-usage/SKILL.md +0 -123
  1191. package/template/.hermes/skills/theme-token-usage/agents/openai.yaml +0 -4
  1192. package/template/.hermes/skills/to-questionnaire/SKILL.md +0 -53
  1193. package/template/.hermes/skills/to-questionnaire/agents/openai.yaml +0 -5
  1194. package/template/.hermes/skills/to-spec/SKILL.md +0 -75
  1195. package/template/.hermes/skills/to-spec/agents/openai.yaml +0 -5
  1196. package/template/.hermes/skills/to-tickets/SKILL.md +0 -105
  1197. package/template/.hermes/skills/to-tickets/agents/openai.yaml +0 -5
  1198. package/template/.hermes/skills/triage/AGENT-BRIEF.md +0 -207
  1199. package/template/.hermes/skills/triage/OUT-OF-SCOPE.md +0 -105
  1200. package/template/.hermes/skills/triage/SKILL.md +0 -112
  1201. package/template/.hermes/skills/triage/agents/openai.yaml +0 -5
  1202. package/template/.hermes/skills/using-git-worktrees/SKILL.md +0 -202
  1203. package/template/.hermes/skills/vue3-best-practices/SKILL.md +0 -68
  1204. package/template/.hermes/skills/wait-what/SKILL.md +0 -7
  1205. package/template/.hermes/skills/wait-what/agents/openai.yaml +0 -5
  1206. package/template/.hermes/skills/wayfinder/SKILL.md +0 -128
  1207. package/template/.hermes/skills/wayfinder/agents/openai.yaml +0 -5
  1208. package/template/.hermes/skills/writing-beats/SKILL.md +0 -67
  1209. package/template/.hermes/skills/writing-beats/agents/openai.yaml +0 -5
  1210. package/template/.hermes/skills/writing-for-agents/SKILL-MECHANICS.md +0 -22
  1211. package/template/.hermes/skills/writing-for-agents/SKILL.md +0 -81
  1212. package/template/.hermes/skills/writing-for-agents/agents/openai.yaml +0 -3
  1213. package/template/.hermes/skills/writing-fragments/SKILL.md +0 -79
  1214. package/template/.hermes/skills/writing-fragments/agents/openai.yaml +0 -5
  1215. package/template/.hermes/skills/writing-shape/SKILL.md +0 -79
  1216. package/template/.hermes/skills/writing-shape/agents/openai.yaml +0 -5
  1217. package/template/.hermes/skills/yedit-table-usage/SKILL.md +0 -227
  1218. package/template/.hermes/skills/yss-antd-design/SKILL.md +0 -34
  1219. package/template/.hermes/skills/yss-antd-design/references/boundaries.md +0 -30
  1220. package/template/.hermes/skills/yss-antd-design/references/cli-matrix.md +0 -38
  1221. package/template/.hermes/skills/yss-antd-design/references/evidence.md +0 -30
  1222. package/template/.hermes/skills/yss-antd-design/scripts/validate-frontmatter.mjs +0 -46
  1223. package/template/.hermes/skills/yss-antd-design/scripts/validate-frontmatter.test.mjs +0 -27
  1224. package/template/.hermes/skills/yss-api-integration/SKILL.md +0 -185
  1225. package/template/.hermes/skills/yss-api-integration/agents/openai.yaml +0 -5
  1226. package/template/.hermes/skills/yss-application/SKILL.md +0 -54
  1227. package/template/.hermes/skills/yss-application/agents/openai.yaml +0 -5
  1228. package/template/.hermes/skills/yss-application/references/application-layer-guide.md +0 -87
  1229. package/template/.hermes/skills/yss-audit-log/SKILL.md +0 -67
  1230. package/template/.hermes/skills/yss-audit-log/agents/openai.yaml +0 -5
  1231. package/template/.hermes/skills/yss-audit-log/assets/AuditLogAspect.java +0 -262
  1232. package/template/.hermes/skills/yss-audit-log/assets/YssAuditLogPrintSubscriberImpl.java +0 -37
  1233. package/template/.hermes/skills/yss-audit-log/assets/YssAuditLogSysManagerSubscriberImpl.java +0 -18
  1234. package/template/.hermes/skills/yss-audit-log/assets/YssAuditPublishService.java +0 -69
  1235. package/template/.hermes/skills/yss-audit-log/references/README.md +0 -69
  1236. package/template/.hermes/skills/yss-audit-log/references/source-index.md +0 -43
  1237. package/template/.hermes/skills/yss-cache/SKILL.md +0 -44
  1238. package/template/.hermes/skills/yss-cache/agents/openai.yaml +0 -5
  1239. package/template/.hermes/skills/yss-cache/references/annotations.md +0 -39
  1240. package/template/.hermes/skills/yss-cache/references/architecture.md +0 -25
  1241. package/template/.hermes/skills/yss-cache/references/configuration.md +0 -34
  1242. package/template/.hermes/skills/yss-cache/references/redis-fallback.md +0 -23
  1243. package/template/.hermes/skills/yss-cache/references/redis-topology.md +0 -62
  1244. package/template/.hermes/skills/yss-cache/references/serialization.md +0 -17
  1245. package/template/.hermes/skills/yss-cache/references/source-index.md +0 -67
  1246. package/template/.hermes/skills/yss-cache/references/troubleshooting.md +0 -33
  1247. package/template/.hermes/skills/yss-cache/references/verification.md +0 -34
  1248. package/template/.hermes/skills/yss-cache/scripts/check-skill-freshness.sh +0 -84
  1249. package/template/.hermes/skills/yss-cache/scripts/inspect-cache-usage.sh +0 -96
  1250. package/template/.hermes/skills/yss-cache/scripts/verify-cache-component.sh +0 -101
  1251. package/template/.hermes/skills/yss-components/SKILL.md +0 -386
  1252. package/template/.hermes/skills/yss-components/agents/openai.yaml +0 -5
  1253. package/template/.hermes/skills/yss-components/references/frontend-docs.md +0 -9
  1254. package/template/.hermes/skills/yss-ddd-scaffold-generator/SKILL.md +0 -110
  1255. package/template/.hermes/skills/yss-ddd-scaffold-generator/agents/openai.yaml +0 -5
  1256. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +0 -8
  1257. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -36
  1258. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/logback-spring.xml.template +0 -15
  1259. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +0 -36
  1260. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +0 -15
  1261. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +0 -19
  1262. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +0 -52
  1263. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +0 -70
  1264. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +0 -22
  1265. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +0 -54
  1266. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +0 -155
  1267. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +0 -58
  1268. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/jvm.config +0 -1
  1269. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +0 -2
  1270. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +0 -41
  1271. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/MavenWrapperDownloader.java +0 -117
  1272. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.jar +0 -0
  1273. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +0 -20
  1274. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/mvnw +0 -316
  1275. package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/mvnw.cmd +0 -188
  1276. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +0 -116
  1277. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +0 -114
  1278. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +0 -31
  1279. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/agents/openai.yaml +0 -5
  1280. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +0 -8
  1281. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +0 -5
  1282. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +0 -8
  1283. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
  1284. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +0 -8
  1285. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
  1286. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +0 -57
  1287. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/agents/openai.yaml +0 -5
  1288. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +0 -8
  1289. package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +0 -5
  1290. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +0 -191
  1291. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +0 -126
  1292. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +0 -349
  1293. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +0 -112
  1294. package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +0 -388
  1295. package/template/.hermes/skills/yss-design-system/SKILL.md +0 -105
  1296. package/template/.hermes/skills/yss-design-system/agents/openai.yaml +0 -5
  1297. package/template/.hermes/skills/yss-design-system/references/design-qa-theme.md +0 -64
  1298. package/template/.hermes/skills/yss-design-system/references/design-system.md +0 -245
  1299. package/template/.hermes/skills/yss-design-system/scripts/validate-frontmatter.mjs +0 -36
  1300. package/template/.hermes/skills/yss-design-system/scripts/validate-frontmatter.test.mjs +0 -12
  1301. package/template/.hermes/skills/yss-distributed-id/SKILL.md +0 -69
  1302. package/template/.hermes/skills/yss-distributed-id/agents/openai.yaml +0 -5
  1303. package/template/.hermes/skills/yss-distributed-id/assets/AutoIdInterceptor.java +0 -246
  1304. package/template/.hermes/skills/yss-distributed-id/assets/EnableDistributedId.java +0 -25
  1305. package/template/.hermes/skills/yss-distributed-id/assets/LeafConf.java +0 -36
  1306. package/template/.hermes/skills/yss-distributed-id/references/README.md +0 -51
  1307. package/template/.hermes/skills/yss-distributed-id/references/source-index.md +0 -86
  1308. package/template/.hermes/skills/yss-domain/SKILL.md +0 -69
  1309. package/template/.hermes/skills/yss-domain/agents/openai.yaml +0 -5
  1310. package/template/.hermes/skills/yss-domain/references/domain-layer-guide.md +0 -99
  1311. package/template/.hermes/skills/yss-dto/SKILL.md +0 -86
  1312. package/template/.hermes/skills/yss-dto/agents/openai.yaml +0 -5
  1313. package/template/.hermes/skills/yss-dto/assets/CommandDTO.java +0 -8
  1314. package/template/.hermes/skills/yss-dto/assets/PageQuery.java +0 -133
  1315. package/template/.hermes/skills/yss-dto/assets/QueryDTO.java +0 -6
  1316. package/template/.hermes/skills/yss-dto/assets/Result.java +0 -105
  1317. package/template/.hermes/skills/yss-dto/references/README.md +0 -67
  1318. package/template/.hermes/skills/yss-dto/references/openapi-wire-profile.yaml +0 -181
  1319. package/template/.hermes/skills/yss-dto/references/source-index.md +0 -55
  1320. package/template/.hermes/skills/yss-excel-mvc/SKILL.md +0 -66
  1321. package/template/.hermes/skills/yss-excel-mvc/agents/openai.yaml +0 -5
  1322. package/template/.hermes/skills/yss-excel-mvc/assets/ExcelDynamicData.java +0 -66
  1323. package/template/.hermes/skills/yss-excel-mvc/assets/RequestExcel.java +0 -33
  1324. package/template/.hermes/skills/yss-excel-mvc/assets/RequestFastExcelArgumentResolver.java +0 -272
  1325. package/template/.hermes/skills/yss-excel-mvc/assets/ResponseExcel.java +0 -46
  1326. package/template/.hermes/skills/yss-excel-mvc/assets/ResponseFastExcelReturnValueHandler.java +0 -154
  1327. package/template/.hermes/skills/yss-excel-mvc/references/README.md +0 -5
  1328. package/template/.hermes/skills/yss-excel-mvc/references/source-index.md +0 -74
  1329. package/template/.hermes/skills/yss-exception/SKILL.md +0 -57
  1330. package/template/.hermes/skills/yss-exception/agents/openai.yaml +0 -4
  1331. package/template/.hermes/skills/yss-exception/references/source-index.md +0 -35
  1332. package/template/.hermes/skills/yss-formily/SKILL.md +0 -272
  1333. package/template/.hermes/skills/yss-formily-schema-generator/SKILL.md +0 -189
  1334. package/template/.hermes/skills/yss-formily-schema-generator/agents/openai.yaml +0 -5
  1335. package/template/.hermes/skills/yss-formily-schema-generator/assets/java-sdk/ExampleUsage.java +0 -111
  1336. package/template/.hermes/skills/yss-formily-schema-generator/assets/java-sdk/YssFormilyDsl.java +0 -1219
  1337. package/template/.hermes/skills/yss-formily-schema-generator/references/workflow.md +0 -240
  1338. package/template/.hermes/skills/yss-frontend-scaffold-generator/SKILL.md +0 -76
  1339. package/template/.hermes/skills/yss-hook/SKILL.md +0 -200
  1340. package/template/.hermes/skills/yss-hook/agents/openai.yaml +0 -5
  1341. package/template/.hermes/skills/yss-hook/references/frontend-docs.md +0 -10
  1342. package/template/.hermes/skills/yss-microapp-commit/SKILL.md +0 -201
  1343. package/template/.hermes/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  1344. package/template/.hermes/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  1345. package/template/.hermes/skills/yss-mybatis/SKILL.md +0 -77
  1346. package/template/.hermes/skills/yss-mybatis/agents/openai.yaml +0 -5
  1347. package/template/.hermes/skills/yss-mybatis/assets/BaseRepository.java +0 -112
  1348. package/template/.hermes/skills/yss-mybatis/assets/EntityQueryAspect.java +0 -37
  1349. package/template/.hermes/skills/yss-mybatis/assets/MybatisBaseConfiguration.java +0 -18
  1350. package/template/.hermes/skills/yss-mybatis/assets/PageQueryEntityConfigration.java +0 -18
  1351. package/template/.hermes/skills/yss-mybatis/references/README.md +0 -57
  1352. package/template/.hermes/skills/yss-mybatis/references/source-index.md +0 -93
  1353. package/template/.hermes/skills/yss-openapi-draft-review/SKILL.md +0 -82
  1354. package/template/.hermes/skills/yss-openapi-governance/SKILL.md +0 -130
  1355. package/template/.hermes/skills/yss-openapi-governance/agents/openai.yaml +0 -4
  1356. package/template/.hermes/skills/yss-page-module-development/SKILL.md +0 -165
  1357. package/template/.hermes/skills/yss-page-module-development/agents/openai.yaml +0 -5
  1358. package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  1359. package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  1360. package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  1361. package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1362. package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  1363. package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  1364. package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  1365. package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  1366. package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  1367. package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  1368. package/template/.hermes/skills/yss-page-module-development/references/component-map.md +0 -34
  1369. package/template/.hermes/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  1370. package/template/.hermes/skills/yss-page-module-development/references/hooks-map.md +0 -11
  1371. package/template/.hermes/skills/yss-page-module-development/references/utils-map.md +0 -14
  1372. package/template/.hermes/skills/yss-product-lifecycle/SKILL.md +0 -52
  1373. package/template/.hermes/skills/yss-product-lifecycle/agents/openai.yaml +0 -4
  1374. package/template/.hermes/skills/yss-product-lifecycle/references/artifact-dependencies.md +0 -36
  1375. package/template/.hermes/skills/yss-product-lifecycle/references/matt-yss-adapter.md +0 -122
  1376. package/template/.hermes/skills/yss-product-lifecycle/references/orchestration-contract.yaml +0 -863
  1377. package/template/.hermes/skills/yss-product-lifecycle/references/orchestration.md +0 -116
  1378. package/template/.hermes/skills/yss-product-lifecycle/references/state-model.md +0 -112
  1379. package/template/.hermes/skills/yss-prototype-stage/SKILL.md +0 -47
  1380. package/template/.hermes/skills/yss-prototype-stage/references/product-design-adapter.md +0 -54
  1381. package/template/.hermes/skills/yss-prototype-stage/scripts/prototype-contract.mjs +0 -207
  1382. package/template/.hermes/skills/yss-prototype-stage/tests/run-scenarios.mjs +0 -154
  1383. package/template/.hermes/skills/yss-repository/SKILL.md +0 -78
  1384. package/template/.hermes/skills/yss-repository/agents/openai.yaml +0 -5
  1385. package/template/.hermes/skills/yss-repository/references/infrastructure-layer-guide.md +0 -107
  1386. package/template/.hermes/skills/yss-resilience4j/SKILL.md +0 -46
  1387. package/template/.hermes/skills/yss-resilience4j/agents/openai.yaml +0 -4
  1388. package/template/.hermes/skills/yss-resilience4j/references/source-index.md +0 -33
  1389. package/template/.hermes/skills/yss-router/SKILL.md +0 -51
  1390. package/template/.hermes/skills/yss-router/agents/openai.yaml +0 -4
  1391. package/template/.hermes/skills/yss-router/references/boundaries.md +0 -50
  1392. package/template/.hermes/skills/yss-router/references/router-contract.yaml +0 -345
  1393. package/template/.hermes/skills/yss-router/references/slice-implementation-contract.md +0 -185
  1394. package/template/.hermes/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  1395. package/template/.hermes/skills/yss-security-algorithm/SKILL.md +0 -52
  1396. package/template/.hermes/skills/yss-security-algorithm/agents/openai.yaml +0 -4
  1397. package/template/.hermes/skills/yss-security-algorithm/references/source-index.md +0 -35
  1398. package/template/.hermes/skills/yss-source-index/SKILL.md +0 -63
  1399. package/template/.hermes/skills/yss-source-index/agents/openai.yaml +0 -4
  1400. package/template/.hermes/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  1401. package/template/.hermes/skills/yss-stage-decision/SKILL.md +0 -50
  1402. package/template/.hermes/skills/yss-stage-decision/references/domain-strategy-contract.md +0 -26
  1403. package/template/.hermes/skills/yss-stage-decision/references/domain-strategy.schema.json +0 -128
  1404. package/template/.hermes/skills/yss-stage-decision/references/stage-decision-package-contract.md +0 -19
  1405. package/template/.hermes/skills/yss-stage-decision/references/stage-decision-package.schema.json +0 -86
  1406. package/template/.hermes/skills/yss-stage-decision/references/validation-rules.md +0 -18
  1407. package/template/.hermes/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +0 -169
  1408. package/template/.hermes/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +0 -100
  1409. package/template/.hermes/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +0 -15
  1410. package/template/.hermes/skills/yss-stage-decision/tests/fixtures/invalid-direction.yaml +0 -58
  1411. package/template/.hermes/skills/yss-stage-decision/tests/fixtures/invalid-stage-decision-blocker.yaml +0 -44
  1412. package/template/.hermes/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +0 -15
  1413. package/template/.hermes/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +0 -49
  1414. package/template/.hermes/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +0 -108
  1415. package/template/.hermes/skills/yss-stage-decision/tests/run-scenarios.mjs +0 -68
  1416. package/template/.hermes/skills/yss-tactical-design/SKILL.md +0 -35
  1417. package/template/.hermes/skills/yss-tactical-design/agents/openai.yaml +0 -4
  1418. package/template/.hermes/skills/yss-tactical-design/references/output-template.md +0 -28
  1419. package/template/.hermes/skills/yss-tactical-design/references/tactical-design-contract.md +0 -41
  1420. package/template/.hermes/skills/yss-tactical-design/references/tactical-design.schema.json +0 -31
  1421. package/template/.hermes/skills/yss-tactical-design/references/validation-rules.md +0 -13
  1422. package/template/.hermes/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +0 -213
  1423. package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-api-leaks-aggregate.yaml +0 -21
  1424. package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-missing-consistency-policy.yaml +0 -21
  1425. package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-missing-invariant.yaml +0 -21
  1426. package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-stale-upstream-ref.yaml +0 -21
  1427. package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-strategic-as-tactical.yaml +0 -21
  1428. package/template/.hermes/skills/yss-tactical-design/tests/fixtures/valid-tactical-design.yaml +0 -80
  1429. package/template/.hermes/skills/yss-tactical-design/tests/run-scenarios.mjs +0 -47
  1430. package/template/.hermes/skills/yss-ui/SKILL.md +0 -170
  1431. package/template/.hermes/skills/yss-ui/agents/openai.yaml +0 -5
  1432. package/template/.hermes/skills/yss-ui/assets/demos/button/auth-basic.vue +0 -24
  1433. package/template/.hermes/skills/yss-ui/assets/demos/button/auth-dropdown.vue +0 -29
  1434. package/template/.hermes/skills/yss-ui/assets/demos/button/permission.vue +0 -10
  1435. package/template/.hermes/skills/yss-ui/assets/demos/button/size.vue +0 -12
  1436. package/template/.hermes/skills/yss-ui/assets/demos/button/states.vue +0 -12
  1437. package/template/.hermes/skills/yss-ui/assets/demos/card/basic/index.vue +0 -54
  1438. package/template/.hermes/skills/yss-ui/assets/demos/card/basic/style.less +0 -41
  1439. package/template/.hermes/skills/yss-ui/assets/demos/card/cover/index.vue +0 -25
  1440. package/template/.hermes/skills/yss-ui/assets/demos/card/flexible-layout/index.vue +0 -122
  1441. package/template/.hermes/skills/yss-ui/assets/demos/card/flexible-layout/style.less +0 -191
  1442. package/template/.hermes/skills/yss-ui/assets/demos/card/header-extra/index.vue +0 -260
  1443. package/template/.hermes/skills/yss-ui/assets/demos/card/header-extra/style.less +0 -124
  1444. package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/constants.ts +0 -61
  1445. package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/index.vue +0 -72
  1446. package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/metrics-cards.vue +0 -70
  1447. package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/style.less +0 -232
  1448. package/template/.hermes/skills/yss-ui/assets/demos/card/loading/index.vue +0 -19
  1449. package/template/.hermes/skills/yss-ui/assets/demos/card/meta/index.vue +0 -19
  1450. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/basic/constants.ts +0 -44
  1451. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/basic/hooks/useConditionBasic.ts +0 -18
  1452. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/basic/index.vue +0 -100
  1453. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/linked/constants.ts +0 -51
  1454. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/linked/hooks/useConditionLinked.ts +0 -29
  1455. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/linked/index.vue +0 -23
  1456. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/nesting-between/constants.ts +0 -35
  1457. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/nesting-between/hooks/useConditionNesting.ts +0 -25
  1458. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/nesting-between/index.vue +0 -24
  1459. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/remote/constants.ts +0 -7
  1460. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/remote/hooks/useConditionRemote.ts +0 -75
  1461. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/remote/index.vue +0 -23
  1462. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation/constants.ts +0 -42
  1463. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation/hooks/useConditionBasic.ts +0 -22
  1464. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation/index.vue +0 -138
  1465. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation-custom/constants.ts +0 -42
  1466. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation-custom/hooks/useConditionBasic.ts +0 -22
  1467. package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation-custom/index.vue +0 -134
  1468. package/template/.hermes/skills/yss-ui/assets/demos/cron/basic/index.vue +0 -54
  1469. package/template/.hermes/skills/yss-ui/assets/demos/cron/select/index.vue +0 -145
  1470. package/template/.hermes/skills/yss-ui/assets/demos/echarts/basic.vue +0 -30
  1471. package/template/.hermes/skills/yss-ui/assets/demos/echarts/calendar-heatmap.vue +0 -49
  1472. package/template/.hermes/skills/yss-ui/assets/demos/echarts/candlestick.vue +0 -30
  1473. package/template/.hermes/skills/yss-ui/assets/demos/echarts/dark.vue +0 -40
  1474. package/template/.hermes/skills/yss-ui/assets/demos/echarts/expose-methods.vue +0 -97
  1475. package/template/.hermes/skills/yss-ui/assets/demos/echarts/funnel.vue +0 -42
  1476. package/template/.hermes/skills/yss-ui/assets/demos/echarts/gauge.vue +0 -25
  1477. package/template/.hermes/skills/yss-ui/assets/demos/echarts/line.vue +0 -24
  1478. package/template/.hermes/skills/yss-ui/assets/demos/echarts/mix.vue +0 -33
  1479. package/template/.hermes/skills/yss-ui/assets/demos/echarts/pie.vue +0 -34
  1480. package/template/.hermes/skills/yss-ui/assets/demos/echarts/radar.vue +0 -38
  1481. package/template/.hermes/skills/yss-ui/assets/demos/echarts/ring-segment.vue +0 -77
  1482. package/template/.hermes/skills/yss-ui/assets/demos/echarts/scatter.vue +0 -23
  1483. package/template/.hermes/skills/yss-ui/assets/demos/echarts/stacked-area.vue +0 -55
  1484. package/template/.hermes/skills/yss-ui/assets/demos/echarts/stacked-bar.vue +0 -52
  1485. package/template/.hermes/skills/yss-ui/assets/demos/echarts/treemap.vue +0 -30
  1486. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/all-types/hooks/useAllTypes.ts +0 -259
  1487. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/all-types/index.vue +0 -33
  1488. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/async-remote/hooks/useAsyncRemote.ts +0 -201
  1489. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/async-remote/index.vue +0 -45
  1490. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/basic/index.vue +0 -104
  1491. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/big-data/index.vue +0 -82
  1492. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/custom-rule/index.vue +0 -114
  1493. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/direct-editable/index.vue +0 -94
  1494. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/drag/index.vue +0 -125
  1495. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/filter/index.vue +0 -107
  1496. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/linkage/index.vue +0 -181
  1497. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/pagination-action/index.vue +0 -131
  1498. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/required/index.vue +0 -95
  1499. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/row-edit/index.vue +0 -220
  1500. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/row-options/index.vue +0 -165
  1501. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/slot-linkage/index.vue +0 -184
  1502. package/template/.hermes/skills/yss-ui/assets/demos/edit-table/submit-view/index.vue +0 -107
  1503. package/template/.hermes/skills/yss-ui/assets/demos/file-import/basic.vue +0 -54
  1504. package/template/.hermes/skills/yss-ui/assets/demos/file-import/formily.vue +0 -42
  1505. package/template/.hermes/skills/yss-ui/assets/demos/file-import/multiple.vue +0 -33
  1506. package/template/.hermes/skills/yss-ui/assets/demos/file-import/result-slot.vue +0 -30
  1507. package/template/.hermes/skills/yss-ui/assets/demos/formily/actions.vue +0 -61
  1508. package/template/.hermes/skills/yss-ui/assets/demos/formily/align.vue +0 -56
  1509. package/template/.hermes/skills/yss-ui/assets/demos/formily/async-validate.vue +0 -69
  1510. package/template/.hermes/skills/yss-ui/assets/demos/formily/basic.vue +0 -317
  1511. package/template/.hermes/skills/yss-ui/assets/demos/formily/collapse.vue +0 -104
  1512. package/template/.hermes/skills/yss-ui/assets/demos/formily/custom-component.vue +0 -75
  1513. package/template/.hermes/skills/yss-ui/assets/demos/formily/disabled.vue +0 -71
  1514. package/template/.hermes/skills/yss-ui/assets/demos/formily/dynamic-array.vue +0 -74
  1515. package/template/.hermes/skills/yss-ui/assets/demos/formily/dynamic.vue +0 -59
  1516. package/template/.hermes/skills/yss-ui/assets/demos/formily/effects.vue +0 -117
  1517. package/template/.hermes/skills/yss-ui/assets/demos/formily/events-inline.vue +0 -82
  1518. package/template/.hermes/skills/yss-ui/assets/demos/formily/events-scope.vue +0 -101
  1519. package/template/.hermes/skills/yss-ui/assets/demos/formily/grid.vue +0 -71
  1520. package/template/.hermes/skills/yss-ui/assets/demos/formily/group.vue +0 -102
  1521. package/template/.hermes/skills/yss-ui/assets/demos/formily/helper-slot.vue +0 -50
  1522. package/template/.hermes/skills/yss-ui/assets/demos/formily/label-tip.vue +0 -42
  1523. package/template/.hermes/skills/yss-ui/assets/demos/formily/linkage-multi.vue +0 -127
  1524. package/template/.hermes/skills/yss-ui/assets/demos/formily/linkage.vue +0 -78
  1525. package/template/.hermes/skills/yss-ui/assets/demos/formily/modes.vue +0 -72
  1526. package/template/.hermes/skills/yss-ui/assets/demos/formily/remote-enum.vue +0 -88
  1527. package/template/.hermes/skills/yss-ui/assets/demos/formily/slot.vue +0 -54
  1528. package/template/.hermes/skills/yss-ui/assets/demos/formily/steps.vue +0 -135
  1529. package/template/.hermes/skills/yss-ui/assets/demos/formily/submit-failed.vue +0 -72
  1530. package/template/.hermes/skills/yss-ui/assets/demos/monaco/basic.vue +0 -40
  1531. package/template/.hermes/skills/yss-ui/assets/demos/monaco/diff-basic.vue +0 -143
  1532. package/template/.hermes/skills/yss-ui/assets/demos/monaco/fullscreen.vue +0 -84
  1533. package/template/.hermes/skills/yss-ui/assets/demos/monaco/history-log-viewer.vue +0 -586
  1534. package/template/.hermes/skills/yss-ui/assets/demos/monaco/log-viewer.vue +0 -260
  1535. package/template/.hermes/skills/yss-ui/assets/demos/monaco/mock/mockLogApi.ts +0 -199
  1536. package/template/.hermes/skills/yss-ui/assets/demos/monaco/monaco.vue +0 -66
  1537. package/template/.hermes/skills/yss-ui/assets/demos/monaco/readonly.vue +0 -20
  1538. package/template/.hermes/skills/yss-ui/assets/demos/monaco/resizable.vue +0 -22
  1539. package/template/.hermes/skills/yss-ui/assets/demos/monaco/sql-schema.vue +0 -20
  1540. package/template/.hermes/skills/yss-ui/assets/demos/monaco/switch-lang-theme.vue +0 -48
  1541. package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table/constant.ts +0 -18
  1542. package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table/index.vue +0 -60
  1543. package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table/style.less +0 -39
  1544. package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table-layout/hooks/useTreeTable.ts +0 -158
  1545. package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table-layout/index.vue +0 -88
  1546. package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table-layout/style.less +0 -73
  1547. package/template/.hermes/skills/yss-ui/assets/demos/table/action/index.vue +0 -83
  1548. package/template/.hermes/skills/yss-ui/assets/demos/table/action/style.less +0 -3
  1549. package/template/.hermes/skills/yss-ui/assets/demos/table/action-auth/index.vue +0 -41
  1550. package/template/.hermes/skills/yss-ui/assets/demos/table/action-slot/index.vue +0 -62
  1551. package/template/.hermes/skills/yss-ui/assets/demos/table/action-slot/style.less +0 -36
  1552. package/template/.hermes/skills/yss-ui/assets/demos/table/basic/hooks/useBasicTable.ts +0 -205
  1553. package/template/.hermes/skills/yss-ui/assets/demos/table/basic/index.vue +0 -89
  1554. package/template/.hermes/skills/yss-ui/assets/demos/table/basic/style.less +0 -28
  1555. package/template/.hermes/skills/yss-ui/assets/demos/table/column-custom-search/hooks/useColumnCustomSearch.ts +0 -236
  1556. package/template/.hermes/skills/yss-ui/assets/demos/table/column-custom-search/index.vue +0 -141
  1557. package/template/.hermes/skills/yss-ui/assets/demos/table/column-custom-search/style.less +0 -48
  1558. package/template/.hermes/skills/yss-ui/assets/demos/table/drag/index.vue +0 -42
  1559. package/template/.hermes/skills/yss-ui/assets/demos/table/expand/action-expand.vue +0 -142
  1560. package/template/.hermes/skills/yss-ui/assets/demos/table/expand/index.vue +0 -35
  1561. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-async/index.vue +0 -93
  1562. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-auto/index.vue +0 -99
  1563. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-custom/index.vue +0 -72
  1564. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-local/index.vue +0 -112
  1565. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-mixed/index.vue +0 -142
  1566. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-remote/constant.ts +0 -129
  1567. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-remote/hooks/useTableData.ts +0 -186
  1568. package/template/.hermes/skills/yss-ui/assets/demos/table/filter-remote/index.vue +0 -73
  1569. package/template/.hermes/skills/yss-ui/assets/demos/table/group-header/index.vue +0 -86
  1570. package/template/.hermes/skills/yss-ui/assets/demos/table/group-header/style.less +0 -3
  1571. package/template/.hermes/skills/yss-ui/assets/demos/table/header-height/index.vue +0 -29
  1572. package/template/.hermes/skills/yss-ui/assets/demos/table/header-height/style.less +0 -9
  1573. package/template/.hermes/skills/yss-ui/assets/demos/table/merge-cells/hooks/useMergeCells.ts +0 -183
  1574. package/template/.hermes/skills/yss-ui/assets/demos/table/merge-cells/index.vue +0 -17
  1575. package/template/.hermes/skills/yss-ui/assets/demos/table/merge-cells/style.less +0 -3
  1576. package/template/.hermes/skills/yss-ui/assets/demos/table/pagination-remote/hooks/usePaginationRemote.ts +0 -106
  1577. package/template/.hermes/skills/yss-ui/assets/demos/table/pagination-remote/index.vue +0 -24
  1578. package/template/.hermes/skills/yss-ui/assets/demos/table/renderers/index.vue +0 -64
  1579. package/template/.hermes/skills/yss-ui/assets/demos/table/selection-checkbox/index.vue +0 -88
  1580. package/template/.hermes/skills/yss-ui/assets/demos/table/selection-checkbox/style.less +0 -9
  1581. package/template/.hermes/skills/yss-ui/assets/demos/table/selection-radio/index.vue +0 -57
  1582. package/template/.hermes/skills/yss-ui/assets/demos/table/selection-radio/style.less +0 -9
  1583. package/template/.hermes/skills/yss-ui/assets/demos/table/transform/index.vue +0 -32
  1584. package/template/.hermes/skills/yss-ui/assets/demos/tree/basic-left/index.vue +0 -124
  1585. package/template/.hermes/skills/yss-ui/assets/demos/tree/datasource-group/index.vue +0 -31
  1586. package/template/.hermes/skills/yss-ui/assets/demos/tree/multi-checkable/index.vue +0 -86
  1587. package/template/.hermes/skills/yss-ui/assets/demos/tree/multiple-select/index.vue +0 -76
  1588. package/template/.hermes/skills/yss-ui/assets/demos/tree/resource-list/index.vue +0 -41
  1589. package/template/.hermes/skills/yss-ui/assets/demos/tree/search-toolbar/index.vue +0 -156
  1590. package/template/.hermes/skills/yss-ui/assets/demos/tree/slot-icon/index.vue +0 -36
  1591. package/template/.hermes/skills/yss-ui/assets/demos/tree/slot-switcher-icon/index.vue +0 -34
  1592. package/template/.hermes/skills/yss-ui/assets/docs/components/button.md +0 -79
  1593. package/template/.hermes/skills/yss-ui/assets/docs/components/card.md +0 -162
  1594. package/template/.hermes/skills/yss-ui/assets/docs/components/conditionBuilder.md +0 -114
  1595. package/template/.hermes/skills/yss-ui/assets/docs/components/cron.md +0 -77
  1596. package/template/.hermes/skills/yss-ui/assets/docs/components/echarts.md +0 -110
  1597. package/template/.hermes/skills/yss-ui/assets/docs/components/editTable.md +0 -212
  1598. package/template/.hermes/skills/yss-ui/assets/docs/components/fileImport.md +0 -85
  1599. package/template/.hermes/skills/yss-ui/assets/docs/components/formily.md +0 -370
  1600. package/template/.hermes/skills/yss-ui/assets/docs/components/monaco.md +0 -369
  1601. package/template/.hermes/skills/yss-ui/assets/docs/components/sheet.md +0 -169
  1602. package/template/.hermes/skills/yss-ui/assets/docs/components/split-pane.md +0 -45
  1603. package/template/.hermes/skills/yss-ui/assets/docs/components/table.md +0 -398
  1604. package/template/.hermes/skills/yss-ui/assets/docs/components/tree.md +0 -102
  1605. package/template/.hermes/skills/yss-ui/assets/docs/guide/gitlab-ci-integration.md +0 -166
  1606. package/template/.hermes/skills/yss-ui/assets/docs/guide/index.md +0 -132
  1607. package/template/.hermes/skills/yss-ui/assets/docs/guide/installation.md +0 -97
  1608. package/template/.hermes/skills/yss-ui/assets/docs/guide/jsp.md +0 -227
  1609. package/template/.hermes/skills/yss-ui/assets/docs/guide/llms.md +0 -295
  1610. package/template/.hermes/skills/yss-ui/assets/docs/guide/monorepo-versioning.md +0 -149
  1611. package/template/.hermes/skills/yss-ui/assets/docs/guide/release-workflow.md +0 -251
  1612. package/template/.hermes/skills/yss-ui/assets/docs/hooks/use-table-height.md +0 -101
  1613. package/template/.hermes/skills/yss-ui/assets/docs/hooks/use-tree-height.md +0 -115
  1614. package/template/.hermes/skills/yss-ui/assets/docs/hooks/useFullscreen.md +0 -130
  1615. package/template/.hermes/skills/yss-ui/assets/docs/hooks/useLoading.md +0 -97
  1616. package/template/.hermes/skills/yss-ui/assets/docs/root/resources.md +0 -18
  1617. package/template/.hermes/skills/yss-ui/assets/keyword-index.json +0 -53
  1618. package/template/.hermes/skills/yss-ui/assets/keyword-index.md +0 -47
  1619. package/template/.hermes/skills/yss-ui/assets/reference-index.json +0 -55
  1620. package/template/.hermes/skills/yss-ui/assets/reference-index.md +0 -74
  1621. package/template/.hermes/skills/yss-ui/assets/scenario-index.json +0 -50
  1622. package/template/.hermes/skills/yss-ui/assets/scenario-index.md +0 -41
  1623. package/template/.hermes/skills/yss-ui/references/accessibility.md +0 -23
  1624. package/template/.hermes/skills/yss-ui/references/antdv-compatibility.md +0 -39
  1625. package/template/.hermes/skills/yss-ui/references/checklist.md +0 -110
  1626. package/template/.hermes/skills/yss-ui/references/component-routing.md +0 -31
  1627. package/template/.hermes/skills/yss-ui/references/frontend-docs.md +0 -11
  1628. package/template/.hermes/skills/yss-ui/references/migration-antdv-to-yss.md +0 -20
  1629. package/template/.hermes/skills/yss-ui/references/quick-recipes.md +0 -280
  1630. package/template/.hermes/skills/yss-ui/references/theme-locale-overlay.md +0 -25
  1631. package/template/.hermes/skills/yss-ui/references/verification.md +0 -20
  1632. package/template/.hermes/skills/yss-ui-business-page-generation/SKILL.md +0 -159
  1633. package/template/.hermes/skills/yss-ui-business-page-generation/references/component-map.md +0 -39
  1634. package/template/.hermes/skills/yss-ui-business-page-generation/references/hooks-map.md +0 -70
  1635. package/template/.hermes/skills/yss-ui-business-page-generation/references/utils-map.md +0 -51
  1636. package/template/.hermes/skills/yss-up-springboot3/SKILL.md +0 -40
  1637. package/template/.hermes/skills/yss-up-springboot3/agents/openai.yaml +0 -4
  1638. package/template/.hermes/skills/yss-use-table-height/SKILL.md +0 -130
  1639. package/template/.hermes/skills/yss-use-table-height/agents/openai.yaml +0 -5
  1640. package/template/.hermes/skills/yss-use-table-height/references/frontend-docs.md +0 -9
  1641. package/template/.hermes/skills/yss-use-tree-height/SKILL.md +0 -98
  1642. package/template/.hermes/skills/yss-use-tree-height/agents/openai.yaml +0 -5
  1643. package/template/.hermes/skills/yss-use-tree-height/references/frontend-docs.md +0 -9
  1644. package/template/.hermes/skills/yss-userinfo/SKILL.md +0 -49
  1645. package/template/.hermes/skills/yss-userinfo/agents/openai.yaml +0 -4
  1646. package/template/.hermes/skills/yss-userinfo/references/source-index.md +0 -34
  1647. package/template/.hermes/skills/yss-validation/SKILL.md +0 -56
  1648. package/template/.hermes/skills/yss-validation/agents/openai.yaml +0 -4
  1649. package/template/.hermes/skills/yss-validation/references/source-index.md +0 -33
  1650. package/template/.hermes/skills/yss-web-controller/SKILL.md +0 -79
  1651. package/template/.hermes/skills/yss-web-controller/agents/openai.yaml +0 -5
  1652. package/template/.hermes/skills/yss-web-controller/assets/templates/Controller.java.template +0 -72
  1653. package/template/.hermes/skills/yss-web-controller/assets/templates/WebConvertor.java.template +0 -33
  1654. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +0 -19
  1655. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +0 -24
  1656. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +0 -18
  1657. package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +0 -19
  1658. package/template/.hermes/skills/yss-web-controller/references/web-adapter-layer-guide.md +0 -84
  1659. package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.mjs +0 -105
  1660. package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.test.mjs +0 -60
  1661. package/template/.hermes/skills/ytable-usage/SKILL.md +0 -251
  1662. package/template/.hermes/skills/ytree-usage/SKILL.md +0 -132
  1663. package/template/.kiro/settings/mcp.json +0 -8
  1664. package/template/.pi/skills/research/SKILL.md +0 -12
  1665. package/template/.pi/skills/research/agents/openai.yaml +0 -3
  1666. package/template/.pi/skills/yss-router/SKILL.md +0 -51
  1667. package/template/.pi/skills/yss-router/agents/openai.yaml +0 -4
  1668. package/template/.pi/skills/yss-router/references/boundaries.md +0 -50
  1669. package/template/.pi/skills/yss-router/references/router-contract.yaml +0 -345
  1670. package/template/.pi/skills/yss-router/references/slice-implementation-contract.md +0 -185
  1671. package/template/.pi/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  1672. package/template/.pi/skills/yss-source-index/SKILL.md +0 -63
  1673. package/template/.pi/skills/yss-source-index/agents/openai.yaml +0 -4
  1674. package/template/.pi/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  1675. package/template/.qoder/skills/research/SKILL.md +0 -12
  1676. package/template/.qoder/skills/research/agents/openai.yaml +0 -3
  1677. package/template/.qoder/skills/yss-router/SKILL.md +0 -51
  1678. package/template/.qoder/skills/yss-router/agents/openai.yaml +0 -4
  1679. package/template/.qoder/skills/yss-router/references/boundaries.md +0 -50
  1680. package/template/.qoder/skills/yss-router/references/router-contract.yaml +0 -345
  1681. package/template/.qoder/skills/yss-router/references/slice-implementation-contract.md +0 -185
  1682. package/template/.qoder/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  1683. package/template/.qoder/skills/yss-source-index/SKILL.md +0 -63
  1684. package/template/.qoder/skills/yss-source-index/agents/openai.yaml +0 -4
  1685. package/template/.qoder/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  1686. package/template/.trae/skills/research/SKILL.md +0 -12
  1687. package/template/.trae/skills/research/agents/openai.yaml +0 -3
  1688. package/template/.trae/skills/yss-router/SKILL.md +0 -51
  1689. package/template/.trae/skills/yss-router/agents/openai.yaml +0 -4
  1690. package/template/.trae/skills/yss-router/references/boundaries.md +0 -50
  1691. package/template/.trae/skills/yss-router/references/router-contract.yaml +0 -345
  1692. package/template/.trae/skills/yss-router/references/slice-implementation-contract.md +0 -185
  1693. package/template/.trae/skills/yss-router/references/yss-skill-execution-result.md +0 -67
  1694. package/template/.trae/skills/yss-source-index/SKILL.md +0 -63
  1695. package/template/.trae/skills/yss-source-index/agents/openai.yaml +0 -4
  1696. package/template/.trae/skills/yss-source-index/references/source-location.md +0 -18
  1697. package/template/.trae/skills/yss-source-index/references/source-map-config.md +0 -30
  1698. package/template/.trae/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
  1699. package/template/.trae/skills/yss-source-index/scripts/refresh-yss-skill-index.test.mjs +0 -15
  1700. package/template/scripts/verify-yss-router-scenarios +0 -3
  1701. /package/template/.agents/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
  1702. /package/template/.agents/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
  1703. /package/template/.agents/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
  1704. /package/template/.claude/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
  1705. /package/template/.claude/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
  1706. /package/template/.claude/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
  1707. /package/template/.codex/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
  1708. /package/template/.codex/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
  1709. /package/template/.codex/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
  1710. /package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
  1711. /package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
  1712. /package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
  1713. /package/template/{.hermes/skills/yss-source-index → .pi/skills/yss-skill-source-index-refresh}/references/source-location.md +0 -0
  1714. /package/template/{.hermes/skills/yss-source-index → .pi/skills/yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
  1715. /package/template/{.hermes/skills/yss-source-index → .pi/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
  1716. /package/template/{.pi/skills/yss-source-index → .qoder/skills/yss-skill-source-index-refresh}/references/source-location.md +0 -0
  1717. /package/template/{.pi/skills/yss-source-index → .qoder/skills/yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
  1718. /package/template/{.pi/skills/yss-source-index → .qoder/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
  1719. /package/template/{.qoder/skills/yss-source-index → .trae/skills/yss-skill-source-index-refresh}/references/source-location.md +0 -0
  1720. /package/template/{.qoder/skills/yss-source-index → .trae/skills/yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
  1721. /package/template/{.qoder/skills/yss-source-index → .trae/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
@@ -1,739 +0,0 @@
1
- // Unit tests for the pure geometry/text helpers that every renderer leans on.
2
- // These are exercised only transitively by the golden byte-compares, which
3
- // can't distinguish a geometry regression from an intentional layout change —
4
- // so they get a direct oracle here. Zero deps: node:test + node:assert.
5
- //
6
- // node --test test/*.test.mjs (or: npm test)
7
-
8
- import { test } from 'node:test';
9
- import assert from 'node:assert/strict';
10
- import {
11
- rectsOverlap,
12
- segmentIntersectsRect,
13
- segmentRectClearance,
14
- segmentRectIntersectionLength,
15
- collectLabelRouteClearance,
16
- cleanEndpointSideProblems,
17
- cleanFlowProblems,
18
- cleanCrossingProblems,
19
- collectAmbiguousCorridors,
20
- cleanAmbiguousCorridorProblems,
21
- collectBorderRuns,
22
- cleanBorderRunProblems,
23
- collectRouteRhythmIssues,
24
- cleanRouteRhythmProblems,
25
- routeBudgetMetrics,
26
- asArray,
27
- isFinitePoint,
28
- anchor,
29
- automaticPortRhythmBridge,
30
- defaultFromSide,
31
- defaultToSide,
32
- chosenSide,
33
- routeHonorsEndpointSides,
34
- polylinePath,
35
- roundedPath,
36
- labelPoint,
37
- suggestLabelObstacleFix,
38
- suggestComponentSeparation,
39
- } from '../renderers/shared/geometry.mjs';
40
- import { textUnits, applyTemplate, renderSemanticSigil } from '../renderers/shared/utils.mjs';
41
-
42
- const rect = (x, y, w, h) => ({ x, y, width: w, height: h, cx: x + w / 2, cy: y + h / 2 });
43
-
44
- test('automaticPortRhythmBridge: near parallel ports use readable outside runs', () => {
45
- const points = automaticPortRhythmBridge(
46
- [742, 300],
47
- [735, 180],
48
- 'top',
49
- 'bottom',
50
- );
51
-
52
- assert.deepEqual(points, [
53
- [742, 300],
54
- [742, 276],
55
- [758, 276],
56
- [758, 204],
57
- [735, 204],
58
- [735, 180],
59
- ]);
60
- assert.deepEqual(collectRouteRhythmIssues({
61
- routedRelations: [{ relation: { id: 'read' }, points }],
62
- }), []);
63
- });
64
-
65
- test('rectsOverlap: separated rects do not overlap', () => {
66
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(20, 0, 10, 10)), false);
67
- });
68
-
69
- test('rectsOverlap: clearly overlapping rects overlap', () => {
70
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(5, 5, 10, 10)), true);
71
- });
72
-
73
- test('rectsOverlap: edge-touching is NOT overlap at gap 0 (<= boundary)', () => {
74
- // a ends at x=10, b starts at x=10 — exactly touching.
75
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(10, 0, 10, 10), 0), false);
76
- });
77
-
78
- test('rectsOverlap: positive gap flags rects within that gap as too close', () => {
79
- // 8px apart, required gap 8 → touching the threshold counts as too close.
80
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(18, 0, 10, 10), 8), false);
81
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(17, 0, 10, 10), 8), true);
82
- });
83
-
84
- test('rectsOverlap: negative gap shrinks the hit box (label-collision convention)', () => {
85
- // gap -2 means rects must overlap by MORE than 2px to count — a 1px sliver
86
- // does not. This is the sign convention the label checks rely on.
87
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(9, 0, 10, 10), -2), false);
88
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(7, 0, 10, 10), -2), true);
89
- });
90
-
91
- test('rectsOverlap: non-finite geometry is not an overlap', () => {
92
- // A component authored without pos lands here as NaN. Every comparison in the
93
- // negated form is false for NaN, so the unguarded version reported a collision
94
- // for every pair and buried the real "must include pos" diagnostic.
95
- const nan = rect(Number.NaN, Number.NaN, 120, 60);
96
- assert.equal(rectsOverlap(nan, nan, 8), false);
97
- assert.equal(rectsOverlap(nan, rect(0, 0, 10, 10), 8), false);
98
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), nan, 8), false);
99
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(20, 0, Number.NaN, 10)), false);
100
- assert.equal(rectsOverlap(rect(0, 0, 10, 10), rect(5, 5, 10, Number.POSITIVE_INFINITY)), false);
101
- });
102
-
103
- test('segmentIntersectsRect: detects an edge crossing a node box', () => {
104
- assert.equal(segmentIntersectsRect({ start: [0, 5], end: [20, 5] }, rect(8, 0, 4, 10)), true);
105
- assert.equal(segmentIntersectsRect({ start: [0, 20], end: [20, 20] }, rect(8, 0, 4, 10)), false);
106
- });
107
-
108
- test('segmentRectClearance measures horizontal, vertical, and reversed diagonal segments', () => {
109
- const box = rect(10, 10, 10, 10);
110
- assert.equal(segmentRectClearance({ start: [0, 6], end: [30, 6] }, box), 4);
111
- assert.equal(segmentRectClearance({ start: [6, 0], end: [6, 30] }, box), 4);
112
- assert.equal(segmentRectClearance({ start: [0, 0], end: [8, 8] }, box), Math.sqrt(8));
113
- assert.equal(segmentRectClearance({ start: [8, 8], end: [0, 0] }, box), Math.sqrt(8));
114
- assert.equal(segmentRectClearance({ start: [0, 15], end: [30, 15] }, box), 0);
115
- });
116
-
117
- test('label-route clearance locks tangent, sub-threshold, boundary, and reversed coordinates', () => {
118
- const box = rect(10, 10, 10, 10);
119
- const cases = [
120
- { segment: { start: [0, 10], end: [30, 10] }, clearance: 0, intersection: 10 },
121
- { segment: { start: [10, 0], end: [10, 30] }, clearance: 0, intersection: 10 },
122
- { segment: { start: [0, 0], end: [30, 30] }, clearance: 0, intersection: Math.sqrt(200) },
123
- { segment: { start: [0, 0], end: [10, 10] }, clearance: 0, intersection: 0 },
124
- { segment: { start: [0, 8.1], end: [30, 8.1] }, clearance: 1.9, intersection: 0 },
125
- { segment: { start: [0, 8], end: [30, 8] }, clearance: 2, intersection: 0 },
126
- { segment: { start: [0, 6.1], end: [30, 6.1] }, clearance: 3.9, intersection: 0 },
127
- { segment: { start: [0, 6], end: [30, 6] }, clearance: 4, intersection: 0 },
128
- { segment: { start: [0, 0], end: [5, 0] }, clearance: Math.sqrt(125), intersection: 0 },
129
- ];
130
- for (const { segment, clearance, intersection } of cases) {
131
- assert.ok(Math.abs(segmentRectClearance(segment, box) - clearance) < 0.000001);
132
- assert.ok(Math.abs(segmentRectIntersectionLength(segment, box) - intersection) < 0.000001);
133
- const reversed = { start: segment.end, end: segment.start };
134
- assert.ok(Math.abs(segmentRectClearance(reversed, box) - clearance) < 0.000001);
135
- assert.ok(Math.abs(segmentRectIntersectionLength(reversed, box) - intersection) < 0.000001);
136
- }
137
- });
138
-
139
- test('collectLabelRouteClearance exempts only the owning relationship at an exact threshold', () => {
140
- const owner = { id: 'owner', from: 'a', to: 'b' };
141
- const sharedSource = { id: 'other', from: 'a', to: 'c' };
142
- const labels = [{ relation: owner, relationIndex: 0, label: 'handoff', ...rect(80, 48, 60, 14) }];
143
- const routedRelations = [
144
- { relation: owner, relationIndex: 0, points: [[20, 60], [200, 60]] },
145
- { relation: sharedSource, relationIndex: 1, points: [[70, 64], [150, 64]] },
146
- ];
147
- assert.deepEqual(collectLabelRouteClearance({ labels, routedRelations, threshold: 2 }), []);
148
- const hits = collectLabelRouteClearance({ labels, routedRelations, threshold: 4 });
149
- assert.equal(hits.length, 1);
150
- assert.equal(hits[0].clearance, 2);
151
- assert.equal(hits[0].otherRelation, sharedSource);
152
- });
153
-
154
- test('endpoint-side direction distinguishes perpendicular entry from a tangent border run', () => {
155
- const clean = [[350, 160], [350, 200], [150, 200], [150, 240]];
156
- const tangent = [[350, 160], [350, 200], [100, 200], [100, 240], [150, 240]];
157
- assert.equal(routeHonorsEndpointSides(clean, 'bottom', 'top'), true);
158
- assert.equal(routeHonorsEndpointSides(tangent, 'bottom', 'top'), false);
159
-
160
- const relation = { id: 'tasks-file', from: 'cli-agents', to: 'tasks-watch', fromSide: 'bottom', toSide: 'top' };
161
- const problems = cleanEndpointSideProblems({
162
- relations: [relation],
163
- endpointIds: new Set(['cli-agents', 'tasks-watch']),
164
- pathFor: () => ({ points: tangent }),
165
- diagramType: 'architecture',
166
- relationCollection: 'connections',
167
- });
168
- assert.equal(problems.length, 1);
169
- assert.match(problems[0], /\[clean-flow\/endpoint-side-direction\] architecture connections\[0\] id "tasks-file"/);
170
- assert.match(problems[0], /final segment 3 \[100, 240\] -> \[150, 240\]/);
171
- assert.match(problems[0], /toSide "top".*vertical downward from above/);
172
- });
173
-
174
- test('endpoint-side direction can fail closed on renderer-inferred automatic sides', () => {
175
- const relation = { id: 'terminal-return', from: 'stream-hub', to: 'workspace' };
176
- const problems = cleanEndpointSideProblems({
177
- relations: [relation],
178
- endpointIds: new Set(['stream-hub', 'workspace']),
179
- pathFor: () => ({ points: [[700, 130], [700, 230], [160, 230], [160, 330]] }),
180
- diagramType: 'architecture',
181
- relationCollection: 'connections',
182
- fromSideFor: () => 'left',
183
- toSideFor: () => 'right',
184
- });
185
- assert.equal(problems.length, 2);
186
- assert.match(problems[0], /inferred fromSide "left"/);
187
- assert.match(problems[1], /inferred toSide "right"/);
188
- });
189
-
190
- test('cleanFlowProblems reports collection index, ids, segment, clearance, and fix', () => {
191
- const relations = [{ id: 'checkout', from: 'client', to: 'database' }];
192
- const obstacles = [
193
- { id: 'client', ...rect(0, 0, 20, 20) },
194
- { id: 'proxy', ...rect(40, 0, 20, 20) },
195
- { id: 'database', ...rect(80, 0, 20, 20) },
196
- ];
197
- const problems = cleanFlowProblems({
198
- relations,
199
- obstacles,
200
- pathFor: () => ({ points: [[20, 10], [80, 10]] }),
201
- diagramType: 'architecture',
202
- relationCollection: 'connections',
203
- obstacleKind: 'component',
204
- routeHint: 'set route/via'
205
- });
206
- assert.equal(problems.length, 1);
207
- assert.match(problems[0], /\[clean-flow\/edge-through-node\] architecture connections\[0\] id "checkout" "client" -> "database"/);
208
- assert.match(problems[0], /crosses component "proxy"/);
209
- assert.match(problems[0], /segment 0 \[20, 10\] -> \[80, 10\] \(2px clearance\)/);
210
- assert.match(problems[0], /set route\/via/);
211
- });
212
-
213
- test('cleanFlowProblems exempts endpoints and ignores missing endpoint geometry', () => {
214
- const endpointOnly = cleanFlowProblems({
215
- relations: [{ from: 'a', to: 'b' }],
216
- obstacles: [{ id: 'a', ...rect(0, 0, 20, 20) }, { id: 'b', ...rect(80, 0, 20, 20) }],
217
- pathFor: () => ({ points: [[20, 10], [80, 10]] }),
218
- diagramType: 'workflow',
219
- relationCollection: 'edges',
220
- obstacleKind: 'node'
221
- });
222
- assert.deepEqual(endpointOnly, []);
223
-
224
- let pathCalled = false;
225
- const missingEndpoint = cleanFlowProblems({
226
- relations: [{ from: 'a', to: 'ghost' }],
227
- obstacles: [{ id: 'a', ...rect(0, 0, 20, 20) }],
228
- pathFor: () => { pathCalled = true; return { points: [] }; },
229
- diagramType: 'workflow',
230
- relationCollection: 'edges',
231
- obstacleKind: 'node'
232
- });
233
- assert.deepEqual(missingEndpoint, []);
234
- assert.equal(pathCalled, false);
235
- });
236
-
237
- test('cleanFlowProblems uses clearance, reports the first segment, and deduplicates an obstacle', () => {
238
- const problems = cleanFlowProblems({
239
- relations: [{ from: 'a', to: 'b' }],
240
- obstacles: [
241
- { id: 'a', ...rect(-20, -10, 20, 20) },
242
- { id: 'near', ...rect(8, 1, 4, 2) },
243
- { id: 'b', ...rect(20, -10, 20, 20) },
244
- ],
245
- // Both segment 0 (within the 2px halo) and segment 2 intersect `near`.
246
- pathFor: () => ({ points: [[0, -1], [20, -1], [0, 5], [20, 5]] }),
247
- diagramType: 'workflow',
248
- relationCollection: 'edges',
249
- obstacleKind: 'node'
250
- });
251
- assert.equal(problems.length, 1);
252
- assert.match(problems[0], /segment 0 \[0, -1\] -> \[20, -1\]/);
253
- });
254
-
255
- test('cleanCrossingProblems reports one deterministic proper X in showcase', () => {
256
- const first = { id: 'first', from: 'a', to: 'b' };
257
- const second = { id: 'second', from: 'c', to: 'd' };
258
- const routes = new Map([
259
- [first, { points: [[0, 0], [100, 0], [100, 100]] }],
260
- [second, { points: [[50, -50], [50, 50], [150, 50], [150, -50], [50, -50]] }],
261
- ]);
262
- const problems = cleanCrossingProblems({
263
- relations: [first, second],
264
- endpointIds: new Set(['a', 'b', 'c', 'd']),
265
- pathFor: (relation) => routes.get(relation),
266
- diagramType: 'architecture',
267
- relationCollection: 'connections',
268
- profile: 'showcase',
269
- routeHint: 'move a via point',
270
- });
271
- assert.equal(problems.length, 1);
272
- assert.match(problems[0], /\[composition\/proper-crossing\] showcase architecture/);
273
- assert.match(problems[0], /connections\[0\] id "first" "a" -> "b" crosses connections\[1\] id "second" "c" -> "d"/);
274
- assert.match(problems[0], /at \[50, 0\] \(segments 0 and 0\)/);
275
- assert.match(problems[0], /move a via point/);
276
- });
277
-
278
- test('cleanCrossingProblems keeps proper X as non-blocking in standard', () => {
279
- const relations = [{ from: 'a', to: 'b' }, { from: 'c', to: 'd' }];
280
- const routes = [[[0, 50], [100, 50]], [[50, 0], [50, 100]]];
281
- const problems = cleanCrossingProblems({
282
- relations,
283
- endpointIds: new Set(['a', 'b', 'c', 'd']),
284
- pathFor: (relation) => ({ points: routes[relations.indexOf(relation)] }),
285
- diagramType: 'workflow',
286
- relationCollection: 'edges',
287
- profile: 'standard',
288
- });
289
- assert.deepEqual(problems, []);
290
- });
291
-
292
- test('cleanCrossingProblems exempts shared endpoints', () => {
293
- const relations = [{ from: 'a', to: 'b' }, { from: 'a', to: 'c' }];
294
- const routes = [[[0, 50], [100, 50]], [[50, 0], [50, 100]]];
295
- const problems = cleanCrossingProblems({
296
- relations,
297
- endpointIds: new Set(['a', 'b', 'c']),
298
- pathFor: (relation) => ({ points: routes[relations.indexOf(relation)] }),
299
- diagramType: 'dataflow',
300
- relationCollection: 'flows',
301
- profile: 'showcase',
302
- });
303
- assert.deepEqual(problems, []);
304
- });
305
-
306
- test('cleanCrossingProblems exempts endpoint touches and collinear corridors', () => {
307
- const relations = [
308
- { from: 'a', to: 'b' },
309
- { from: 'c', to: 'd' },
310
- { from: 'e', to: 'f' },
311
- ];
312
- const routes = [
313
- [[0, 0], [100, 0]],
314
- [[50, 0], [50, 50]],
315
- [[25, 0], [75, 0]],
316
- ];
317
- const problems = cleanCrossingProblems({
318
- relations,
319
- endpointIds: new Set(['a', 'b', 'c', 'd', 'e', 'f']),
320
- pathFor: (relation) => ({ points: routes[relations.indexOf(relation)] }),
321
- diagramType: 'lifecycle',
322
- relationCollection: 'transitions',
323
- profile: 'showcase',
324
- });
325
- assert.deepEqual(problems, []);
326
- });
327
-
328
- test('ambiguous corridor gate reports unrelated collinear overlap with exact identities', () => {
329
- const first = { id: 'first', from: 'a', to: 'b' };
330
- const second = { id: 'second', from: 'c', to: 'd' };
331
- const routes = new Map([
332
- [first, { points: [[0, 20], [100, 20], [100, 80]] }],
333
- [second, { points: [[40, 20], [140, 20], [140, 80]] }],
334
- ]);
335
- const hits = collectAmbiguousCorridors({
336
- routedRelations: [first, second].map((relation, relationIndex) => ({
337
- relation,
338
- relationIndex,
339
- points: routes.get(relation).points,
340
- })),
341
- });
342
- assert.equal(hits.length, 1);
343
- assert.equal(hits[0].overlapLength, 60);
344
- assert.deepEqual(hits[0].overlapStart, [40, 20]);
345
- assert.deepEqual(hits[0].overlapEnd, [100, 20]);
346
-
347
- const problems = cleanAmbiguousCorridorProblems({
348
- relations: [first, second],
349
- endpointIds: new Set(['a', 'b', 'c', 'd']),
350
- pathFor: (relation) => routes.get(relation),
351
- diagramType: 'workflow',
352
- relationCollection: 'edges',
353
- profile: 'showcase',
354
- routeHint: 'move a channel',
355
- });
356
- assert.equal(problems.length, 1);
357
- assert.match(problems[0], /\[composition\/ambiguous-corridor\] showcase workflow/);
358
- assert.match(problems[0], /edges\[0\] id "first" "a" -> "b" shares a 60px corridor with edges\[1\] id "second" "c" -> "d"/);
359
- assert.match(problems[0], /\[40, 20\] -> \[100, 20\].*move a channel/);
360
- });
361
-
362
- test('ambiguous corridor gate exempts shared endpoints, point touches, and overlaps below 8px', () => {
363
- const routedRelations = [
364
- { relation: { from: 'a', to: 'b' }, relationIndex: 0, points: [[0, 20], [100, 20]] },
365
- { relation: { from: 'a', to: 'c' }, relationIndex: 1, points: [[40, 20], [140, 20]] },
366
- { relation: { from: 'd', to: 'e' }, relationIndex: 2, points: [[100, 20], [100, 80]] },
367
- { relation: { from: 'f', to: 'g' }, relationIndex: 3, points: [[94, 60], [101, 60]] },
368
- { relation: { from: 'h', to: 'i' }, relationIndex: 4, points: [[98, 60], [110, 60]] },
369
- ];
370
- assert.deepEqual(collectAmbiguousCorridors({ routedRelations }), []);
371
- });
372
-
373
- test('ambiguous corridor gate keeps standard renderable', () => {
374
- const relations = [{ from: 'a', to: 'b' }, { from: 'c', to: 'd' }];
375
- const routes = [[[0, 20], [100, 20]], [[40, 20], [140, 20]]];
376
- assert.deepEqual(cleanAmbiguousCorridorProblems({
377
- relations,
378
- endpointIds: new Set(['a', 'b', 'c', 'd']),
379
- pathFor: (relation) => ({ points: routes[relations.indexOf(relation)] }),
380
- diagramType: 'architecture',
381
- relationCollection: 'connections',
382
- profile: 'standard',
383
- }), []);
384
- });
385
-
386
- test('cleanBorderRunProblems reports a deterministic long run on a rounded frame side', () => {
387
- const relation = { id: 'jwt', from: 'auth', to: 'api' };
388
- const problems = cleanBorderRunProblems({
389
- relations: [relation],
390
- frames: [{ id: 'private', label: 'Private tier', kind: 'security-group', x: 100, y: 80, width: 180, height: 120, radius: 8 }],
391
- pathFor: () => ({ points: [[40, 80], [220, 80], [220, 140]] }),
392
- diagramType: 'architecture',
393
- relationCollection: 'connections',
394
- profile: 'standard',
395
- routeHint: 'move the via point',
396
- });
397
- assert.equal(problems.length, 1);
398
- assert.match(problems[0], /\[composition\/container-border-run\] architecture connections\[0\] id "jwt" "auth" -> "api"/);
399
- assert.match(problems[0], /follows security-group "Private tier" top border for 112px on segment 0 \[108, 80\] -> \[220, 80\]/);
400
- assert.match(problems[0], /move the via point/);
401
- });
402
-
403
- test('border-run contract allows perpendicular crossings, point touches, and rounded corners', () => {
404
- const frame = { id: 'stage', kind: 'stage', x: 40, y: 40, width: 120, height: 100, radius: 10 };
405
- const routedRelations = [
406
- { relation: { from: 'a', to: 'b' }, relationIndex: 0, points: [[100, 10], [100, 80]] },
407
- { relation: { from: 'c', to: 'd' }, relationIndex: 1, points: [[20, 40], [40, 40], [40, 20]] },
408
- { relation: { from: 'e', to: 'f' }, relationIndex: 2, points: [[40, 40], [49, 40]] },
409
- ];
410
- assert.deepEqual(collectBorderRuns({ routedRelations, frames: [frame] }), []);
411
- });
412
-
413
- test('border-run contract detects vertical frames and merges hits per relation side', () => {
414
- const hits = collectBorderRuns({
415
- routedRelations: [{
416
- relation: { from: 'a', to: 'b' },
417
- relationIndex: 3,
418
- points: [[160, 60], [160, 110], [150, 110], [160, 110], [160, 135]],
419
- }],
420
- frames: [{ kind: 'lane', id: 'lane-1', x: 40, y: 40, width: 120, height: 100, radius: 10 }],
421
- });
422
- assert.equal(hits.length, 1);
423
- assert.equal(hits[0].side, 'right');
424
- assert.equal(hits[0].segmentIndex, 0);
425
- assert.equal(hits[0].overlapLength, 70);
426
- });
427
-
428
- test('border-run contract merges adjacent primitives and counts any positive straight overlap', () => {
429
- const hits = collectBorderRuns({
430
- routedRelations: [{
431
- relation: { from: 'a', to: 'b' },
432
- relationIndex: 0,
433
- points: [[52, 40], [70, 40], [90, 40], [90, 50]],
434
- }],
435
- frames: [{ kind: 'stage', id: 'source', x: 40, y: 40, width: 120, height: 100, radius: 10 }],
436
- });
437
- assert.equal(hits.length, 1);
438
- assert.equal(hits[0].overlapLength, 38);
439
- assert.deepEqual(hits[0].overlapStart, [52, 40]);
440
- assert.deepEqual(hits[0].overlapEnd, [90, 40]);
441
- });
442
-
443
- test('routeBudgetMetrics normalizes collinear points and records neutral route evidence', () => {
444
- const metrics = routeBudgetMetrics({
445
- routedRelations: [
446
- { points: [[0, 0], [10, 0], [30, 0], [30, 8], [50, 8], [50, 30]] },
447
- { points: [[5, 5], [5, 5]] },
448
- ],
449
- });
450
- assert.deepEqual(metrics, {
451
- maxBends: 3,
452
- routesOverSuggestedBends: 1,
453
- maxStretch: 80 / 80,
454
- routesOverSuggestedStretch: 0,
455
- minSegmentPx: 8,
456
- minInteriorSegmentPx: 8,
457
- shortSegmentCount: 1,
458
- shortEndpointSegmentCount: 0,
459
- shortInteriorSegmentCount: 1,
460
- microSegmentCount: 0,
461
- });
462
- });
463
-
464
- test('route rhythm separates ordinary endpoint stubs from cramped turns and micro segments', () => {
465
- const issues = collectRouteRhythmIssues({
466
- routedRelations: [
467
- { relation: { id: 'lane-hop', from: 'a', to: 'b' }, points: [[0, 0], [13, 0], [13, 40], [80, 40], [80, 53]] },
468
- { relation: { id: 'bad-turn', from: 'c', to: 'd' }, points: [[0, 80], [24, 80], [24, 89], [60, 89]] },
469
- { relation: { id: 'micro-stub', from: 'e', to: 'f' }, points: [[0, 120], [5, 120], [5, 180]] },
470
- ],
471
- });
472
- assert.deepEqual(issues.map((issue) => [issue.relation.id, issue.code, issue.position, issue.length]), [
473
- ['bad-turn', 'composition/short-interior-segment', 'interior', 9],
474
- ['micro-stub', 'composition/micro-segment', 'source-stub', 5],
475
- ]);
476
- });
477
-
478
- test('route rhythm is a showcase-only generation gate with actionable relationship identity', () => {
479
- const relations = [{ id: 'events', from: 'api', to: 'bus' }];
480
- const args = {
481
- relations,
482
- endpointIds: new Set(['api', 'bus']),
483
- pathFor: () => ({ points: [[10, 20], [15, 20], [15, 80]] }),
484
- diagramType: 'architecture',
485
- relationCollection: 'connections',
486
- };
487
- assert.deepEqual(cleanRouteRhythmProblems({ ...args, profile: 'standard' }), []);
488
- const problems = cleanRouteRhythmProblems({ ...args, profile: 'showcase' });
489
- assert.equal(problems.length, 1);
490
- assert.match(problems[0], /\[composition\/micro-segment\] showcase architecture connections\[0\] id "events"/);
491
- assert.match(problems[0], /5px source-stub segment 0/);
492
- });
493
-
494
- test('asArray coerces non-arrays to [] (degraded-mode guard)', () => {
495
- assert.deepEqual(asArray([1, 2]), [1, 2]);
496
- assert.deepEqual(asArray('oops'), []);
497
- assert.deepEqual(asArray(undefined), []);
498
- assert.deepEqual(asArray(null), []);
499
- assert.deepEqual(asArray({ length: 3 }), []);
500
- });
501
-
502
- test('isFinitePoint rejects NaN/undefined/Infinity', () => {
503
- assert.equal(isFinitePoint(1, 2, 3, 4), true);
504
- assert.equal(isFinitePoint(1, NaN), false);
505
- assert.equal(isFinitePoint(1, undefined), false);
506
- assert.equal(isFinitePoint(1, Infinity), false);
507
- });
508
-
509
- test('anchor returns the correct edge midpoint for each side', () => {
510
- const r = rect(100, 100, 40, 20); // cx=120 cy=110
511
- assert.deepEqual(anchor(r, 'left'), [100, 110]);
512
- assert.deepEqual(anchor(r, 'right'), [140, 110]);
513
- assert.deepEqual(anchor(r, 'top'), [120, 100]);
514
- assert.deepEqual(anchor(r, 'bottom'), [120, 120]);
515
- });
516
-
517
- test('anchor falls back to the right edge for unknown/auto sides', () => {
518
- const r = rect(100, 100, 40, 20);
519
- assert.deepEqual(anchor(r, 'auto'), [140, 110]);
520
- assert.deepEqual(anchor(r, undefined), [140, 110]);
521
- });
522
-
523
- test('defaultFromSide / defaultToSide are mirror pairs', () => {
524
- const a = { cx: 0, cy: 0 };
525
- const right = { cx: 100, cy: 0 };
526
- assert.equal(defaultFromSide(a, right), 'right');
527
- assert.equal(defaultToSide(a, right), 'left');
528
- const below = { cx: 0, cy: 100 };
529
- assert.equal(defaultFromSide(a, below), 'bottom');
530
- assert.equal(defaultToSide(a, below), 'top');
531
- });
532
-
533
- test('chosenSide treats explicit "auto" as "use the geometric fallback"', () => {
534
- assert.equal(chosenSide('left', 'right'), 'left');
535
- assert.equal(chosenSide('auto', 'right'), 'right');
536
- assert.equal(chosenSide(undefined, 'right'), 'right');
537
- });
538
-
539
- test('polylinePath emits M then L commands', () => {
540
- assert.equal(polylinePath([[0, 0], [10, 0], [10, 10]]), 'M 0 0 L 10 0 L 10 10');
541
- });
542
-
543
- test('roundedPath degrades to a polyline for <3 points or radius<=0', () => {
544
- assert.equal(roundedPath([[0, 0], [10, 0]], 10), 'M 0 0 L 10 0');
545
- assert.equal(roundedPath([[0, 0], [10, 0], [10, 10]], 0), 'M 0 0 L 10 0 L 10 10');
546
- });
547
-
548
- test('roundedPath inserts a quadratic corner and never emits NaN', () => {
549
- const d = roundedPath([[0, 0], [100, 0], [100, 100]], 10);
550
- assert.match(d, /Q 100 0/); // corner pivots on the bend point
551
- assert.doesNotMatch(d, /NaN/);
552
- });
553
-
554
- test('roundedPath clamps radius to half the shorter adjacent segment', () => {
555
- // 6px segments with radius 10 → r clamps to 3; no overshoot / NaN.
556
- const d = roundedPath([[0, 0], [6, 0], [6, 6]], 10);
557
- assert.doesNotMatch(d, /NaN/);
558
- assert.match(d, /^M 0 0/);
559
- });
560
-
561
- test('labelPoint: 2-point path is the midpoint lifted 10px, plus offsets', () => {
562
- assert.deepEqual(labelPoint({}, [[0, 100], [100, 100]]), [50, 90]);
563
- assert.deepEqual(labelPoint({ labelDx: 5, labelDy: -4 }, [[0, 100], [100, 100]]), [55, 86]);
564
- });
565
-
566
- test('labelPoint: labelSegment selects a segment and clamps to range', () => {
567
- const pts = [[0, 0], [100, 0], [100, 100], [200, 100]];
568
- // segment 0 → midpoint of pts[0],pts[1] = (50,0) lifted 10
569
- assert.deepEqual(labelPoint({ labelSegment: 0 }, pts), [50, -10]);
570
- // segment 99 clamps to the last segment
571
- assert.deepEqual(labelPoint({ labelSegment: 99 }, pts), [150, 90]);
572
- });
573
-
574
- test('labelPoint: explicit labelAt wins outright', () => {
575
- assert.deepEqual(labelPoint({ labelAt: [7, 8] }, [[0, 0], [100, 0]]), [7, 8]);
576
- });
577
-
578
- test('textUnits: ASCII=1, CJK=2, mixed sums, fullwidth supplementary=2', () => {
579
- assert.equal(textUnits('abc'), 3);
580
- assert.equal(textUnits('中文'), 4);
581
- assert.equal(textUnits('a中'), 3);
582
- assert.equal(textUnits(''), 0);
583
- assert.equal(textUnits(null), 0);
584
- assert.equal(textUnits('𠀀'), 2); // CJK Ext-B (supplementary plane)
585
- assert.equal(textUnits('🚀'), 2); // emoji
586
- assert.equal(textUnits('注入提示词'), 10); // issue #14 original label
587
- assert.equal(textUnits('!@#012'), 12); // fullwidth punctuation + digits
588
- });
589
-
590
- test('textUnits follows wide and halfwidth East Asian presentation boundaries', () => {
591
- assert.equal(textUnits('あカ'), 4); // Hiragana + Katakana are wide
592
- assert.equal(textUnits('ㄅㆠ'), 4); // Bopomofo + extended Bopomofo are wide
593
- assert.equal(textUnits('ㄱ'), 2); // Hangul compatibility letter is wide
594
- assert.equal(textUnits('︐︙'), 4); // vertical punctuation forms are wide
595
- assert.equal(textUnits('カタカナ'), 4); // halfwidth Katakana stays one unit per glyph
596
- assert.equal(textUnits('ꥠ'), 2); // Hangul Jamo Extended-A is wide
597
- });
598
-
599
- test('textUnits counts emoji-presentation symbols in the BMP as wide', () => {
600
- // These render at the same square advance as the supplementary-plane emoji,
601
- // so counting them as one unit under-measures a label and lets it overflow
602
- // its node while the layout receipt still reads clean.
603
- assert.equal(textUnits('✅'), 2);
604
- assert.equal(textUnits('⭐'), 2);
605
- assert.equal(textUnits('⚡'), 2);
606
- assert.equal(textUnits('⌛'), 2);
607
- assert.equal(textUnits('⏰'), 2);
608
- assert.equal(textUnits('⛔'), 2);
609
- assert.equal(textUnits('❗'), 2);
610
- assert.equal(textUnits('⬛'), 2);
611
- assert.equal(textUnits('☕'), 2);
612
- assert.equal(textUnits('♿'), 2);
613
- assert.equal(textUnits('✅ Done'), 7);
614
- // Narrow and ambiguous neighbours in the same blocks stay one unit.
615
- assert.equal(textUnits('→'), 1); // rightwards arrow
616
- assert.equal(textUnits('☎'), 1); // black telephone
617
- assert.equal(textUnits('①'), 1); // circled digit one
618
- // Unicode 16.0 moved these from Neutral to Wide.
619
- assert.equal(textUnits('☰'), 2); // trigram for heaven
620
- assert.equal(textUnits('☷'), 2); // trigram for earth
621
- assert.equal(textUnits('⚊'), 2); // monogram for yang
622
- assert.equal(textUnits('⚏'), 2); // digram for greater yin
623
- // Hangul Jamo Extended-A stops at its last assigned jamo; the unassigned
624
- // tail of the block defaults to Neutral.
625
- assert.equal(textUnits('ꥼ'), 2);
626
- assert.equal(textUnits('꥽'), 1);
627
- });
628
-
629
- test('textUnits measures a variation-selector sequence from the selector', () => {
630
- // VS16 asks for emoji presentation: the pair renders as one square, so it
631
- // must stay two units even though the base is now counted wide on its own.
632
- assert.equal(textUnits('⭐️'), 2); // star
633
- assert.equal(textUnits('✅️'), 2); // check mark button
634
- assert.equal(textUnits('☕️'), 2); // hot beverage
635
- assert.equal(textUnits('⚡️'), 2); // high voltage
636
- // Same rule the other way: a narrow base forced to emoji presentation
637
- // renders as a square and is two units, not one.
638
- assert.equal(textUnits('✈️'), 2); // airplane
639
- assert.equal(textUnits('❤️'), 2); // red heart
640
- // VS15 asks for text presentation, which renders narrow.
641
- assert.equal(textUnits('⭐︎'), 1);
642
- assert.equal(textUnits('✈︎'), 1);
643
- // The selector never adds width of its own, alone or in a run.
644
- assert.equal(textUnits('️'), 0);
645
- assert.equal(textUnits('✅️ Done'), 7);
646
- assert.equal(textUnits('⭐️⭐️'), 4);
647
- });
648
-
649
- test('semantic sigils cover every component and lifecycle kind without literal color', () => {
650
- const kinds = [
651
- 'frontend', 'backend', 'database', 'cloud', 'security', 'messagebus', 'external',
652
- 'start', 'active', 'waiting', 'success', 'failure', 'neutral',
653
- ];
654
- for (const kind of kinds) {
655
- const sigil = renderSemanticSigil(kind, { x: 12, y: 18 });
656
- assert.match(sigil, new RegExp(`data-semantic-sigil="${kind}"`), kind);
657
- assert.match(sigil, /aria-hidden="true"/, kind);
658
- assert.match(sigil, /class="semantic-sigil s-[a-z]+"/, kind);
659
- assert.match(sigil, /transform="translate\(12 18\) scale\(0\.6875\)"/, kind);
660
- assert.doesNotMatch(sigil, /#[0-9a-f]{3,8}|rgba?\(/i, kind);
661
- }
662
- });
663
-
664
- test('unknown semantic sigils fail closed to a neutral role stamp', () => {
665
- const sigil = renderSemanticSigil('vendor-logo', { x: 0, y: 0, size: 16 });
666
- assert.match(sigil, /data-semantic-sigil="neutral"/);
667
- assert.match(sigil, /class="semantic-sigil s-external"/);
668
- assert.match(sigil, /scale\(1\)/);
669
- });
670
-
671
- test('suggestLabelObstacleFix includes rects and labelAt/labelDy hints', () => {
672
- const labelRect = { x: 100, y: 180, width: 48, height: 14, label: '写入' };
673
- const obstacle = { id: 'memtool', x: 30, y: 130, width: 230, height: 58 };
674
- const hint = suggestLabelObstacleFix(labelRect, 124, 188, obstacle);
675
- assert.match(hint, /label rect: \[100, 180, 48, 14\]/);
676
- assert.match(hint, /component "memtool"/);
677
- assert.match(hint, /Suggested fix: labelAt/);
678
- assert.match(hint, /labelDy \+\d+/);
679
- });
680
-
681
- test('suggestComponentSeparation proposes nudged pos', () => {
682
- const a = { id: 'api', x: 100, y: 200, width: 120, height: 60 };
683
- const b = { id: 'db', x: 150, y: 200, width: 120, height: 60 };
684
- const hint = suggestComponentSeparation(a, b, 8);
685
- assert.match(hint, /move "db" pos to \[228, 200\]/);
686
- });
687
-
688
- test('applyTemplate preserves dollar sequences in titles', () => {
689
- const template = `<html lang="en" data-theme="dark" data-preset="[VISUAL PRESET]">
690
- <title>[PROJECT NAME] Architecture Diagram</title>
691
- <h1>[PROJECT NAME] Architecture</h1>
692
- <p class="subtitle">[Subtitle description]</p>
693
- <!-- ARCHIFY:GUIDED_VIEWS_DATA -->
694
- <!-- ARCHIFY:SVG_SLOT_START --><svg></svg> <!-- ARCHIFY:SVG_SLOT_END -->
695
- <!-- ARCHIFY:CARDS_SLOT_START --><div></div> <!-- ARCHIFY:CARDS_SLOT_END -->`;
696
- const html = applyTemplate(template, {
697
- title: 'Plan $$50 tier',
698
- subtitle: 'test',
699
- svg: '<svg/>',
700
- cards: '',
701
- });
702
- assert.match(html, /Plan \$\$50 tier/);
703
- assert.match(html, /<p class="subtitle">test<\/p>/);
704
- });
705
-
706
- test('applyTemplate omits the subtitle row when no subtitle is authored', () => {
707
- const template = `<html lang="en" data-theme="dark" data-preset="[VISUAL PRESET]">
708
- <title>[PROJECT NAME] Architecture Diagram</title>
709
- <h1>[PROJECT NAME] Architecture</h1>
710
- <p class="subtitle">[Subtitle description]</p>
711
- <!-- ARCHIFY:GUIDED_VIEWS_DATA -->
712
- <!-- ARCHIFY:SVG_SLOT_START --><svg></svg> <!-- ARCHIFY:SVG_SLOT_END -->
713
- <!-- ARCHIFY:CARDS_SLOT_START --><div></div> <!-- ARCHIFY:CARDS_SLOT_END -->`;
714
- const html = applyTemplate(template, {
715
- title: 'Focused title',
716
- subtitle: ' ',
717
- svg: '<svg/>',
718
- cards: '',
719
- });
720
- assert.doesNotMatch(html, /class="subtitle"/);
721
- assert.doesNotMatch(html, /Subtitle description/);
722
- });
723
-
724
- test('applyTemplate requires the new evidence slot only when evidence is present', () => {
725
- const legacyTemplate = `<html lang="en" data-theme="dark" data-preset="[VISUAL PRESET]">
726
- <title>[PROJECT NAME] Architecture Diagram</title>
727
- <h1>[PROJECT NAME] Architecture</h1>
728
- <p class="subtitle">[Subtitle description]</p>
729
- <!-- ARCHIFY:GUIDED_VIEWS_DATA -->
730
- <!-- ARCHIFY:SVG_SLOT_START --><svg></svg> <!-- ARCHIFY:SVG_SLOT_END -->
731
- <!-- ARCHIFY:CARDS_SLOT_START --><div></div> <!-- ARCHIFY:CARDS_SLOT_END -->`;
732
- assert.doesNotThrow(() => applyTemplate(legacyTemplate, {
733
- title: 'Legacy', subtitle: '', svg: '<svg/>', cards: '',
734
- }));
735
- assert.throws(() => applyTemplate(legacyTemplate, {
736
- title: 'Evidence', subtitle: '', svg: '<svg/>', cards: '',
737
- sourceEvidence: { verified: true },
738
- }), /repository evidence requires placeholder/);
739
- });