create-yss-spec 3.0.1 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1273) hide show
  1. package/README.md +2 -2
  2. package/package.json +1 -1
  3. package/template/.agents/rules/yss-ai-skills.md +3 -55
  4. package/template/.agents/skills/.strategic-design-skills-manifest.json +11 -6
  5. package/template/.agents/skills/.yss-skills-manifest.json +1 -3
  6. package/template/.agents/skills/alibaba-java-code-style/SKILL.md +1 -0
  7. package/template/.agents/skills/code-review/references/yss-review-standards.md +1 -1
  8. package/template/.agents/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
  9. package/template/.agents/skills/domain-modeling/SKILL.md +10 -26
  10. package/template/.agents/skills/grill-with-docs/SKILL.md +6 -5
  11. package/template/.agents/skills/lombok/SKILL.md +2 -1
  12. package/template/.agents/skills/mapstruct/SKILL.md +3 -2
  13. package/template/.agents/skills/setup-matt-pocock-skills/SKILL.md +5 -6
  14. package/template/.agents/skills/setup-matt-pocock-skills/domain.md +6 -20
  15. package/template/.agents/skills/wait-what/SKILL.md +1 -1
  16. package/template/.agents/skills/yss-antdv-next-design/SKILL.md +48 -0
  17. package/template/.agents/skills/yss-antdv-next-design/references/boundaries.md +25 -0
  18. package/template/.agents/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
  19. package/template/.agents/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
  20. package/template/.agents/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
  21. package/template/.agents/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
  22. package/template/.agents/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
  23. package/template/.agents/skills/yss-application/SKILL.md +6 -0
  24. package/template/.agents/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
  25. package/template/.agents/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
  26. package/template/.agents/skills/yss-application/references/profiles/target-domain-model.md +3 -0
  27. package/template/.agents/skills/yss-components/SKILL.md +1 -1
  28. package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
  29. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
  30. package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
  31. package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
  32. package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  33. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
  34. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
  35. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
  36. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
  37. package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
  38. package/template/.agents/skills/yss-design-system/SKILL.md +25 -22
  39. package/template/.agents/skills/yss-design-system/references/design-qa-theme.md +22 -24
  40. package/template/.agents/skills/yss-design-system/references/design-system.md +39 -56
  41. package/template/.agents/skills/yss-domain/SKILL.md +1 -1
  42. package/template/.agents/skills/yss-dto/SKILL.md +1 -0
  43. package/template/.agents/skills/yss-exception/SKILL.md +1 -0
  44. package/template/.agents/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
  45. package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
  46. package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
  47. package/template/.agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
  48. package/template/.agents/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
  49. package/template/.agents/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
  50. package/template/.agents/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
  51. package/template/.agents/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
  52. package/template/.agents/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
  53. package/template/.agents/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
  54. package/template/.agents/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
  55. package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
  56. package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
  57. package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
  58. package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
  59. package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
  60. package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
  61. package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
  62. package/template/.agents/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
  63. package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
  64. package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
  65. package/template/.agents/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
  66. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
  67. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
  68. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
  69. package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
  70. package/template/.agents/skills/yss-mybatis/SKILL.md +2 -2
  71. package/template/.agents/skills/yss-product-lifecycle/SKILL.md +31 -7
  72. package/template/.agents/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
  73. package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
  74. package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
  75. package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +9 -3
  76. package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +7 -2
  77. package/template/.agents/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
  78. package/template/.agents/skills/yss-prototype-stage/SKILL.md +9 -8
  79. package/template/.agents/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
  80. package/template/.agents/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
  81. package/template/.agents/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
  82. package/template/.agents/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
  83. package/template/.agents/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
  84. package/template/.agents/skills/yss-repository/SKILL.md +6 -0
  85. package/template/.agents/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
  86. package/template/.agents/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
  87. package/template/.agents/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
  88. package/template/.agents/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
  89. package/template/.agents/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
  90. package/template/.agents/skills/yss-stage-decision/SKILL.md +16 -12
  91. package/template/.agents/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
  92. package/template/.agents/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
  93. package/template/.agents/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
  94. package/template/.agents/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
  95. package/template/.agents/skills/yss-stage-decision/references/validation-rules.md +1 -1
  96. package/template/.agents/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
  97. package/template/.agents/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
  98. package/template/.agents/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
  99. package/template/.agents/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
  100. package/template/.agents/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
  101. package/template/.agents/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
  102. package/template/.agents/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
  103. package/template/.agents/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
  104. package/template/.agents/skills/yss-tactical-design/SKILL.md +8 -2
  105. package/template/.agents/skills/yss-tactical-design/references/output-template.md +3 -0
  106. package/template/.agents/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
  107. package/template/.agents/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
  108. package/template/.agents/skills/yss-ui/SKILL.md +1 -2
  109. package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +3 -3
  110. package/template/.agents/skills/yss-validation/SKILL.md +1 -0
  111. package/template/.agents/skills/yss-web-controller/SKILL.md +6 -0
  112. package/template/.agents/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
  113. package/template/.agents/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
  114. package/template/.agents/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
  115. package/template/.agents/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
  116. package/template/.agents/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
  117. package/template/.agents/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
  118. package/template/.claude/skills/alibaba-java-code-style/SKILL.md +1 -0
  119. package/template/.claude/skills/code-review/references/yss-review-standards.md +1 -1
  120. package/template/.claude/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
  121. package/template/.claude/skills/domain-modeling/SKILL.md +10 -26
  122. package/template/.claude/skills/grill-with-docs/SKILL.md +6 -5
  123. package/template/.claude/skills/lombok/SKILL.md +2 -1
  124. package/template/.claude/skills/mapstruct/SKILL.md +3 -2
  125. package/template/.claude/skills/setup-matt-pocock-skills/SKILL.md +5 -6
  126. package/template/.claude/skills/setup-matt-pocock-skills/domain.md +6 -20
  127. package/template/.claude/skills/wait-what/SKILL.md +1 -1
  128. package/template/.claude/skills/yss-antdv-next-design/SKILL.md +48 -0
  129. package/template/.claude/skills/yss-antdv-next-design/references/boundaries.md +25 -0
  130. package/template/.claude/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
  131. package/template/.claude/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
  132. package/template/.claude/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
  133. package/template/.claude/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
  134. package/template/.claude/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
  135. package/template/.claude/skills/yss-application/SKILL.md +6 -0
  136. package/template/.claude/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
  137. package/template/.claude/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
  138. package/template/.claude/skills/yss-application/references/profiles/target-domain-model.md +3 -0
  139. package/template/.claude/skills/yss-components/SKILL.md +1 -1
  140. package/template/.claude/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
  141. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
  142. package/template/.claude/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
  143. package/template/.claude/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
  144. package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  145. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
  146. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
  147. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
  148. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
  149. package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
  150. package/template/.claude/skills/yss-design-system/SKILL.md +25 -22
  151. package/template/.claude/skills/yss-design-system/references/design-qa-theme.md +22 -24
  152. package/template/.claude/skills/yss-design-system/references/design-system.md +39 -56
  153. package/template/.claude/skills/yss-domain/SKILL.md +1 -1
  154. package/template/.claude/skills/yss-dto/SKILL.md +1 -0
  155. package/template/.claude/skills/yss-exception/SKILL.md +1 -0
  156. package/template/.claude/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
  157. package/template/.claude/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
  158. package/template/.claude/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
  159. package/template/.claude/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
  160. package/template/.claude/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
  161. package/template/.claude/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
  162. package/template/.claude/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
  163. package/template/.claude/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
  164. package/template/.claude/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
  165. package/template/.claude/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
  166. package/template/.claude/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
  167. package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
  168. package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
  169. package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
  170. package/template/.claude/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
  171. package/template/.claude/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
  172. package/template/.claude/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
  173. package/template/.claude/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
  174. package/template/.claude/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
  175. package/template/.claude/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
  176. package/template/.claude/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
  177. package/template/.claude/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
  178. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
  179. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
  180. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
  181. package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
  182. package/template/.claude/skills/yss-mybatis/SKILL.md +2 -2
  183. package/template/.claude/skills/yss-product-lifecycle/SKILL.md +31 -7
  184. package/template/.claude/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
  185. package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
  186. package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
  187. package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +9 -3
  188. package/template/.claude/skills/yss-product-lifecycle/references/state-model.md +7 -2
  189. package/template/.claude/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
  190. package/template/.claude/skills/yss-prototype-stage/SKILL.md +9 -8
  191. package/template/.claude/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
  192. package/template/.claude/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
  193. package/template/.claude/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
  194. package/template/.claude/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
  195. package/template/.claude/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
  196. package/template/.claude/skills/yss-repository/SKILL.md +6 -0
  197. package/template/.claude/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
  198. package/template/.claude/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
  199. package/template/.claude/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
  200. package/template/.claude/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
  201. package/template/.claude/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
  202. package/template/.claude/skills/yss-stage-decision/SKILL.md +16 -12
  203. package/template/.claude/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
  204. package/template/.claude/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
  205. package/template/.claude/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
  206. package/template/.claude/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
  207. package/template/.claude/skills/yss-stage-decision/references/validation-rules.md +1 -1
  208. package/template/.claude/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
  209. package/template/.claude/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
  210. package/template/.claude/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
  211. package/template/.claude/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
  212. package/template/.claude/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
  213. package/template/.claude/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
  214. package/template/.claude/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
  215. package/template/.claude/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
  216. package/template/.claude/skills/yss-tactical-design/SKILL.md +8 -2
  217. package/template/.claude/skills/yss-tactical-design/references/output-template.md +3 -0
  218. package/template/.claude/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
  219. package/template/.claude/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
  220. package/template/.claude/skills/yss-ui/SKILL.md +1 -2
  221. package/template/.claude/skills/yss-ui-business-page-generation/SKILL.md +3 -3
  222. package/template/.claude/skills/yss-validation/SKILL.md +1 -0
  223. package/template/.claude/skills/yss-web-controller/SKILL.md +6 -0
  224. package/template/.claude/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
  225. package/template/.claude/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
  226. package/template/.claude/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
  227. package/template/.claude/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
  228. package/template/.claude/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
  229. package/template/.claude/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
  230. package/template/.codex/skills/alibaba-java-code-style/SKILL.md +1 -0
  231. package/template/.codex/skills/code-review/references/yss-review-standards.md +1 -1
  232. package/template/.codex/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
  233. package/template/.codex/skills/domain-modeling/SKILL.md +10 -26
  234. package/template/.codex/skills/grill-with-docs/SKILL.md +6 -5
  235. package/template/.codex/skills/lombok/SKILL.md +2 -1
  236. package/template/.codex/skills/mapstruct/SKILL.md +3 -2
  237. package/template/.codex/skills/setup-matt-pocock-skills/SKILL.md +5 -6
  238. package/template/.codex/skills/setup-matt-pocock-skills/domain.md +6 -20
  239. package/template/.codex/skills/wait-what/SKILL.md +1 -1
  240. package/template/.codex/skills/yss-antdv-next-design/SKILL.md +48 -0
  241. package/template/.codex/skills/yss-antdv-next-design/references/boundaries.md +25 -0
  242. package/template/.codex/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
  243. package/template/.codex/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
  244. package/template/.codex/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
  245. package/template/.codex/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
  246. package/template/.codex/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
  247. package/template/.codex/skills/yss-application/SKILL.md +6 -0
  248. package/template/.codex/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
  249. package/template/.codex/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
  250. package/template/.codex/skills/yss-application/references/profiles/target-domain-model.md +3 -0
  251. package/template/.codex/skills/yss-components/SKILL.md +1 -1
  252. package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
  253. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
  254. package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
  255. package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
  256. package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  257. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
  258. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
  259. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
  260. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
  261. package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
  262. package/template/.codex/skills/yss-design-system/SKILL.md +25 -22
  263. package/template/.codex/skills/yss-design-system/references/design-qa-theme.md +22 -24
  264. package/template/.codex/skills/yss-design-system/references/design-system.md +39 -56
  265. package/template/.codex/skills/yss-domain/SKILL.md +1 -1
  266. package/template/.codex/skills/yss-dto/SKILL.md +1 -0
  267. package/template/.codex/skills/yss-exception/SKILL.md +1 -0
  268. package/template/.codex/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
  269. package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
  270. package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
  271. package/template/.codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
  272. package/template/.codex/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
  273. package/template/.codex/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
  274. package/template/.codex/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
  275. package/template/.codex/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
  276. package/template/.codex/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
  277. package/template/.codex/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
  278. package/template/.codex/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
  279. package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
  280. package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
  281. package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
  282. package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
  283. package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
  284. package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
  285. package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
  286. package/template/.codex/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
  287. package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
  288. package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
  289. package/template/.codex/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
  290. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
  291. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
  292. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
  293. package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
  294. package/template/.codex/skills/yss-mybatis/SKILL.md +2 -2
  295. package/template/.codex/skills/yss-product-lifecycle/SKILL.md +31 -7
  296. package/template/.codex/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
  297. package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
  298. package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
  299. package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +9 -3
  300. package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +7 -2
  301. package/template/.codex/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
  302. package/template/.codex/skills/yss-prototype-stage/SKILL.md +9 -8
  303. package/template/.codex/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
  304. package/template/.codex/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
  305. package/template/.codex/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
  306. package/template/.codex/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
  307. package/template/.codex/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
  308. package/template/.codex/skills/yss-repository/SKILL.md +6 -0
  309. package/template/.codex/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
  310. package/template/.codex/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
  311. package/template/.codex/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
  312. package/template/.codex/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
  313. package/template/.codex/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
  314. package/template/.codex/skills/yss-stage-decision/SKILL.md +16 -12
  315. package/template/.codex/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
  316. package/template/.codex/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
  317. package/template/.codex/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
  318. package/template/.codex/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
  319. package/template/.codex/skills/yss-stage-decision/references/validation-rules.md +1 -1
  320. package/template/.codex/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
  321. package/template/.codex/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
  322. package/template/.codex/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
  323. package/template/.codex/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
  324. package/template/.codex/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
  325. package/template/.codex/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
  326. package/template/.codex/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
  327. package/template/.codex/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
  328. package/template/.codex/skills/yss-tactical-design/SKILL.md +8 -2
  329. package/template/.codex/skills/yss-tactical-design/references/output-template.md +3 -0
  330. package/template/.codex/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
  331. package/template/.codex/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
  332. package/template/.codex/skills/yss-ui/SKILL.md +1 -2
  333. package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +3 -3
  334. package/template/.codex/skills/yss-validation/SKILL.md +1 -0
  335. package/template/.codex/skills/yss-web-controller/SKILL.md +6 -0
  336. package/template/.codex/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
  337. package/template/.codex/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
  338. package/template/.codex/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
  339. package/template/.codex/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
  340. package/template/.codex/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
  341. package/template/.codex/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
  342. package/template/.cursor/skills/alibaba-java-code-style/SKILL.md +1 -0
  343. package/template/.cursor/skills/code-review/references/yss-review-standards.md +1 -1
  344. package/template/.cursor/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
  345. package/template/.cursor/skills/domain-modeling/SKILL.md +10 -26
  346. package/template/.cursor/skills/grill-with-docs/SKILL.md +6 -5
  347. package/template/.cursor/skills/lombok/SKILL.md +2 -1
  348. package/template/.cursor/skills/mapstruct/SKILL.md +3 -2
  349. package/template/.cursor/skills/setup-matt-pocock-skills/SKILL.md +5 -6
  350. package/template/.cursor/skills/setup-matt-pocock-skills/domain.md +6 -20
  351. package/template/.cursor/skills/wait-what/SKILL.md +1 -1
  352. package/template/.cursor/skills/yss-antdv-next-design/SKILL.md +48 -0
  353. package/template/.cursor/skills/yss-antdv-next-design/references/boundaries.md +25 -0
  354. package/template/.cursor/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
  355. package/template/.cursor/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
  356. package/template/.cursor/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
  357. package/template/.cursor/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
  358. package/template/.cursor/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
  359. package/template/.cursor/skills/yss-application/SKILL.md +6 -0
  360. package/template/.cursor/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
  361. package/template/.cursor/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
  362. package/template/.cursor/skills/yss-application/references/profiles/target-domain-model.md +3 -0
  363. package/template/.cursor/skills/yss-components/SKILL.md +1 -1
  364. package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
  365. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
  366. package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
  367. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
  368. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  369. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
  370. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
  371. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
  372. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
  373. package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
  374. package/template/.cursor/skills/yss-design-system/SKILL.md +25 -22
  375. package/template/.cursor/skills/yss-design-system/references/design-qa-theme.md +22 -24
  376. package/template/.cursor/skills/yss-design-system/references/design-system.md +39 -56
  377. package/template/.cursor/skills/yss-domain/SKILL.md +1 -1
  378. package/template/.cursor/skills/yss-dto/SKILL.md +1 -0
  379. package/template/.cursor/skills/yss-exception/SKILL.md +1 -0
  380. package/template/.cursor/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
  381. package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
  382. package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
  383. package/template/.cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
  384. package/template/.cursor/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
  385. package/template/.cursor/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
  386. package/template/.cursor/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
  387. package/template/.cursor/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
  388. package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
  389. package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
  390. package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
  391. package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
  392. package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
  393. package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
  394. package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
  395. package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
  396. package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
  397. package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
  398. package/template/.cursor/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
  399. package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
  400. package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
  401. package/template/.cursor/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
  402. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
  403. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
  404. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
  405. package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
  406. package/template/.cursor/skills/yss-mybatis/SKILL.md +2 -2
  407. package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +31 -7
  408. package/template/.cursor/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
  409. package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
  410. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
  411. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +9 -3
  412. package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +7 -2
  413. package/template/.cursor/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
  414. package/template/.cursor/skills/yss-prototype-stage/SKILL.md +9 -8
  415. package/template/.cursor/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
  416. package/template/.cursor/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
  417. package/template/.cursor/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
  418. package/template/.cursor/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
  419. package/template/.cursor/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
  420. package/template/.cursor/skills/yss-repository/SKILL.md +6 -0
  421. package/template/.cursor/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
  422. package/template/.cursor/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
  423. package/template/.cursor/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
  424. package/template/.cursor/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
  425. package/template/.cursor/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
  426. package/template/.cursor/skills/yss-stage-decision/SKILL.md +16 -12
  427. package/template/.cursor/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
  428. package/template/.cursor/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
  429. package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
  430. package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
  431. package/template/.cursor/skills/yss-stage-decision/references/validation-rules.md +1 -1
  432. package/template/.cursor/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
  433. package/template/.cursor/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
  434. package/template/.cursor/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
  435. package/template/.cursor/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
  436. package/template/.cursor/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
  437. package/template/.cursor/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
  438. package/template/.cursor/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
  439. package/template/.cursor/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
  440. package/template/.cursor/skills/yss-tactical-design/SKILL.md +8 -2
  441. package/template/.cursor/skills/yss-tactical-design/references/output-template.md +3 -0
  442. package/template/.cursor/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
  443. package/template/.cursor/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
  444. package/template/.cursor/skills/yss-ui/SKILL.md +1 -2
  445. package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +3 -3
  446. package/template/.cursor/skills/yss-validation/SKILL.md +1 -0
  447. package/template/.cursor/skills/yss-web-controller/SKILL.md +6 -0
  448. package/template/.cursor/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
  449. package/template/.cursor/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
  450. package/template/.cursor/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
  451. package/template/.cursor/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
  452. package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
  453. package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
  454. package/template/.cursorrules +6 -34
  455. package/template/.pi/skills/alibaba-java-code-style/SKILL.md +1 -0
  456. package/template/.pi/skills/code-review/references/yss-review-standards.md +1 -1
  457. package/template/.pi/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
  458. package/template/.pi/skills/domain-modeling/SKILL.md +10 -26
  459. package/template/.pi/skills/grill-with-docs/SKILL.md +6 -5
  460. package/template/.pi/skills/lombok/SKILL.md +2 -1
  461. package/template/.pi/skills/mapstruct/SKILL.md +3 -2
  462. package/template/.pi/skills/setup-matt-pocock-skills/SKILL.md +5 -6
  463. package/template/.pi/skills/setup-matt-pocock-skills/domain.md +6 -20
  464. package/template/.pi/skills/wait-what/SKILL.md +1 -1
  465. package/template/.pi/skills/yss-antdv-next-design/SKILL.md +48 -0
  466. package/template/.pi/skills/yss-antdv-next-design/references/boundaries.md +25 -0
  467. package/template/.pi/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
  468. package/template/.pi/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
  469. package/template/.pi/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
  470. package/template/.pi/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
  471. package/template/.pi/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
  472. package/template/.pi/skills/yss-application/SKILL.md +6 -0
  473. package/template/.pi/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
  474. package/template/.pi/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
  475. package/template/.pi/skills/yss-application/references/profiles/target-domain-model.md +3 -0
  476. package/template/.pi/skills/yss-components/SKILL.md +1 -1
  477. package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
  478. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
  479. package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
  480. package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
  481. package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  482. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
  483. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
  484. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
  485. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
  486. package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
  487. package/template/.pi/skills/yss-design-system/SKILL.md +25 -22
  488. package/template/.pi/skills/yss-design-system/references/design-qa-theme.md +22 -24
  489. package/template/.pi/skills/yss-design-system/references/design-system.md +39 -56
  490. package/template/.pi/skills/yss-domain/SKILL.md +1 -1
  491. package/template/.pi/skills/yss-dto/SKILL.md +1 -0
  492. package/template/.pi/skills/yss-exception/SKILL.md +1 -0
  493. package/template/.pi/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
  494. package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
  495. package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
  496. package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
  497. package/template/.pi/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
  498. package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
  499. package/template/.pi/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
  500. package/template/.pi/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
  501. package/template/.pi/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
  502. package/template/.pi/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
  503. package/template/.pi/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
  504. package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
  505. package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
  506. package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
  507. package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
  508. package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
  509. package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
  510. package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
  511. package/template/.pi/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
  512. package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
  513. package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
  514. package/template/.pi/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
  515. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
  516. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
  517. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
  518. package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
  519. package/template/.pi/skills/yss-mybatis/SKILL.md +2 -2
  520. package/template/.pi/skills/yss-product-lifecycle/SKILL.md +31 -7
  521. package/template/.pi/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
  522. package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
  523. package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
  524. package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +9 -3
  525. package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +7 -2
  526. package/template/.pi/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
  527. package/template/.pi/skills/yss-prototype-stage/SKILL.md +9 -8
  528. package/template/.pi/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
  529. package/template/.pi/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
  530. package/template/.pi/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
  531. package/template/.pi/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
  532. package/template/.pi/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
  533. package/template/.pi/skills/yss-repository/SKILL.md +6 -0
  534. package/template/.pi/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
  535. package/template/.pi/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
  536. package/template/.pi/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
  537. package/template/.pi/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
  538. package/template/.pi/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
  539. package/template/.pi/skills/yss-stage-decision/SKILL.md +16 -12
  540. package/template/.pi/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
  541. package/template/.pi/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
  542. package/template/.pi/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
  543. package/template/.pi/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
  544. package/template/.pi/skills/yss-stage-decision/references/validation-rules.md +1 -1
  545. package/template/.pi/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
  546. package/template/.pi/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
  547. package/template/.pi/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
  548. package/template/.pi/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
  549. package/template/.pi/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
  550. package/template/.pi/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
  551. package/template/.pi/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
  552. package/template/.pi/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
  553. package/template/.pi/skills/yss-tactical-design/SKILL.md +8 -2
  554. package/template/.pi/skills/yss-tactical-design/references/output-template.md +3 -0
  555. package/template/.pi/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
  556. package/template/.pi/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
  557. package/template/.pi/skills/yss-ui/SKILL.md +1 -2
  558. package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +3 -3
  559. package/template/.pi/skills/yss-validation/SKILL.md +1 -0
  560. package/template/.pi/skills/yss-web-controller/SKILL.md +6 -0
  561. package/template/.pi/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
  562. package/template/.pi/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
  563. package/template/.pi/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
  564. package/template/.pi/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
  565. package/template/.pi/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
  566. package/template/.pi/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
  567. package/template/.qoder/skills/alibaba-java-code-style/SKILL.md +1 -0
  568. package/template/.qoder/skills/code-review/references/yss-review-standards.md +1 -1
  569. package/template/.qoder/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
  570. package/template/.qoder/skills/domain-modeling/SKILL.md +10 -26
  571. package/template/.qoder/skills/grill-with-docs/SKILL.md +6 -5
  572. package/template/.qoder/skills/lombok/SKILL.md +2 -1
  573. package/template/.qoder/skills/mapstruct/SKILL.md +3 -2
  574. package/template/.qoder/skills/setup-matt-pocock-skills/SKILL.md +5 -6
  575. package/template/.qoder/skills/setup-matt-pocock-skills/domain.md +6 -20
  576. package/template/.qoder/skills/wait-what/SKILL.md +1 -1
  577. package/template/.qoder/skills/yss-antdv-next-design/SKILL.md +48 -0
  578. package/template/.qoder/skills/yss-antdv-next-design/references/boundaries.md +25 -0
  579. package/template/.qoder/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
  580. package/template/.qoder/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
  581. package/template/.qoder/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
  582. package/template/.qoder/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
  583. package/template/.qoder/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
  584. package/template/.qoder/skills/yss-application/SKILL.md +6 -0
  585. package/template/.qoder/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
  586. package/template/.qoder/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
  587. package/template/.qoder/skills/yss-application/references/profiles/target-domain-model.md +3 -0
  588. package/template/.qoder/skills/yss-components/SKILL.md +1 -1
  589. package/template/.qoder/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
  590. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
  591. package/template/.qoder/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
  592. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
  593. package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  594. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
  595. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
  596. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
  597. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
  598. package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
  599. package/template/.qoder/skills/yss-design-system/SKILL.md +25 -22
  600. package/template/.qoder/skills/yss-design-system/references/design-qa-theme.md +22 -24
  601. package/template/.qoder/skills/yss-design-system/references/design-system.md +39 -56
  602. package/template/.qoder/skills/yss-domain/SKILL.md +1 -1
  603. package/template/.qoder/skills/yss-dto/SKILL.md +1 -0
  604. package/template/.qoder/skills/yss-exception/SKILL.md +1 -0
  605. package/template/.qoder/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
  606. package/template/.qoder/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
  607. package/template/.qoder/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
  608. package/template/.qoder/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
  609. package/template/.qoder/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
  610. package/template/.qoder/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
  611. package/template/.qoder/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
  612. package/template/.qoder/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
  613. package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
  614. package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
  615. package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
  616. package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
  617. package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
  618. package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
  619. package/template/.qoder/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
  620. package/template/.qoder/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
  621. package/template/.qoder/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
  622. package/template/.qoder/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
  623. package/template/.qoder/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
  624. package/template/.qoder/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
  625. package/template/.qoder/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
  626. package/template/.qoder/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
  627. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
  628. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
  629. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
  630. package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
  631. package/template/.qoder/skills/yss-mybatis/SKILL.md +2 -2
  632. package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +31 -7
  633. package/template/.qoder/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
  634. package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
  635. package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
  636. package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +9 -3
  637. package/template/.qoder/skills/yss-product-lifecycle/references/state-model.md +7 -2
  638. package/template/.qoder/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
  639. package/template/.qoder/skills/yss-prototype-stage/SKILL.md +9 -8
  640. package/template/.qoder/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
  641. package/template/.qoder/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
  642. package/template/.qoder/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
  643. package/template/.qoder/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
  644. package/template/.qoder/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
  645. package/template/.qoder/skills/yss-repository/SKILL.md +6 -0
  646. package/template/.qoder/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
  647. package/template/.qoder/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
  648. package/template/.qoder/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
  649. package/template/.qoder/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
  650. package/template/.qoder/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
  651. package/template/.qoder/skills/yss-stage-decision/SKILL.md +16 -12
  652. package/template/.qoder/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
  653. package/template/.qoder/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
  654. package/template/.qoder/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
  655. package/template/.qoder/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
  656. package/template/.qoder/skills/yss-stage-decision/references/validation-rules.md +1 -1
  657. package/template/.qoder/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
  658. package/template/.qoder/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
  659. package/template/.qoder/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
  660. package/template/.qoder/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
  661. package/template/.qoder/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
  662. package/template/.qoder/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
  663. package/template/.qoder/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
  664. package/template/.qoder/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
  665. package/template/.qoder/skills/yss-tactical-design/SKILL.md +8 -2
  666. package/template/.qoder/skills/yss-tactical-design/references/output-template.md +3 -0
  667. package/template/.qoder/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
  668. package/template/.qoder/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
  669. package/template/.qoder/skills/yss-ui/SKILL.md +1 -2
  670. package/template/.qoder/skills/yss-ui-business-page-generation/SKILL.md +3 -3
  671. package/template/.qoder/skills/yss-validation/SKILL.md +1 -0
  672. package/template/.qoder/skills/yss-web-controller/SKILL.md +6 -0
  673. package/template/.qoder/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
  674. package/template/.qoder/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
  675. package/template/.qoder/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
  676. package/template/.qoder/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
  677. package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
  678. package/template/.qoder/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
  679. package/template/.trae/skills/alibaba-java-code-style/SKILL.md +1 -0
  680. package/template/.trae/skills/code-review/references/yss-review-standards.md +1 -1
  681. package/template/.trae/skills/domain-modeling/CONTEXT-FORMAT.md +37 -42
  682. package/template/.trae/skills/domain-modeling/SKILL.md +10 -26
  683. package/template/.trae/skills/grill-with-docs/SKILL.md +6 -5
  684. package/template/.trae/skills/lombok/SKILL.md +2 -1
  685. package/template/.trae/skills/mapstruct/SKILL.md +3 -2
  686. package/template/.trae/skills/setup-matt-pocock-skills/SKILL.md +5 -6
  687. package/template/.trae/skills/setup-matt-pocock-skills/domain.md +6 -20
  688. package/template/.trae/skills/wait-what/SKILL.md +1 -1
  689. package/template/.trae/skills/yss-antdv-next-design/SKILL.md +48 -0
  690. package/template/.trae/skills/yss-antdv-next-design/references/boundaries.md +25 -0
  691. package/template/.trae/skills/yss-antdv-next-design/references/cli-matrix.md +34 -0
  692. package/template/.trae/skills/yss-antdv-next-design/references/fact-pack.md +38 -0
  693. package/template/.trae/skills/yss-antdv-next-design/scripts/collect-antdv-next-facts.mjs +213 -0
  694. package/template/.trae/skills/yss-antdv-next-design/scripts/validate-fact-pack.mjs +168 -0
  695. package/template/.trae/skills/yss-antdv-next-design/tests/run-scenarios.mjs +139 -0
  696. package/template/.trae/skills/yss-application/SKILL.md +6 -0
  697. package/template/.trae/skills/yss-application/references/profiles/layered-mvc-service.md +3 -0
  698. package/template/.trae/skills/yss-application/references/profiles/mvc-data-analysis-v1.md +3 -0
  699. package/template/.trae/skills/yss-application/references/profiles/target-domain-model.md +3 -0
  700. package/template/.trae/skills/yss-components/SKILL.md +1 -1
  701. package/template/.trae/skills/yss-ddd-scaffold-generator/SKILL.md +3 -4
  702. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -13
  703. package/template/.trae/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +13 -0
  704. package/template/.trae/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -4
  705. package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  706. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +21 -7
  707. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +37 -15
  708. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +22 -10
  709. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +14 -2
  710. package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +41 -12
  711. package/template/.trae/skills/yss-design-system/SKILL.md +25 -22
  712. package/template/.trae/skills/yss-design-system/references/design-qa-theme.md +22 -24
  713. package/template/.trae/skills/yss-design-system/references/design-system.md +39 -56
  714. package/template/.trae/skills/yss-domain/SKILL.md +1 -1
  715. package/template/.trae/skills/yss-dto/SKILL.md +1 -0
  716. package/template/.trae/skills/yss-exception/SKILL.md +1 -0
  717. package/template/.trae/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
  718. package/template/.trae/skills/yss-implementation-contract-compiler/SKILL.md +8 -2
  719. package/template/.trae/skills/yss-implementation-contract-compiler/references/boundaries.md +16 -8
  720. package/template/.trae/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +72 -19
  721. package/template/.trae/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +5 -1
  722. package/template/.trae/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -0
  723. package/template/.trae/skills/yss-implementation-contract-compiler/tests/backend-profiles.test.mjs +45 -0
  724. package/template/.trae/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +8 -6
  725. package/template/.trae/skills/yss-layered-mvc-scaffold-generator/SKILL.md +64 -0
  726. package/template/.trae/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +4 -0
  727. package/template/.trae/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +29 -0
  728. package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +61 -0
  729. package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +315 -0
  730. package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/run_scaffold_verification.mjs +30 -0
  731. package/template/.trae/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +159 -0
  732. package/template/.trae/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +22 -0
  733. package/template/.trae/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +77 -0
  734. package/template/.trae/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +9 -0
  735. package/template/.trae/skills/yss-mvc-scaffold-generator/SKILL.md +3 -82
  736. package/template/.trae/skills/yss-mvc-scaffold-generator/references/history/generate_project.mjs.txt +137 -0
  737. package/template/.trae/skills/yss-mvc-scaffold-generator/references/history/generate_project.test.mjs.txt +341 -0
  738. package/template/.trae/skills/yss-mvc-scaffold-generator/references/history/skill.md +87 -0
  739. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +2 -135
  740. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +4 -332
  741. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +11 -3
  742. package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.test.mjs +36 -0
  743. package/template/.trae/skills/yss-mybatis/SKILL.md +2 -2
  744. package/template/.trae/skills/yss-product-lifecycle/SKILL.md +31 -7
  745. package/template/.trae/skills/yss-product-lifecycle/references/artifact-dependencies.md +3 -0
  746. package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +4 -6
  747. package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +119 -46
  748. package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +9 -3
  749. package/template/.trae/skills/yss-product-lifecycle/references/state-model.md +7 -2
  750. package/template/.trae/skills/yss-product-lifecycle/references/user-decisions.md +56 -0
  751. package/template/.trae/skills/yss-prototype-stage/SKILL.md +9 -8
  752. package/template/.trae/skills/yss-prototype-stage/references/product-design-adapter.md +33 -10
  753. package/template/.trae/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -8
  754. package/template/.trae/skills/yss-prototype-stage/scripts/prototype-contract.mjs +129 -22
  755. package/template/.trae/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs +314 -0
  756. package/template/.trae/skills/yss-prototype-stage/tests/run-scenarios.mjs +96 -17
  757. package/template/.trae/skills/yss-repository/SKILL.md +6 -0
  758. package/template/.trae/skills/yss-repository/references/profiles/layered-mvc-service.md +3 -0
  759. package/template/.trae/skills/yss-repository/references/profiles/mvc-data-analysis-v1.md +3 -0
  760. package/template/.trae/skills/yss-repository/references/profiles/target-domain-model.md +3 -0
  761. package/template/.trae/skills/yss-skill-source-index-refresh/references/source-map-config.md +0 -1
  762. package/template/.trae/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +1 -1
  763. package/template/.trae/skills/yss-stage-decision/SKILL.md +16 -12
  764. package/template/.trae/skills/yss-stage-decision/references/domain-strategy-contract.md +16 -10
  765. package/template/.trae/skills/yss-stage-decision/references/domain-strategy.schema.json +23 -5
  766. package/template/.trae/skills/yss-stage-decision/references/stage-decision-package-contract.md +5 -2
  767. package/template/.trae/skills/yss-stage-decision/references/stage-decision-package.schema.json +16 -4
  768. package/template/.trae/skills/yss-stage-decision/references/validation-rules.md +1 -1
  769. package/template/.trae/skills/yss-stage-decision/scripts/migrate-context-references.mjs +62 -0
  770. package/template/.trae/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +18 -7
  771. package/template/.trae/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +20 -9
  772. package/template/.trae/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +1 -1
  773. package/template/.trae/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +1 -1
  774. package/template/.trae/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +12 -7
  775. package/template/.trae/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +9 -4
  776. package/template/.trae/skills/yss-stage-decision/tests/run-scenarios.mjs +134 -56
  777. package/template/.trae/skills/yss-tactical-design/SKILL.md +8 -2
  778. package/template/.trae/skills/yss-tactical-design/references/output-template.md +3 -0
  779. package/template/.trae/skills/yss-tactical-design/references/tactical-design-contract.md +3 -1
  780. package/template/.trae/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +10 -2
  781. package/template/.trae/skills/yss-ui/SKILL.md +1 -2
  782. package/template/.trae/skills/yss-ui-business-page-generation/SKILL.md +3 -3
  783. package/template/.trae/skills/yss-validation/SKILL.md +1 -0
  784. package/template/.trae/skills/yss-web-controller/SKILL.md +6 -0
  785. package/template/.trae/skills/yss-web-controller/references/profiles/layered-mvc-service.md +3 -0
  786. package/template/.trae/skills/yss-web-controller/references/profiles/mvc-data-analysis-v1.md +3 -0
  787. package/template/.trae/skills/yss-web-controller/references/profiles/target-domain-model.md +3 -0
  788. package/template/.trae/skills/yss-web-controller/references/web-generation-contract.schema.json +3 -2
  789. package/template/.trae/skills/yss-web-controller/scripts/generate_controller.mjs +27 -10
  790. package/template/.trae/skills/yss-web-controller/scripts/generate_controller.test.mjs +29 -1
  791. package/template/AGENTS.md +52 -91
  792. package/template/CONTEXT.md +15 -5
  793. package/template/DESIGN.md +85 -41
  794. package/template/__yss_dotfile__.gitignore +1 -0
  795. package/template/docs/agents/backend-architecture-profiles.md +25 -0
  796. package/template/docs/agents/digital-human-roles.md +3 -3
  797. package/template/docs/agents/digital-human-roles.yaml +46 -13
  798. package/template/docs/agents/domain.md +7 -6
  799. package/template/docs/agents/skill-migrations.md +20 -2
  800. package/template/docs/agents/skills-maintenance.md +3 -3
  801. package/template/docs/agents/strategic-design-skills-integration.md +6 -1
  802. package/template/docs/agents/yss-skill-registry.yaml +78 -94
  803. package/template/docs/agents/yss-ui-skills-integration.md +3 -3
  804. package/template/docs/api/templates/openapi-draft-review-checklist.md +2 -2
  805. package/template/docs/architecture/templates/engineering-baseline-review-template.md +18 -6
  806. package/template/docs/design/README.md +9 -6
  807. package/template/docs/design/design-system-sync.yaml +1 -1
  808. package/template/docs/design/design.md +86 -118
  809. package/template/docs/design/facts/antdv-next/1.5.2/cli-help.txt +38 -0
  810. package/template/docs/design/facts/antdv-next/1.5.2/component-list.json +434 -0
  811. package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/demo-basic.json +7 -0
  812. package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/info.json +246 -0
  813. package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/semantic.json +40 -0
  814. package/template/docs/design/facts/antdv-next/1.5.2/components/Alert/token.json +32 -0
  815. package/template/docs/design/facts/antdv-next/1.5.2/components/Button/demo-basic.json +7 -0
  816. package/template/docs/design/facts/antdv-next/1.5.2/components/Button/info.json +190 -0
  817. package/template/docs/design/facts/antdv-next/1.5.2/components/Button/semantic.json +20 -0
  818. package/template/docs/design/facts/antdv-next/1.5.2/components/Button/token.json +256 -0
  819. package/template/docs/design/facts/antdv-next/1.5.2/components/Input/demo-basic.json +7 -0
  820. package/template/docs/design/facts/antdv-next/1.5.2/components/Input/info.json +460 -0
  821. package/template/docs/design/facts/antdv-next/1.5.2/components/Input/semantic.json +70 -0
  822. package/template/docs/design/facts/antdv-next/1.5.2/components/Input/token.json +123 -0
  823. package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/demo-basic.json +7 -0
  824. package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/info.json +646 -0
  825. package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/semantic.json +50 -0
  826. package/template/docs/design/facts/antdv-next/1.5.2/components/Modal/token.json +130 -0
  827. package/template/docs/design/facts/antdv-next/1.5.2/components/Select/demo-basic.json +7 -0
  828. package/template/docs/design/facts/antdv-next/1.5.2/components/Select/info.json +640 -0
  829. package/template/docs/design/facts/antdv-next/1.5.2/components/Select/semantic.json +70 -0
  830. package/template/docs/design/facts/antdv-next/1.5.2/components/Select/token.json +172 -0
  831. package/template/docs/design/facts/antdv-next/1.5.2/components/Table/demo-basic.json +7 -0
  832. package/template/docs/design/facts/antdv-next/1.5.2/components/Table/info.json +1010 -0
  833. package/template/docs/design/facts/antdv-next/1.5.2/components/Table/semantic.json +70 -0
  834. package/template/docs/design/facts/antdv-next/1.5.2/components/Table/token.json +263 -0
  835. package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/demo-basic.json +7 -0
  836. package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/info.json +321 -0
  837. package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/semantic.json +25 -0
  838. package/template/docs/design/facts/antdv-next/1.5.2/components/Tag/token.json +25 -0
  839. package/template/docs/design/facts/antdv-next/1.5.2/design-md.json +3 -0
  840. package/template/docs/design/facts/antdv-next/1.5.2/manifest.json +215 -0
  841. package/template/docs/design/facts/antdv-next/1.5.2/resolution-probe.json +5 -0
  842. package/template/docs/design/preview-dark.html +170 -7
  843. package/template/docs/design/preview.css +730 -0
  844. package/template/docs/design/preview.html +168 -10
  845. package/template/docs/design/preview.js +71 -0
  846. package/template/docs/design/schemas/visual-baseline.schema.json +66 -0
  847. package/template/docs/design/templates/interaction-spec-template.md +1 -1
  848. package/template/docs/design/templates/product-overview-design-template.md +6 -6
  849. package/template/docs/design/templates/prototype-evidence-template.yaml +21 -8
  850. package/template/docs/design/templates/prototype-review-checklist.md +1 -1
  851. package/template/docs/design/templates/visual-baseline-template.yaml +70 -0
  852. package/template/docs/design/tokens/.design-md-projection.json +3 -3
  853. package/template/docs/design/tokens/theme.json +2 -2
  854. package/template/docs/design/tokens/variables.css +5 -0
  855. package/template/docs/process/harness-executive-blueprint.md +1 -1
  856. package/template/docs/process/harness-process-tailoring.md +1 -0
  857. package/template/docs/process/lifecycle-artifact-map.md +5 -4
  858. package/template/docs/process/lifecycle-registry-baseline.json +7 -5
  859. package/template/docs/process/lifecycle-registry.yaml +22 -0
  860. package/template/docs/process/schemas/backend-architecture-identity.schema.json +19 -0
  861. package/template/docs/process/schemas/context-reconciliation.schema.json +57 -0
  862. package/template/docs/process/schemas/digital-human-task-package.schema.json +10 -0
  863. package/template/docs/process/schemas/frontend-implementation-evidence.schema.json +62 -29
  864. package/template/docs/process/schemas/lifecycle-checkpoint.schema.json +16 -2
  865. package/template/docs/process/schemas/lifecycle-registry.schema.json +4 -4
  866. package/template/docs/process/schemas/scaffold-architecture-decisions.schema.json +68 -0
  867. package/template/docs/process/schemas/strategic-design-handoff.schema.json +670 -0
  868. package/template/docs/process/schemas/strategic-handoff-domain-strategy.schema.json +146 -0
  869. package/template/docs/process/schemas/strategic-handoff-export.schema.json +295 -0
  870. package/template/docs/process/schemas/strategic-handoff-package.schema.json +97 -0
  871. package/template/docs/process/schemas/strategic-handoff-stage-decision-package.schema.json +98 -0
  872. package/template/docs/process/schemas/user-decision.schema.json +357 -0
  873. package/template/docs/process/strategic-handoff-package.md +56 -0
  874. package/template/docs/process/template-verification-profiles.yaml +60 -1
  875. package/template/docs/process/templates/context-reconciliation-template.yaml +18 -0
  876. package/template/docs/process/templates/frontend-implementation-plan-template.yaml +11 -5
  877. package/template/docs/process/templates/frontend-implementation-verification-template.yaml +25 -5
  878. package/template/docs/process/templates/lifecycle-checkpoint-template.yaml +9 -0
  879. package/template/docs/process/templates/scaffold-architecture-decisions-template.yaml +32 -0
  880. package/template/docs/process/templates/stage-checkpoint-template.md +5 -0
  881. package/template/docs/process/templates/user-decision-template.yaml +30 -0
  882. package/template/docs/templates/approval-record-template.yaml +4 -0
  883. package/template/docs/templates/build-architecture-checklist-template.md +3 -3
  884. package/template/docs/templates/implementation-repo-registry-template.md +3 -1
  885. package/template/docs/templates/implementation-routing-template.md +8 -6
  886. package/template/docs/templates/requirement-freeze-template.md +1 -1
  887. package/template/docs/templates/review-report-template.md +1 -1
  888. package/template/docs/templates/spec-template.md +5 -5
  889. package/template/docs/user-guide//346/210/230/346/234/257/350/256/276/350/256/241/345/255/220/351/241/271/347/233/256/347/224/250/346/210/267/346/211/213/345/206/214.md +3 -1
  890. package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214.md +1 -1
  891. package/template/scripts/fixtures/strategic-handoff/base-stage.json +91 -0
  892. package/template/scripts/fixtures/strategic-handoff/base-strategy.json +205 -0
  893. package/template/scripts/fixtures/strategic-handoff/fixture.mjs +57 -0
  894. package/template/scripts/fixtures/strategic-handoff/source-roles.json +528 -0
  895. package/template/scripts/fixtures/user-decision/build-fixture.mjs +61 -0
  896. package/template/scripts/lib/approval-record.mjs +32 -1
  897. package/template/scripts/lib/backend-architecture.mjs +43 -0
  898. package/template/scripts/lib/context-contract.mjs +203 -0
  899. package/template/scripts/lib/digital-human-roles.mjs +21 -3
  900. package/template/scripts/lib/first-slice-architecture.mjs +23 -0
  901. package/template/scripts/lib/implementation-contract-compiler.mjs +34 -1
  902. package/template/scripts/lib/lifecycle-registry.mjs +14 -6
  903. package/template/scripts/lib/lifecycle-transition.mjs +19 -4
  904. package/template/scripts/lib/scaffold-local-database.mjs +26 -0
  905. package/template/scripts/lib/scenario-checks.mjs +25 -12
  906. package/template/scripts/lib/skill-governance.mjs +25 -10
  907. package/template/scripts/lib/skill-registry.mjs +1 -1
  908. package/template/scripts/lib/skill-supply-chain.mjs +1 -1
  909. package/template/scripts/lib/strategic-handoff-consumption.mjs +76 -0
  910. package/template/scripts/lib/strategic-handoff-io.mjs +75 -0
  911. package/template/scripts/lib/strategic-handoff-rules.mjs +37 -0
  912. package/template/scripts/lib/strategic-handoff-zip.py +52 -0
  913. package/template/scripts/lib/strategic-handoff.mjs +259 -0
  914. package/template/scripts/lib/task-package.mjs +10 -2
  915. package/template/scripts/lib/user-decision.mjs +210 -0
  916. package/template/scripts/strategic-handoff +14 -0
  917. package/template/scripts/sync-strategic-handoff-tools +18 -0
  918. package/template/scripts/verify-approval-record +5 -4
  919. package/template/scripts/verify-business-language-scenarios +59 -0
  920. package/template/scripts/verify-context-contract +15 -0
  921. package/template/scripts/verify-context-contract-scenarios +105 -0
  922. package/template/scripts/verify-context-reconciliation +58 -0
  923. package/template/scripts/verify-context-reconciliation-scenarios +69 -0
  924. package/template/scripts/verify-digital-human-roles-scenarios +1 -1
  925. package/template/scripts/verify-frontend-implementation-evidence +31 -8
  926. package/template/scripts/verify-frontend-implementation-evidence-scenarios +56 -0
  927. package/template/scripts/verify-grill-with-docs-context-scenarios +15 -0
  928. package/template/scripts/verify-lifecycle-checkpoint +9 -1
  929. package/template/scripts/verify-lifecycle-transition-scenarios +13 -3
  930. package/template/scripts/verify-retired-skill-ids +30 -4
  931. package/template/scripts/verify-scaffold-architecture-decision-scenarios +30 -0
  932. package/template/scripts/verify-scaffold-architecture-decisions +61 -0
  933. package/template/scripts/verify-scaffold-generator-scenarios +74 -3
  934. package/template/scripts/verify-strategic-context-import +65 -0
  935. package/template/scripts/verify-strategic-context-import-scenarios +50 -0
  936. package/template/scripts/verify-strategic-handoff-consumption +10 -0
  937. package/template/scripts/verify-strategic-handoff-package-scenarios +102 -0
  938. package/template/scripts/verify-subagent-task-package-scenarios +17 -3
  939. package/template/scripts/verify-template-verification-scenarios +6 -1
  940. package/template/scripts/verify-user-decision +17 -0
  941. package/template/scripts/verify-user-decision-scenarios +103 -0
  942. package/template/skills-lock.json +77 -270
  943. package/template/yss-public-skills.json +4 -4
  944. package/template.snapshot.json +4 -4
  945. package/template/.agents/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  946. package/template/.agents/skills/ask-matt/SKILL.md +0 -95
  947. package/template/.agents/skills/ask-matt/agents/openai.yaml +0 -5
  948. package/template/.agents/skills/dispatching-parallel-agents/SKILL.md +0 -185
  949. package/template/.agents/skills/loop-me/SKILL.md +0 -32
  950. package/template/.agents/skills/loop-me/agents/openai.yaml +0 -5
  951. package/template/.agents/skills/migrate-to-shoehorn/SKILL.md +0 -118
  952. package/template/.agents/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  953. package/template/.agents/skills/prototype-page-acceptance/SKILL.md +0 -62
  954. package/template/.agents/skills/scaffold-exercises/SKILL.md +0 -106
  955. package/template/.agents/skills/scaffold-exercises/agents/openai.yaml +0 -3
  956. package/template/.agents/skills/setup-pre-commit/SKILL.md +0 -91
  957. package/template/.agents/skills/setup-pre-commit/agents/openai.yaml +0 -3
  958. package/template/.agents/skills/setup-ts-deep-modules/SKILL.md +0 -102
  959. package/template/.agents/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  960. package/template/.agents/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  961. package/template/.agents/skills/teach/GLOSSARY-FORMAT.md +0 -35
  962. package/template/.agents/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  963. package/template/.agents/skills/teach/MISSION-FORMAT.md +0 -31
  964. package/template/.agents/skills/teach/RESOURCES-FORMAT.md +0 -32
  965. package/template/.agents/skills/teach/SKILL.md +0 -140
  966. package/template/.agents/skills/teach/agents/openai.yaml +0 -5
  967. package/template/.agents/skills/writing-beats/SKILL.md +0 -67
  968. package/template/.agents/skills/writing-beats/agents/openai.yaml +0 -5
  969. package/template/.agents/skills/writing-fragments/SKILL.md +0 -79
  970. package/template/.agents/skills/writing-fragments/agents/openai.yaml +0 -5
  971. package/template/.agents/skills/writing-shape/SKILL.md +0 -79
  972. package/template/.agents/skills/writing-shape/agents/openai.yaml +0 -5
  973. package/template/.agents/skills/yss-microapp-commit/SKILL.md +0 -201
  974. package/template/.agents/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  975. package/template/.agents/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  976. package/template/.agents/skills/yss-page-module-development/SKILL.md +0 -165
  977. package/template/.agents/skills/yss-page-module-development/agents/openai.yaml +0 -5
  978. package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  979. package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  980. package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  981. package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  982. package/template/.agents/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  983. package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  984. package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  985. package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  986. package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  987. package/template/.agents/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  988. package/template/.agents/skills/yss-page-module-development/references/component-map.md +0 -34
  989. package/template/.agents/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  990. package/template/.agents/skills/yss-page-module-development/references/hooks-map.md +0 -11
  991. package/template/.agents/skills/yss-page-module-development/references/utils-map.md +0 -14
  992. package/template/.claude/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  993. package/template/.claude/skills/ask-matt/SKILL.md +0 -95
  994. package/template/.claude/skills/ask-matt/agents/openai.yaml +0 -5
  995. package/template/.claude/skills/dispatching-parallel-agents/SKILL.md +0 -185
  996. package/template/.claude/skills/loop-me/SKILL.md +0 -32
  997. package/template/.claude/skills/loop-me/agents/openai.yaml +0 -5
  998. package/template/.claude/skills/migrate-to-shoehorn/SKILL.md +0 -118
  999. package/template/.claude/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  1000. package/template/.claude/skills/prototype-page-acceptance/SKILL.md +0 -62
  1001. package/template/.claude/skills/scaffold-exercises/SKILL.md +0 -106
  1002. package/template/.claude/skills/scaffold-exercises/agents/openai.yaml +0 -3
  1003. package/template/.claude/skills/setup-pre-commit/SKILL.md +0 -91
  1004. package/template/.claude/skills/setup-pre-commit/agents/openai.yaml +0 -3
  1005. package/template/.claude/skills/setup-ts-deep-modules/SKILL.md +0 -102
  1006. package/template/.claude/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  1007. package/template/.claude/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  1008. package/template/.claude/skills/teach/GLOSSARY-FORMAT.md +0 -35
  1009. package/template/.claude/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  1010. package/template/.claude/skills/teach/MISSION-FORMAT.md +0 -31
  1011. package/template/.claude/skills/teach/RESOURCES-FORMAT.md +0 -32
  1012. package/template/.claude/skills/teach/SKILL.md +0 -140
  1013. package/template/.claude/skills/teach/agents/openai.yaml +0 -5
  1014. package/template/.claude/skills/writing-beats/SKILL.md +0 -67
  1015. package/template/.claude/skills/writing-beats/agents/openai.yaml +0 -5
  1016. package/template/.claude/skills/writing-fragments/SKILL.md +0 -79
  1017. package/template/.claude/skills/writing-fragments/agents/openai.yaml +0 -5
  1018. package/template/.claude/skills/writing-shape/SKILL.md +0 -79
  1019. package/template/.claude/skills/writing-shape/agents/openai.yaml +0 -5
  1020. package/template/.claude/skills/yss-microapp-commit/SKILL.md +0 -201
  1021. package/template/.claude/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  1022. package/template/.claude/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  1023. package/template/.claude/skills/yss-page-module-development/SKILL.md +0 -165
  1024. package/template/.claude/skills/yss-page-module-development/agents/openai.yaml +0 -5
  1025. package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  1026. package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  1027. package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  1028. package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1029. package/template/.claude/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  1030. package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  1031. package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  1032. package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  1033. package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  1034. package/template/.claude/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  1035. package/template/.claude/skills/yss-page-module-development/references/component-map.md +0 -34
  1036. package/template/.claude/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  1037. package/template/.claude/skills/yss-page-module-development/references/hooks-map.md +0 -11
  1038. package/template/.claude/skills/yss-page-module-development/references/utils-map.md +0 -14
  1039. package/template/.codex/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  1040. package/template/.codex/skills/ask-matt/SKILL.md +0 -95
  1041. package/template/.codex/skills/ask-matt/agents/openai.yaml +0 -5
  1042. package/template/.codex/skills/dispatching-parallel-agents/SKILL.md +0 -185
  1043. package/template/.codex/skills/loop-me/SKILL.md +0 -32
  1044. package/template/.codex/skills/loop-me/agents/openai.yaml +0 -5
  1045. package/template/.codex/skills/migrate-to-shoehorn/SKILL.md +0 -118
  1046. package/template/.codex/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  1047. package/template/.codex/skills/prototype-page-acceptance/SKILL.md +0 -62
  1048. package/template/.codex/skills/scaffold-exercises/SKILL.md +0 -106
  1049. package/template/.codex/skills/scaffold-exercises/agents/openai.yaml +0 -3
  1050. package/template/.codex/skills/setup-pre-commit/SKILL.md +0 -91
  1051. package/template/.codex/skills/setup-pre-commit/agents/openai.yaml +0 -3
  1052. package/template/.codex/skills/setup-ts-deep-modules/SKILL.md +0 -102
  1053. package/template/.codex/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  1054. package/template/.codex/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  1055. package/template/.codex/skills/teach/GLOSSARY-FORMAT.md +0 -35
  1056. package/template/.codex/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  1057. package/template/.codex/skills/teach/MISSION-FORMAT.md +0 -31
  1058. package/template/.codex/skills/teach/RESOURCES-FORMAT.md +0 -32
  1059. package/template/.codex/skills/teach/SKILL.md +0 -140
  1060. package/template/.codex/skills/teach/agents/openai.yaml +0 -5
  1061. package/template/.codex/skills/writing-beats/SKILL.md +0 -67
  1062. package/template/.codex/skills/writing-beats/agents/openai.yaml +0 -5
  1063. package/template/.codex/skills/writing-fragments/SKILL.md +0 -79
  1064. package/template/.codex/skills/writing-fragments/agents/openai.yaml +0 -5
  1065. package/template/.codex/skills/writing-shape/SKILL.md +0 -79
  1066. package/template/.codex/skills/writing-shape/agents/openai.yaml +0 -5
  1067. package/template/.codex/skills/yss-microapp-commit/SKILL.md +0 -201
  1068. package/template/.codex/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  1069. package/template/.codex/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  1070. package/template/.codex/skills/yss-page-module-development/SKILL.md +0 -165
  1071. package/template/.codex/skills/yss-page-module-development/agents/openai.yaml +0 -5
  1072. package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  1073. package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  1074. package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  1075. package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1076. package/template/.codex/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  1077. package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  1078. package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  1079. package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  1080. package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  1081. package/template/.codex/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  1082. package/template/.codex/skills/yss-page-module-development/references/component-map.md +0 -34
  1083. package/template/.codex/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  1084. package/template/.codex/skills/yss-page-module-development/references/hooks-map.md +0 -11
  1085. package/template/.codex/skills/yss-page-module-development/references/utils-map.md +0 -14
  1086. package/template/.cursor/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  1087. package/template/.cursor/skills/ask-matt/SKILL.md +0 -95
  1088. package/template/.cursor/skills/ask-matt/agents/openai.yaml +0 -5
  1089. package/template/.cursor/skills/dispatching-parallel-agents/SKILL.md +0 -185
  1090. package/template/.cursor/skills/loop-me/SKILL.md +0 -32
  1091. package/template/.cursor/skills/loop-me/agents/openai.yaml +0 -5
  1092. package/template/.cursor/skills/migrate-to-shoehorn/SKILL.md +0 -118
  1093. package/template/.cursor/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  1094. package/template/.cursor/skills/prototype-page-acceptance/SKILL.md +0 -62
  1095. package/template/.cursor/skills/scaffold-exercises/SKILL.md +0 -106
  1096. package/template/.cursor/skills/scaffold-exercises/agents/openai.yaml +0 -3
  1097. package/template/.cursor/skills/setup-pre-commit/SKILL.md +0 -91
  1098. package/template/.cursor/skills/setup-pre-commit/agents/openai.yaml +0 -3
  1099. package/template/.cursor/skills/setup-ts-deep-modules/SKILL.md +0 -102
  1100. package/template/.cursor/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  1101. package/template/.cursor/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  1102. package/template/.cursor/skills/teach/GLOSSARY-FORMAT.md +0 -35
  1103. package/template/.cursor/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  1104. package/template/.cursor/skills/teach/MISSION-FORMAT.md +0 -31
  1105. package/template/.cursor/skills/teach/RESOURCES-FORMAT.md +0 -32
  1106. package/template/.cursor/skills/teach/SKILL.md +0 -140
  1107. package/template/.cursor/skills/teach/agents/openai.yaml +0 -5
  1108. package/template/.cursor/skills/writing-beats/SKILL.md +0 -67
  1109. package/template/.cursor/skills/writing-beats/agents/openai.yaml +0 -5
  1110. package/template/.cursor/skills/writing-fragments/SKILL.md +0 -79
  1111. package/template/.cursor/skills/writing-fragments/agents/openai.yaml +0 -5
  1112. package/template/.cursor/skills/writing-shape/SKILL.md +0 -79
  1113. package/template/.cursor/skills/writing-shape/agents/openai.yaml +0 -5
  1114. package/template/.cursor/skills/yss-microapp-commit/SKILL.md +0 -201
  1115. package/template/.cursor/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  1116. package/template/.cursor/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  1117. package/template/.cursor/skills/yss-page-module-development/SKILL.md +0 -165
  1118. package/template/.cursor/skills/yss-page-module-development/agents/openai.yaml +0 -5
  1119. package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  1120. package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  1121. package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  1122. package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1123. package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  1124. package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  1125. package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  1126. package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  1127. package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  1128. package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  1129. package/template/.cursor/skills/yss-page-module-development/references/component-map.md +0 -34
  1130. package/template/.cursor/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  1131. package/template/.cursor/skills/yss-page-module-development/references/hooks-map.md +0 -11
  1132. package/template/.cursor/skills/yss-page-module-development/references/utils-map.md +0 -14
  1133. package/template/.pi/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  1134. package/template/.pi/skills/ask-matt/SKILL.md +0 -95
  1135. package/template/.pi/skills/ask-matt/agents/openai.yaml +0 -5
  1136. package/template/.pi/skills/dispatching-parallel-agents/SKILL.md +0 -185
  1137. package/template/.pi/skills/loop-me/SKILL.md +0 -32
  1138. package/template/.pi/skills/loop-me/agents/openai.yaml +0 -5
  1139. package/template/.pi/skills/migrate-to-shoehorn/SKILL.md +0 -118
  1140. package/template/.pi/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  1141. package/template/.pi/skills/prototype-page-acceptance/SKILL.md +0 -62
  1142. package/template/.pi/skills/scaffold-exercises/SKILL.md +0 -106
  1143. package/template/.pi/skills/scaffold-exercises/agents/openai.yaml +0 -3
  1144. package/template/.pi/skills/setup-pre-commit/SKILL.md +0 -91
  1145. package/template/.pi/skills/setup-pre-commit/agents/openai.yaml +0 -3
  1146. package/template/.pi/skills/setup-ts-deep-modules/SKILL.md +0 -102
  1147. package/template/.pi/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  1148. package/template/.pi/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  1149. package/template/.pi/skills/teach/GLOSSARY-FORMAT.md +0 -35
  1150. package/template/.pi/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  1151. package/template/.pi/skills/teach/MISSION-FORMAT.md +0 -31
  1152. package/template/.pi/skills/teach/RESOURCES-FORMAT.md +0 -32
  1153. package/template/.pi/skills/teach/SKILL.md +0 -140
  1154. package/template/.pi/skills/teach/agents/openai.yaml +0 -5
  1155. package/template/.pi/skills/writing-beats/SKILL.md +0 -67
  1156. package/template/.pi/skills/writing-beats/agents/openai.yaml +0 -5
  1157. package/template/.pi/skills/writing-fragments/SKILL.md +0 -79
  1158. package/template/.pi/skills/writing-fragments/agents/openai.yaml +0 -5
  1159. package/template/.pi/skills/writing-shape/SKILL.md +0 -79
  1160. package/template/.pi/skills/writing-shape/agents/openai.yaml +0 -5
  1161. package/template/.pi/skills/yss-microapp-commit/SKILL.md +0 -201
  1162. package/template/.pi/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  1163. package/template/.pi/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  1164. package/template/.pi/skills/yss-page-module-development/SKILL.md +0 -165
  1165. package/template/.pi/skills/yss-page-module-development/agents/openai.yaml +0 -5
  1166. package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  1167. package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  1168. package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  1169. package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1170. package/template/.pi/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  1171. package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  1172. package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  1173. package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  1174. package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  1175. package/template/.pi/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  1176. package/template/.pi/skills/yss-page-module-development/references/component-map.md +0 -34
  1177. package/template/.pi/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  1178. package/template/.pi/skills/yss-page-module-development/references/hooks-map.md +0 -11
  1179. package/template/.pi/skills/yss-page-module-development/references/utils-map.md +0 -14
  1180. package/template/.qoder/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  1181. package/template/.qoder/skills/ask-matt/SKILL.md +0 -95
  1182. package/template/.qoder/skills/ask-matt/agents/openai.yaml +0 -5
  1183. package/template/.qoder/skills/dispatching-parallel-agents/SKILL.md +0 -185
  1184. package/template/.qoder/skills/loop-me/SKILL.md +0 -32
  1185. package/template/.qoder/skills/loop-me/agents/openai.yaml +0 -5
  1186. package/template/.qoder/skills/migrate-to-shoehorn/SKILL.md +0 -118
  1187. package/template/.qoder/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  1188. package/template/.qoder/skills/prototype-page-acceptance/SKILL.md +0 -62
  1189. package/template/.qoder/skills/scaffold-exercises/SKILL.md +0 -106
  1190. package/template/.qoder/skills/scaffold-exercises/agents/openai.yaml +0 -3
  1191. package/template/.qoder/skills/setup-pre-commit/SKILL.md +0 -91
  1192. package/template/.qoder/skills/setup-pre-commit/agents/openai.yaml +0 -3
  1193. package/template/.qoder/skills/setup-ts-deep-modules/SKILL.md +0 -102
  1194. package/template/.qoder/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  1195. package/template/.qoder/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  1196. package/template/.qoder/skills/teach/GLOSSARY-FORMAT.md +0 -35
  1197. package/template/.qoder/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  1198. package/template/.qoder/skills/teach/MISSION-FORMAT.md +0 -31
  1199. package/template/.qoder/skills/teach/RESOURCES-FORMAT.md +0 -32
  1200. package/template/.qoder/skills/teach/SKILL.md +0 -140
  1201. package/template/.qoder/skills/teach/agents/openai.yaml +0 -5
  1202. package/template/.qoder/skills/writing-beats/SKILL.md +0 -67
  1203. package/template/.qoder/skills/writing-beats/agents/openai.yaml +0 -5
  1204. package/template/.qoder/skills/writing-fragments/SKILL.md +0 -79
  1205. package/template/.qoder/skills/writing-fragments/agents/openai.yaml +0 -5
  1206. package/template/.qoder/skills/writing-shape/SKILL.md +0 -79
  1207. package/template/.qoder/skills/writing-shape/agents/openai.yaml +0 -5
  1208. package/template/.qoder/skills/yss-microapp-commit/SKILL.md +0 -201
  1209. package/template/.qoder/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  1210. package/template/.qoder/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  1211. package/template/.qoder/skills/yss-page-module-development/SKILL.md +0 -165
  1212. package/template/.qoder/skills/yss-page-module-development/agents/openai.yaml +0 -5
  1213. package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  1214. package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  1215. package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  1216. package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1217. package/template/.qoder/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  1218. package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  1219. package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  1220. package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  1221. package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  1222. package/template/.qoder/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  1223. package/template/.qoder/skills/yss-page-module-development/references/component-map.md +0 -34
  1224. package/template/.qoder/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  1225. package/template/.qoder/skills/yss-page-module-development/references/hooks-map.md +0 -11
  1226. package/template/.qoder/skills/yss-page-module-development/references/utils-map.md +0 -14
  1227. package/template/.trae/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
  1228. package/template/.trae/skills/ask-matt/SKILL.md +0 -95
  1229. package/template/.trae/skills/ask-matt/agents/openai.yaml +0 -5
  1230. package/template/.trae/skills/dispatching-parallel-agents/SKILL.md +0 -185
  1231. package/template/.trae/skills/loop-me/SKILL.md +0 -32
  1232. package/template/.trae/skills/loop-me/agents/openai.yaml +0 -5
  1233. package/template/.trae/skills/migrate-to-shoehorn/SKILL.md +0 -118
  1234. package/template/.trae/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
  1235. package/template/.trae/skills/prototype-page-acceptance/SKILL.md +0 -62
  1236. package/template/.trae/skills/scaffold-exercises/SKILL.md +0 -106
  1237. package/template/.trae/skills/scaffold-exercises/agents/openai.yaml +0 -3
  1238. package/template/.trae/skills/setup-pre-commit/SKILL.md +0 -91
  1239. package/template/.trae/skills/setup-pre-commit/agents/openai.yaml +0 -3
  1240. package/template/.trae/skills/setup-ts-deep-modules/SKILL.md +0 -102
  1241. package/template/.trae/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
  1242. package/template/.trae/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
  1243. package/template/.trae/skills/teach/GLOSSARY-FORMAT.md +0 -35
  1244. package/template/.trae/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
  1245. package/template/.trae/skills/teach/MISSION-FORMAT.md +0 -31
  1246. package/template/.trae/skills/teach/RESOURCES-FORMAT.md +0 -32
  1247. package/template/.trae/skills/teach/SKILL.md +0 -140
  1248. package/template/.trae/skills/teach/agents/openai.yaml +0 -5
  1249. package/template/.trae/skills/writing-beats/SKILL.md +0 -67
  1250. package/template/.trae/skills/writing-beats/agents/openai.yaml +0 -5
  1251. package/template/.trae/skills/writing-fragments/SKILL.md +0 -79
  1252. package/template/.trae/skills/writing-fragments/agents/openai.yaml +0 -5
  1253. package/template/.trae/skills/writing-shape/SKILL.md +0 -79
  1254. package/template/.trae/skills/writing-shape/agents/openai.yaml +0 -5
  1255. package/template/.trae/skills/yss-microapp-commit/SKILL.md +0 -201
  1256. package/template/.trae/skills/yss-microapp-commit/agents/openai.yaml +0 -5
  1257. package/template/.trae/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
  1258. package/template/.trae/skills/yss-page-module-development/SKILL.md +0 -165
  1259. package/template/.trae/skills/yss-page-module-development/agents/openai.yaml +0 -5
  1260. package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
  1261. package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
  1262. package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
  1263. package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
  1264. package/template/.trae/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
  1265. package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
  1266. package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
  1267. package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
  1268. package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
  1269. package/template/.trae/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
  1270. package/template/.trae/skills/yss-page-module-development/references/component-map.md +0 -34
  1271. package/template/.trae/skills/yss-page-module-development/references/frontend-docs.md +0 -11
  1272. package/template/.trae/skills/yss-page-module-development/references/hooks-map.md +0 -11
  1273. package/template/.trae/skills/yss-page-module-development/references/utils-map.md +0 -14
@@ -0,0 +1,30 @@
1
+ #!/usr/bin/env node
2
+ import assert from "node:assert/strict";
3
+ import { spawnSync } from "node:child_process";
4
+ import { mkdtempSync, rmSync, writeFileSync } from "node:fs";
5
+ import os from "node:os";
6
+ import { attachScaffoldDecisionFixture } from "./fixtures/user-decision/build-fixture.mjs";
7
+ import path from "node:path";
8
+ import { parseDocument } from "./vendor/yaml.mjs";
9
+
10
+ const root = mkdtempSync(path.join(os.tmpdir(), "scaffold-decision-scenarios-"));
11
+ process.on("exit", () => rmSync(root, { recursive: true, force: true }));
12
+ const verifier = path.resolve("scripts/verify-scaffold-architecture-decisions");
13
+ const digest = `sha256:${"1".repeat(64)}`;
14
+ const confirmation = `\n user_confirmation:\n confirmed_by: user\n channel: codex\n confirmation_ref: turn://1\n confirmed_at: 2026-09-05T01:00:00+08:00\n normalized_text: 确认 MVC`;
15
+ function run(name, body) {
16
+ const file = path.join(root, `${name}.yaml`);
17
+ const value = parseDocument(body).toJS();
18
+ value.decisions = value.decisions.map((decision) => attachScaffoldDecisionFixture(path.join(root, name, decision.project_id), decision));
19
+ writeFileSync(file, JSON.stringify(value));
20
+ return spawnSync(verifier, [file], { encoding: "utf8" });
21
+ }
22
+ const base = `schema_version: 1\nkind: scaffold-architecture-decisions\ntemplate: false\nstatus: current\ndecisions:\n`;
23
+ const mvc = `${base} - decision_id: scaffold-decision.main\n project_id: main\n parent_project_id: null\n status: lifecycle-approved\n recommended_architecture: layered-mvc\n recommendation_reasons: [CRUD 与报表为主]\n confirmed_architecture: layered-mvc\n override_reason: null\n inheritance_mode: root-default\n inherited_from: null\n platform_profile: spring-boot-2.7-jdk8\n architecture_profile: layered-mvc-service\n verification_database: h2\n production_database: not-bound\n requested_capabilities: [feign-client]\n resolved_modules: [server, service, repository, client, feign-client]\n resolution_version: 1${confirmation}\n decision_inputs_digest: ${digest}\n`;
24
+ assert.equal(run("mvc", mvc).status, 0);
25
+ assert.notEqual(run("missing-confirmation", mvc.replace("confirmation_ref: turn://1", "confirmation_ref: null")).status, 0);
26
+ assert.notEqual(run("invalid-closure", mvc.replace("[server, service, repository, client, feign-client]", "[server, service, repository]")).status, 0);
27
+ const child = `${mvc} - decision_id: scaffold-decision.child\n project_id: child\n parent_project_id: main\n status: lifecycle-approved\n recommended_architecture: domain-driven\n recommendation_reasons: [存在复杂状态机]\n confirmed_architecture: layered-mvc\n override_reason: 继承本体的统一架构\n inheritance_mode: inherit\n inherited_from: main\n platform_profile: spring-boot-2.7-jdk8\n architecture_profile: layered-mvc-service\n verification_database: h2\n production_database: not-bound\n requested_capabilities: []\n resolved_modules: [server, service, repository]\n resolution_version: 1${confirmation}\n decision_inputs_digest: ${digest}\n`;
28
+ assert.equal(run("child", child).status, 0);
29
+ assert.notEqual(run("inherit-mismatch", child.replace("confirmed_architecture: layered-mvc\n override_reason: 继承本体的统一架构\n inheritance_mode: inherit", "confirmed_architecture: domain-driven\n override_reason: null\n inheritance_mode: inherit")).status, 0);
30
+ process.stdout.write("脚手架架构选择场景验证通过\n");
@@ -0,0 +1,61 @@
1
+ #!/usr/bin/env node
2
+ import { readFileSync } from "node:fs";
3
+ import path from "node:path";
4
+ import { parseArgs } from "node:util";
5
+ import { fileURLToPath } from "node:url";
6
+ import { parseDocument } from "./vendor/yaml.mjs";
7
+ import { validateJsonSchema } from "./lib/json-schema.mjs";
8
+ import { loadSkillRegistry } from "./lib/skill-registry.mjs";
9
+ import { assertScaffoldUserDecision } from "./lib/user-decision.mjs";
10
+ import { validateArchitectureIdentity } from "./lib/backend-architecture.mjs";
11
+
12
+ const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
13
+ const schemaPath = path.join(repoRoot, "docs/process/schemas/scaffold-architecture-decisions.schema.json");
14
+ const MVC_ORDER = ["server", "service", "repository", "adapter", "client", "feign-client"];
15
+ const DDD_MODULES = ["domain", "application", "infrastructure", "adapter", "bootstrap"];
16
+ const CAPABILITIES = { "external-integration": ["adapter"], "published-client": ["client"], "feign-client": ["client", "feign-client"] };
17
+
18
+ function mvcModules(capabilities) {
19
+ const result = new Set(["server", "service", "repository"]);
20
+ for (const capability of capabilities) for (const module of CAPABILITIES[capability] ?? []) result.add(module);
21
+ return MVC_ORDER.filter((module) => result.has(module));
22
+ }
23
+
24
+ try {
25
+ const { values, positionals } = parseArgs({ options: { "allow-template": { type: "boolean" } }, allowPositionals: true, strict: true });
26
+ if (positionals.length !== 1) throw new TypeError("用法: scripts/verify-scaffold-architecture-decisions [--allow-template] <file.yaml>");
27
+ const document = parseDocument(readFileSync(path.resolve(positionals[0]), "utf8"), { maxAliasCount: 0, uniqueKeys: true });
28
+ if (document.errors.length) throw new TypeError(document.errors[0].message);
29
+ const value = document.toJS({ maxAliasCount: 0 });
30
+ validateJsonSchema(value, schemaPath, { cwd: repoRoot, label: "scaffold architecture decision schema" });
31
+ if (!values["allow-template"] && value.template !== false) throw new TypeError("正式决策记录必须设置 template: false");
32
+ const ids = new Set();
33
+ const projects = new Map();
34
+ for (const decision of value.decisions) {
35
+ if (ids.has(decision.decision_id) || projects.has(decision.project_id)) throw new TypeError("decision_id 与 project_id 必须唯一");
36
+ ids.add(decision.decision_id);
37
+ projects.set(decision.project_id, decision);
38
+ const confirmed = ["user-confirmed", "lifecycle-approved", "consumed"].includes(decision.status);
39
+ const confirmation = decision.user_confirmation;
40
+ if (confirmed && (!decision.confirmed_architecture || Object.values(confirmation).some((item) => item === null || item === ""))) throw new TypeError(`${decision.project_id} 已确认状态必须提供完整用户确认引用`);
41
+ if (!confirmed && decision.status !== "stale" && decision.confirmed_architecture !== null) throw new TypeError(`${decision.project_id} 未确认状态不得预填 confirmed_architecture`);
42
+ if (decision.confirmed_architecture && decision.confirmed_architecture !== decision.recommended_architecture && !decision.override_reason) throw new TypeError(`${decision.project_id} 覆盖 Agent 推荐时必须说明 override_reason`);
43
+ if (decision.inheritance_mode === "root-default" && (decision.parent_project_id !== null || decision.inherited_from !== null)) throw new TypeError(`${decision.project_id} 根默认不得声明父项目`);
44
+ if (["inherit", "override"].includes(decision.inheritance_mode) && (!decision.parent_project_id || decision.inherited_from !== decision.parent_project_id)) throw new TypeError(`${decision.project_id} 子项目继承引用不完整`);
45
+ if (confirmed && value.template === false) {
46
+ assertScaffoldUserDecision(decision);
47
+ }
48
+ const registry = loadSkillRegistry();
49
+ validateArchitectureIdentity({ ...decision, architecture_family: decision.confirmed_architecture ?? decision.recommended_architecture, generator_skill: registry.architecture_profiles?.[decision.architecture_profile]?.generator_skill, contract_digest: decision.decision_inputs_digest }, registry);
50
+ }
51
+ for (const decision of value.decisions) {
52
+ if (!decision.parent_project_id) continue;
53
+ const parent = projects.get(decision.parent_project_id);
54
+ if (!parent) throw new TypeError(`${decision.project_id} 引用了不存在的父项目`);
55
+ if (decision.inheritance_mode === "inherit" && decision.confirmed_architecture && parent.confirmed_architecture && decision.confirmed_architecture !== parent.confirmed_architecture) throw new TypeError(`${decision.project_id} 继承值与父项目不一致;需要改为 override`);
56
+ }
57
+ process.stdout.write("脚手架架构选择记录验证通过\n");
58
+ } catch (error) {
59
+ process.stderr.write(`脚手架架构选择记录验证失败: ${error.message}\n`);
60
+ process.exitCode = 1;
61
+ }
@@ -9,6 +9,7 @@ import sys
9
9
  import tempfile
10
10
  import json
11
11
  import os
12
+ import hashlib
12
13
  from pathlib import Path
13
14
 
14
15
 
@@ -63,8 +64,58 @@ def write_contract(
63
64
  compiler_draft_ref: str,
64
65
  persisted_ref: str,
65
66
  ) -> None:
67
+ decision_path = path.with_suffix(".architecture-decisions.yaml")
68
+ decision_id = f"scaffold-decision.{project_name}"
69
+ decision_text = json.dumps(
70
+ {
71
+ "schema_version": 1,
72
+ "kind": "scaffold-architecture-decisions",
73
+ "template": False,
74
+ "status": "current",
75
+ "decisions": [
76
+ {
77
+ "decision_id": decision_id,
78
+ "project_id": project_name,
79
+ "parent_project_id": None,
80
+ "status": "lifecycle-approved",
81
+ "recommended_architecture": "domain-driven",
82
+ "recommendation_reasons": ["场景验证固定使用 DDD"],
83
+ "confirmed_architecture": "domain-driven",
84
+ "override_reason": None,
85
+ "inheritance_mode": "root-default",
86
+ "inherited_from": None,
87
+ "platform_profile": "spring-boot-2.7-jdk8",
88
+ "architecture_profile": "target-domain-model",
89
+ "verification_database": "h2",
90
+ "production_database": "not-bound",
91
+ "requested_capabilities": [],
92
+ "resolved_modules": [
93
+ "domain",
94
+ "application",
95
+ "infrastructure",
96
+ "adapter",
97
+ "bootstrap",
98
+ ],
99
+ "resolution_version": 1,
100
+ "user_confirmation": {
101
+ "confirmed_by": "scenario-runner",
102
+ "channel": "test",
103
+ "confirmation_ref": "test://scaffold-decision",
104
+ "confirmed_at": "2026-09-05T00:00:00Z",
105
+ "normalized_text": "确认使用 DDD",
106
+ },
107
+ "decision_inputs_digest": f"sha256:{'1' * 64}",
108
+ }
109
+ ],
110
+ },
111
+ ensure_ascii=False,
112
+ indent=2,
113
+ ) + "\n"
114
+ decision_path.write_text(decision_text, encoding="utf-8")
115
+ subprocess.run(["node", str(REPOSITORY_ROOT / "scripts/fixtures/user-decision/build-fixture.mjs"), "--scaffold", str(decision_path)], check=True, cwd=REPOSITORY_ROOT)
116
+ decision_text = decision_path.read_text(encoding="utf-8")
66
117
  contract = {
67
- "schema_version": 2,
118
+ "schema_version": 3,
68
119
  "contract_id": contract_id,
69
120
  "contract_version": 1,
70
121
  "scaffold_request_id": f"{project_name}-request",
@@ -79,6 +130,12 @@ def write_contract(
79
130
  "project_name": project_name,
80
131
  "target_output_dir": str(output_root),
81
132
  "base_package": f"com.yss.{project_name.removesuffix('-service')}",
133
+ "architecture_family": "domain-driven",
134
+ "architecture_profile": "target-domain-model",
135
+ "generator_skill": "yss-ddd-scaffold-generator",
136
+ "decision_ref": str(decision_path),
137
+ "decision_id": decision_id,
138
+ "decision_digest": f"sha256:{hashlib.sha256(decision_text.encode('utf-8')).hexdigest()}",
82
139
  "maven_coordinates": {
83
140
  "group_id": "com.yss.datamiddle",
84
141
  "project_version": "1.0.0-SNAPSHOT",
@@ -92,12 +149,24 @@ def write_contract(
92
149
  "profiles": {
93
150
  "architecture": "target-domain-model",
94
151
  "persistence": "mybatis-plus",
95
- "database": "mysql",
152
+ "verification_database": "h2",
153
+ "production_database": "not-bound",
96
154
  "platform": "spring-boot-2.7-jdk8",
97
155
  "validation_namespace": "javax",
98
156
  "dto_placement": "web",
99
157
  "repository": "yss-internal",
100
158
  },
159
+ "module_profile": {
160
+ "resolution_version": 1,
161
+ "requested_capabilities": [],
162
+ "resolved_modules": [
163
+ "domain",
164
+ "application",
165
+ "infrastructure",
166
+ "adapter",
167
+ "bootstrap",
168
+ ],
169
+ },
101
170
  "allowed_write_paths": ["."],
102
171
  "expected_evidence_files": [
103
172
  f"{project_name}/.yss/scaffold-generation.json",
@@ -157,7 +226,9 @@ def assert_pure_scaffold(project_root: Path, contract_id: str) -> None:
157
226
  require(manifest["compiler_draft_ref"], "生成清单必须记录 实现合同编译器 draft 引用")
158
227
  require(manifest["persisted_ref"], "生成清单必须记录合同持久化引用")
159
228
  require(manifest["generation_mode"] == "controlled-generation", "生成清单必须记录受控生成模式")
160
- require(manifest["schema_version"] == 2, "生成清单必须使用 schema v2")
229
+ require(manifest["schema_version"] == 3, "新生成清单必须使用 schema v3")
230
+ require(manifest["architecture_family"] == "domain-driven", "生成清单必须记录已确认的 DDD 架构族")
231
+ require(manifest["generator_skill"] == "yss-ddd-scaffold-generator", "生成清单必须记录实际生成器")
161
232
  require(manifest["scaffold_request_id"], "生成清单必须记录服务级 scaffold_request_id")
162
233
  require("slice_id" not in manifest, "脚手架清单不得伪造 slice_id")
163
234
  require(manifest["maven_coordinates_source"] == "approved-contract", "Maven 坐标必须来自批准合同")
@@ -0,0 +1,65 @@
1
+ #!/usr/bin/env node
2
+ import { existsSync, readFileSync } from "node:fs";
3
+ import path from "node:path";
4
+ import { spawnSync } from "node:child_process";
5
+ import { parseArgs } from "node:util";
6
+ import { fileURLToPath } from "node:url";
7
+ import { parseDocument } from "./vendor/yaml.mjs";
8
+ import { parseContextContract } from "./lib/context-contract.mjs";
9
+ import { validateVisualBaseline } from "../.agents/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs";
10
+
11
+ const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
12
+ const schemaPath = path.join(repoRoot, "docs/process/schemas/strategic-design-handoff.schema.json");
13
+ const pythonValidator = String.raw`
14
+ import json, sys
15
+ from jsonschema import Draft202012Validator
16
+ schema = json.load(open(sys.argv[1], encoding="utf-8"))
17
+ value = json.load(sys.stdin)
18
+ errors = sorted(Draft202012Validator(schema).iter_errors(value), key=lambda error: list(error.absolute_path))
19
+ for error in errors:
20
+ where = ".".join(str(part) for part in error.absolute_path) or "<root>"
21
+ print(f"{where}: {error.message}", file=sys.stderr)
22
+ sys.exit(1 if errors else 0)
23
+ `;
24
+
25
+ function parseFile(file) {
26
+ const document = parseDocument(readFileSync(file, "utf8"), { maxAliasCount: 0, uniqueKeys: true });
27
+ if (document.errors.length) throw new TypeError(document.errors[0].message);
28
+ return document.toJS({ maxAliasCount: 0 });
29
+ }
30
+
31
+ try {
32
+ const { values, positionals } = parseArgs({ options: { root: { type: "string", default: process.cwd() }, reconciliation: { type: "string" } }, allowPositionals: true, strict: true });
33
+ if (positionals.length !== 1 || !values.reconciliation) throw new TypeError("用法: scripts/verify-strategic-context-import --root <target-repo> --reconciliation <record> <handoff.yaml|json>");
34
+ const root = path.resolve(values.root);
35
+ const handoff = parseFile(path.resolve(positionals[0]));
36
+ if ([1, 2].includes(handoff.schema_version)) throw new TypeError(`migration-required: Strategic Design Handoff v${handoff.schema_version} 是只读历史资产;在途 UI 交接必须升级 v3 并携带 Visual Baseline`);
37
+ const schemaResult = spawnSync("python3", ["-c", pythonValidator, schemaPath], { encoding: "utf8", input: JSON.stringify(handoff) });
38
+ if (schemaResult.status !== 0) throw new TypeError(`${schemaResult.stdout}${schemaResult.stderr}`.trim());
39
+ const baselineRef = handoff.source.visual_baseline_ref;
40
+ const bundleRoot = path.resolve(root, baselineRef.persisted_ref);
41
+ const manifestPath = path.resolve(bundleRoot, baselineRef.manifest_ref);
42
+ if (!manifestPath.startsWith(`${bundleRoot}${path.sep}`) || !existsSync(manifestPath)) throw new TypeError("Strategic Design Handoff 的 Visual Baseline manifest 不可读或越界");
43
+ const baseline = parseFile(manifestPath);
44
+ const baselineResult = await validateVisualBaseline(baseline, { bundleRoot });
45
+ if (baselineResult.errors.length) throw new TypeError(`Visual Baseline 无效: ${baselineResult.errors.join("; ")}`);
46
+ if (baseline.baseline_id !== baselineRef.baseline_id || baseline.version !== baselineRef.version || baseline.bundle.digest !== baselineRef.digest) throw new TypeError("Strategic Design Handoff 的 Visual Baseline 身份、版本或 digest 不一致");
47
+ const actualCaseIds = baseline.cases.map((item) => item.case_id).sort();
48
+ if (JSON.stringify(actualCaseIds) !== JSON.stringify([...baselineRef.case_ids].sort())) throw new TypeError("Strategic Design Handoff 的 Visual Baseline case_ids 不一致");
49
+ const reconciliationResult = spawnSync(process.execPath, [path.join(repoRoot, "scripts/verify-context-reconciliation"), "--root", root, path.resolve(values.reconciliation)], { cwd: repoRoot, encoding: "utf8" });
50
+ if (reconciliationResult.status !== 0) throw new TypeError(reconciliationResult.stderr.trim());
51
+ const target = parseContextContract({ root });
52
+ for (const operation of ["added", "updated"]) {
53
+ for (const expected of handoff.context_delta[operation]) {
54
+ const actual = target.terms_by_ref.get(expected.term_ref);
55
+ if (!actual) throw new TypeError(`目标 CONTEXT.md 尚未导入 ${operation} 术语: ${expected.term_ref}`);
56
+ for (const field of ["term", "meaning", "english_identifier", "context_id"]) if (actual[field] !== expected[field]) throw new TypeError(`目标 CONTEXT.md 的 ${expected.term_ref}.${field} 与交接增量不一致`);
57
+ if (JSON.stringify([...actual.forbidden_aliases].sort()) !== JSON.stringify([...expected.forbidden_aliases].sort())) throw new TypeError(`目标 CONTEXT.md 的 ${expected.term_ref}.forbidden_aliases 与交接增量不一致`);
58
+ }
59
+ }
60
+ for (const deprecated of handoff.context_delta.deprecated) if (target.terms_by_ref.has(deprecated.term_ref)) throw new TypeError(`目标 CONTEXT.md 尚未处理 deprecated 术语: ${deprecated.term_ref}`);
61
+ process.stdout.write("Strategic context import 与目标 reconciliation 验证通过\n");
62
+ } catch (error) {
63
+ process.stderr.write(`Strategic context import 验证失败: ${error.message}\n`);
64
+ process.exitCode = 1;
65
+ }
@@ -0,0 +1,50 @@
1
+ #!/usr/bin/env node
2
+ import { mkdtempSync, mkdirSync, writeFileSync } from "node:fs";
3
+ import { tmpdir } from "node:os";
4
+ import path from "node:path";
5
+ import { spawnSync } from "node:child_process";
6
+ import { sealVisualBaseline } from "../.agents/skills/yss-prototype-stage/scripts/visual-baseline-contract.mjs";
7
+
8
+ const repoRoot = path.resolve(import.meta.dirname, "..");
9
+ const root = mkdtempSync(path.join(tmpdir(), "yss-strategic-import-"));
10
+ mkdirSync(path.join(root, "docs", "evidence"), { recursive: true });
11
+ writeFileSync(path.join(root, "yss-project.yaml"), "schema_version: 1\nrepository_mode: project-instance\n");
12
+ const context = (meaning = "提供产品或服务的主体") => `---
13
+ context_schema_version: 1
14
+ ---
15
+ # CONTEXT
16
+ ## 流程术语
17
+ | 术语 | 含义 | 英文标识 | 避免 / 备注 |
18
+ |---|---|---|---|
19
+ | 阶段 | 生命周期阶段 | — | |
20
+ ## 业务术语
21
+ | 术语 | 含义 | 英文标识 | 适用限界上下文 | 避免 / 备注 |
22
+ |---|---|---|---|---|
23
+ | 供应商 | ${meaning} | Supplier | Global | |
24
+ `;
25
+ writeFileSync(path.join(root, "CONTEXT.md"), context());
26
+ const run = (command, args) => spawnSync(command, args, { cwd: repoRoot, encoding: "utf8" });
27
+ const snapshot = JSON.parse(run("scripts/verify-context-contract", ["--root", root, "--term-ref", "Global/Supplier", "--json"]).stdout).context_snapshot;
28
+ const reconciliation = { schema_version: 1, repository_mode: "project-instance", stage: "stage.system-data-engineering", work_unit: "work-unit.technical-analysis", status: "reconciled", context_snapshot: snapshot, changes: { added: ["Global/Supplier"], updated: [], deprecated: [] }, unresolved_terms: [], evidence_refs: ["CONTEXT.md"] };
29
+ const reconciliationFile = path.join(root, "docs/evidence/context-reconciliation.json"); writeFileSync(reconciliationFile, JSON.stringify(reconciliation));
30
+ const supplier = { term_ref: "Global/Supplier", term: "供应商", meaning: "提供产品或服务的主体", english_identifier: "Supplier", context_id: "Global", forbidden_aliases: [] };
31
+ const ref = (id) => ({ id, version: "v2", digest: `sha256:${id}`, status: "approved", persisted_ref: `source/${id}` });
32
+ function pngHeader(width, height) { const value = Buffer.alloc(24); Buffer.from([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]).copy(value, 0); value.writeUInt32BE(13, 8); value.write("IHDR", 12, "ascii"); value.writeUInt32BE(width, 16); value.writeUInt32BE(height, 20); return value; }
33
+ const bundleRoot = path.join(root, "source/visual-baseline-v1"); mkdirSync(path.join(bundleRoot, "images"), { recursive: true }); mkdirSync(path.join(bundleRoot, "sources"), { recursive: true }); mkdirSync(path.join(bundleRoot, "capture"), { recursive: true });
34
+ writeFileSync(path.join(bundleRoot, "images/primary-desktop.png"), pngHeader(1440, 900)); writeFileSync(path.join(bundleRoot, "images/primary-narrow.png"), pngHeader(390, 844));
35
+ writeFileSync(path.join(bundleRoot, "sources/prototype.html"), "<main>supplier</main>\n"); writeFileSync(path.join(bundleRoot, "sources/interaction.md"), "# Interaction\n"); writeFileSync(path.join(bundleRoot, "sources/states.md"), "# States\n"); writeFileSync(path.join(bundleRoot, "capture/capture.mjs"), "// capture\n"); writeFileSync(path.join(bundleRoot, "capture/result.json"), "{\"result\":\"passed\"}\n");
36
+ const baselineFile = path.join(bundleRoot, "visual-baseline.yaml");
37
+ const baseline = { schema_version: 1, baseline_id: "visual-baseline.supplier", feature: "supplier", version: "v1", status: "approved", bundle: { format: "portable-directory", root_ref: "source/visual-baseline-v1", digest: `sha256:${"0".repeat(64)}`, size_bytes: 0, max_image_bytes: 5242880, max_bundle_bytes: 104857600 }, source: { prototype_ref: "sources/prototype.html", prototype_digest: `sha256:${"1".repeat(64)}`, interaction_spec_ref: "sources/interaction.md", interaction_spec_digest: `sha256:${"2".repeat(64)}`, state_matrix_ref: "sources/states.md", state_matrix_digest: `sha256:${"3".repeat(64)}` }, capture_environment: { browser: "chromium", browser_version: "140.0.0", operating_system: "linux", fonts_digest: `sha256:${"4".repeat(64)}`, device_scale_factor: 1, color_space: "srgb", locale: "zh-CN", timezone: "Asia/Shanghai", animations_disabled: true, cursor_hidden: true, capture_script_ref: "capture/capture.mjs", capture_script_digest: `sha256:${"5".repeat(64)}`, capture_result_ref: "capture/result.json", capture_result_digest: `sha256:${"6".repeat(64)}` }, cases: [{ case_id: "primary-desktop", route: "/supplier", page: "SupplierPage", state: "normal", viewport: { name: "desktop", width: 1440, height: 900, scroll_mode: "viewport", scroll_position: 0 }, theme: "compact-light", locale: "zh-CN", data_scenario: "primary", image_ref: "images/primary-desktop.png", image_digest: `sha256:${"0".repeat(64)}`, image_size_bytes: 1, mask_ref: "not-applicable", mask_digest: "not-applicable", mask_size_bytes: 0, semantic_refs: ["sources/prototype.html", "sources/interaction.md"], allowed_differences: [], result: "passed" }, { case_id: "primary-narrow", route: "/supplier", page: "SupplierPage", state: "normal", viewport: { name: "narrow", width: 390, height: 844, scroll_mode: "viewport", scroll_position: 0 }, theme: "compact-light", locale: "zh-CN", data_scenario: "primary", image_ref: "images/primary-narrow.png", image_digest: `sha256:${"0".repeat(64)}`, image_size_bytes: 1, mask_ref: "not-applicable", mask_digest: "not-applicable", mask_size_bytes: 0, semantic_refs: ["sources/states.md"], allowed_differences: [], result: "passed" }] };
38
+ writeFileSync(baselineFile, JSON.stringify(baseline)); const sealedBaseline = await sealVisualBaseline(baselineFile, bundleRoot);
39
+ const visualBaselineRef = { baseline_id: sealedBaseline.baseline_id, version: sealedBaseline.version, digest: sealedBaseline.bundle.digest, status: "approved", persisted_ref: "source/visual-baseline-v1", manifest_ref: "visual-baseline.yaml", case_ids: sealedBaseline.cases.map((item) => item.case_id) };
40
+ const handoff = { schema_version: 3, handoff_id: "strategic-design-handoff.supplier", handoff_version: "v3", status: "approved", source: { domain_strategy_ref: ref("domain"), stage_decision_package_ref: ref("stage"), spec_ref: ref("spec"), prototype_ref: ref("prototype"), visual_baseline_ref: visualBaselineRef, business_ticket_set_ref: ref("tickets") }, source_context_snapshot: snapshot, context_delta: { added: [supplier], updated: [], deprecated: [] }, target_context_reconciliation: { target_context_ref: "CONTEXT.md", reconciliation_schema_ref: "docs/process/schemas/context-reconciliation.schema.json", required_before_skill: "yss-tactical-design", status: "pending" }, target: { team: "downstream-rd-team", skill: "yss-tactical-design", output: "tactical-design-contract" }, problem_and_business_outcomes: ["准入"], bounded_context_and_subdomain_map: ["Global"], context_map_and_translation_responsibility: ["共享"], ubiquitous_language_and_concept_candidates: ["Global/Supplier"], scenarios_and_business_invariants: ["稳定"], tactical_design_questions: ["聚合边界"], deferred_decisions_and_ownership: [], evidence_and_version_digests: ["source/evidence"], acceptance: ["target-context-reconciliation-is-required-before-tactical-design"] };
41
+ const handoffFile = path.join(root, "handoff.json"); writeFileSync(handoffFile, JSON.stringify(handoff));
42
+ function verify(expected, pattern) { const result = run("scripts/verify-strategic-context-import", ["--root", root, "--reconciliation", reconciliationFile, handoffFile]); if (result.status !== expected || (pattern && !pattern.test(`${result.stdout}${result.stderr}`))) throw new Error(`${result.stdout}${result.stderr}`); }
43
+ verify(0);
44
+ writeFileSync(path.join(root, "CONTEXT.md"), context("错误含义"));
45
+ const staleSnapshot = JSON.parse(run("scripts/verify-context-contract", ["--root", root, "--term-ref", "Global/Supplier", "--json"]).stdout).context_snapshot;
46
+ writeFileSync(reconciliationFile, JSON.stringify({ ...reconciliation, context_snapshot: staleSnapshot }));
47
+ verify(1, /不一致/);
48
+ writeFileSync(handoffFile, JSON.stringify({ ...handoff, schema_version: 2 }));
49
+ verify(1, /migration-required/);
50
+ process.stdout.write("Strategic context import scenarios passed\n");
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env node
2
+ import { parseArgs } from 'node:util';
3
+ import { read } from './lib/strategic-handoff-io.mjs';
4
+ import { verifyConsumption } from './lib/strategic-handoff-consumption.mjs';
5
+ try {
6
+ const {values,positionals}=parseArgs({allowPositionals:true,options:{root:{type:'string',default:process.cwd()},slice:{type:'string'}}});
7
+ if(positionals.length!==1)throw new TypeError('用法: verify-strategic-handoff-consumption --root <target> [--slice <slice-id>] <tactical.yaml>');
8
+ const result=await verifyConsumption(read(positionals[0]),{root:values.root,sliceRef:values.slice});
9
+ process.stdout.write(`${JSON.stringify(result,null,2)}\n`);if(result.result==='blocked')process.exitCode=1;
10
+ }catch(error){process.stderr.write(`${JSON.stringify({result:'blocked',error:error.message})}\n`);process.exitCode=1;}
@@ -0,0 +1,102 @@
1
+ #!/usr/bin/env node
2
+ import { test } from 'node:test';
3
+ import assert from 'node:assert/strict';
4
+ import { mkdtempSync, mkdirSync, readFileSync, writeFileSync, cpSync, rmSync } from 'node:fs';
5
+ import path from 'node:path';
6
+ import { tmpdir } from 'node:os';
7
+ import { spawnSync } from 'node:child_process';
8
+ import { fixture, context } from './fixtures/strategic-handoff/fixture.mjs';
9
+ import { exportBundle, openBundle, importBundle } from './lib/strategic-handoff.mjs';
10
+ import { read, json, hash, digest } from './lib/strategic-handoff-io.mjs';
11
+ import { parseContextContract } from './lib/context-contract.mjs';
12
+ const setup=async t=>{const base=mkdtempSync(path.join(tmpdir(),'handoff-test-'));t.after(()=>rmSync(base,{recursive:true,force:true}));const source=path.join(base,'source');mkdirSync(source);return{base,source,...await fixture(source)};};
13
+ function advanceStrategy(f,version='v2') {
14
+ f.handoff.handoff_version=version;
15
+ f.strategy.domain_version=version;
16
+ f.strategy.approval.current_version=version;
17
+ f.stage.package_version=version;
18
+ f.stage.approval.current_version=version;
19
+ f.stage.domain_strategy_ref.domain_version=version;
20
+ f.handoff.source.domain_strategy_ref.version=version;
21
+ f.handoff.source.stage_decision_package_ref.version=version;
22
+ f.strategy.rule_catalog[0].statement='材料完整且有效';
23
+ f.strategy.scenarios[0].rules=['材料完整且有效'];
24
+ f.strategy.invariants[0].statement='材料完整且有效';
25
+ f.put('source/strategy.yaml',f.strategy);
26
+ f.handoff.source.domain_strategy_ref.digest=digest(f.strategy);
27
+ f.stage.domain_strategy_ref.digest=digest(f.strategy);
28
+ f.put('source/stage.yaml',f.stage);
29
+ f.handoff.source.stage_decision_package_ref.digest=digest(f.stage);
30
+ f.sign();
31
+ }
32
+ test('目录和 ZIP 可脱离源仓验包;导入幂等且不修改词汇表',async t=>{
33
+ const f=await setup(t);const output=path.join(f.base,'package');
34
+ const result=await exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output,zip:true});
35
+ rmSync(f.source,{recursive:true});
36
+ for(const bundle of [output,`${output}.zip`])assert.equal(await openBundle(bundle,b=>b.manifest.bundle_digest),result.bundle_digest);
37
+ const target=path.join(f.base,'target');mkdirSync(target);writeFileSync(path.join(target,'yss-project.yaml'),'schema_version: 1\nrepository_mode: project-instance\n');writeFileSync(path.join(target,'CONTEXT.md'),context);
38
+ const imported=await importBundle({bundle:`${output}.zip`,targetRoot:target});assert.equal(imported.result,'imported-pending-reconciliation');
39
+ assert.equal(readFileSync(path.join(target,'CONTEXT.md'),'utf8'),context);parseContextContract({root:target});
40
+ assert.equal((await importBundle({bundle:output,targetRoot:target})).result,'already-imported');
41
+ });
42
+ test('规则遗漏、摘要漂移、批准不匹配和离线资源丢失阻断导出',async t=>{
43
+ const f=await setup(t);const run=()=>exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output:path.join(f.base,'out')});
44
+ const text=readFileSync(path.join(f.source,'source/strategy.yaml'));f.put('source/strategy.yaml',{...f.strategy,traceability_version:undefined});
45
+ await assert.rejects(run,/不一致|过期|migration/);writeFileSync(path.join(f.source,'source/strategy.yaml'),text);
46
+ const approved=read(path.join(f.source,'approvals/spec_ref.yaml'));f.put('approvals/spec_ref.yaml',{...approved,artifact_bindings:[]});await assert.rejects(run,/批准记录未绑定/);f.put('approvals/spec_ref.yaml',approved);
47
+ const roles=read(path.join(f.source,'docs/agents/digital-human-roles.yaml'));f.put('docs/agents/digital-human-roles.yaml',{...roles,user_decision_policy:{...roles.user_decision_policy,gates:['gate.domain-strategy-approved']}});await assert.rejects(run,/user-decision|升级/);f.put('docs/agents/digital-human-roles.yaml',roles);
48
+ const sourceBytes=readFileSync(path.join(f.source,'prototype-src/main.js'));f.put('prototype-src/main.js','changed');await assert.rejects(run,/源码\/锁文件批准摘要/);writeFileSync(path.join(f.source,'prototype-src/main.js'),sourceBytes);
49
+ const verification=read(path.join(f.source,'evidence/offline.json'));f.put('evidence/offline.json',{...verification,command:'changed'});await assert.rejects(run,/验证记录批准摘要/);f.put('evidence/offline.json',verification);
50
+ f.put('preview/index.html','<img src="missing.png">');await assert.rejects(run,/过期/);
51
+ });
52
+ test('篡改 payload、重新封摘要后的虚构规则索引、额外文件均拒绝',async t=>{
53
+ const f=await setup(t),output=path.join(f.base,'package');await exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output});
54
+ const spec=path.join(output,'payload/files/source/spec.md'),bytes=readFileSync(spec);writeFileSync(spec,'tampered');await assert.rejects(()=>openBundle(output,()=>null),/摘要/);writeFileSync(spec,bytes);
55
+ writeFileSync(path.join(output,'extra.txt'),'extra');await assert.rejects(()=>openBundle(output,()=>null),/未登记/);rmSync(path.join(output,'extra.txt'));
56
+ const manifest=read(path.join(output,'manifest.json'));const idx=Buffer.from(json([]));writeFileSync(path.join(output,'indexes/rules.json'),idx);const row=manifest.files.find(x=>x.path==='indexes/rules.json');row.sha256=hash(idx);row.size_bytes=idx.length;delete manifest.bundle_digest;manifest.bundle_digest=digest(manifest);writeFileSync(path.join(output,'manifest.json'),json(manifest));await assert.rejects(()=>openBundle(output,()=>null),/索引与源/);
57
+ });
58
+ test('ZIP 路径穿越和重复条目拒绝',async t=>{
59
+ const f=await setup(t);
60
+ for(const names of [['../escape'],['manifest.json','manifest.json']]){
61
+ const zip=path.join(f.base,'bad.zip');rmSync(zip,{force:true});const py='import zipfile,json,sys; z=zipfile.ZipFile(sys.argv[1],"w"); [z.writestr(n,"x") for n in json.loads(sys.argv[2])]; z.close()';assert.equal(spawnSync('python3',['-c',py,zip,JSON.stringify(names)]).status,0);await assert.rejects(()=>openBundle(zip,()=>null),/ZIP/);
62
+ }
63
+ });
64
+ test('版本差异绑定前版,重复版本不允许;修改规则产生更新集合',async t=>{
65
+ const f=await setup(t),first=path.join(f.base,'v1');await exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output:first});
66
+ await assert.rejects(()=>exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output:path.join(f.base,'bad'),previous:first}),/提升/);
67
+ advanceStrategy(f);
68
+ const second=path.join(f.base,'v2');await exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output:second,previous:first});assert.deepEqual(await openBundle(second,b=>b.changes.updated),['rule.complete','scenario.submit']);
69
+ });
70
+
71
+ test('受控延期只阻断依赖切片;未知依赖扩大阻断;目标未对账禁止消费',async t=>{
72
+ const {verifyConsumption}=await import('./lib/strategic-handoff-consumption.mjs');
73
+ const f=await setup(t),output=path.join(f.base,'package');await exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output});
74
+ const target=path.join(f.base,'target');mkdirSync(target);writeFileSync(path.join(target,'yss-project.yaml'),'schema_version: 1\nrepository_mode: project-instance\n');writeFileSync(path.join(target,'CONTEXT.md'),context);
75
+ const result=await importBundle({bundle:output,targetRoot:target});
76
+ const draft=read(path.join(target,result.traceability_ref));
77
+ const tactical={status:'approved',strategic_handoff:{...draft,context_reconciliation_ref:'reconciliation.yaml'},behavior_catalog:[{behavior_id:'behavior.submit'}],test_seams:[{seam_id:'test-seam.submit',subject_ref:'behavior.submit'}]};
78
+ const record={schema_version:1,repository_mode:'project-instance',stage:'stage.system-data-engineering',work_unit:'work-unit.technical-analysis',status:'reconciled',context_snapshot:f.snapshot,changes:{added:['Global/Supplier'],updated:[],deprecated:[]},unresolved_terms:[],evidence_refs:['CONTEXT.md']};
79
+ writeFileSync(path.join(target,'reconciliation.yaml'),json(record));
80
+ for(const row of tactical.strategic_handoff.rows)Object.assign(row,{disposition:'implemented',tactical_refs:['behavior.submit'],test_seam_refs:['test-seam.submit'],scenario_tests:[{outcome:'success',seam_ref:'test-seam.submit'},{outcome:'failure',seam_ref:'test-seam.submit'}],evidence_refs:['CONTEXT.md'],dependency_status:'known',dependent_slice_refs:['slice.submit']});
81
+ assert.equal((await verifyConsumption(tactical,{root:target})).result,'verified');
82
+ const row=tactical.strategic_handoff.rows[0];Object.assign(row,{disposition:'deferred',reason:'分批实现',risk:'不能提交',owner:'需求负责人',followup_ticket_ref:'ticket.followup',verification_plan:'提交测试',target_version:'v2'});
83
+ assert.equal((await verifyConsumption(tactical,{root:target,sliceRef:'slice.submit'})).result,'blocked');
84
+ assert.equal((await verifyConsumption(tactical,{root:target,sliceRef:'slice.other'})).result,'verified');
85
+ row.dependency_status='unknown';assert.equal((await verifyConsumption(tactical,{root:target,sliceRef:'slice.other'})).result,'blocked');
86
+ row.dependency_status='known';row.disposition='implemented';advanceStrategy(f);const second=path.join(f.base,'v2');await exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output:second,previous:output});await importBundle({bundle:second,targetRoot:target});
87
+ const stale=await verifyConsumption(tactical,{root:target,sliceRef:'slice.submit'});assert.equal(stale.result,'blocked');assert(stale.issues.some(x=>x.reason==='stale-source'));assert.equal((await verifyConsumption(tactical,{root:target,sliceRef:'slice.other'})).result,'verified');
88
+ f.strategy.contexts[0].responsibilities.push('新增责任边界');advanceStrategy(f,'v3');const third=path.join(f.base,'v3');await exportBundle({sourceRoot:f.source,handoffRef:'handoff.yaml',output:third,previous:second});await importBundle({bundle:third,targetRoot:target});const changedBoundary=await verifyConsumption(tactical,{root:target,sliceRef:'slice.other'});assert.equal(changedBoundary.block_all,true);assert(changedBoundary.issues.some(x=>x.reason==='upstream-design-stale'));
89
+ writeFileSync(path.join(target,'reconciliation.yaml'),json({...record,status:'blocked',unresolved_terms:[{term:'Supplier',reason:'冲突',owner:'需求负责人',next_action:'回交战略方'}]}));
90
+ await assert.rejects(()=>verifyConsumption(tactical,{root:target}),/对账未通过/);
91
+ });
92
+
93
+ test('源规则必须稳定可追溯,关键场景不能遗漏结果',async t=>{
94
+ const {extractTraceability}=await import('./lib/strategic-handoff-rules.mjs');const f=await setup(t);
95
+ for(const mutate of [s=>delete s.traceability_version,s=>s.scenarios[0].rule_refs=['rule.missing'],s=>delete s.scenarios[0].success_results,s=>s.invariants[0].rule_ref='rule.missing',s=>s.rule_catalog.push({...s.rule_catalog[0]})]){const s=structuredClone(f.strategy);mutate(s);assert.throws(()=>extractTraceability(s));}
96
+ });
97
+ test('统一 CLI 在源目录消失后通过 ZIP 验包',async t=>{
98
+ const f=await setup(t),output=path.join(f.base,'cli');
99
+ const cli=path.join(import.meta.dirname,'strategic-handoff');
100
+ const exported=spawnSync(process.execPath,[cli,'export','--source-root',f.source,'--handoff','handoff.yaml','--output',output,'--zip'],{encoding:'utf8'});assert.equal(exported.status,0,exported.stderr);
101
+ rmSync(f.source,{recursive:true});const checked=spawnSync(process.execPath,[cli,'verify','--bundle',`${output}.zip`],{encoding:'utf8'});assert.equal(checked.status,0,checked.stderr);assert.equal(JSON.parse(checked.stdout).result,'verified');
102
+ });
@@ -1,7 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
  import assert from "node:assert/strict";
3
- import { existsSync, mkdirSync, rmSync, writeFileSync } from "node:fs";
3
+ import { existsSync, mkdirSync, rmSync, writeFileSync, mkdtempSync, readFileSync } from "node:fs";
4
4
  import path from "node:path";
5
+ import os from "node:os";
6
+ import { buildDecisionFixture } from "./fixtures/user-decision/build-fixture.mjs";
7
+ import { decisionDigest } from "./lib/user-decision.mjs";
8
+ const decisionTemp = mkdtempSync(path.join(os.tmpdir(), "task-decision-test-"));
9
+ process.on("exit", () => rmSync(decisionTemp, { recursive: true, force: true }));
10
+ let decisionRequirement;
5
11
  import { spawnSync } from "node:child_process";
6
12
  import { ROOT } from "./lib/lifecycle-registry.mjs";
7
13
  import { generateTaskPackageDefaults, validateTaskPackage, validateTaskPackageSet } from "./lib/task-package.mjs";
@@ -19,7 +25,8 @@ const contract = {
19
25
  contract_version: 2,
20
26
  slice_id: "todo",
21
27
  status: "approved",
22
- lifecycle_refs: {},
28
+ lifecycle_refs: { ticket: "docs/.scratch/todo/issues/01-todo.md", engineering_baseline: evidenceRef },
29
+ common: { project_roots: ["apps/frontend/todo", "apps/backend/todo"], allowed_write_paths: ["apps/frontend/todo/", "apps/backend/todo/"] },
23
30
  readiness: {},
24
31
  work_units: [
25
32
  { id: "work-unit.slice-frontend", role_id: "role.frontend-engineer", runtime_id: "runtime.skill-projection", task_package_ref: "work-unit.slice-frontend", contract_id: "slice-todo", contract_version: 2, allowed_write_paths: ["apps/frontend/todo/"] },
@@ -45,6 +52,10 @@ function writeFixtures() {
45
52
  writeFileSync(contractFile, JSON.stringify(contract));
46
53
  writeFileSync(evidenceFile, JSON.stringify({ ok: true }));
47
54
  writeFileSync(path.join(ROOT, maintenanceRef), JSON.stringify(maintenance));
55
+ const scopeRef = path.join(decisionTemp, "scope.json");
56
+ const asset = (ref) => ({ ref, version: "v1", digest: decisionDigest(readFileSync(path.join(ROOT, ref))) });
57
+ writeFileSync(scopeRef, JSON.stringify({ kind: "implementation-scope", slices: [{ ticket_ref: contract.lifecycle_refs.ticket, contract: asset(contractRef), repositories: contract.common.project_roots, allowed_write_paths: contract.common.allowed_write_paths, baselines: [asset(evidenceRef)] }] }));
58
+ decisionRequirement = buildDecisionFixture(decisionTemp, { boundary: "implementation-scope", scope: [contract.lifecycle_refs.ticket], subjectRef: scopeRef }).requirement;
48
59
  }
49
60
 
50
61
  function packageBase(roleId, taskId, workUnitId, kind, contractFields, stageId) {
@@ -95,6 +106,7 @@ function slicePackage(roleId, taskId, workUnitId, writePath) {
95
106
  workflow_status: "not-started",
96
107
  contract: { kind: "slice-implementation", contract_id: contract.contract_id, contract_version: contract.contract_version, status: "issued", contract_ref: contractRef, slice_contract_ref: contractRef },
97
108
  inputs: ["CONTEXT.md"],
109
+ user_decisions: [decisionRequirement],
98
110
  objective: "实现 Todo 垂直切片",
99
111
  allowed_write_paths: [writePath],
100
112
  forbidden_actions: ["不得修改合同"],
@@ -115,6 +127,7 @@ function completedResult(pkg, overrides = {}) {
115
127
  result: "completed",
116
128
  skill: "yss-product-lifecycle",
117
129
  changed_files: [],
130
+ context_reconciliation: { status: "reconciled", ref: evidenceRef },
118
131
  evidence_refs: [evidenceRef],
119
132
  deferred_seams: [],
120
133
  drift: [],
@@ -150,6 +163,7 @@ try {
150
163
  [discovery, spec, prototype, technical, tickets, review].forEach((pkg) => validateTaskPackage(pkg));
151
164
  validateTaskPackage(maintenance);
152
165
  validateTaskPackage(frontend);
166
+ assert.throws(() => validateTaskPackage({ ...frontend, user_decisions: [] }), /user-decision-scope-mismatch/, "Worker 派发前必须有当前实施范围批准");
153
167
  validateTaskPackage(backend);
154
168
  validateTaskPackageSet([frontend, backend]);
155
169
 
@@ -183,7 +197,7 @@ try {
183
197
  mustFail((value) => { value.execution_state = "Reviewer"; value.review_context = { implementation_actor_id: value.actor_id }; }, /不同 actor_id/, "reviewer-implementer-conflict");
184
198
  mustFail((value) => { value.workflow_status = "resolved"; value.verification_results = [{ command: "scripts/verify-template", exit_code: 0, executed_at: "now", evidence_ref: evidenceRef }]; value.result = completedResult(value, { new_impacts: ["api-change"] }); }, /new_impacts 必须为空/, "completed-new-impact");
185
199
  mustFail((value) => { value.workflow_status = "resolved"; value.verification_commands = ["scripts/verify-template", "pnpm test"]; value.verification_results = [{ command: "scripts/verify-template", exit_code: 0, executed_at: "now", evidence_ref: evidenceRef }]; value.result = completedResult(value); }, /覆盖全部 verification_commands/, "verification-command-gap");
186
- mustFail((value) => { value.workflow_status = "resolved"; value.result = completedResult(value, { evidence_refs: [".template-source/evidence/.missing.json"] }); value.verification_results = [{ command: "scripts/verify-template", exit_code: 0, executed_at: "now", evidence_ref: evidenceRef }]; }, /不可读/, "unreadable-evidence");
200
+ mustFail((value) => { value.workflow_status = "resolved"; value.result = completedResult(value, { context_reconciliation: { status: "reconciled", ref: ".template-source/evidence/.missing.json" }, evidence_refs: [".template-source/evidence/.missing.json"] }); value.verification_results = [{ command: "scripts/verify-template", exit_code: 0, executed_at: "now", evidence_ref: evidenceRef }]; }, /不可读/, "unreadable-evidence");
187
201
  mustFail((value) => { value.workflow_status = "resolved"; value.verification_results = [{ command: "scripts/verify-template", exit_code: 0, executed_at: "now", evidence_ref: evidenceRef }]; }, /Workflow Execution Result/, "resolved-without-result");
188
202
  mustFail((value) => { value.workflow_status = "resolved"; value.result = { result: "blocked" }; value.verification_results = [{ command: "scripts/verify-template", exit_code: 0, executed_at: "now", evidence_ref: evidenceRef }]; }, /Workflow Execution Result/, "resolved-blocked-result");
189
203
  mustFail((value) => { value.workflow_status = "resolved"; value.verification_results = [{ command: "scripts/verify-template", exit_code: 0, executed_at: "now", evidence_ref: evidenceRef }]; value.result = completedResult(value); value.expected_evidence_files = [".template-source/evidence/.missing.json"]; }, /expected_evidence_files.*不可读/, "missing-expected-evidence");
@@ -17,8 +17,13 @@ const releaseBaseline = [
17
17
  "scripts/verify-yss-dto-openapi-scenarios",
18
18
  "scripts/verify-digital-human-roles",
19
19
  "scripts/verify-digital-human-roles-scenarios",
20
- "scripts/verify-approval-record docs/templates/approval-record-template.yaml",
20
+ "scripts/verify-approval-record --history docs/templates/approval-record-template.yaml",
21
21
  "scripts/verify-lifecycle-registry",
22
+ "scripts/verify-context-contract --root . --json",
23
+ "scripts/verify-context-contract-scenarios",
24
+ "scripts/verify-context-reconciliation-scenarios",
25
+ "scripts/verify-grill-with-docs-context-scenarios",
26
+ "scripts/verify-strategic-context-import-scenarios",
22
27
  "scripts/verify-lifecycle-checkpoint docs/process/templates/lifecycle-checkpoint-template.yaml",
23
28
  "scripts/verify-frontend-implementation-evidence --allow-template docs/process/templates/frontend-implementation-plan-template.yaml",
24
29
  "scripts/verify-frontend-implementation-evidence --allow-template docs/process/templates/frontend-implementation-verification-template.yaml",
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env node
2
+ import { parseArgs } from "node:util";
3
+ import { decisionIO, verifyUserDecisionFile } from "./lib/user-decision.mjs";
4
+ try {
5
+ const { positionals, values } = parseArgs({ allowPositionals: true, options: { root: { type: "string" }, requirements: { type: "string" } } });
6
+ if (positionals.length !== 1) throw new TypeError("用法: scripts/verify-user-decision [--root <repo>] [--requirements <当前事项.json>] <record.yaml>");
7
+ const options = values.root ? { root: values.root } : {};
8
+ const io = decisionIO(options);
9
+ const record = io.document(positionals[0]);
10
+ // No requirements means verify every requested item for approval; partial approvals need explicit current requirements.
11
+ options.expected = values.requirements ? io.document(values.requirements) : record.request.items.map((item) => ({ boundary: item.boundary, subject_ref: item.subject.ref, scope: item.scope }));
12
+ verifyUserDecisionFile(positionals[0], options);
13
+ process.stdout.write("用户决定及当前批准范围校验通过\n");
14
+ } catch (error) {
15
+ process.stderr.write(`用户决定校验失败: ${error.message}\n`);
16
+ process.exitCode = 1;
17
+ }