create-yss-spec 3.5.2 → 3.5.4

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 (2050) hide show
  1. package/package.json +1 -1
  2. package/src/template/asset-runtime.js +23 -6
  3. package/template/.agents/skills/.strategic-design-skills-manifest.json +5 -5
  4. package/template/.agents/skills/archify/SKILL.md +4 -52
  5. package/template/.agents/skills/archify/references/authoring-notes.md +12 -0
  6. package/template/.agents/skills/archify/references/authoring-workflow.md +25 -0
  7. package/template/.agents/skills/archify/references/delivery-workflow.md +25 -0
  8. package/template/.agents/skills/archify/references/upstream-updates.md +12 -0
  9. package/template/.agents/skills/code-review/SKILL.md +3 -34
  10. package/template/.agents/skills/code-review/references/legacy-convergence.md +5 -0
  11. package/template/.agents/skills/code-review/references/review-axis-checklists.md +18 -0
  12. package/template/.agents/skills/code-review/references/smell-baseline.md +23 -0
  13. package/template/.agents/skills/codebase-design/SKILL.md +4 -0
  14. package/template/.agents/skills/codebase-design/references/architecture-audit.md +69 -0
  15. package/template/.agents/skills/diagnosing-bugs/SKILL.md +3 -91
  16. package/template/.agents/skills/diagnosing-bugs/references/feedback-loop.md +53 -0
  17. package/template/.agents/skills/diagnosing-bugs/references/investigation.md +49 -0
  18. package/template/.agents/skills/frontend-commit/SKILL.md +4 -93
  19. package/template/.agents/skills/git-commit-core/SKILL.md +18 -0
  20. package/template/.agents/skills/git-commit-core/agents/openai.yaml +2 -0
  21. package/template/.agents/skills/java-backend-commit/SKILL.md +4 -96
  22. package/template/.agents/skills/llm-wiki/SKILL.md +12 -13
  23. package/template/.agents/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
  24. package/template/.agents/skills/llm-wiki/references/compile.md +21 -114
  25. package/template/.agents/skills/llm-wiki/references/ingest.md +8 -33
  26. package/template/.agents/skills/llm-wiki/references/lint.md +9 -46
  27. package/template/.agents/skills/llm-wiki/references/query.md +9 -18
  28. package/template/.agents/skills/llm-wiki/references/schema.md +56 -29
  29. package/template/.agents/skills/llm-wiki/references/transactions.md +48 -0
  30. package/template/.agents/skills/llm-wiki/references/writing.md +4 -4
  31. package/template/.agents/skills/llm-wiki/scripts/advise.mjs +46 -58
  32. package/template/.agents/skills/llm-wiki/scripts/advise.test.mjs +11 -16
  33. package/template/.agents/skills/llm-wiki/scripts/core.mjs +262 -0
  34. package/template/.agents/skills/llm-wiki/scripts/extract.mjs +35 -18
  35. package/template/.agents/skills/llm-wiki/scripts/extract.test.mjs +5 -8
  36. package/template/.agents/skills/llm-wiki/scripts/feedback.mjs +51 -0
  37. package/template/.agents/skills/llm-wiki/scripts/inventory.mjs +43 -171
  38. package/template/.agents/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
  39. package/template/.agents/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
  40. package/template/.agents/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
  41. package/template/.agents/skills/llm-wiki/scripts/migrate.mjs +51 -0
  42. package/template/.agents/skills/llm-wiki/scripts/query.mjs +149 -0
  43. package/template/.agents/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
  44. package/template/.agents/skills/llm-wiki/scripts/sources.mjs +166 -0
  45. package/template/.agents/skills/llm-wiki/scripts/transaction.mjs +384 -0
  46. package/template/.agents/skills/llm-wiki/scripts/v2.test.mjs +354 -0
  47. package/template/.agents/skills/maintaining-skills/references/authoring.md +6 -0
  48. package/template/.agents/skills/prototype/LOGIC.md +1 -1
  49. package/template/.agents/skills/prototype/SKILL.md +5 -19
  50. package/template/.agents/skills/prototype-review/SKILL.md +11 -0
  51. package/template/.agents/skills/prototype-review/references/component-qa.md +32 -0
  52. package/template/.agents/skills/setup-matt-pocock-skills/SKILL.md +4 -74
  53. package/template/.agents/skills/setup-matt-pocock-skills/references/configuration-decisions.md +42 -0
  54. package/template/.agents/skills/setup-matt-pocock-skills/references/write-configuration.md +42 -0
  55. package/template/.agents/skills/to-spec/SKILL.md +9 -62
  56. package/template/.agents/skills/to-tickets/SKILL.md +20 -86
  57. package/template/.agents/skills/using-git-worktrees/SKILL.md +5 -122
  58. package/template/.agents/skills/using-git-worktrees/references/git-fallback.md +46 -0
  59. package/template/.agents/skills/using-git-worktrees/references/setup-and-baseline.md +45 -0
  60. package/template/.agents/skills/using-git-worktrees/references/troubleshooting.md +47 -0
  61. package/template/.agents/skills/wayfinder/SKILL.md +7 -86
  62. package/template/.agents/skills/wayfinder/references/chart-map.md +14 -0
  63. package/template/.agents/skills/wayfinder/references/map-format.md +49 -0
  64. package/template/.agents/skills/wayfinder/references/scope-and-frontier.md +24 -0
  65. package/template/.agents/skills/wayfinder/references/ticket-types.md +12 -0
  66. package/template/.agents/skills/wayfinder/references/work-map.md +15 -0
  67. package/template/.agents/skills/writing-for-agents/SKILL-MECHANICS.md +20 -11
  68. package/template/.agents/skills/yedit-table-usage/SKILL.md +5 -172
  69. package/template/.agents/skills/yedit-table-usage/references/editable-table-example.md +141 -0
  70. package/template/.agents/skills/yedit-table-usage/references/select-and-filter-examples.md +38 -0
  71. package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +4 -25
  72. package/template/.agents/skills/yss-ddd-scaffold-generator/references/engineering-checks.md +11 -0
  73. package/template/.agents/skills/yss-ddd-scaffold-generator/references/generation-workflow.md +14 -0
  74. package/template/.agents/skills/yss-ddd-scaffold-generator/references/platform-selection.md +16 -0
  75. package/template/.agents/skills/yss-design-system/SKILL.md +13 -3
  76. package/template/.agents/skills/yss-design-system/assets/enterprise-craft/app.js +53 -0
  77. package/template/.agents/skills/yss-design-system/assets/enterprise-craft/index.html +2 -0
  78. package/template/.agents/skills/yss-design-system/assets/enterprise-craft/scenarios.js +14 -0
  79. package/template/.agents/skills/yss-design-system/assets/enterprise-craft/styles.css +32 -0
  80. package/template/.agents/skills/yss-design-system/references/data-quality-theme.md +2 -2
  81. package/template/.agents/skills/yss-design-system/references/design-qa-theme.md +1 -1
  82. package/template/.agents/skills/yss-design-system/references/design-system.md +3 -3
  83. package/template/.agents/skills/yss-design-system/references/enterprise-craft.md +33 -0
  84. package/template/.agents/skills/yss-design-system/references/page-composition.md +24 -0
  85. package/template/.agents/skills/yss-design-system/references/prototype-default-theme.md +26 -0
  86. package/template/.agents/skills/yss-design-system/references/search-date-theme.md +19 -0
  87. package/template/.agents/skills/yss-design-system/scripts/export-craft-examples.mjs +30 -0
  88. package/template/.agents/skills/yss-hook/SKILL.md +8 -102
  89. package/template/.agents/skills/yss-hook/references/async-actions.md +49 -0
  90. package/template/.agents/skills/yss-hook/references/list-pagination.md +46 -0
  91. package/template/.agents/skills/yss-hook/references/polling.md +20 -0
  92. package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +8 -3
  93. package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
  94. package/template/.agents/skills/yss-implementation-contract-compiler/references/scaffold-compilation.md +7 -0
  95. package/template/.agents/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
  96. package/template/.agents/skills/yss-openapi-draft-review/SKILL.md +2 -49
  97. package/template/.agents/skills/yss-openapi-draft-review/references/review-output.md +45 -0
  98. package/template/.agents/skills/yss-openapi-draft-review/references/semantic-review.md +16 -0
  99. package/template/.agents/skills/yss-openapi-governance/SKILL.md +2 -48
  100. package/template/.agents/skills/yss-openapi-governance/references/governance-workflow.md +38 -0
  101. package/template/.agents/skills/yss-openapi-governance/references/locked-toolchain.md +22 -0
  102. package/template/.agents/skills/yss-product-lifecycle/SKILL.md +24 -20
  103. package/template/.agents/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
  104. package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
  105. package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +429 -384
  106. package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +2 -2
  107. package/template/.agents/skills/yss-product-lifecycle/references/plan-requirements.md +12 -0
  108. package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +3 -3
  109. package/template/.agents/skills/yss-prototype-stage/SKILL.md +27 -8
  110. package/template/.agents/skills/yss-prototype-stage/assets/comparison/comparison.css +12 -0
  111. package/template/.agents/skills/yss-prototype-stage/assets/comparison/comparison.js +52 -0
  112. package/template/.agents/skills/yss-prototype-stage/assets/comparison/index.html +6 -0
  113. package/template/.agents/skills/yss-prototype-stage/assets/comparison/review-ready.js +2 -0
  114. package/template/.agents/skills/yss-prototype-stage/assets/low-fidelity-exercise/app.js +17 -0
  115. package/template/.agents/skills/yss-prototype-stage/assets/low-fidelity-exercise/index.html +1 -0
  116. package/template/.agents/skills/yss-prototype-stage/assets/low-fidelity-exercise/styles.css +1 -0
  117. package/template/.agents/skills/yss-prototype-stage/assets/native-workbench/app.js +12 -6
  118. package/template/.agents/skills/yss-prototype-stage/assets/native-workbench/index.html +1 -1
  119. package/template/.agents/skills/yss-prototype-stage/assets/native-workbench/scenarios.json +297 -0
  120. package/template/.agents/skills/yss-prototype-stage/assets/native-workbench/styles.css +2 -0
  121. package/template/.agents/skills/yss-prototype-stage/assets/offline-html/app.js +7 -5
  122. package/template/.agents/skills/yss-prototype-stage/assets/offline-html/scenarios.json +297 -0
  123. package/template/.agents/skills/yss-prototype-stage/assets/prototype-theme.css +92 -0
  124. package/template/.agents/skills/yss-prototype-stage/assets/scenario-runtime.js +22 -0
  125. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/SHADCN-LICENSE.txt +21 -0
  126. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/package.json +23 -0
  127. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/pnpm-lock.yaml +1278 -0
  128. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/registry-manifest.json +936 -0
  129. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/theme.css +107 -0
  130. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/Alert.vue +21 -0
  131. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertDescription.vue +17 -0
  132. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertTitle.vue +17 -0
  133. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/index.ts +24 -0
  134. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialog.vue +15 -0
  135. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogAction.vue +18 -0
  136. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogCancel.vue +25 -0
  137. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogContent.vue +44 -0
  138. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogDescription.vue +23 -0
  139. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogFooter.vue +22 -0
  140. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogHeader.vue +17 -0
  141. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTitle.vue +21 -0
  142. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTrigger.vue +12 -0
  143. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/index.ts +9 -0
  144. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/Badge.vue +26 -0
  145. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/index.ts +26 -0
  146. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/Breadcrumb.vue +17 -0
  147. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbEllipsis.vue +23 -0
  148. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbItem.vue +17 -0
  149. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbLink.vue +21 -0
  150. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbList.vue +17 -0
  151. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbPage.vue +20 -0
  152. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbSeparator.vue +22 -0
  153. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/index.ts +7 -0
  154. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/Button.vue +31 -0
  155. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/index.ts +40 -0
  156. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/Card.vue +22 -0
  157. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardAction.vue +17 -0
  158. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardContent.vue +17 -0
  159. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardDescription.vue +17 -0
  160. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardFooter.vue +17 -0
  161. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardHeader.vue +17 -0
  162. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardTitle.vue +17 -0
  163. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/index.ts +7 -0
  164. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/Checkbox.vue +35 -0
  165. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/index.ts +1 -0
  166. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/Combobox.vue +19 -0
  167. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxAnchor.vue +23 -0
  168. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxEmpty.vue +21 -0
  169. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxGroup.vue +27 -0
  170. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxInput.vue +42 -0
  171. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItem.vue +24 -0
  172. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItemIndicator.vue +23 -0
  173. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxList.vue +33 -0
  174. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxSeparator.vue +21 -0
  175. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxTrigger.vue +24 -0
  176. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxViewport.vue +23 -0
  177. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/index.ts +13 -0
  178. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/Dialog.vue +19 -0
  179. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogClose.vue +15 -0
  180. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogContent.vue +53 -0
  181. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogDescription.vue +23 -0
  182. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogFooter.vue +27 -0
  183. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogHeader.vue +17 -0
  184. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogOverlay.vue +21 -0
  185. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogScrollContent.vue +59 -0
  186. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTitle.vue +23 -0
  187. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTrigger.vue +15 -0
  188. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/index.ts +10 -0
  189. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenu.vue +19 -0
  190. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +39 -0
  191. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuContent.vue +39 -0
  192. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuGroup.vue +15 -0
  193. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuItem.vue +31 -0
  194. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuLabel.vue +23 -0
  195. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioGroup.vue +21 -0
  196. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioItem.vue +40 -0
  197. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSeparator.vue +23 -0
  198. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuShortcut.vue +17 -0
  199. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSub.vue +18 -0
  200. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubContent.vue +27 -0
  201. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubTrigger.vue +31 -0
  202. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuTrigger.vue +17 -0
  203. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/index.ts +16 -0
  204. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/Empty.vue +20 -0
  205. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyContent.vue +20 -0
  206. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyDescription.vue +20 -0
  207. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyHeader.vue +20 -0
  208. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyMedia.vue +21 -0
  209. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyTitle.vue +17 -0
  210. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/index.ts +26 -0
  211. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/Field.vue +25 -0
  212. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldContent.vue +20 -0
  213. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldDescription.vue +22 -0
  214. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldError.vue +53 -0
  215. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldGroup.vue +20 -0
  216. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLabel.vue +23 -0
  217. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLegend.vue +24 -0
  218. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSeparator.vue +29 -0
  219. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSet.vue +21 -0
  220. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldTitle.vue +20 -0
  221. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/index.ts +39 -0
  222. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/Input.vue +33 -0
  223. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/index.ts +1 -0
  224. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroup.vue +35 -0
  225. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupAddon.vue +36 -0
  226. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupButton.vue +29 -0
  227. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupInput.vue +19 -0
  228. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupText.vue +19 -0
  229. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupTextarea.vue +19 -0
  230. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/index.ts +51 -0
  231. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/Label.vue +26 -0
  232. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/index.ts +1 -0
  233. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/Pagination.vue +26 -0
  234. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationContent.vue +22 -0
  235. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationEllipsis.vue +25 -0
  236. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationFirst.vue +33 -0
  237. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationItem.vue +34 -0
  238. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationLast.vue +33 -0
  239. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationNext.vue +33 -0
  240. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationPrevious.vue +33 -0
  241. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/index.ts +8 -0
  242. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/Popover.vue +19 -0
  243. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverAnchor.vue +15 -0
  244. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverContent.vue +45 -0
  245. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverTrigger.vue +15 -0
  246. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/index.ts +4 -0
  247. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendar.vue +62 -0
  248. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCell.vue +23 -0
  249. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCellTrigger.vue +41 -0
  250. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGrid.vue +23 -0
  251. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridBody.vue +15 -0
  252. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridHead.vue +15 -0
  253. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridRow.vue +22 -0
  254. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeadCell.vue +23 -0
  255. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeader.vue +23 -0
  256. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeading.vue +30 -0
  257. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarNextButton.vue +32 -0
  258. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarPrevButton.vue +32 -0
  259. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/index.ts +12 -0
  260. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/Select.vue +19 -0
  261. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectContent.vue +51 -0
  262. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectGroup.vue +15 -0
  263. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItem.vue +44 -0
  264. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItemText.vue +15 -0
  265. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectLabel.vue +17 -0
  266. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollDownButton.vue +26 -0
  267. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollUpButton.vue +26 -0
  268. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectSeparator.vue +19 -0
  269. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectTrigger.vue +33 -0
  270. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectValue.vue +15 -0
  271. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/index.ts +11 -0
  272. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/Separator.vue +29 -0
  273. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/index.ts +1 -0
  274. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/Sheet.vue +19 -0
  275. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetClose.vue +15 -0
  276. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetContent.vue +62 -0
  277. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetDescription.vue +21 -0
  278. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetFooter.vue +16 -0
  279. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetHeader.vue +15 -0
  280. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetOverlay.vue +21 -0
  281. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTitle.vue +21 -0
  282. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTrigger.vue +15 -0
  283. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/index.ts +8 -0
  284. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/Skeleton.vue +17 -0
  285. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/index.ts +1 -0
  286. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/Spinner.vue +17 -0
  287. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/index.ts +1 -0
  288. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/Table.vue +16 -0
  289. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableBody.vue +17 -0
  290. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCaption.vue +17 -0
  291. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCell.vue +22 -0
  292. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableEmpty.vue +34 -0
  293. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableFooter.vue +17 -0
  294. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHead.vue +17 -0
  295. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHeader.vue +17 -0
  296. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableRow.vue +17 -0
  297. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/index.ts +9 -0
  298. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/Tabs.vue +24 -0
  299. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsContent.vue +21 -0
  300. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsList.vue +24 -0
  301. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsTrigger.vue +26 -0
  302. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/index.ts +4 -0
  303. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/Textarea.vue +28 -0
  304. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/index.ts +1 -0
  305. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/Tooltip.vue +19 -0
  306. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipContent.vue +34 -0
  307. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipProvider.vue +14 -0
  308. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipTrigger.vue +15 -0
  309. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/index.ts +4 -0
  310. package/template/.agents/skills/yss-prototype-stage/assets/shadcn-vue-authoring/utils.ts +7 -0
  311. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/Analysis.vue +16 -0
  312. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/Approval.vue +14 -0
  313. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/CombinedQuery.vue +17 -0
  314. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/ComponentStates.vue +41 -0
  315. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/Conflict.vue +33 -0
  316. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/DateRange.vue +29 -0
  317. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/Frame.vue +7 -0
  318. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/ListDetail.vue +47 -0
  319. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/MultiStep.vue +24 -0
  320. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/Notice.vue +5 -0
  321. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/OwnerValidity.vue +26 -0
  322. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/SearchSelect.vue +32 -0
  323. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/Workspace.vue +174 -0
  324. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.config.json +6 -0
  325. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.ts +3 -0
  326. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/analysis.scenarios.json +276 -0
  327. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.config.json +6 -0
  328. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.ts +3 -0
  329. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/approval.scenarios.json +207 -0
  330. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.css +14 -0
  331. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.js +24 -0
  332. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.config.json +6 -0
  333. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.ts +3 -0
  334. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query.scenarios.json +298 -0
  335. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.config.json +6 -0
  336. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.ts +3 -0
  337. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.config.json +6 -0
  338. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.ts +3 -0
  339. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/conflict.scenarios.json +229 -0
  340. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.config.json +6 -0
  341. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.ts +3 -0
  342. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.config.json +6 -0
  343. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.ts +3 -0
  344. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail.scenarios.json +185 -0
  345. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/mount.ts +4 -0
  346. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.config.json +6 -0
  347. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.ts +3 -0
  348. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.config.json +6 -0
  349. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.ts +3 -0
  350. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step.scenarios.json +188 -0
  351. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.config.json +6 -0
  352. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.ts +3 -0
  353. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity.scenarios.json +298 -0
  354. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/patterns.css +26 -0
  355. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/refinement.css +129 -0
  356. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workbench.ts +1 -0
  357. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-definition.ts +40 -0
  358. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.config.json +6 -0
  359. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.ts +3 -0
  360. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-model.js +75 -0
  361. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-page.ts +18 -0
  362. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.config.json +6 -0
  363. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.ts +3 -0
  364. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.css +101 -0
  365. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.scenarios.json +2015 -0
  366. package/template/.agents/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.ts +26 -0
  367. package/template/.agents/skills/yss-prototype-stage/references/business-patterns.md +42 -0
  368. package/template/.agents/skills/yss-prototype-stage/references/comparison-tool.md +48 -0
  369. package/template/.agents/skills/yss-prototype-stage/references/component-recipes.md +41 -0
  370. package/template/.agents/skills/yss-prototype-stage/references/concept-comparison.md +26 -0
  371. package/template/.agents/skills/yss-prototype-stage/references/enterprise-workspace.md +53 -0
  372. package/template/.agents/skills/yss-prototype-stage/references/low-fidelity-exercise.md +32 -0
  373. package/template/.agents/skills/yss-prototype-stage/references/product-design-adapter.md +11 -5
  374. package/template/.agents/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -6
  375. package/template/.agents/skills/yss-prototype-stage/references/prototype-verification.md +25 -0
  376. package/template/.agents/skills/yss-prototype-stage/references/resource-lifecycle.md +20 -0
  377. package/template/.agents/skills/yss-prototype-stage/references/search-date-patterns.md +28 -0
  378. package/template/.agents/skills/yss-prototype-stage/references/shadcn-integration.md +5 -0
  379. package/template/.agents/skills/yss-prototype-stage/references/shadcn-vue-integration.md +46 -0
  380. package/template/.agents/skills/yss-prototype-stage/references/usability-research.md +26 -0
  381. package/template/.agents/skills/yss-prototype-stage/scripts/browser-session.mjs +57 -0
  382. package/template/.agents/skills/yss-prototype-stage/scripts/build-shadcn-vue-prototype.mjs +137 -0
  383. package/template/.agents/skills/yss-prototype-stage/scripts/compose-workspace-scenarios.mjs +22 -0
  384. package/template/.agents/skills/yss-prototype-stage/scripts/export-business-patterns.mjs +7 -0
  385. package/template/.agents/skills/yss-prototype-stage/scripts/export-low-fidelity-exercise.mjs +18 -0
  386. package/template/.agents/skills/yss-prototype-stage/scripts/export-vue-patterns.mjs +21 -0
  387. package/template/.agents/skills/yss-prototype-stage/scripts/offline-html.mjs +60 -23
  388. package/template/.agents/skills/yss-prototype-stage/scripts/prototype-comparison.mjs +208 -0
  389. package/template/.agents/skills/yss-prototype-stage/scripts/prototype-contract.mjs +19 -14
  390. package/template/.agents/skills/yss-prototype-stage/scripts/scenario-contract.mjs +31 -0
  391. package/template/.agents/skills/yss-prototype-stage/scripts/verify-prototype-design.mjs +97 -0
  392. package/template/.agents/skills/yss-prototype-stage/tests/antd-reference.test.mjs +4 -24
  393. package/template/.agents/skills/yss-prototype-stage/tests/browser-harness.mjs +37 -0
  394. package/template/.agents/skills/yss-prototype-stage/tests/browser-visual.mjs +22 -0
  395. package/template/.agents/skills/yss-prototype-stage/tests/business-controls-browser.mjs +43 -0
  396. package/template/.agents/skills/yss-prototype-stage/tests/business-controls.test.mjs +20 -0
  397. package/template/.agents/skills/yss-prototype-stage/tests/compact-theme-browser.mjs +53 -0
  398. package/template/.agents/skills/yss-prototype-stage/tests/comparison-browser-smoke.mjs +77 -0
  399. package/template/.agents/skills/yss-prototype-stage/tests/comparison-fixture.mjs +16 -0
  400. package/template/.agents/skills/yss-prototype-stage/tests/comparison.test.mjs +46 -0
  401. package/template/.agents/skills/yss-prototype-stage/tests/components-browser.mjs +60 -0
  402. package/template/.agents/skills/yss-prototype-stage/tests/patterns-browser.mjs +84 -0
  403. package/template/.agents/skills/yss-prototype-stage/tests/reliability.test.mjs +34 -0
  404. package/template/.agents/skills/yss-prototype-stage/tests/retirement.test.mjs +8 -0
  405. package/template/.agents/skills/yss-prototype-stage/tests/run-scenarios.mjs +19 -2
  406. package/template/.agents/skills/yss-prototype-stage/tests/shadcn-vue.test.mjs +43 -0
  407. package/template/.agents/skills/yss-prototype-stage/tests/verification-entry.test.mjs +16 -0
  408. package/template/.agents/skills/yss-prototype-stage/tests/workbench-smoke.mjs +36 -21
  409. package/template/.agents/skills/yss-prototype-stage/tests/workspace-browser.mjs +50 -0
  410. package/template/.agents/skills/yss-prototype-stage/tests/workspace.test.mjs +70 -0
  411. package/template/.agents/skills/yss-prototype-stage/tests/zoom-browser.mjs +26 -0
  412. package/template/.agents/skills/yss-research/SKILL.md +4 -0
  413. package/template/.agents/skills/yss-stage-decision/SKILL.md +2 -0
  414. package/template/.agents/skills/yss-technical-design/SKILL.md +4 -0
  415. package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +4 -61
  416. package/template/.agents/skills/yss-ui-business-page-generation/references/page-composition-example.md +50 -0
  417. package/template/.agents/skills/yss-ui-business-page-generation/references/page-layout-example.md +19 -0
  418. package/template/.agents/skills/ytable-usage/SKILL.md +3 -191
  419. package/template/.agents/skills/ytable-usage/references/selection-and-batch.md +30 -0
  420. package/template/.agents/skills/ytable-usage/references/table-pagination-examples.md +170 -0
  421. package/template/.codex/skills/archify/SKILL.md +4 -52
  422. package/template/.codex/skills/archify/references/authoring-notes.md +12 -0
  423. package/template/.codex/skills/archify/references/authoring-workflow.md +25 -0
  424. package/template/.codex/skills/archify/references/delivery-workflow.md +25 -0
  425. package/template/.codex/skills/archify/references/upstream-updates.md +12 -0
  426. package/template/.codex/skills/code-review/SKILL.md +3 -34
  427. package/template/.codex/skills/code-review/references/legacy-convergence.md +5 -0
  428. package/template/.codex/skills/code-review/references/review-axis-checklists.md +18 -0
  429. package/template/.codex/skills/code-review/references/smell-baseline.md +23 -0
  430. package/template/.codex/skills/codebase-design/SKILL.md +4 -0
  431. package/template/.codex/skills/codebase-design/references/architecture-audit.md +69 -0
  432. package/template/.codex/skills/diagnosing-bugs/SKILL.md +3 -91
  433. package/template/.codex/skills/diagnosing-bugs/references/feedback-loop.md +53 -0
  434. package/template/.codex/skills/diagnosing-bugs/references/investigation.md +49 -0
  435. package/template/.codex/skills/frontend-commit/SKILL.md +4 -93
  436. package/template/.codex/skills/git-commit-core/SKILL.md +18 -0
  437. package/template/.codex/skills/git-commit-core/agents/openai.yaml +2 -0
  438. package/template/.codex/skills/java-backend-commit/SKILL.md +4 -96
  439. package/template/.codex/skills/llm-wiki/SKILL.md +12 -13
  440. package/template/.codex/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
  441. package/template/.codex/skills/llm-wiki/references/compile.md +21 -114
  442. package/template/.codex/skills/llm-wiki/references/ingest.md +8 -33
  443. package/template/.codex/skills/llm-wiki/references/lint.md +9 -46
  444. package/template/.codex/skills/llm-wiki/references/query.md +9 -18
  445. package/template/.codex/skills/llm-wiki/references/schema.md +56 -29
  446. package/template/.codex/skills/llm-wiki/references/transactions.md +48 -0
  447. package/template/.codex/skills/llm-wiki/references/writing.md +4 -4
  448. package/template/.codex/skills/llm-wiki/scripts/advise.mjs +46 -58
  449. package/template/.codex/skills/llm-wiki/scripts/advise.test.mjs +11 -16
  450. package/template/.codex/skills/llm-wiki/scripts/core.mjs +262 -0
  451. package/template/.codex/skills/llm-wiki/scripts/extract.mjs +35 -18
  452. package/template/.codex/skills/llm-wiki/scripts/extract.test.mjs +5 -8
  453. package/template/.codex/skills/llm-wiki/scripts/feedback.mjs +51 -0
  454. package/template/.codex/skills/llm-wiki/scripts/inventory.mjs +43 -171
  455. package/template/.codex/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
  456. package/template/.codex/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
  457. package/template/.codex/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
  458. package/template/.codex/skills/llm-wiki/scripts/migrate.mjs +51 -0
  459. package/template/.codex/skills/llm-wiki/scripts/query.mjs +149 -0
  460. package/template/.codex/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
  461. package/template/.codex/skills/llm-wiki/scripts/sources.mjs +166 -0
  462. package/template/.codex/skills/llm-wiki/scripts/transaction.mjs +384 -0
  463. package/template/.codex/skills/llm-wiki/scripts/v2.test.mjs +354 -0
  464. package/template/.codex/skills/maintaining-skills/references/authoring.md +6 -0
  465. package/template/.codex/skills/prototype/LOGIC.md +1 -1
  466. package/template/.codex/skills/prototype/SKILL.md +5 -19
  467. package/template/.codex/skills/prototype-review/SKILL.md +11 -0
  468. package/template/.codex/skills/prototype-review/references/component-qa.md +32 -0
  469. package/template/.codex/skills/setup-matt-pocock-skills/SKILL.md +4 -74
  470. package/template/.codex/skills/setup-matt-pocock-skills/references/configuration-decisions.md +42 -0
  471. package/template/.codex/skills/setup-matt-pocock-skills/references/write-configuration.md +42 -0
  472. package/template/.codex/skills/to-spec/SKILL.md +9 -62
  473. package/template/.codex/skills/to-tickets/SKILL.md +20 -86
  474. package/template/.codex/skills/using-git-worktrees/SKILL.md +5 -122
  475. package/template/.codex/skills/using-git-worktrees/references/git-fallback.md +46 -0
  476. package/template/.codex/skills/using-git-worktrees/references/setup-and-baseline.md +45 -0
  477. package/template/.codex/skills/using-git-worktrees/references/troubleshooting.md +47 -0
  478. package/template/.codex/skills/wayfinder/SKILL.md +7 -86
  479. package/template/.codex/skills/wayfinder/references/chart-map.md +14 -0
  480. package/template/.codex/skills/wayfinder/references/map-format.md +49 -0
  481. package/template/.codex/skills/wayfinder/references/scope-and-frontier.md +24 -0
  482. package/template/.codex/skills/wayfinder/references/ticket-types.md +12 -0
  483. package/template/.codex/skills/wayfinder/references/work-map.md +15 -0
  484. package/template/.codex/skills/writing-for-agents/SKILL-MECHANICS.md +20 -11
  485. package/template/.codex/skills/yedit-table-usage/SKILL.md +5 -172
  486. package/template/.codex/skills/yedit-table-usage/references/editable-table-example.md +141 -0
  487. package/template/.codex/skills/yedit-table-usage/references/select-and-filter-examples.md +38 -0
  488. package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +4 -25
  489. package/template/.codex/skills/yss-ddd-scaffold-generator/references/engineering-checks.md +11 -0
  490. package/template/.codex/skills/yss-ddd-scaffold-generator/references/generation-workflow.md +14 -0
  491. package/template/.codex/skills/yss-ddd-scaffold-generator/references/platform-selection.md +16 -0
  492. package/template/.codex/skills/yss-design-system/SKILL.md +13 -3
  493. package/template/.codex/skills/yss-design-system/assets/enterprise-craft/app.js +53 -0
  494. package/template/.codex/skills/yss-design-system/assets/enterprise-craft/index.html +2 -0
  495. package/template/.codex/skills/yss-design-system/assets/enterprise-craft/scenarios.js +14 -0
  496. package/template/.codex/skills/yss-design-system/assets/enterprise-craft/styles.css +32 -0
  497. package/template/.codex/skills/yss-design-system/references/data-quality-theme.md +2 -2
  498. package/template/.codex/skills/yss-design-system/references/design-qa-theme.md +1 -1
  499. package/template/.codex/skills/yss-design-system/references/design-system.md +3 -3
  500. package/template/.codex/skills/yss-design-system/references/enterprise-craft.md +33 -0
  501. package/template/.codex/skills/yss-design-system/references/page-composition.md +24 -0
  502. package/template/.codex/skills/yss-design-system/references/prototype-default-theme.md +26 -0
  503. package/template/.codex/skills/yss-design-system/references/search-date-theme.md +19 -0
  504. package/template/.codex/skills/yss-design-system/scripts/export-craft-examples.mjs +30 -0
  505. package/template/.codex/skills/yss-hook/SKILL.md +8 -102
  506. package/template/.codex/skills/yss-hook/references/async-actions.md +49 -0
  507. package/template/.codex/skills/yss-hook/references/list-pagination.md +46 -0
  508. package/template/.codex/skills/yss-hook/references/polling.md +20 -0
  509. package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +8 -3
  510. package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
  511. package/template/.codex/skills/yss-implementation-contract-compiler/references/scaffold-compilation.md +7 -0
  512. package/template/.codex/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
  513. package/template/.codex/skills/yss-openapi-draft-review/SKILL.md +2 -49
  514. package/template/.codex/skills/yss-openapi-draft-review/references/review-output.md +45 -0
  515. package/template/.codex/skills/yss-openapi-draft-review/references/semantic-review.md +16 -0
  516. package/template/.codex/skills/yss-openapi-governance/SKILL.md +2 -48
  517. package/template/.codex/skills/yss-openapi-governance/references/governance-workflow.md +38 -0
  518. package/template/.codex/skills/yss-openapi-governance/references/locked-toolchain.md +22 -0
  519. package/template/.codex/skills/yss-product-lifecycle/SKILL.md +24 -20
  520. package/template/.codex/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
  521. package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
  522. package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +429 -384
  523. package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +2 -2
  524. package/template/.codex/skills/yss-product-lifecycle/references/plan-requirements.md +12 -0
  525. package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +3 -3
  526. package/template/.codex/skills/yss-prototype-stage/SKILL.md +27 -8
  527. package/template/.codex/skills/yss-prototype-stage/assets/comparison/comparison.css +12 -0
  528. package/template/.codex/skills/yss-prototype-stage/assets/comparison/comparison.js +52 -0
  529. package/template/.codex/skills/yss-prototype-stage/assets/comparison/index.html +6 -0
  530. package/template/.codex/skills/yss-prototype-stage/assets/comparison/review-ready.js +2 -0
  531. package/template/.codex/skills/yss-prototype-stage/assets/low-fidelity-exercise/app.js +17 -0
  532. package/template/.codex/skills/yss-prototype-stage/assets/low-fidelity-exercise/index.html +1 -0
  533. package/template/.codex/skills/yss-prototype-stage/assets/low-fidelity-exercise/styles.css +1 -0
  534. package/template/.codex/skills/yss-prototype-stage/assets/native-workbench/app.js +12 -6
  535. package/template/.codex/skills/yss-prototype-stage/assets/native-workbench/index.html +1 -1
  536. package/template/.codex/skills/yss-prototype-stage/assets/native-workbench/scenarios.json +297 -0
  537. package/template/.codex/skills/yss-prototype-stage/assets/native-workbench/styles.css +2 -0
  538. package/template/.codex/skills/yss-prototype-stage/assets/offline-html/app.js +7 -5
  539. package/template/.codex/skills/yss-prototype-stage/assets/offline-html/scenarios.json +297 -0
  540. package/template/.codex/skills/yss-prototype-stage/assets/prototype-theme.css +92 -0
  541. package/template/.codex/skills/yss-prototype-stage/assets/scenario-runtime.js +22 -0
  542. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/SHADCN-LICENSE.txt +21 -0
  543. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/package.json +23 -0
  544. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/pnpm-lock.yaml +1278 -0
  545. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/registry-manifest.json +936 -0
  546. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/theme.css +107 -0
  547. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/Alert.vue +21 -0
  548. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertDescription.vue +17 -0
  549. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertTitle.vue +17 -0
  550. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/index.ts +24 -0
  551. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialog.vue +15 -0
  552. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogAction.vue +18 -0
  553. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogCancel.vue +25 -0
  554. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogContent.vue +44 -0
  555. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogDescription.vue +23 -0
  556. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogFooter.vue +22 -0
  557. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogHeader.vue +17 -0
  558. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTitle.vue +21 -0
  559. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTrigger.vue +12 -0
  560. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/index.ts +9 -0
  561. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/Badge.vue +26 -0
  562. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/index.ts +26 -0
  563. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/Breadcrumb.vue +17 -0
  564. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbEllipsis.vue +23 -0
  565. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbItem.vue +17 -0
  566. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbLink.vue +21 -0
  567. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbList.vue +17 -0
  568. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbPage.vue +20 -0
  569. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbSeparator.vue +22 -0
  570. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/index.ts +7 -0
  571. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/Button.vue +31 -0
  572. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/index.ts +40 -0
  573. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/Card.vue +22 -0
  574. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardAction.vue +17 -0
  575. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardContent.vue +17 -0
  576. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardDescription.vue +17 -0
  577. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardFooter.vue +17 -0
  578. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardHeader.vue +17 -0
  579. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardTitle.vue +17 -0
  580. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/index.ts +7 -0
  581. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/Checkbox.vue +35 -0
  582. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/index.ts +1 -0
  583. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/Combobox.vue +19 -0
  584. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxAnchor.vue +23 -0
  585. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxEmpty.vue +21 -0
  586. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxGroup.vue +27 -0
  587. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxInput.vue +42 -0
  588. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItem.vue +24 -0
  589. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItemIndicator.vue +23 -0
  590. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxList.vue +33 -0
  591. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxSeparator.vue +21 -0
  592. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxTrigger.vue +24 -0
  593. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxViewport.vue +23 -0
  594. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/index.ts +13 -0
  595. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/Dialog.vue +19 -0
  596. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogClose.vue +15 -0
  597. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogContent.vue +53 -0
  598. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogDescription.vue +23 -0
  599. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogFooter.vue +27 -0
  600. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogHeader.vue +17 -0
  601. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogOverlay.vue +21 -0
  602. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogScrollContent.vue +59 -0
  603. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTitle.vue +23 -0
  604. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTrigger.vue +15 -0
  605. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/index.ts +10 -0
  606. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenu.vue +19 -0
  607. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +39 -0
  608. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuContent.vue +39 -0
  609. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuGroup.vue +15 -0
  610. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuItem.vue +31 -0
  611. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuLabel.vue +23 -0
  612. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioGroup.vue +21 -0
  613. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioItem.vue +40 -0
  614. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSeparator.vue +23 -0
  615. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuShortcut.vue +17 -0
  616. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSub.vue +18 -0
  617. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubContent.vue +27 -0
  618. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubTrigger.vue +31 -0
  619. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuTrigger.vue +17 -0
  620. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/index.ts +16 -0
  621. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/Empty.vue +20 -0
  622. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyContent.vue +20 -0
  623. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyDescription.vue +20 -0
  624. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyHeader.vue +20 -0
  625. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyMedia.vue +21 -0
  626. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyTitle.vue +17 -0
  627. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/index.ts +26 -0
  628. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/Field.vue +25 -0
  629. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldContent.vue +20 -0
  630. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldDescription.vue +22 -0
  631. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldError.vue +53 -0
  632. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldGroup.vue +20 -0
  633. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLabel.vue +23 -0
  634. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLegend.vue +24 -0
  635. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSeparator.vue +29 -0
  636. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSet.vue +21 -0
  637. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldTitle.vue +20 -0
  638. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/index.ts +39 -0
  639. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/Input.vue +33 -0
  640. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/index.ts +1 -0
  641. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroup.vue +35 -0
  642. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupAddon.vue +36 -0
  643. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupButton.vue +29 -0
  644. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupInput.vue +19 -0
  645. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupText.vue +19 -0
  646. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupTextarea.vue +19 -0
  647. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/index.ts +51 -0
  648. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/Label.vue +26 -0
  649. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/index.ts +1 -0
  650. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/Pagination.vue +26 -0
  651. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationContent.vue +22 -0
  652. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationEllipsis.vue +25 -0
  653. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationFirst.vue +33 -0
  654. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationItem.vue +34 -0
  655. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationLast.vue +33 -0
  656. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationNext.vue +33 -0
  657. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationPrevious.vue +33 -0
  658. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/index.ts +8 -0
  659. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/Popover.vue +19 -0
  660. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverAnchor.vue +15 -0
  661. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverContent.vue +45 -0
  662. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverTrigger.vue +15 -0
  663. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/index.ts +4 -0
  664. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendar.vue +62 -0
  665. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCell.vue +23 -0
  666. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCellTrigger.vue +41 -0
  667. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGrid.vue +23 -0
  668. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridBody.vue +15 -0
  669. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridHead.vue +15 -0
  670. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridRow.vue +22 -0
  671. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeadCell.vue +23 -0
  672. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeader.vue +23 -0
  673. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeading.vue +30 -0
  674. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarNextButton.vue +32 -0
  675. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarPrevButton.vue +32 -0
  676. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/index.ts +12 -0
  677. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/Select.vue +19 -0
  678. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectContent.vue +51 -0
  679. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectGroup.vue +15 -0
  680. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItem.vue +44 -0
  681. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItemText.vue +15 -0
  682. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectLabel.vue +17 -0
  683. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollDownButton.vue +26 -0
  684. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollUpButton.vue +26 -0
  685. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectSeparator.vue +19 -0
  686. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectTrigger.vue +33 -0
  687. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectValue.vue +15 -0
  688. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/index.ts +11 -0
  689. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/Separator.vue +29 -0
  690. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/index.ts +1 -0
  691. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/Sheet.vue +19 -0
  692. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetClose.vue +15 -0
  693. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetContent.vue +62 -0
  694. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetDescription.vue +21 -0
  695. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetFooter.vue +16 -0
  696. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetHeader.vue +15 -0
  697. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetOverlay.vue +21 -0
  698. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTitle.vue +21 -0
  699. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTrigger.vue +15 -0
  700. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/index.ts +8 -0
  701. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/Skeleton.vue +17 -0
  702. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/index.ts +1 -0
  703. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/Spinner.vue +17 -0
  704. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/index.ts +1 -0
  705. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/Table.vue +16 -0
  706. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableBody.vue +17 -0
  707. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCaption.vue +17 -0
  708. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCell.vue +22 -0
  709. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableEmpty.vue +34 -0
  710. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableFooter.vue +17 -0
  711. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHead.vue +17 -0
  712. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHeader.vue +17 -0
  713. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableRow.vue +17 -0
  714. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/index.ts +9 -0
  715. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/Tabs.vue +24 -0
  716. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsContent.vue +21 -0
  717. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsList.vue +24 -0
  718. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsTrigger.vue +26 -0
  719. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/index.ts +4 -0
  720. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/Textarea.vue +28 -0
  721. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/index.ts +1 -0
  722. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/Tooltip.vue +19 -0
  723. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipContent.vue +34 -0
  724. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipProvider.vue +14 -0
  725. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipTrigger.vue +15 -0
  726. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/index.ts +4 -0
  727. package/template/.codex/skills/yss-prototype-stage/assets/shadcn-vue-authoring/utils.ts +7 -0
  728. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/Analysis.vue +16 -0
  729. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/Approval.vue +14 -0
  730. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/CombinedQuery.vue +17 -0
  731. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/ComponentStates.vue +41 -0
  732. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/Conflict.vue +33 -0
  733. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/DateRange.vue +29 -0
  734. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/Frame.vue +7 -0
  735. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/ListDetail.vue +47 -0
  736. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/MultiStep.vue +24 -0
  737. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/Notice.vue +5 -0
  738. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/OwnerValidity.vue +26 -0
  739. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/SearchSelect.vue +32 -0
  740. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/Workspace.vue +174 -0
  741. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.config.json +6 -0
  742. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.ts +3 -0
  743. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/analysis.scenarios.json +276 -0
  744. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.config.json +6 -0
  745. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.ts +3 -0
  746. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/approval.scenarios.json +207 -0
  747. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.css +14 -0
  748. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.js +24 -0
  749. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.config.json +6 -0
  750. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.ts +3 -0
  751. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query.scenarios.json +298 -0
  752. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.config.json +6 -0
  753. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.ts +3 -0
  754. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.config.json +6 -0
  755. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.ts +3 -0
  756. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/conflict.scenarios.json +229 -0
  757. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.config.json +6 -0
  758. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.ts +3 -0
  759. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.config.json +6 -0
  760. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.ts +3 -0
  761. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail.scenarios.json +185 -0
  762. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/mount.ts +4 -0
  763. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.config.json +6 -0
  764. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.ts +3 -0
  765. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.config.json +6 -0
  766. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.ts +3 -0
  767. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step.scenarios.json +188 -0
  768. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.config.json +6 -0
  769. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.ts +3 -0
  770. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity.scenarios.json +298 -0
  771. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/patterns.css +26 -0
  772. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/refinement.css +129 -0
  773. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workbench.ts +1 -0
  774. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-definition.ts +40 -0
  775. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.config.json +6 -0
  776. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.ts +3 -0
  777. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-model.js +75 -0
  778. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-page.ts +18 -0
  779. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.config.json +6 -0
  780. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.ts +3 -0
  781. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.css +101 -0
  782. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.scenarios.json +2015 -0
  783. package/template/.codex/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.ts +26 -0
  784. package/template/.codex/skills/yss-prototype-stage/references/business-patterns.md +42 -0
  785. package/template/.codex/skills/yss-prototype-stage/references/comparison-tool.md +48 -0
  786. package/template/.codex/skills/yss-prototype-stage/references/component-recipes.md +41 -0
  787. package/template/.codex/skills/yss-prototype-stage/references/concept-comparison.md +26 -0
  788. package/template/.codex/skills/yss-prototype-stage/references/enterprise-workspace.md +53 -0
  789. package/template/.codex/skills/yss-prototype-stage/references/low-fidelity-exercise.md +32 -0
  790. package/template/.codex/skills/yss-prototype-stage/references/product-design-adapter.md +11 -5
  791. package/template/.codex/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -6
  792. package/template/.codex/skills/yss-prototype-stage/references/prototype-verification.md +25 -0
  793. package/template/.codex/skills/yss-prototype-stage/references/resource-lifecycle.md +20 -0
  794. package/template/.codex/skills/yss-prototype-stage/references/search-date-patterns.md +28 -0
  795. package/template/.codex/skills/yss-prototype-stage/references/shadcn-integration.md +5 -0
  796. package/template/.codex/skills/yss-prototype-stage/references/shadcn-vue-integration.md +46 -0
  797. package/template/.codex/skills/yss-prototype-stage/references/usability-research.md +26 -0
  798. package/template/.codex/skills/yss-prototype-stage/scripts/browser-session.mjs +57 -0
  799. package/template/.codex/skills/yss-prototype-stage/scripts/build-shadcn-vue-prototype.mjs +137 -0
  800. package/template/.codex/skills/yss-prototype-stage/scripts/compose-workspace-scenarios.mjs +22 -0
  801. package/template/.codex/skills/yss-prototype-stage/scripts/export-business-patterns.mjs +7 -0
  802. package/template/.codex/skills/yss-prototype-stage/scripts/export-low-fidelity-exercise.mjs +18 -0
  803. package/template/.codex/skills/yss-prototype-stage/scripts/export-vue-patterns.mjs +21 -0
  804. package/template/.codex/skills/yss-prototype-stage/scripts/offline-html.mjs +60 -23
  805. package/template/.codex/skills/yss-prototype-stage/scripts/prototype-comparison.mjs +208 -0
  806. package/template/.codex/skills/yss-prototype-stage/scripts/prototype-contract.mjs +19 -14
  807. package/template/.codex/skills/yss-prototype-stage/scripts/scenario-contract.mjs +31 -0
  808. package/template/.codex/skills/yss-prototype-stage/scripts/verify-prototype-design.mjs +97 -0
  809. package/template/.codex/skills/yss-prototype-stage/tests/antd-reference.test.mjs +4 -24
  810. package/template/.codex/skills/yss-prototype-stage/tests/browser-harness.mjs +37 -0
  811. package/template/.codex/skills/yss-prototype-stage/tests/browser-visual.mjs +22 -0
  812. package/template/.codex/skills/yss-prototype-stage/tests/business-controls-browser.mjs +43 -0
  813. package/template/.codex/skills/yss-prototype-stage/tests/business-controls.test.mjs +20 -0
  814. package/template/.codex/skills/yss-prototype-stage/tests/compact-theme-browser.mjs +53 -0
  815. package/template/.codex/skills/yss-prototype-stage/tests/comparison-browser-smoke.mjs +77 -0
  816. package/template/.codex/skills/yss-prototype-stage/tests/comparison-fixture.mjs +16 -0
  817. package/template/.codex/skills/yss-prototype-stage/tests/comparison.test.mjs +46 -0
  818. package/template/.codex/skills/yss-prototype-stage/tests/components-browser.mjs +60 -0
  819. package/template/.codex/skills/yss-prototype-stage/tests/patterns-browser.mjs +84 -0
  820. package/template/.codex/skills/yss-prototype-stage/tests/reliability.test.mjs +34 -0
  821. package/template/.codex/skills/yss-prototype-stage/tests/retirement.test.mjs +8 -0
  822. package/template/.codex/skills/yss-prototype-stage/tests/run-scenarios.mjs +19 -2
  823. package/template/.codex/skills/yss-prototype-stage/tests/shadcn-vue.test.mjs +43 -0
  824. package/template/.codex/skills/yss-prototype-stage/tests/verification-entry.test.mjs +16 -0
  825. package/template/.codex/skills/yss-prototype-stage/tests/workbench-smoke.mjs +36 -21
  826. package/template/.codex/skills/yss-prototype-stage/tests/workspace-browser.mjs +50 -0
  827. package/template/.codex/skills/yss-prototype-stage/tests/workspace.test.mjs +70 -0
  828. package/template/.codex/skills/yss-prototype-stage/tests/zoom-browser.mjs +26 -0
  829. package/template/.codex/skills/yss-research/SKILL.md +4 -0
  830. package/template/.codex/skills/yss-stage-decision/SKILL.md +2 -0
  831. package/template/.codex/skills/yss-technical-design/SKILL.md +4 -0
  832. package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +4 -61
  833. package/template/.codex/skills/yss-ui-business-page-generation/references/page-composition-example.md +50 -0
  834. package/template/.codex/skills/yss-ui-business-page-generation/references/page-layout-example.md +19 -0
  835. package/template/.codex/skills/ytable-usage/SKILL.md +3 -191
  836. package/template/.codex/skills/ytable-usage/references/selection-and-batch.md +30 -0
  837. package/template/.codex/skills/ytable-usage/references/table-pagination-examples.md +170 -0
  838. package/template/.cursor/skills/archify/SKILL.md +4 -52
  839. package/template/.cursor/skills/archify/references/authoring-notes.md +12 -0
  840. package/template/.cursor/skills/archify/references/authoring-workflow.md +25 -0
  841. package/template/.cursor/skills/archify/references/delivery-workflow.md +25 -0
  842. package/template/.cursor/skills/archify/references/upstream-updates.md +12 -0
  843. package/template/.cursor/skills/code-review/SKILL.md +3 -34
  844. package/template/.cursor/skills/code-review/references/legacy-convergence.md +5 -0
  845. package/template/.cursor/skills/code-review/references/review-axis-checklists.md +18 -0
  846. package/template/.cursor/skills/code-review/references/smell-baseline.md +23 -0
  847. package/template/.cursor/skills/codebase-design/SKILL.md +4 -0
  848. package/template/.cursor/skills/codebase-design/references/architecture-audit.md +69 -0
  849. package/template/.cursor/skills/diagnosing-bugs/SKILL.md +3 -91
  850. package/template/.cursor/skills/diagnosing-bugs/references/feedback-loop.md +53 -0
  851. package/template/.cursor/skills/diagnosing-bugs/references/investigation.md +49 -0
  852. package/template/.cursor/skills/frontend-commit/SKILL.md +4 -93
  853. package/template/.cursor/skills/git-commit-core/SKILL.md +18 -0
  854. package/template/.cursor/skills/git-commit-core/agents/openai.yaml +2 -0
  855. package/template/.cursor/skills/java-backend-commit/SKILL.md +4 -96
  856. package/template/.cursor/skills/llm-wiki/SKILL.md +12 -13
  857. package/template/.cursor/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
  858. package/template/.cursor/skills/llm-wiki/references/compile.md +21 -114
  859. package/template/.cursor/skills/llm-wiki/references/ingest.md +8 -33
  860. package/template/.cursor/skills/llm-wiki/references/lint.md +9 -46
  861. package/template/.cursor/skills/llm-wiki/references/query.md +9 -18
  862. package/template/.cursor/skills/llm-wiki/references/schema.md +56 -29
  863. package/template/.cursor/skills/llm-wiki/references/transactions.md +48 -0
  864. package/template/.cursor/skills/llm-wiki/references/writing.md +4 -4
  865. package/template/.cursor/skills/llm-wiki/scripts/advise.mjs +46 -58
  866. package/template/.cursor/skills/llm-wiki/scripts/advise.test.mjs +11 -16
  867. package/template/.cursor/skills/llm-wiki/scripts/core.mjs +262 -0
  868. package/template/.cursor/skills/llm-wiki/scripts/extract.mjs +35 -18
  869. package/template/.cursor/skills/llm-wiki/scripts/extract.test.mjs +5 -8
  870. package/template/.cursor/skills/llm-wiki/scripts/feedback.mjs +51 -0
  871. package/template/.cursor/skills/llm-wiki/scripts/inventory.mjs +43 -171
  872. package/template/.cursor/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
  873. package/template/.cursor/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
  874. package/template/.cursor/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
  875. package/template/.cursor/skills/llm-wiki/scripts/migrate.mjs +51 -0
  876. package/template/.cursor/skills/llm-wiki/scripts/query.mjs +149 -0
  877. package/template/.cursor/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
  878. package/template/.cursor/skills/llm-wiki/scripts/sources.mjs +166 -0
  879. package/template/.cursor/skills/llm-wiki/scripts/transaction.mjs +384 -0
  880. package/template/.cursor/skills/llm-wiki/scripts/v2.test.mjs +354 -0
  881. package/template/.cursor/skills/maintaining-skills/references/authoring.md +6 -0
  882. package/template/.cursor/skills/prototype/LOGIC.md +1 -1
  883. package/template/.cursor/skills/prototype/SKILL.md +5 -19
  884. package/template/.cursor/skills/prototype-review/SKILL.md +11 -0
  885. package/template/.cursor/skills/prototype-review/references/component-qa.md +32 -0
  886. package/template/.cursor/skills/setup-matt-pocock-skills/SKILL.md +4 -74
  887. package/template/.cursor/skills/setup-matt-pocock-skills/references/configuration-decisions.md +42 -0
  888. package/template/.cursor/skills/setup-matt-pocock-skills/references/write-configuration.md +42 -0
  889. package/template/.cursor/skills/to-spec/SKILL.md +9 -62
  890. package/template/.cursor/skills/to-tickets/SKILL.md +20 -86
  891. package/template/.cursor/skills/using-git-worktrees/SKILL.md +5 -122
  892. package/template/.cursor/skills/using-git-worktrees/references/git-fallback.md +46 -0
  893. package/template/.cursor/skills/using-git-worktrees/references/setup-and-baseline.md +45 -0
  894. package/template/.cursor/skills/using-git-worktrees/references/troubleshooting.md +47 -0
  895. package/template/.cursor/skills/wayfinder/SKILL.md +7 -86
  896. package/template/.cursor/skills/wayfinder/references/chart-map.md +14 -0
  897. package/template/.cursor/skills/wayfinder/references/map-format.md +49 -0
  898. package/template/.cursor/skills/wayfinder/references/scope-and-frontier.md +24 -0
  899. package/template/.cursor/skills/wayfinder/references/ticket-types.md +12 -0
  900. package/template/.cursor/skills/wayfinder/references/work-map.md +15 -0
  901. package/template/.cursor/skills/writing-for-agents/SKILL-MECHANICS.md +20 -11
  902. package/template/.cursor/skills/yedit-table-usage/SKILL.md +5 -172
  903. package/template/.cursor/skills/yedit-table-usage/references/editable-table-example.md +141 -0
  904. package/template/.cursor/skills/yedit-table-usage/references/select-and-filter-examples.md +38 -0
  905. package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +4 -25
  906. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/engineering-checks.md +11 -0
  907. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/generation-workflow.md +14 -0
  908. package/template/.cursor/skills/yss-ddd-scaffold-generator/references/platform-selection.md +16 -0
  909. package/template/.cursor/skills/yss-design-system/SKILL.md +13 -3
  910. package/template/.cursor/skills/yss-design-system/assets/enterprise-craft/app.js +53 -0
  911. package/template/.cursor/skills/yss-design-system/assets/enterprise-craft/index.html +2 -0
  912. package/template/.cursor/skills/yss-design-system/assets/enterprise-craft/scenarios.js +14 -0
  913. package/template/.cursor/skills/yss-design-system/assets/enterprise-craft/styles.css +32 -0
  914. package/template/.cursor/skills/yss-design-system/references/data-quality-theme.md +2 -2
  915. package/template/.cursor/skills/yss-design-system/references/design-qa-theme.md +1 -1
  916. package/template/.cursor/skills/yss-design-system/references/design-system.md +3 -3
  917. package/template/.cursor/skills/yss-design-system/references/enterprise-craft.md +33 -0
  918. package/template/.cursor/skills/yss-design-system/references/page-composition.md +24 -0
  919. package/template/.cursor/skills/yss-design-system/references/prototype-default-theme.md +26 -0
  920. package/template/.cursor/skills/yss-design-system/references/search-date-theme.md +19 -0
  921. package/template/.cursor/skills/yss-design-system/scripts/export-craft-examples.mjs +30 -0
  922. package/template/.cursor/skills/yss-hook/SKILL.md +8 -102
  923. package/template/.cursor/skills/yss-hook/references/async-actions.md +49 -0
  924. package/template/.cursor/skills/yss-hook/references/list-pagination.md +46 -0
  925. package/template/.cursor/skills/yss-hook/references/polling.md +20 -0
  926. package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +8 -3
  927. package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
  928. package/template/.cursor/skills/yss-implementation-contract-compiler/references/scaffold-compilation.md +7 -0
  929. package/template/.cursor/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
  930. package/template/.cursor/skills/yss-openapi-draft-review/SKILL.md +2 -49
  931. package/template/.cursor/skills/yss-openapi-draft-review/references/review-output.md +45 -0
  932. package/template/.cursor/skills/yss-openapi-draft-review/references/semantic-review.md +16 -0
  933. package/template/.cursor/skills/yss-openapi-governance/SKILL.md +2 -48
  934. package/template/.cursor/skills/yss-openapi-governance/references/governance-workflow.md +38 -0
  935. package/template/.cursor/skills/yss-openapi-governance/references/locked-toolchain.md +22 -0
  936. package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +24 -20
  937. package/template/.cursor/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
  938. package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
  939. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +429 -384
  940. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +2 -2
  941. package/template/.cursor/skills/yss-product-lifecycle/references/plan-requirements.md +12 -0
  942. package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +3 -3
  943. package/template/.cursor/skills/yss-prototype-stage/SKILL.md +27 -8
  944. package/template/.cursor/skills/yss-prototype-stage/assets/comparison/comparison.css +12 -0
  945. package/template/.cursor/skills/yss-prototype-stage/assets/comparison/comparison.js +52 -0
  946. package/template/.cursor/skills/yss-prototype-stage/assets/comparison/index.html +6 -0
  947. package/template/.cursor/skills/yss-prototype-stage/assets/comparison/review-ready.js +2 -0
  948. package/template/.cursor/skills/yss-prototype-stage/assets/low-fidelity-exercise/app.js +17 -0
  949. package/template/.cursor/skills/yss-prototype-stage/assets/low-fidelity-exercise/index.html +1 -0
  950. package/template/.cursor/skills/yss-prototype-stage/assets/low-fidelity-exercise/styles.css +1 -0
  951. package/template/.cursor/skills/yss-prototype-stage/assets/native-workbench/app.js +12 -6
  952. package/template/.cursor/skills/yss-prototype-stage/assets/native-workbench/index.html +1 -1
  953. package/template/.cursor/skills/yss-prototype-stage/assets/native-workbench/scenarios.json +297 -0
  954. package/template/.cursor/skills/yss-prototype-stage/assets/native-workbench/styles.css +2 -0
  955. package/template/.cursor/skills/yss-prototype-stage/assets/offline-html/app.js +7 -5
  956. package/template/.cursor/skills/yss-prototype-stage/assets/offline-html/scenarios.json +297 -0
  957. package/template/.cursor/skills/yss-prototype-stage/assets/prototype-theme.css +92 -0
  958. package/template/.cursor/skills/yss-prototype-stage/assets/scenario-runtime.js +22 -0
  959. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/SHADCN-LICENSE.txt +21 -0
  960. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/package.json +23 -0
  961. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/pnpm-lock.yaml +1278 -0
  962. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/registry-manifest.json +936 -0
  963. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/theme.css +107 -0
  964. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/Alert.vue +21 -0
  965. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertDescription.vue +17 -0
  966. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertTitle.vue +17 -0
  967. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/index.ts +24 -0
  968. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialog.vue +15 -0
  969. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogAction.vue +18 -0
  970. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogCancel.vue +25 -0
  971. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogContent.vue +44 -0
  972. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogDescription.vue +23 -0
  973. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogFooter.vue +22 -0
  974. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogHeader.vue +17 -0
  975. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTitle.vue +21 -0
  976. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTrigger.vue +12 -0
  977. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/index.ts +9 -0
  978. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/Badge.vue +26 -0
  979. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/index.ts +26 -0
  980. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/Breadcrumb.vue +17 -0
  981. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbEllipsis.vue +23 -0
  982. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbItem.vue +17 -0
  983. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbLink.vue +21 -0
  984. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbList.vue +17 -0
  985. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbPage.vue +20 -0
  986. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbSeparator.vue +22 -0
  987. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/index.ts +7 -0
  988. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/Button.vue +31 -0
  989. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/index.ts +40 -0
  990. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/Card.vue +22 -0
  991. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardAction.vue +17 -0
  992. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardContent.vue +17 -0
  993. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardDescription.vue +17 -0
  994. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardFooter.vue +17 -0
  995. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardHeader.vue +17 -0
  996. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardTitle.vue +17 -0
  997. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/index.ts +7 -0
  998. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/Checkbox.vue +35 -0
  999. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/index.ts +1 -0
  1000. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/Combobox.vue +19 -0
  1001. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxAnchor.vue +23 -0
  1002. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxEmpty.vue +21 -0
  1003. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxGroup.vue +27 -0
  1004. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxInput.vue +42 -0
  1005. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItem.vue +24 -0
  1006. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItemIndicator.vue +23 -0
  1007. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxList.vue +33 -0
  1008. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxSeparator.vue +21 -0
  1009. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxTrigger.vue +24 -0
  1010. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxViewport.vue +23 -0
  1011. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/index.ts +13 -0
  1012. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/Dialog.vue +19 -0
  1013. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogClose.vue +15 -0
  1014. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogContent.vue +53 -0
  1015. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogDescription.vue +23 -0
  1016. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogFooter.vue +27 -0
  1017. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogHeader.vue +17 -0
  1018. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogOverlay.vue +21 -0
  1019. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogScrollContent.vue +59 -0
  1020. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTitle.vue +23 -0
  1021. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTrigger.vue +15 -0
  1022. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/index.ts +10 -0
  1023. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenu.vue +19 -0
  1024. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +39 -0
  1025. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuContent.vue +39 -0
  1026. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuGroup.vue +15 -0
  1027. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuItem.vue +31 -0
  1028. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuLabel.vue +23 -0
  1029. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioGroup.vue +21 -0
  1030. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioItem.vue +40 -0
  1031. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSeparator.vue +23 -0
  1032. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuShortcut.vue +17 -0
  1033. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSub.vue +18 -0
  1034. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubContent.vue +27 -0
  1035. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubTrigger.vue +31 -0
  1036. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuTrigger.vue +17 -0
  1037. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/index.ts +16 -0
  1038. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/Empty.vue +20 -0
  1039. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyContent.vue +20 -0
  1040. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyDescription.vue +20 -0
  1041. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyHeader.vue +20 -0
  1042. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyMedia.vue +21 -0
  1043. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyTitle.vue +17 -0
  1044. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/index.ts +26 -0
  1045. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/Field.vue +25 -0
  1046. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldContent.vue +20 -0
  1047. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldDescription.vue +22 -0
  1048. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldError.vue +53 -0
  1049. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldGroup.vue +20 -0
  1050. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLabel.vue +23 -0
  1051. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLegend.vue +24 -0
  1052. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSeparator.vue +29 -0
  1053. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSet.vue +21 -0
  1054. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldTitle.vue +20 -0
  1055. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/index.ts +39 -0
  1056. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/Input.vue +33 -0
  1057. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/index.ts +1 -0
  1058. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroup.vue +35 -0
  1059. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupAddon.vue +36 -0
  1060. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupButton.vue +29 -0
  1061. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupInput.vue +19 -0
  1062. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupText.vue +19 -0
  1063. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupTextarea.vue +19 -0
  1064. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/index.ts +51 -0
  1065. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/Label.vue +26 -0
  1066. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/index.ts +1 -0
  1067. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/Pagination.vue +26 -0
  1068. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationContent.vue +22 -0
  1069. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationEllipsis.vue +25 -0
  1070. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationFirst.vue +33 -0
  1071. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationItem.vue +34 -0
  1072. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationLast.vue +33 -0
  1073. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationNext.vue +33 -0
  1074. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationPrevious.vue +33 -0
  1075. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/index.ts +8 -0
  1076. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/Popover.vue +19 -0
  1077. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverAnchor.vue +15 -0
  1078. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverContent.vue +45 -0
  1079. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverTrigger.vue +15 -0
  1080. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/index.ts +4 -0
  1081. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendar.vue +62 -0
  1082. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCell.vue +23 -0
  1083. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCellTrigger.vue +41 -0
  1084. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGrid.vue +23 -0
  1085. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridBody.vue +15 -0
  1086. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridHead.vue +15 -0
  1087. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridRow.vue +22 -0
  1088. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeadCell.vue +23 -0
  1089. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeader.vue +23 -0
  1090. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeading.vue +30 -0
  1091. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarNextButton.vue +32 -0
  1092. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarPrevButton.vue +32 -0
  1093. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/index.ts +12 -0
  1094. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/Select.vue +19 -0
  1095. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectContent.vue +51 -0
  1096. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectGroup.vue +15 -0
  1097. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItem.vue +44 -0
  1098. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItemText.vue +15 -0
  1099. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectLabel.vue +17 -0
  1100. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollDownButton.vue +26 -0
  1101. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollUpButton.vue +26 -0
  1102. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectSeparator.vue +19 -0
  1103. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectTrigger.vue +33 -0
  1104. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectValue.vue +15 -0
  1105. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/index.ts +11 -0
  1106. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/Separator.vue +29 -0
  1107. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/index.ts +1 -0
  1108. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/Sheet.vue +19 -0
  1109. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetClose.vue +15 -0
  1110. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetContent.vue +62 -0
  1111. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetDescription.vue +21 -0
  1112. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetFooter.vue +16 -0
  1113. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetHeader.vue +15 -0
  1114. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetOverlay.vue +21 -0
  1115. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTitle.vue +21 -0
  1116. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTrigger.vue +15 -0
  1117. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/index.ts +8 -0
  1118. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/Skeleton.vue +17 -0
  1119. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/index.ts +1 -0
  1120. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/Spinner.vue +17 -0
  1121. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/index.ts +1 -0
  1122. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/Table.vue +16 -0
  1123. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableBody.vue +17 -0
  1124. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCaption.vue +17 -0
  1125. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCell.vue +22 -0
  1126. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableEmpty.vue +34 -0
  1127. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableFooter.vue +17 -0
  1128. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHead.vue +17 -0
  1129. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHeader.vue +17 -0
  1130. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableRow.vue +17 -0
  1131. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/index.ts +9 -0
  1132. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/Tabs.vue +24 -0
  1133. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsContent.vue +21 -0
  1134. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsList.vue +24 -0
  1135. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsTrigger.vue +26 -0
  1136. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/index.ts +4 -0
  1137. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/Textarea.vue +28 -0
  1138. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/index.ts +1 -0
  1139. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/Tooltip.vue +19 -0
  1140. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipContent.vue +34 -0
  1141. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipProvider.vue +14 -0
  1142. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipTrigger.vue +15 -0
  1143. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/index.ts +4 -0
  1144. package/template/.cursor/skills/yss-prototype-stage/assets/shadcn-vue-authoring/utils.ts +7 -0
  1145. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/Analysis.vue +16 -0
  1146. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/Approval.vue +14 -0
  1147. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/CombinedQuery.vue +17 -0
  1148. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/ComponentStates.vue +41 -0
  1149. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/Conflict.vue +33 -0
  1150. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/DateRange.vue +29 -0
  1151. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/Frame.vue +7 -0
  1152. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/ListDetail.vue +47 -0
  1153. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/MultiStep.vue +24 -0
  1154. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/Notice.vue +5 -0
  1155. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/OwnerValidity.vue +26 -0
  1156. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/SearchSelect.vue +32 -0
  1157. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/Workspace.vue +174 -0
  1158. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.config.json +6 -0
  1159. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.ts +3 -0
  1160. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/analysis.scenarios.json +276 -0
  1161. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.config.json +6 -0
  1162. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.ts +3 -0
  1163. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/approval.scenarios.json +207 -0
  1164. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.css +14 -0
  1165. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.js +24 -0
  1166. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.config.json +6 -0
  1167. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.ts +3 -0
  1168. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query.scenarios.json +298 -0
  1169. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.config.json +6 -0
  1170. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.ts +3 -0
  1171. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.config.json +6 -0
  1172. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.ts +3 -0
  1173. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/conflict.scenarios.json +229 -0
  1174. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.config.json +6 -0
  1175. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.ts +3 -0
  1176. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.config.json +6 -0
  1177. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.ts +3 -0
  1178. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail.scenarios.json +185 -0
  1179. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/mount.ts +4 -0
  1180. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.config.json +6 -0
  1181. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.ts +3 -0
  1182. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.config.json +6 -0
  1183. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.ts +3 -0
  1184. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step.scenarios.json +188 -0
  1185. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.config.json +6 -0
  1186. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.ts +3 -0
  1187. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity.scenarios.json +298 -0
  1188. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/patterns.css +26 -0
  1189. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/refinement.css +129 -0
  1190. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workbench.ts +1 -0
  1191. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-definition.ts +40 -0
  1192. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.config.json +6 -0
  1193. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.ts +3 -0
  1194. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-model.js +75 -0
  1195. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-page.ts +18 -0
  1196. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.config.json +6 -0
  1197. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.ts +3 -0
  1198. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.css +101 -0
  1199. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.scenarios.json +2015 -0
  1200. package/template/.cursor/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.ts +26 -0
  1201. package/template/.cursor/skills/yss-prototype-stage/references/business-patterns.md +42 -0
  1202. package/template/.cursor/skills/yss-prototype-stage/references/comparison-tool.md +48 -0
  1203. package/template/.cursor/skills/yss-prototype-stage/references/component-recipes.md +41 -0
  1204. package/template/.cursor/skills/yss-prototype-stage/references/concept-comparison.md +26 -0
  1205. package/template/.cursor/skills/yss-prototype-stage/references/enterprise-workspace.md +53 -0
  1206. package/template/.cursor/skills/yss-prototype-stage/references/low-fidelity-exercise.md +32 -0
  1207. package/template/.cursor/skills/yss-prototype-stage/references/product-design-adapter.md +11 -5
  1208. package/template/.cursor/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -6
  1209. package/template/.cursor/skills/yss-prototype-stage/references/prototype-verification.md +25 -0
  1210. package/template/.cursor/skills/yss-prototype-stage/references/resource-lifecycle.md +20 -0
  1211. package/template/.cursor/skills/yss-prototype-stage/references/search-date-patterns.md +28 -0
  1212. package/template/.cursor/skills/yss-prototype-stage/references/shadcn-integration.md +5 -0
  1213. package/template/.cursor/skills/yss-prototype-stage/references/shadcn-vue-integration.md +46 -0
  1214. package/template/.cursor/skills/yss-prototype-stage/references/usability-research.md +26 -0
  1215. package/template/.cursor/skills/yss-prototype-stage/scripts/browser-session.mjs +57 -0
  1216. package/template/.cursor/skills/yss-prototype-stage/scripts/build-shadcn-vue-prototype.mjs +137 -0
  1217. package/template/.cursor/skills/yss-prototype-stage/scripts/compose-workspace-scenarios.mjs +22 -0
  1218. package/template/.cursor/skills/yss-prototype-stage/scripts/export-business-patterns.mjs +7 -0
  1219. package/template/.cursor/skills/yss-prototype-stage/scripts/export-low-fidelity-exercise.mjs +18 -0
  1220. package/template/.cursor/skills/yss-prototype-stage/scripts/export-vue-patterns.mjs +21 -0
  1221. package/template/.cursor/skills/yss-prototype-stage/scripts/offline-html.mjs +60 -23
  1222. package/template/.cursor/skills/yss-prototype-stage/scripts/prototype-comparison.mjs +208 -0
  1223. package/template/.cursor/skills/yss-prototype-stage/scripts/prototype-contract.mjs +19 -14
  1224. package/template/.cursor/skills/yss-prototype-stage/scripts/scenario-contract.mjs +31 -0
  1225. package/template/.cursor/skills/yss-prototype-stage/scripts/verify-prototype-design.mjs +97 -0
  1226. package/template/.cursor/skills/yss-prototype-stage/tests/antd-reference.test.mjs +4 -24
  1227. package/template/.cursor/skills/yss-prototype-stage/tests/browser-harness.mjs +37 -0
  1228. package/template/.cursor/skills/yss-prototype-stage/tests/browser-visual.mjs +22 -0
  1229. package/template/.cursor/skills/yss-prototype-stage/tests/business-controls-browser.mjs +43 -0
  1230. package/template/.cursor/skills/yss-prototype-stage/tests/business-controls.test.mjs +20 -0
  1231. package/template/.cursor/skills/yss-prototype-stage/tests/compact-theme-browser.mjs +53 -0
  1232. package/template/.cursor/skills/yss-prototype-stage/tests/comparison-browser-smoke.mjs +77 -0
  1233. package/template/.cursor/skills/yss-prototype-stage/tests/comparison-fixture.mjs +16 -0
  1234. package/template/.cursor/skills/yss-prototype-stage/tests/comparison.test.mjs +46 -0
  1235. package/template/.cursor/skills/yss-prototype-stage/tests/components-browser.mjs +60 -0
  1236. package/template/.cursor/skills/yss-prototype-stage/tests/patterns-browser.mjs +84 -0
  1237. package/template/.cursor/skills/yss-prototype-stage/tests/reliability.test.mjs +34 -0
  1238. package/template/.cursor/skills/yss-prototype-stage/tests/retirement.test.mjs +8 -0
  1239. package/template/.cursor/skills/yss-prototype-stage/tests/run-scenarios.mjs +19 -2
  1240. package/template/.cursor/skills/yss-prototype-stage/tests/shadcn-vue.test.mjs +43 -0
  1241. package/template/.cursor/skills/yss-prototype-stage/tests/verification-entry.test.mjs +16 -0
  1242. package/template/.cursor/skills/yss-prototype-stage/tests/workbench-smoke.mjs +36 -21
  1243. package/template/.cursor/skills/yss-prototype-stage/tests/workspace-browser.mjs +50 -0
  1244. package/template/.cursor/skills/yss-prototype-stage/tests/workspace.test.mjs +70 -0
  1245. package/template/.cursor/skills/yss-prototype-stage/tests/zoom-browser.mjs +26 -0
  1246. package/template/.cursor/skills/yss-research/SKILL.md +4 -0
  1247. package/template/.cursor/skills/yss-stage-decision/SKILL.md +2 -0
  1248. package/template/.cursor/skills/yss-technical-design/SKILL.md +4 -0
  1249. package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +4 -61
  1250. package/template/.cursor/skills/yss-ui-business-page-generation/references/page-composition-example.md +50 -0
  1251. package/template/.cursor/skills/yss-ui-business-page-generation/references/page-layout-example.md +19 -0
  1252. package/template/.cursor/skills/ytable-usage/SKILL.md +3 -191
  1253. package/template/.cursor/skills/ytable-usage/references/selection-and-batch.md +30 -0
  1254. package/template/.cursor/skills/ytable-usage/references/table-pagination-examples.md +170 -0
  1255. package/template/.pi/skills/archify/SKILL.md +4 -52
  1256. package/template/.pi/skills/archify/references/authoring-notes.md +12 -0
  1257. package/template/.pi/skills/archify/references/authoring-workflow.md +25 -0
  1258. package/template/.pi/skills/archify/references/delivery-workflow.md +25 -0
  1259. package/template/.pi/skills/archify/references/upstream-updates.md +12 -0
  1260. package/template/.pi/skills/code-review/SKILL.md +3 -34
  1261. package/template/.pi/skills/code-review/references/legacy-convergence.md +5 -0
  1262. package/template/.pi/skills/code-review/references/review-axis-checklists.md +18 -0
  1263. package/template/.pi/skills/code-review/references/smell-baseline.md +23 -0
  1264. package/template/.pi/skills/codebase-design/SKILL.md +4 -0
  1265. package/template/.pi/skills/codebase-design/references/architecture-audit.md +69 -0
  1266. package/template/.pi/skills/diagnosing-bugs/SKILL.md +3 -91
  1267. package/template/.pi/skills/diagnosing-bugs/references/feedback-loop.md +53 -0
  1268. package/template/.pi/skills/diagnosing-bugs/references/investigation.md +49 -0
  1269. package/template/.pi/skills/frontend-commit/SKILL.md +4 -93
  1270. package/template/.pi/skills/git-commit-core/SKILL.md +18 -0
  1271. package/template/.pi/skills/git-commit-core/agents/openai.yaml +2 -0
  1272. package/template/.pi/skills/java-backend-commit/SKILL.md +4 -96
  1273. package/template/.pi/skills/llm-wiki/SKILL.md +12 -13
  1274. package/template/.pi/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
  1275. package/template/.pi/skills/llm-wiki/references/compile.md +21 -114
  1276. package/template/.pi/skills/llm-wiki/references/ingest.md +8 -33
  1277. package/template/.pi/skills/llm-wiki/references/lint.md +9 -46
  1278. package/template/.pi/skills/llm-wiki/references/query.md +9 -18
  1279. package/template/.pi/skills/llm-wiki/references/schema.md +56 -29
  1280. package/template/.pi/skills/llm-wiki/references/transactions.md +48 -0
  1281. package/template/.pi/skills/llm-wiki/references/writing.md +4 -4
  1282. package/template/.pi/skills/llm-wiki/scripts/advise.mjs +46 -58
  1283. package/template/.pi/skills/llm-wiki/scripts/advise.test.mjs +11 -16
  1284. package/template/.pi/skills/llm-wiki/scripts/core.mjs +262 -0
  1285. package/template/.pi/skills/llm-wiki/scripts/extract.mjs +35 -18
  1286. package/template/.pi/skills/llm-wiki/scripts/extract.test.mjs +5 -8
  1287. package/template/.pi/skills/llm-wiki/scripts/feedback.mjs +51 -0
  1288. package/template/.pi/skills/llm-wiki/scripts/inventory.mjs +43 -171
  1289. package/template/.pi/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
  1290. package/template/.pi/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
  1291. package/template/.pi/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
  1292. package/template/.pi/skills/llm-wiki/scripts/migrate.mjs +51 -0
  1293. package/template/.pi/skills/llm-wiki/scripts/query.mjs +149 -0
  1294. package/template/.pi/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
  1295. package/template/.pi/skills/llm-wiki/scripts/sources.mjs +166 -0
  1296. package/template/.pi/skills/llm-wiki/scripts/transaction.mjs +384 -0
  1297. package/template/.pi/skills/llm-wiki/scripts/v2.test.mjs +354 -0
  1298. package/template/.pi/skills/maintaining-skills/references/authoring.md +6 -0
  1299. package/template/.pi/skills/prototype/LOGIC.md +1 -1
  1300. package/template/.pi/skills/prototype/SKILL.md +5 -19
  1301. package/template/.pi/skills/prototype-review/SKILL.md +11 -0
  1302. package/template/.pi/skills/prototype-review/references/component-qa.md +32 -0
  1303. package/template/.pi/skills/setup-matt-pocock-skills/SKILL.md +4 -74
  1304. package/template/.pi/skills/setup-matt-pocock-skills/references/configuration-decisions.md +42 -0
  1305. package/template/.pi/skills/setup-matt-pocock-skills/references/write-configuration.md +42 -0
  1306. package/template/.pi/skills/to-spec/SKILL.md +9 -62
  1307. package/template/.pi/skills/to-tickets/SKILL.md +20 -86
  1308. package/template/.pi/skills/using-git-worktrees/SKILL.md +5 -122
  1309. package/template/.pi/skills/using-git-worktrees/references/git-fallback.md +46 -0
  1310. package/template/.pi/skills/using-git-worktrees/references/setup-and-baseline.md +45 -0
  1311. package/template/.pi/skills/using-git-worktrees/references/troubleshooting.md +47 -0
  1312. package/template/.pi/skills/wayfinder/SKILL.md +7 -86
  1313. package/template/.pi/skills/wayfinder/references/chart-map.md +14 -0
  1314. package/template/.pi/skills/wayfinder/references/map-format.md +49 -0
  1315. package/template/.pi/skills/wayfinder/references/scope-and-frontier.md +24 -0
  1316. package/template/.pi/skills/wayfinder/references/ticket-types.md +12 -0
  1317. package/template/.pi/skills/wayfinder/references/work-map.md +15 -0
  1318. package/template/.pi/skills/writing-for-agents/SKILL-MECHANICS.md +20 -11
  1319. package/template/.pi/skills/yedit-table-usage/SKILL.md +5 -172
  1320. package/template/.pi/skills/yedit-table-usage/references/editable-table-example.md +141 -0
  1321. package/template/.pi/skills/yedit-table-usage/references/select-and-filter-examples.md +38 -0
  1322. package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +4 -25
  1323. package/template/.pi/skills/yss-ddd-scaffold-generator/references/engineering-checks.md +11 -0
  1324. package/template/.pi/skills/yss-ddd-scaffold-generator/references/generation-workflow.md +14 -0
  1325. package/template/.pi/skills/yss-ddd-scaffold-generator/references/platform-selection.md +16 -0
  1326. package/template/.pi/skills/yss-design-system/SKILL.md +13 -3
  1327. package/template/.pi/skills/yss-design-system/assets/enterprise-craft/app.js +53 -0
  1328. package/template/.pi/skills/yss-design-system/assets/enterprise-craft/index.html +2 -0
  1329. package/template/.pi/skills/yss-design-system/assets/enterprise-craft/scenarios.js +14 -0
  1330. package/template/.pi/skills/yss-design-system/assets/enterprise-craft/styles.css +32 -0
  1331. package/template/.pi/skills/yss-design-system/references/data-quality-theme.md +2 -2
  1332. package/template/.pi/skills/yss-design-system/references/design-qa-theme.md +1 -1
  1333. package/template/.pi/skills/yss-design-system/references/design-system.md +3 -3
  1334. package/template/.pi/skills/yss-design-system/references/enterprise-craft.md +33 -0
  1335. package/template/.pi/skills/yss-design-system/references/page-composition.md +24 -0
  1336. package/template/.pi/skills/yss-design-system/references/prototype-default-theme.md +26 -0
  1337. package/template/.pi/skills/yss-design-system/references/search-date-theme.md +19 -0
  1338. package/template/.pi/skills/yss-design-system/scripts/export-craft-examples.mjs +30 -0
  1339. package/template/.pi/skills/yss-hook/SKILL.md +8 -102
  1340. package/template/.pi/skills/yss-hook/references/async-actions.md +49 -0
  1341. package/template/.pi/skills/yss-hook/references/list-pagination.md +46 -0
  1342. package/template/.pi/skills/yss-hook/references/polling.md +20 -0
  1343. package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +8 -3
  1344. package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
  1345. package/template/.pi/skills/yss-implementation-contract-compiler/references/scaffold-compilation.md +7 -0
  1346. package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
  1347. package/template/.pi/skills/yss-openapi-draft-review/SKILL.md +2 -49
  1348. package/template/.pi/skills/yss-openapi-draft-review/references/review-output.md +45 -0
  1349. package/template/.pi/skills/yss-openapi-draft-review/references/semantic-review.md +16 -0
  1350. package/template/.pi/skills/yss-openapi-governance/SKILL.md +2 -48
  1351. package/template/.pi/skills/yss-openapi-governance/references/governance-workflow.md +38 -0
  1352. package/template/.pi/skills/yss-openapi-governance/references/locked-toolchain.md +22 -0
  1353. package/template/.pi/skills/yss-product-lifecycle/SKILL.md +24 -20
  1354. package/template/.pi/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
  1355. package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
  1356. package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +429 -384
  1357. package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +2 -2
  1358. package/template/.pi/skills/yss-product-lifecycle/references/plan-requirements.md +12 -0
  1359. package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +3 -3
  1360. package/template/.pi/skills/yss-prototype-stage/SKILL.md +27 -8
  1361. package/template/.pi/skills/yss-prototype-stage/assets/comparison/comparison.css +12 -0
  1362. package/template/.pi/skills/yss-prototype-stage/assets/comparison/comparison.js +52 -0
  1363. package/template/.pi/skills/yss-prototype-stage/assets/comparison/index.html +6 -0
  1364. package/template/.pi/skills/yss-prototype-stage/assets/comparison/review-ready.js +2 -0
  1365. package/template/.pi/skills/yss-prototype-stage/assets/low-fidelity-exercise/app.js +17 -0
  1366. package/template/.pi/skills/yss-prototype-stage/assets/low-fidelity-exercise/index.html +1 -0
  1367. package/template/.pi/skills/yss-prototype-stage/assets/low-fidelity-exercise/styles.css +1 -0
  1368. package/template/.pi/skills/yss-prototype-stage/assets/native-workbench/app.js +12 -6
  1369. package/template/.pi/skills/yss-prototype-stage/assets/native-workbench/index.html +1 -1
  1370. package/template/.pi/skills/yss-prototype-stage/assets/native-workbench/scenarios.json +297 -0
  1371. package/template/.pi/skills/yss-prototype-stage/assets/native-workbench/styles.css +2 -0
  1372. package/template/.pi/skills/yss-prototype-stage/assets/offline-html/app.js +7 -5
  1373. package/template/.pi/skills/yss-prototype-stage/assets/offline-html/scenarios.json +297 -0
  1374. package/template/.pi/skills/yss-prototype-stage/assets/prototype-theme.css +92 -0
  1375. package/template/.pi/skills/yss-prototype-stage/assets/scenario-runtime.js +22 -0
  1376. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/SHADCN-LICENSE.txt +21 -0
  1377. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/package.json +23 -0
  1378. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/pnpm-lock.yaml +1278 -0
  1379. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/registry-manifest.json +936 -0
  1380. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/theme.css +107 -0
  1381. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/Alert.vue +21 -0
  1382. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertDescription.vue +17 -0
  1383. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/AlertTitle.vue +17 -0
  1384. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert/index.ts +24 -0
  1385. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialog.vue +15 -0
  1386. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogAction.vue +18 -0
  1387. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogCancel.vue +25 -0
  1388. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogContent.vue +44 -0
  1389. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogDescription.vue +23 -0
  1390. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogFooter.vue +22 -0
  1391. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogHeader.vue +17 -0
  1392. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTitle.vue +21 -0
  1393. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/AlertDialogTrigger.vue +12 -0
  1394. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/alert-dialog/index.ts +9 -0
  1395. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/Badge.vue +26 -0
  1396. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/badge/index.ts +26 -0
  1397. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/Breadcrumb.vue +17 -0
  1398. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbEllipsis.vue +23 -0
  1399. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbItem.vue +17 -0
  1400. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbLink.vue +21 -0
  1401. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbList.vue +17 -0
  1402. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbPage.vue +20 -0
  1403. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/BreadcrumbSeparator.vue +22 -0
  1404. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/breadcrumb/index.ts +7 -0
  1405. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/Button.vue +31 -0
  1406. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/button/index.ts +40 -0
  1407. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/Card.vue +22 -0
  1408. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardAction.vue +17 -0
  1409. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardContent.vue +17 -0
  1410. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardDescription.vue +17 -0
  1411. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardFooter.vue +17 -0
  1412. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardHeader.vue +17 -0
  1413. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/CardTitle.vue +17 -0
  1414. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/card/index.ts +7 -0
  1415. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/Checkbox.vue +35 -0
  1416. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/checkbox/index.ts +1 -0
  1417. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/Combobox.vue +19 -0
  1418. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxAnchor.vue +23 -0
  1419. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxEmpty.vue +21 -0
  1420. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxGroup.vue +27 -0
  1421. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxInput.vue +42 -0
  1422. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItem.vue +24 -0
  1423. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxItemIndicator.vue +23 -0
  1424. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxList.vue +33 -0
  1425. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxSeparator.vue +21 -0
  1426. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxTrigger.vue +24 -0
  1427. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/ComboboxViewport.vue +23 -0
  1428. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/combobox/index.ts +13 -0
  1429. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/Dialog.vue +19 -0
  1430. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogClose.vue +15 -0
  1431. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogContent.vue +53 -0
  1432. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogDescription.vue +23 -0
  1433. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogFooter.vue +27 -0
  1434. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogHeader.vue +17 -0
  1435. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogOverlay.vue +21 -0
  1436. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogScrollContent.vue +59 -0
  1437. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTitle.vue +23 -0
  1438. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/DialogTrigger.vue +15 -0
  1439. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dialog/index.ts +10 -0
  1440. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenu.vue +19 -0
  1441. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +39 -0
  1442. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuContent.vue +39 -0
  1443. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuGroup.vue +15 -0
  1444. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuItem.vue +31 -0
  1445. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuLabel.vue +23 -0
  1446. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioGroup.vue +21 -0
  1447. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuRadioItem.vue +40 -0
  1448. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSeparator.vue +23 -0
  1449. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuShortcut.vue +17 -0
  1450. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSub.vue +18 -0
  1451. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubContent.vue +27 -0
  1452. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuSubTrigger.vue +31 -0
  1453. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/DropdownMenuTrigger.vue +17 -0
  1454. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/dropdown-menu/index.ts +16 -0
  1455. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/Empty.vue +20 -0
  1456. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyContent.vue +20 -0
  1457. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyDescription.vue +20 -0
  1458. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyHeader.vue +20 -0
  1459. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyMedia.vue +21 -0
  1460. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/EmptyTitle.vue +17 -0
  1461. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/empty/index.ts +26 -0
  1462. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/Field.vue +25 -0
  1463. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldContent.vue +20 -0
  1464. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldDescription.vue +22 -0
  1465. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldError.vue +53 -0
  1466. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldGroup.vue +20 -0
  1467. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLabel.vue +23 -0
  1468. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldLegend.vue +24 -0
  1469. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSeparator.vue +29 -0
  1470. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldSet.vue +21 -0
  1471. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/FieldTitle.vue +20 -0
  1472. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/field/index.ts +39 -0
  1473. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/Input.vue +33 -0
  1474. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input/index.ts +1 -0
  1475. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroup.vue +35 -0
  1476. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupAddon.vue +36 -0
  1477. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupButton.vue +29 -0
  1478. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupInput.vue +19 -0
  1479. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupText.vue +19 -0
  1480. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/InputGroupTextarea.vue +19 -0
  1481. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/input-group/index.ts +51 -0
  1482. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/Label.vue +26 -0
  1483. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/label/index.ts +1 -0
  1484. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/Pagination.vue +26 -0
  1485. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationContent.vue +22 -0
  1486. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationEllipsis.vue +25 -0
  1487. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationFirst.vue +33 -0
  1488. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationItem.vue +34 -0
  1489. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationLast.vue +33 -0
  1490. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationNext.vue +33 -0
  1491. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/PaginationPrevious.vue +33 -0
  1492. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/pagination/index.ts +8 -0
  1493. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/Popover.vue +19 -0
  1494. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverAnchor.vue +15 -0
  1495. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverContent.vue +45 -0
  1496. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/PopoverTrigger.vue +15 -0
  1497. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/popover/index.ts +4 -0
  1498. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendar.vue +62 -0
  1499. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCell.vue +23 -0
  1500. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarCellTrigger.vue +41 -0
  1501. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGrid.vue +23 -0
  1502. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridBody.vue +15 -0
  1503. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridHead.vue +15 -0
  1504. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarGridRow.vue +22 -0
  1505. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeadCell.vue +23 -0
  1506. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeader.vue +23 -0
  1507. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarHeading.vue +30 -0
  1508. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarNextButton.vue +32 -0
  1509. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/RangeCalendarPrevButton.vue +32 -0
  1510. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/range-calendar/index.ts +12 -0
  1511. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/Select.vue +19 -0
  1512. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectContent.vue +51 -0
  1513. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectGroup.vue +15 -0
  1514. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItem.vue +44 -0
  1515. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectItemText.vue +15 -0
  1516. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectLabel.vue +17 -0
  1517. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollDownButton.vue +26 -0
  1518. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectScrollUpButton.vue +26 -0
  1519. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectSeparator.vue +19 -0
  1520. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectTrigger.vue +33 -0
  1521. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/SelectValue.vue +15 -0
  1522. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/select/index.ts +11 -0
  1523. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/Separator.vue +29 -0
  1524. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/separator/index.ts +1 -0
  1525. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/Sheet.vue +19 -0
  1526. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetClose.vue +15 -0
  1527. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetContent.vue +62 -0
  1528. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetDescription.vue +21 -0
  1529. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetFooter.vue +16 -0
  1530. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetHeader.vue +15 -0
  1531. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetOverlay.vue +21 -0
  1532. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTitle.vue +21 -0
  1533. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/SheetTrigger.vue +15 -0
  1534. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/sheet/index.ts +8 -0
  1535. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/Skeleton.vue +17 -0
  1536. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/skeleton/index.ts +1 -0
  1537. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/Spinner.vue +17 -0
  1538. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/spinner/index.ts +1 -0
  1539. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/Table.vue +16 -0
  1540. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableBody.vue +17 -0
  1541. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCaption.vue +17 -0
  1542. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableCell.vue +22 -0
  1543. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableEmpty.vue +34 -0
  1544. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableFooter.vue +17 -0
  1545. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHead.vue +17 -0
  1546. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableHeader.vue +17 -0
  1547. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/TableRow.vue +17 -0
  1548. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/table/index.ts +9 -0
  1549. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/Tabs.vue +24 -0
  1550. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsContent.vue +21 -0
  1551. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsList.vue +24 -0
  1552. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/TabsTrigger.vue +26 -0
  1553. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tabs/index.ts +4 -0
  1554. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/Textarea.vue +28 -0
  1555. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/textarea/index.ts +1 -0
  1556. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/Tooltip.vue +19 -0
  1557. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipContent.vue +34 -0
  1558. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipProvider.vue +14 -0
  1559. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/TooltipTrigger.vue +15 -0
  1560. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/ui/tooltip/index.ts +4 -0
  1561. package/template/.pi/skills/yss-prototype-stage/assets/shadcn-vue-authoring/utils.ts +7 -0
  1562. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/Analysis.vue +16 -0
  1563. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/Approval.vue +14 -0
  1564. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/CombinedQuery.vue +17 -0
  1565. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/ComponentStates.vue +41 -0
  1566. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/Conflict.vue +33 -0
  1567. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/DateRange.vue +29 -0
  1568. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/Frame.vue +7 -0
  1569. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/ListDetail.vue +47 -0
  1570. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/MultiStep.vue +24 -0
  1571. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/Notice.vue +5 -0
  1572. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/OwnerValidity.vue +26 -0
  1573. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/SearchSelect.vue +32 -0
  1574. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/Workspace.vue +174 -0
  1575. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.config.json +6 -0
  1576. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/analysis-standard.ts +3 -0
  1577. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/analysis.scenarios.json +276 -0
  1578. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.config.json +6 -0
  1579. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/approval-standard.ts +3 -0
  1580. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/approval.scenarios.json +207 -0
  1581. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.css +14 -0
  1582. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/business-controls.js +24 -0
  1583. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.config.json +6 -0
  1584. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query-standard.ts +3 -0
  1585. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/combined-query.scenarios.json +298 -0
  1586. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.config.json +6 -0
  1587. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/component-states-standard.ts +3 -0
  1588. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.config.json +6 -0
  1589. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/conflict-standard.ts +3 -0
  1590. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/conflict.scenarios.json +229 -0
  1591. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.config.json +6 -0
  1592. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-glass.ts +3 -0
  1593. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.config.json +6 -0
  1594. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail-standard.ts +3 -0
  1595. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/list-detail.scenarios.json +185 -0
  1596. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/mount.ts +4 -0
  1597. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.config.json +6 -0
  1598. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-glass.ts +3 -0
  1599. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.config.json +6 -0
  1600. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step-standard.ts +3 -0
  1601. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/multi-step.scenarios.json +188 -0
  1602. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.config.json +6 -0
  1603. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity-standard.ts +3 -0
  1604. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/owner-validity.scenarios.json +298 -0
  1605. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/patterns.css +26 -0
  1606. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/refinement.css +129 -0
  1607. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workbench.ts +1 -0
  1608. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-definition.ts +40 -0
  1609. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.config.json +6 -0
  1610. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-glass.ts +3 -0
  1611. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-model.js +75 -0
  1612. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-page.ts +18 -0
  1613. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.config.json +6 -0
  1614. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace-standard.ts +3 -0
  1615. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.css +101 -0
  1616. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.scenarios.json +2015 -0
  1617. package/template/.pi/skills/yss-prototype-stage/assets/vue-business-patterns/workspace.ts +26 -0
  1618. package/template/.pi/skills/yss-prototype-stage/references/business-patterns.md +42 -0
  1619. package/template/.pi/skills/yss-prototype-stage/references/comparison-tool.md +48 -0
  1620. package/template/.pi/skills/yss-prototype-stage/references/component-recipes.md +41 -0
  1621. package/template/.pi/skills/yss-prototype-stage/references/concept-comparison.md +26 -0
  1622. package/template/.pi/skills/yss-prototype-stage/references/enterprise-workspace.md +53 -0
  1623. package/template/.pi/skills/yss-prototype-stage/references/low-fidelity-exercise.md +32 -0
  1624. package/template/.pi/skills/yss-prototype-stage/references/product-design-adapter.md +11 -5
  1625. package/template/.pi/skills/yss-prototype-stage/references/prototype-profile-routing.md +10 -6
  1626. package/template/.pi/skills/yss-prototype-stage/references/prototype-verification.md +25 -0
  1627. package/template/.pi/skills/yss-prototype-stage/references/resource-lifecycle.md +20 -0
  1628. package/template/.pi/skills/yss-prototype-stage/references/search-date-patterns.md +28 -0
  1629. package/template/.pi/skills/yss-prototype-stage/references/shadcn-integration.md +5 -0
  1630. package/template/.pi/skills/yss-prototype-stage/references/shadcn-vue-integration.md +46 -0
  1631. package/template/.pi/skills/yss-prototype-stage/references/usability-research.md +26 -0
  1632. package/template/.pi/skills/yss-prototype-stage/scripts/browser-session.mjs +57 -0
  1633. package/template/.pi/skills/yss-prototype-stage/scripts/build-shadcn-vue-prototype.mjs +137 -0
  1634. package/template/.pi/skills/yss-prototype-stage/scripts/compose-workspace-scenarios.mjs +22 -0
  1635. package/template/.pi/skills/yss-prototype-stage/scripts/export-business-patterns.mjs +7 -0
  1636. package/template/.pi/skills/yss-prototype-stage/scripts/export-low-fidelity-exercise.mjs +18 -0
  1637. package/template/.pi/skills/yss-prototype-stage/scripts/export-vue-patterns.mjs +21 -0
  1638. package/template/.pi/skills/yss-prototype-stage/scripts/offline-html.mjs +60 -23
  1639. package/template/.pi/skills/yss-prototype-stage/scripts/prototype-comparison.mjs +208 -0
  1640. package/template/.pi/skills/yss-prototype-stage/scripts/prototype-contract.mjs +19 -14
  1641. package/template/.pi/skills/yss-prototype-stage/scripts/scenario-contract.mjs +31 -0
  1642. package/template/.pi/skills/yss-prototype-stage/scripts/verify-prototype-design.mjs +97 -0
  1643. package/template/.pi/skills/yss-prototype-stage/tests/antd-reference.test.mjs +4 -24
  1644. package/template/.pi/skills/yss-prototype-stage/tests/browser-harness.mjs +37 -0
  1645. package/template/.pi/skills/yss-prototype-stage/tests/browser-visual.mjs +22 -0
  1646. package/template/.pi/skills/yss-prototype-stage/tests/business-controls-browser.mjs +43 -0
  1647. package/template/.pi/skills/yss-prototype-stage/tests/business-controls.test.mjs +20 -0
  1648. package/template/.pi/skills/yss-prototype-stage/tests/compact-theme-browser.mjs +53 -0
  1649. package/template/.pi/skills/yss-prototype-stage/tests/comparison-browser-smoke.mjs +77 -0
  1650. package/template/.pi/skills/yss-prototype-stage/tests/comparison-fixture.mjs +16 -0
  1651. package/template/.pi/skills/yss-prototype-stage/tests/comparison.test.mjs +46 -0
  1652. package/template/.pi/skills/yss-prototype-stage/tests/components-browser.mjs +60 -0
  1653. package/template/.pi/skills/yss-prototype-stage/tests/patterns-browser.mjs +84 -0
  1654. package/template/.pi/skills/yss-prototype-stage/tests/reliability.test.mjs +34 -0
  1655. package/template/.pi/skills/yss-prototype-stage/tests/retirement.test.mjs +8 -0
  1656. package/template/.pi/skills/yss-prototype-stage/tests/run-scenarios.mjs +19 -2
  1657. package/template/.pi/skills/yss-prototype-stage/tests/shadcn-vue.test.mjs +43 -0
  1658. package/template/.pi/skills/yss-prototype-stage/tests/verification-entry.test.mjs +16 -0
  1659. package/template/.pi/skills/yss-prototype-stage/tests/workbench-smoke.mjs +36 -21
  1660. package/template/.pi/skills/yss-prototype-stage/tests/workspace-browser.mjs +50 -0
  1661. package/template/.pi/skills/yss-prototype-stage/tests/workspace.test.mjs +70 -0
  1662. package/template/.pi/skills/yss-prototype-stage/tests/zoom-browser.mjs +26 -0
  1663. package/template/.pi/skills/yss-research/SKILL.md +4 -0
  1664. package/template/.pi/skills/yss-stage-decision/SKILL.md +2 -0
  1665. package/template/.pi/skills/yss-technical-design/SKILL.md +4 -0
  1666. package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +4 -61
  1667. package/template/.pi/skills/yss-ui-business-page-generation/references/page-composition-example.md +50 -0
  1668. package/template/.pi/skills/yss-ui-business-page-generation/references/page-layout-example.md +19 -0
  1669. package/template/.pi/skills/ytable-usage/SKILL.md +3 -191
  1670. package/template/.pi/skills/ytable-usage/references/selection-and-batch.md +30 -0
  1671. package/template/.pi/skills/ytable-usage/references/table-pagination-examples.md +170 -0
  1672. package/template/.template-spec/agents/README.md +1 -1
  1673. package/template/.template-spec/agents/digital-human-roles.yaml +3 -3
  1674. package/template/.template-spec/agents/issue-tracker.md +10 -1
  1675. package/template/.template-spec/agents/skill-migrations.md +15 -0
  1676. package/template/.template-spec/agents/yss-skill-registry.yaml +51 -29
  1677. package/template/.template-spec/architecture/README.md +3 -34
  1678. package/template/.template-spec/design/README.md +7 -2
  1679. package/template/.template-spec/design/design.md +30 -35
  1680. package/template/.template-spec/design/templates/examples/model-publishing-interaction.example.md +2 -2
  1681. package/template/.template-spec/design/templates/interaction-spec-template.md +24 -0
  1682. package/template/.template-spec/design/templates/prototype-evidence-template.yaml +18 -5
  1683. package/template/.template-spec/design/templates/prototype-review-checklist.md +8 -0
  1684. package/template/.template-spec/design/tokens/.design-md-projection.json +2 -2
  1685. package/template/.template-spec/design/tokens/variables.css +162 -0
  1686. package/template/.template-spec/plan/templates/competitive-analysis-template.md +2 -2
  1687. package/template/.template-spec/plan/templates/plan-template.md +25 -1
  1688. package/template/.template-spec/process/business-tickets.md +48 -0
  1689. package/template/.template-spec/process/checkpoint-boundary.yaml +73 -0
  1690. package/template/.template-spec/process/contract-reading.md +59 -0
  1691. package/template/.template-spec/process/document-writing.md +2 -0
  1692. package/template/.template-spec/process/feature-assets.md +38 -0
  1693. package/template/.template-spec/process/lifecycle-artifact-map.md +1 -0
  1694. package/template/.template-spec/process/lifecycle-registry-baseline.json +10 -4
  1695. package/template/.template-spec/process/lifecycle-registry.yaml +21 -5
  1696. package/template/.template-spec/process/plan-spec-quality.md +69 -0
  1697. package/template/.template-spec/process/project-ci.md +21 -0
  1698. package/template/.template-spec/process/reading-policy.yaml +4 -0
  1699. package/template/.template-spec/process/research-completion.md +23 -0
  1700. package/template/.template-spec/process/schemas/business-tickets-v1.schema.json +449 -0
  1701. package/template/.template-spec/process/schemas/digital-human-task-package.schema.json +202 -12
  1702. package/template/.template-spec/process/schemas/domain-strategy-reading.schema.json +216 -0
  1703. package/template/.template-spec/process/schemas/frontend-implementation-evidence.schema.json +7 -15
  1704. package/template/.template-spec/process/schemas/lifecycle-checkpoint.schema.json +203 -11
  1705. package/template/.template-spec/process/schemas/reading-manifest.schema.json +14 -0
  1706. package/template/.template-spec/process/schemas/reading-policy.schema.json +10 -0
  1707. package/template/.template-spec/process/schemas/stage-decision-package-reading.schema.json +148 -0
  1708. package/template/.template-spec/process/stage-tracking.md +8 -0
  1709. package/template/.template-spec/process/strategic-handoff-package.md +3 -1
  1710. package/template/.template-spec/process/subagent-collaboration.md +8 -0
  1711. package/template/.template-spec/process/templates/frontend-implementation-verification-template.yaml +15 -1
  1712. package/template/.template-spec/process/templates/stage-checkpoint-template.md +6 -1
  1713. package/template/.template-spec/templates/business-ticket-review-template.yaml +11 -0
  1714. package/template/.template-spec/templates/business-ticket-set-template.yaml +16 -0
  1715. package/template/.template-spec/templates/business-ticket-template.md +38 -0
  1716. package/template/.template-spec/templates/examples/lifecycle-writing-examples.md +16 -0
  1717. package/template/.template-spec/templates/examples/plan-spec/complex-defective.md +38 -0
  1718. package/template/.template-spec/templates/examples/plan-spec/complex-source.md +12 -0
  1719. package/template/.template-spec/templates/examples/plan-spec/complex-valid.md +38 -0
  1720. package/template/.template-spec/templates/examples/plan-spec/expectations.json +46 -0
  1721. package/template/.template-spec/templates/examples/plan-spec/high-risk-before.md +32 -0
  1722. package/template/.template-spec/templates/examples/plan-spec/high-risk-defective.md +39 -0
  1723. package/template/.template-spec/templates/examples/plan-spec/high-risk-source.md +11 -0
  1724. package/template/.template-spec/templates/examples/plan-spec/high-risk-valid.md +39 -0
  1725. package/template/.template-spec/templates/examples/plan-spec/ordinary-defective.md +36 -0
  1726. package/template/.template-spec/templates/examples/plan-spec/ordinary-plan.md +27 -0
  1727. package/template/.template-spec/templates/examples/plan-spec/ordinary-source.md +14 -0
  1728. package/template/.template-spec/templates/examples/plan-spec/ordinary-valid.md +36 -0
  1729. package/template/.template-spec/templates/local-parent-ticket-template.md +23 -15
  1730. package/template/.template-spec/templates/spec-delta-template.md +7 -5
  1731. package/template/.template-spec/templates/spec-template.md +31 -15
  1732. package/template/.template-spec/templates/vertical-slice-ticket-template.md +4 -0
  1733. package/template/AGENTS.md +2 -2
  1734. package/template/CONTEXT.md +6 -1
  1735. package/template/DESIGN.md +23 -4
  1736. package/template/README.md +12 -24
  1737. package/template/scripts/contract +17 -5
  1738. package/template/scripts/feature-assets +23 -0
  1739. package/template/scripts/inspect-plan-spec +32 -0
  1740. package/template/scripts/inspect-skill-discovery +24 -0
  1741. package/template/scripts/lib/business-ticket-lifecycle.mjs +34 -0
  1742. package/template/scripts/lib/business-tickets.mjs +273 -0
  1743. package/template/scripts/lib/checkpoint-boundary.mjs +40 -0
  1744. package/template/scripts/lib/contract-views.mjs +77 -9
  1745. package/template/scripts/lib/execution-evidence.mjs +51 -0
  1746. package/template/scripts/lib/feature-assets.mjs +274 -0
  1747. package/template/scripts/lib/governance-io.mjs +40 -0
  1748. package/template/scripts/lib/harness-execution-scope.mjs +1 -1
  1749. package/template/scripts/lib/implementation-contract-compiler.mjs +2 -0
  1750. package/template/scripts/lib/lifecycle-context-query.mjs +15 -3
  1751. package/template/scripts/lib/lifecycle-status.mjs +49 -7
  1752. package/template/scripts/lib/lifecycle-transition.mjs +31 -4
  1753. package/template/scripts/lib/maintenance-research.mjs +63 -0
  1754. package/template/scripts/lib/plan-spec-markdown.mjs +97 -0
  1755. package/template/scripts/lib/plan-spec-quality.mjs +289 -0
  1756. package/template/scripts/lib/project-ci-install.mjs +98 -0
  1757. package/template/scripts/lib/project-governance.mjs +189 -0
  1758. package/template/scripts/lib/read-only-intake.mjs +132 -0
  1759. package/template/scripts/lib/reading-view-adapters.mjs +62 -0
  1760. package/template/scripts/lib/reading-view-bundle.mjs +201 -0
  1761. package/template/scripts/lib/reading-view-diff.mjs +29 -0
  1762. package/template/scripts/lib/reading-view-markdown.mjs +39 -0
  1763. package/template/scripts/lib/reading-view-model.mjs +13 -0
  1764. package/template/scripts/lib/reading-view-policy.mjs +16 -0
  1765. package/template/scripts/lib/skill-discovery.mjs +150 -0
  1766. package/template/scripts/lib/skill-registry.mjs +43 -2
  1767. package/template/scripts/lib/skill-supply-chain.mjs +5 -1
  1768. package/template/scripts/lib/slice-contract-preparation.mjs +8 -2
  1769. package/template/scripts/lib/slice-contract.mjs +15 -1
  1770. package/template/scripts/lib/slice-task-package.mjs +1 -1
  1771. package/template/scripts/lib/stage-tracking-migration.mjs +9 -1
  1772. package/template/scripts/lib/stage-tracking.mjs +10 -5
  1773. package/template/scripts/lib/strategic-handoff-consumption.mjs +14 -2
  1774. package/template/scripts/lib/strategic-handoff-io.mjs +6 -2
  1775. package/template/scripts/lib/strategic-handoff.mjs +26 -5
  1776. package/template/scripts/lib/task-package.mjs +22 -4
  1777. package/template/scripts/lib/testing/user-decision-fixture.mjs +33 -0
  1778. package/template/scripts/lib/user-decision-reuse.mjs +1 -1
  1779. package/template/scripts/lifecycle-status +13 -3
  1780. package/template/scripts/prepare-read-only-intake +16 -0
  1781. package/template/scripts/project-ci +20 -0
  1782. package/template/scripts/project-ci-transition +13 -0
  1783. package/template/scripts/query-lifecycle-context +4 -0
  1784. package/template/scripts/run-read-only-intake +14 -0
  1785. package/template/scripts/stage-tracking +1 -0
  1786. package/template/scripts/vendor/NOTICES.md +237 -0
  1787. package/template/scripts/vendor/manifest.json +1216 -65
  1788. package/template/scripts/vendor/markdown.mjs +11783 -0
  1789. package/template/scripts/verify-approval-record +4 -1
  1790. package/template/scripts/verify-business-tickets +11 -0
  1791. package/template/scripts/verify-context-contract +4 -1
  1792. package/template/scripts/verify-digital-human-task-package +5 -2
  1793. package/template/scripts/verify-frontend-implementation-evidence +24 -1
  1794. package/template/scripts/verify-lifecycle-checkpoint +17 -2
  1795. package/template/scripts/verify-maintenance-research +13 -0
  1796. package/template/scripts/verify-prototype-design +3 -0
  1797. package/template/skills-lock.json +44 -101
  1798. package/template.manifest.json +119 -29
  1799. package/template.snapshot.json +5 -6
  1800. package/template/.agents/skills/grill-with-docs/SKILL.md +0 -20
  1801. package/template/.agents/skills/grill-with-docs/agents/openai.yaml +0 -5
  1802. package/template/.agents/skills/improve-codebase-architecture/SKILL.md +0 -75
  1803. package/template/.agents/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
  1804. package/template/.agents/skills/prototype/UI.md +0 -112
  1805. package/template/.agents/skills/setup-matt-pocock-skills/domain.md +0 -37
  1806. package/template/.agents/skills/to-questionnaire/SKILL.md +0 -55
  1807. package/template/.agents/skills/to-questionnaire/agents/openai.yaml +0 -5
  1808. package/template/.agents/skills/wait-what/SKILL.md +0 -7
  1809. package/template/.agents/skills/wait-what/agents/openai.yaml +0 -5
  1810. package/template/.agents/skills/yss-prototype-stage/assets/antd-authoring/package.json +0 -16
  1811. package/template/.agents/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +0 -1678
  1812. package/template/.agents/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +0 -23
  1813. package/template/.agents/skills/yss-prototype-stage/references/antd-component-catalog.json +0 -736
  1814. package/template/.agents/skills/yss-prototype-stage/references/antd-integration.md +0 -61
  1815. package/template/.agents/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +0 -71
  1816. package/template/.agents/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +0 -26
  1817. package/template/.codex/skills/data-analytics/.app.json +0 -84
  1818. package/template/.codex/skills/data-analytics/.codex-plugin/plugin.json +0 -66
  1819. package/template/.codex/skills/data-analytics/.mcp.json +0 -30
  1820. package/template/.codex/skills/data-analytics/AGENTS.md +0 -20
  1821. package/template/.codex/skills/data-analytics/DEPENDENCIES.MD +0 -27
  1822. package/template/.codex/skills/data-analytics/README.md +0 -60
  1823. package/template/.codex/skills/data-analytics/__yss_dotfile__.gitignore +0 -2
  1824. package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html +0 -16
  1825. package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part001 +0 -1
  1826. package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part002 +0 -1
  1827. package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part003 +0 -1
  1828. package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part004 +0 -1
  1829. package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part005 +0 -1
  1830. package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part006 +0 -1
  1831. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html +0 -16
  1832. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part001 +0 -1
  1833. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part002 +0 -1
  1834. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part003 +0 -1
  1835. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part004 +0 -1
  1836. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part005 +0 -1
  1837. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part006 +0 -1
  1838. package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part007 +0 -1
  1839. package/template/.codex/skills/data-analytics/assets/datascience-small.svg +0 -5
  1840. package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html +0 -16
  1841. package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part001 +0 -1
  1842. package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part002 +0 -1
  1843. package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part003 +0 -1
  1844. package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part004 +0 -1
  1845. package/template/.codex/skills/data-analytics/assets/datascience.png +0 -0
  1846. package/template/.codex/skills/data-analytics/assets/datascience.svg +0 -10
  1847. package/template/.codex/skills/data-analytics/mcp/server.cjs +0 -2964
  1848. package/template/.codex/skills/data-analytics/package-lock.json +0 -3048
  1849. package/template/.codex/skills/data-analytics/package.json +0 -43
  1850. package/template/.codex/skills/data-analytics/scripts/normalize-widget-assets.mjs +0 -75
  1851. package/template/.codex/skills/data-analytics/skills/analyze-data-quality/SKILL.md +0 -137
  1852. package/template/.codex/skills/data-analytics/skills/analyze-data-quality/agents/openai.yaml +0 -6
  1853. package/template/.codex/skills/data-analytics/skills/analyze-data-quality/references/quality-checks.md +0 -29
  1854. package/template/.codex/skills/data-analytics/skills/build-dashboard/SKILL.md +0 -148
  1855. package/template/.codex/skills/data-analytics/skills/build-dashboard/agents/openai.yaml +0 -6
  1856. package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/bi-platform-dashboard.md +0 -18
  1857. package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/html-dashboard.md +0 -24
  1858. package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/mcp-artifact-dashboard.md +0 -71
  1859. package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/streamlit-dashboard.md +0 -85
  1860. package/template/.codex/skills/data-analytics/skills/build-report/SKILL.md +0 -207
  1861. package/template/.codex/skills/data-analytics/skills/build-report/agents/openai.yaml +0 -6
  1862. package/template/.codex/skills/data-analytics/skills/build-report/assets/executive-report-shell.html +0 -70
  1863. package/template/.codex/skills/data-analytics/skills/build-report/assets/technical-report-shell.html +0 -66
  1864. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/SKILL.md +0 -108
  1865. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/agents/openai.yaml +0 -6
  1866. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/__init__.py +0 -1
  1867. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/cli.py +0 -52
  1868. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/constants.py +0 -61
  1869. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/docx_writer.py +0 -362
  1870. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/html_parser.py +0 -829
  1871. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/model.py +0 -30
  1872. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/plan.py +0 -127
  1873. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/quality.py +0 -374
  1874. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/rendering.py +0 -613
  1875. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/table_utils.py +0 -54
  1876. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/utils.py +0 -16
  1877. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc_plan.py +0 -9
  1878. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/tests/test_delivery_plan.py +0 -45
  1879. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-slides/SKILL.md +0 -77
  1880. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-slides/agents/openai.yaml +0 -6
  1881. package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-slides/scripts/report_to_google_slides.py +0 -2379
  1882. package/template/.codex/skills/data-analytics/skills/build-report/report-to-pdf/SKILL.md +0 -88
  1883. package/template/.codex/skills/data-analytics/skills/build-report/report-to-pdf/agents/openai.yaml +0 -6
  1884. package/template/.codex/skills/data-analytics/skills/build-report/specifications/executive-report.md +0 -97
  1885. package/template/.codex/skills/data-analytics/skills/build-report/specifications/mcp-app-report.md +0 -59
  1886. package/template/.codex/skills/data-analytics/skills/build-report/specifications/technical-report.md +0 -75
  1887. package/template/.codex/skills/data-analytics/skills/design-kpis/SKILL.md +0 -103
  1888. package/template/.codex/skills/data-analytics/skills/design-kpis/agents/openai.yaml +0 -6
  1889. package/template/.codex/skills/data-analytics/skills/gather-business-context/SKILL.md +0 -68
  1890. package/template/.codex/skills/data-analytics/skills/gather-business-context/agents/openai.yaml +0 -6
  1891. package/template/.codex/skills/data-analytics/skills/index/SKILL.md +0 -251
  1892. package/template/.codex/skills/data-analytics/skills/index/agents/openai.yaml +0 -6
  1893. package/template/.codex/skills/data-analytics/skills/jupyter-notebooks/SKILL.md +0 -131
  1894. package/template/.codex/skills/data-analytics/skills/jupyter-notebooks/agents/openai.yaml +0 -6
  1895. package/template/.codex/skills/data-analytics/skills/kpi-reporting/SKILL.md +0 -141
  1896. package/template/.codex/skills/data-analytics/skills/kpi-reporting/agents/openai.yaml +0 -6
  1897. package/template/.codex/skills/data-analytics/skills/kpi-reporting/references/report-templates.md +0 -32
  1898. package/template/.codex/skills/data-analytics/skills/market-sizing/SKILL.md +0 -106
  1899. package/template/.codex/skills/data-analytics/skills/market-sizing/agents/openai.yaml +0 -6
  1900. package/template/.codex/skills/data-analytics/skills/metric-diagnostics/SKILL.md +0 -130
  1901. package/template/.codex/skills/data-analytics/skills/metric-diagnostics/agents/openai.yaml +0 -6
  1902. package/template/.codex/skills/data-analytics/skills/product-business-analysis/SKILL.md +0 -141
  1903. package/template/.codex/skills/data-analytics/skills/product-business-analysis/agents/openai.yaml +0 -6
  1904. package/template/.codex/skills/data-analytics/skills/spreadsheets/SKILL.md +0 -178
  1905. package/template/.codex/skills/data-analytics/skills/spreadsheets/agents/openai.yaml +0 -9
  1906. package/template/.codex/skills/data-analytics/skills/spreadsheets/assets/file-spreadsheet.png +0 -0
  1907. package/template/.codex/skills/data-analytics/skills/spreadsheets/charts.md +0 -31
  1908. package/template/.codex/skills/data-analytics/skills/spreadsheets/references/artifact_tool_api.md +0 -466
  1909. package/template/.codex/skills/data-analytics/skills/spreadsheets/style_guidelines.md +0 -99
  1910. package/template/.codex/skills/data-analytics/skills/user-context/SKILL.md +0 -197
  1911. package/template/.codex/skills/data-analytics/skills/user-context/agents/openai.yaml +0 -6
  1912. package/template/.codex/skills/data-analytics/skills/user-context/plugin-author-config/automation-config.md +0 -26
  1913. package/template/.codex/skills/data-analytics/skills/user-context/plugin-author-config/source-category-config.json +0 -51
  1914. package/template/.codex/skills/data-analytics/skills/user-context/plugin-author-config/user-context-config.md +0 -66
  1915. package/template/.codex/skills/data-analytics/skills/user-context/references/automation.md +0 -69
  1916. package/template/.codex/skills/data-analytics/skills/user-context/references/onboarding-examples.md +0 -204
  1917. package/template/.codex/skills/data-analytics/skills/user-context/references/onboarding-state-template.json +0 -87
  1918. package/template/.codex/skills/data-analytics/skills/user-context/references/onboarding.md +0 -497
  1919. package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/connector-playbook.md +0 -74
  1920. package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/setup.md +0 -65
  1921. package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/skill-template.md +0 -160
  1922. package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/source-intake.md +0 -75
  1923. package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/weekly-polling-automation.md +0 -96
  1924. package/template/.codex/skills/data-analytics/skills/user-context/references/source-category-runtime.md +0 -263
  1925. package/template/.codex/skills/data-analytics/skills/user-context/scripts/data_analytics_preflight.py +0 -1462
  1926. package/template/.codex/skills/data-analytics/skills/user-context/scripts/init_user_context_state.py +0 -128
  1927. package/template/.codex/skills/data-analytics/skills/user-context/scripts/reset_user_context_state.py +0 -101
  1928. package/template/.codex/skills/data-analytics/skills/user-context/scripts/validate_user_context_preflight.py +0 -499
  1929. package/template/.codex/skills/data-analytics/skills/user-context/tests/test_state_helpers.py +0 -978
  1930. package/template/.codex/skills/data-analytics/skills/validate-data/SKILL.md +0 -126
  1931. package/template/.codex/skills/data-analytics/skills/validate-data/agents/openai.yaml +0 -6
  1932. package/template/.codex/skills/data-analytics/skills/validate-data/references/validation-methods.md +0 -70
  1933. package/template/.codex/skills/data-analytics/skills/visualize-data/SKILL.md +0 -157
  1934. package/template/.codex/skills/data-analytics/skills/visualize-data/agents/openai.yaml +0 -6
  1935. package/template/.codex/skills/data-analytics/skills/visualize-data/references/seaborn-templates.md +0 -774
  1936. package/template/.codex/skills/data-analytics/src/DESIGN.md +0 -222
  1937. package/template/.codex/skills/data-analytics/src/analytics-app/App.tsx +0 -3666
  1938. package/template/.codex/skills/data-analytics/src/analytics-app/analytics-layout.test.mjs +0 -136
  1939. package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartFrame.tsx +0 -54
  1940. package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartLegend.tsx +0 -96
  1941. package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartRenderer.tsx +0 -1647
  1942. package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartTooltip.tsx +0 -245
  1943. package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-app-helpers.tsx +0 -462
  1944. package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-capabilities.ts +0 -107
  1945. package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-compatibility.ts +0 -164
  1946. package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-contract.ts +0 -192
  1947. package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-theme.ts +0 -203
  1948. package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-tokens.css +0 -619
  1949. package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-transforms.ts +0 -402
  1950. package/template/.codex/skills/data-analytics/src/analytics-app/fonts/SystemSansVariableVF.woff2 +0 -0
  1951. package/template/.codex/skills/data-analytics/src/analytics-app/imageExport.ts +0 -370
  1952. package/template/.codex/skills/data-analytics/src/analytics-app/layout/AnalyticsLayoutCanvas.tsx +0 -536
  1953. package/template/.codex/skills/data-analytics/src/analytics-app/layout/RichMarkdown.tsx +0 -681
  1954. package/template/.codex/skills/data-analytics/src/analytics-app/layout/analyticsLayoutCore.ts +0 -164
  1955. package/template/.codex/skills/data-analytics/src/analytics-app/main.tsx +0 -21
  1956. package/template/.codex/skills/data-analytics/src/analytics-app/scripts/chart_contract.py +0 -472
  1957. package/template/.codex/skills/data-analytics/src/analytics-app/scripts/check_analytics_app_runtime_links.py +0 -75
  1958. package/template/.codex/skills/data-analytics/src/analytics-app/scripts/design_contract.py +0 -142
  1959. package/template/.codex/skills/data-analytics/src/analytics-app/scripts/package_utils.py +0 -142
  1960. package/template/.codex/skills/data-analytics/src/analytics-app/scripts/tests/test_package_utils.py +0 -377
  1961. package/template/.codex/skills/data-analytics/src/analytics-app/styles.css +0 -3468
  1962. package/template/.codex/skills/data-analytics/src/analytics-app/tables/DataTable.d.ts +0 -44
  1963. package/template/.codex/skills/data-analytics/src/analytics-app/tables/DataTable.jsx +0 -639
  1964. package/template/.codex/skills/data-analytics/src/analytics-app/tables/data-table.css +0 -327
  1965. package/template/.codex/skills/data-analytics/src/analytics-app/tokens.css +0 -225
  1966. package/template/.codex/skills/data-analytics/src/analytics-app/types.ts +0 -204
  1967. package/template/.codex/skills/data-analytics/src/analytics-app-core.md +0 -85
  1968. package/template/.codex/skills/data-analytics/src/codex-style-contract.md +0 -30
  1969. package/template/.codex/skills/data-analytics/src/datascience-artifact-widget.html +0 -12
  1970. package/template/.codex/skills/data-analytics/src/datascience-artifact-widget.jsx +0 -1008
  1971. package/template/.codex/skills/data-analytics/src/datascience-chart-widget.css +0 -2117
  1972. package/template/.codex/skills/data-analytics/src/datascience-chart-widget.html +0 -122
  1973. package/template/.codex/skills/data-analytics/src/datascience-chart-widget.js +0 -3588
  1974. package/template/.codex/skills/data-analytics/src/datascience-table-widget.css +0 -483
  1975. package/template/.codex/skills/data-analytics/src/datascience-table-widget.html +0 -32
  1976. package/template/.codex/skills/data-analytics/src/datascience-table-widget.js +0 -333
  1977. package/template/.codex/skills/data-analytics/src/mcp-host.js +0 -153
  1978. package/template/.codex/skills/data-analytics/src/recharts-config.js +0 -315
  1979. package/template/.codex/skills/data-analytics/src/recharts-renderer.jsx +0 -294
  1980. package/template/.codex/skills/data-analytics/src/sql-source-view.css +0 -33
  1981. package/template/.codex/skills/data-analytics/src/sql-source-view.js +0 -157
  1982. package/template/.codex/skills/data-analytics/src/styles/codex-theme.css +0 -121
  1983. package/template/.codex/skills/data-analytics/src/table-renderer.jsx +0 -28
  1984. package/template/.codex/skills/data-analytics/tests/chart-transforms.test.mjs +0 -87
  1985. package/template/.codex/skills/data-analytics/tests/funnel-smoke.html +0 -105
  1986. package/template/.codex/skills/data-analytics/tests/inline-widget-compare.html +0 -233
  1987. package/template/.codex/skills/data-analytics/tests/mcp-server.test.mjs +0 -1500
  1988. package/template/.codex/skills/data-analytics/tests/native-style-contract.test.mjs +0 -219
  1989. package/template/.codex/skills/data-analytics/tests/recharts-config.test.mjs +0 -144
  1990. package/template/.codex/skills/data-analytics/tests/recharts-renderer.test.mjs +0 -11
  1991. package/template/.codex/skills/data-analytics/tests/rich-markdown.test.mjs +0 -54
  1992. package/template/.codex/skills/data-analytics/tests/widget-render-harness.html +0 -321
  1993. package/template/.codex/skills/data-analytics/tsconfig.json +0 -19
  1994. package/template/.codex/skills/data-analytics/vite.config.ts +0 -46
  1995. package/template/.codex/skills/grill-with-docs/SKILL.md +0 -20
  1996. package/template/.codex/skills/grill-with-docs/agents/openai.yaml +0 -5
  1997. package/template/.codex/skills/improve-codebase-architecture/SKILL.md +0 -75
  1998. package/template/.codex/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
  1999. package/template/.codex/skills/prototype/UI.md +0 -112
  2000. package/template/.codex/skills/setup-matt-pocock-skills/domain.md +0 -37
  2001. package/template/.codex/skills/to-questionnaire/SKILL.md +0 -55
  2002. package/template/.codex/skills/to-questionnaire/agents/openai.yaml +0 -5
  2003. package/template/.codex/skills/wait-what/SKILL.md +0 -7
  2004. package/template/.codex/skills/wait-what/agents/openai.yaml +0 -5
  2005. package/template/.codex/skills/yss-prototype-stage/assets/antd-authoring/package.json +0 -16
  2006. package/template/.codex/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +0 -1678
  2007. package/template/.codex/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +0 -23
  2008. package/template/.codex/skills/yss-prototype-stage/references/antd-component-catalog.json +0 -736
  2009. package/template/.codex/skills/yss-prototype-stage/references/antd-integration.md +0 -61
  2010. package/template/.codex/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +0 -71
  2011. package/template/.codex/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +0 -26
  2012. package/template/.cursor/skills/grill-with-docs/SKILL.md +0 -20
  2013. package/template/.cursor/skills/grill-with-docs/agents/openai.yaml +0 -5
  2014. package/template/.cursor/skills/improve-codebase-architecture/SKILL.md +0 -75
  2015. package/template/.cursor/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
  2016. package/template/.cursor/skills/prototype/UI.md +0 -112
  2017. package/template/.cursor/skills/setup-matt-pocock-skills/domain.md +0 -37
  2018. package/template/.cursor/skills/to-questionnaire/SKILL.md +0 -55
  2019. package/template/.cursor/skills/to-questionnaire/agents/openai.yaml +0 -5
  2020. package/template/.cursor/skills/wait-what/SKILL.md +0 -7
  2021. package/template/.cursor/skills/wait-what/agents/openai.yaml +0 -5
  2022. package/template/.cursor/skills/yss-prototype-stage/assets/antd-authoring/package.json +0 -16
  2023. package/template/.cursor/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +0 -1678
  2024. package/template/.cursor/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +0 -23
  2025. package/template/.cursor/skills/yss-prototype-stage/references/antd-component-catalog.json +0 -736
  2026. package/template/.cursor/skills/yss-prototype-stage/references/antd-integration.md +0 -61
  2027. package/template/.cursor/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +0 -71
  2028. package/template/.cursor/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +0 -26
  2029. package/template/.pi/skills/grill-with-docs/SKILL.md +0 -20
  2030. package/template/.pi/skills/grill-with-docs/agents/openai.yaml +0 -5
  2031. package/template/.pi/skills/improve-codebase-architecture/SKILL.md +0 -75
  2032. package/template/.pi/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
  2033. package/template/.pi/skills/prototype/UI.md +0 -112
  2034. package/template/.pi/skills/setup-matt-pocock-skills/domain.md +0 -37
  2035. package/template/.pi/skills/to-questionnaire/SKILL.md +0 -55
  2036. package/template/.pi/skills/to-questionnaire/agents/openai.yaml +0 -5
  2037. package/template/.pi/skills/wait-what/SKILL.md +0 -7
  2038. package/template/.pi/skills/wait-what/agents/openai.yaml +0 -5
  2039. package/template/.pi/skills/yss-prototype-stage/assets/antd-authoring/package.json +0 -16
  2040. package/template/.pi/skills/yss-prototype-stage/assets/antd-authoring/pnpm-lock.yaml +0 -1678
  2041. package/template/.pi/skills/yss-prototype-stage/assets/antd-authoring/workbench.jsx +0 -23
  2042. package/template/.pi/skills/yss-prototype-stage/references/antd-component-catalog.json +0 -736
  2043. package/template/.pi/skills/yss-prototype-stage/references/antd-integration.md +0 -61
  2044. package/template/.pi/skills/yss-prototype-stage/scripts/build-antd-prototype.mjs +0 -71
  2045. package/template/.pi/skills/yss-prototype-stage/scripts/collect-antd-reference.mjs +0 -26
  2046. package/template/.template-spec/agents/domain.md +0 -31
  2047. /package/template/.agents/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
  2048. /package/template/.codex/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
  2049. /package/template/.cursor/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
  2050. /package/template/.pi/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
@@ -0,0 +1,289 @@
1
+ import { readFile, realpath, stat } from 'node:fs/promises';
2
+ import { createHash } from 'node:crypto';
3
+ import path from 'node:path';
4
+ import { PROFILE, ID_PATTERN, requiredFields, ids, parseContent, sourceRefs, yamlValue } from './plan-spec-markdown.mjs';
5
+
6
+ export const TOOL_VERSION = '1.0.0';
7
+ const digest = bytes => `sha256:${createHash('sha256').update(bytes).digest('hex')}`;
8
+ const noValue = value => !value || /^(?:[-—]|TBD|TODO|待填写|<[^>]*>)$/i.test(value.trim());
9
+ const placeholder = value => /<[^>\n]+>|\b(?:TODO|TBD)\b|待填写/.test(value);
10
+ const unknown = value => /未知|待确认|待定|unknown|TBD/i.test(value ?? '');
11
+ const notApplicable = value => /^(?:not-applicable|不适用|N\/A)(?:\s|[::]|$)/i.test(value ?? '');
12
+ const naReason = value => /^(?:not-applicable|不适用|N\/A)\s*[::]\s*\S.+/i.test(value ?? '') && !placeholder(value);
13
+ const field = (entry, name) => entry.fields[name] ?? '';
14
+ const location = (file, position) => ({ file, line: position?.start?.line ?? 1, column: position?.start?.column ?? 1 });
15
+
16
+ export async function inspectPlanSpec(options, hooks = {}) {
17
+ const report = {
18
+ tool: 'inspect-plan-spec', tool_version: TOOL_VERSION, content_profile: PROFILE,
19
+ mode: options.command, diagnostic_only: true, execution: 'completed', inputs: [],
20
+ scope: { documents: [], sources: ['来源引用', '数据来源', '权威引用'], slices: options.slices ?? [], network: '不读取', state_changes: '无', prose: '正文语义未自动评估,需保留全文人工审阅' },
21
+ findings: [], unevaluated: [], manual_review: [
22
+ '问题真实性、方案优劣、目标合理性、场景充分性和规则语义等价性需人工审查。',
23
+ '诊断不改变生命周期批准、就绪状态或验证范围。'
24
+ ]
25
+ };
26
+ const cache = new Map(), parsed = new Map();
27
+ let root;
28
+ function issue(code, file, position, item_id, message, recovery, incomplete = false) {
29
+ report.findings.push({ code, location: location(file, position), item_id: item_id || null, message, recovery });
30
+ if (incomplete) report.execution = 'incomplete';
31
+ }
32
+ function unassessed(code, file, message, item_id = null, position = null) {
33
+ report.unevaluated.push({ code, location: location(file, position), item_id, message, recovery: '人工审阅原文;按需明确选择范围并补齐可定位输入后重跑。' });
34
+ }
35
+ try { root = await realpath(path.resolve(options.root ?? '.')); }
36
+ catch (error) { issue('INPUT_ROOT', options.root ?? '.', null, null, error.message, '提供可读项目根目录。', true); }
37
+ function target(ref) {
38
+ const absolute = path.resolve(root, ref), relative = path.relative(root, absolute);
39
+ if (relative === '..' || relative.startsWith(`..${path.sep}`) || path.isAbsolute(relative)) throw new Error('路径越过项目根目录');
40
+ return { absolute, relative: relative.replaceAll(path.sep, '/') };
41
+ }
42
+ async function load(ref, role, caller = {}) {
43
+ if (!root) return null;
44
+ try {
45
+ const { absolute, relative } = target(ref);
46
+ if (cache.has(relative)) { cache.get(relative).roles.add(role); return cache.get(relative); }
47
+ const resolved = await realpath(absolute);
48
+ target(resolved);
49
+ const info = await stat(absolute);
50
+ if (!info.isFile()) throw new Error('输入不是普通文件');
51
+ if (info.size > 8 * 1024 * 1024) throw new Error('输入超过 8 MiB,需显式提供较小快照');
52
+ const bytes = await readFile(absolute);
53
+ const text = new TextDecoder('utf-8', { fatal: true }).decode(bytes);
54
+ const item = { absolute, resolved, file: relative, bytes, text, sha256: digest(bytes), roles: new Set([role]) };
55
+ cache.set(relative, item);
56
+ return item;
57
+ } catch (error) {
58
+ issue('INPUT_UNREADABLE', caller.file ?? ref, caller.position, caller.id, `无法读取 ${ref}: ${error.message}`, '补齐或修正显式输入路径;不得猜测替代来源。', true);
59
+ return null;
60
+ }
61
+ }
62
+ function markdown(input) {
63
+ if (!input) return null;
64
+ if (parsed.has(input.file)) return parsed.get(input.file);
65
+ try { const doc = parseContent(input.text, input.file); parsed.set(input.file, doc); return doc; }
66
+ catch (error) {
67
+ issue('PARSE_ERROR', input.file, null, null, error.message, '修复 Markdown frontmatter / YAML 解析问题后重跑。', true);
68
+ parsed.set(input.file, null); return null;
69
+ }
70
+ }
71
+ async function resolveSource(reference, entry, name) {
72
+ if (reference.invalid) {
73
+ issue('SOURCE_FORMAT', entry.file, entry.cells[name]?.position ?? entry.position, entry.id, `来源缺少可定位表达:${reference.invalid}`, '使用 项目根相对路径 :: id:已有ID 或 :: heading:准确章节名。'); return null;
74
+ }
75
+ if (/^[a-z][a-z0-9+.-]*:/i.test(reference.path)) {
76
+ unassessed('EXTERNAL_SOURCE', entry.file, `未联网读取外部来源 ${reference.path};需要可审阅的本地证据快照。`, entry.id); return null;
77
+ }
78
+ const input = await load(reference.path, 'source', entry);
79
+ if (!input) return null;
80
+ let matches;
81
+ try {
82
+ if (/\.(?:ya?ml|json)$/i.test(input.file)) {
83
+ const value = /\.json$/i.test(input.file) ? JSON.parse(input.text) : yamlValue(input.text);
84
+ matches = [];
85
+ const walk = node => {
86
+ if (!node || typeof node !== 'object') return;
87
+ if (node.id === reference.locator && reference.type === 'id') matches.push(node);
88
+ for (const [key, child] of Object.entries(node)) {
89
+ if (key === reference.locator && reference.type === 'id') matches.push(child);
90
+ walk(child);
91
+ }
92
+ };
93
+ walk(value);
94
+ } else if (/\.md$/i.test(input.file)) {
95
+ const doc = markdown(input);
96
+ if (!doc) return null;
97
+ matches = (reference.type === 'heading' ? doc.headings : doc.locators).filter(x => x.value === reference.locator);
98
+ } else { unassessed('SOURCE_FORMAT_UNSUPPORTED', input.file, '来源格式不支持条目定位,只绑定原始摘要。', entry.id); return null; }
99
+ } catch (error) {
100
+ issue('PARSE_ERROR', input.file, null, entry.id, error.message, '修复显式来源解析后重跑。', true); return null;
101
+ }
102
+ if (matches.length !== 1) {
103
+ issue('SOURCE_LOCATOR', entry.file, entry.cells[name]?.position ?? entry.position, entry.id, `来源 ${input.file} 的 ${reference.type}:${reference.locator} 匹配 ${matches.length} 处`, '修正已有条目 ID 或准确章节名;歧义定位不能自动选择。'); return null;
104
+ }
105
+ return { file: input.file, type: reference.type, locator: reference.locator, sha256: input.sha256 };
106
+ }
107
+ async function checkDocument(input, role) {
108
+ const doc = markdown(input);
109
+ if (!doc) return null;
110
+ report.scope.documents.push({ file: input.file, role, profile: doc.frontmatter.content_profile ?? null, extracted_items: doc.entries.length });
111
+ if (!doc.supported) unassessed('LEGACY_OR_UNKNOWN_PROFILE', input.file, '未声明支持的 content_profile;仅尽力检查已识别 ID 与显式引用,缺字段不解释为缺陷或内容合格。');
112
+ if (doc.supported) for (const condition of doc.conditions) {
113
+ if (notApplicable(condition.value) && !naReason(condition.value)) issue('NA_REASON', input.file, condition.position, condition.id, '条件项声明不适用但缺少原因', '补充 not-applicable:具体原因。');
114
+ }
115
+ const groups = new Map();
116
+ for (const entry of doc.entries) {
117
+ const group = groups.get(entry.id) ?? []; group.push(entry); groups.set(entry.id, group);
118
+ if (!ID_PATTERN.test(entry.id) || !(entry.id.startsWith(`${entry.kind}-`) || entry.kind === 'SC' && entry.id.startsWith('success-criterion.'))) {
119
+ if (doc.supported) issue('INVALID_ID', entry.file, entry.position, entry.id, 'ID 与所属条目类型不一致或尚未填写。', '使用功能内稳定 ID,重排不改号,删除不复用。');
120
+ }
121
+ if (!doc.supported) continue;
122
+ const required = entry.kind === 'SC' && '权威引用' in entry.fields ? ['权威引用'] : requiredFields[entry.kind];
123
+ for (const name of required) {
124
+ const value = field(entry, name);
125
+ if (noValue(value)) issue('REQUIRED_FIELD', entry.file, entry.cells[name]?.position ?? entry.position, entry.id, `${name} 为空或占位符`, '填写已有依据;未知值关联未决项及补齐动作。');
126
+ else if (placeholder(value)) issue('PLACEHOLDER', entry.file, entry.cells[name]?.position, entry.id, `${name} 尚有占位符`, '替换为真实输入或明确未决项。');
127
+ }
128
+ if ((entry.kind === 'NFR' || entry.kind === 'SC') && !('权威引用' in entry.fields)) {
129
+ if (unknown(field(entry, '目标')) && !ids(field(entry, '未决项'), ['Q']).length) issue('UNKNOWN_TARGET', entry.file, entry.position, entry.id, '目标未知且未关联未决项', '关联 Q ID,保留候选状态、负责人和补齐动作。');
130
+ if (unknown(field(entry, '目标')) && field(entry, '确认状态') === '已确认') issue('TARGET_STATUS', entry.file, entry.position, entry.id, '未知目标标记为已确认', '核对真实决定;未知目标保持候选状态。');
131
+ if (entry.kind === 'SC' && unknown(field(entry, '基线或未知原因')) && !ids(field(entry, '未决项'), ['Q']).length) issue('UNKNOWN_BASELINE', entry.file, entry.position, entry.id, '基线未知且没有补齐项', '关联 Q ID,说明未知原因、负责人和补齐动作。');
132
+ }
133
+ }
134
+ for (const [id, entries] of groups) if (entries.length > 1) for (const entry of entries) issue('DUPLICATE_ID', entry.file, entry.position, id, `ID 重复 ${entries.length} 次`, '消除重复并修复所有关联;不要因排序重编号。');
135
+ if (doc.supported) {
136
+ for (const kind of role === 'spec' ? ['FR', 'NFR', 'AC'] : ['SC']) {
137
+ if (!doc.sections.some(section => section.kind === kind)) issue('SECTION_MISSING', input.file, null, null, `${kind} 缺少可识别章节`, '使用权威模板;未命中条件项注明不适用及原因。');
138
+ }
139
+ for (const section of doc.sections) if (!section.count && section.kind !== 'Q') {
140
+ if (notApplicable(section.text.trim())) {
141
+ // The paragraph-level condition check records missing reasons once.
142
+ } else {
143
+ issue('SECTION_UNPARSED', input.file, section.position, null, `${section.kind} 未提取到 ID 表`, '使用权威模板中的 ID 表,或为条件项明确不适用原因。');
144
+ unassessed('SECTION_UNPARSED', input.file, `${section.kind} 正文未进行结构诊断。`);
145
+ }
146
+ }
147
+ }
148
+ for (const entry of doc.entries) {
149
+ const refFields = { '验收引用': ['AC', 'Q'], '需求引用': ['FR', 'NFR'], '未决项': ['Q'] };
150
+ for (const [name, allowed] of Object.entries(refFields)) {
151
+ const refs = ids(field(entry, name));
152
+ for (const id of refs) {
153
+ if (!allowed.includes(id.split('-')[0])) issue('REFERENCE_KIND', entry.file, entry.cells[name]?.position, entry.id, `${name} 引用了不支持的类型 ${id}`, '修正字段中的关联类型。');
154
+ else if (!groups.has(id)) issue('DANGLING_REFERENCE', entry.file, entry.cells[name]?.position, entry.id, `${name} 指向不存在的 ${id}`, '恢复条目或修正引用;不得猜测映射。');
155
+ else if (groups.get(id).length > 1) unassessed('AMBIGUOUS_REFERENCE', entry.file, `引用 ${id} 重复,无法唯一追溯。`, entry.id);
156
+ }
157
+ }
158
+ if (['FR', 'NFR'].includes(entry.kind)) {
159
+ const ac = ids(field(entry, '验收引用'), ['AC']);
160
+ const pending = ids(field(entry, '验收引用'), ['Q']);
161
+ if (!ac.length && !pending.length && (doc.supported || '验收引用' in entry.fields)) issue('AC_MISSING', entry.file, entry.position, entry.id, '需求没有验收引用或明确待补项', '关联 AC 或待补 Q,并由原有门禁处理未决项。');
162
+ if (pending.length) unassessed('AC_DEFERRED', entry.file, `验收待补 ${pending.join(', ')},尚未评估验收覆盖。`, entry.id);
163
+ for (const id of ac) {
164
+ const targetEntry = groups.get(id)?.length === 1 ? groups.get(id)[0] : null;
165
+ if (targetEntry && !ids(field(targetEntry, '需求引用')).includes(entry.id)) issue('REFERENCE_MISMATCH', entry.file, entry.position, entry.id, `${id} 没有反向关联本需求`, '核对需求与验收引用并同时修正。');
166
+ }
167
+ }
168
+ if (entry.kind === 'AC') {
169
+ const requirements = ids(field(entry, '需求引用'), ['FR', 'NFR']);
170
+ if (!requirements.length && (doc.supported || '需求引用' in entry.fields)) issue('REQUIREMENT_MISSING', entry.file, entry.position, entry.id, '验收缺少需求来源', '关联已有 FR/NFR,不由验收示例反推新规则。');
171
+ for (const id of requirements) {
172
+ const requirement = groups.get(id)?.length === 1 ? groups.get(id)[0] : null;
173
+ if (requirement && !ids(field(requirement, '验收引用')).includes(entry.id)) issue('REFERENCE_MISMATCH', entry.file, entry.position, entry.id, `${id} 未引用本验收`, '核对双向关联。');
174
+ }
175
+ }
176
+ for (const name of ['来源引用', '数据来源', '权威引用']) {
177
+ if (!(name in entry.fields)) continue;
178
+ const value = entry.cells[name].raw;
179
+ if (noValue(field(entry, name)) || placeholder(field(entry, name))) continue;
180
+ for (const ref of sourceRefs(value)) await resolveSource(ref, entry, name);
181
+ if (name === '权威引用') unassessed('STATEMENT_MANUAL_REVIEW', entry.file, '成功标准复用权威 statement;指标、窗口、未知原因等语义完整性由人工逐项审查。', entry.id);
182
+ }
183
+ }
184
+ return doc;
185
+ }
186
+ async function trace(doc) {
187
+ if (!doc) return;
188
+ const requirements = doc.entries.filter(e => ['FR', 'NFR'].includes(e.kind));
189
+ const acs = new Map(doc.entries.filter(e => e.kind === 'AC').map(e => [e.id, e]));
190
+ report.trace = { links: [], gaps: [], scope: '仅显式 --slice;未提供的依赖未知,不推断未受影响' };
191
+ for (const ref of options.slices ?? []) {
192
+ const input = await load(ref, 'slice'); if (!input) continue;
193
+ let slice;
194
+ try { slice = yamlValue(input.text); }
195
+ catch (error) { issue('PARSE_ERROR', input.file, null, null, error.message, '修复显式 Slice YAML 解析问题后重跑。', true); continue; }
196
+ if (slice?.schema_version !== 3 || !slice.acceptance || typeof slice.acceptance !== 'object' || Array.isArray(slice.acceptance)) {
197
+ unassessed('SLICE_UNSUPPORTED', input.file, '仅支持现有 Slice schema v3 acceptance mapping'); continue;
198
+ }
199
+ for (const [id, acceptance] of Object.entries(slice.acceptance)) {
200
+ if (!acceptance || typeof acceptance.source !== 'string' || typeof acceptance.locator !== 'string') { unassessed('SLICE_LOCATOR_UNSUPPORTED', input.file, `acceptance ${id} 结构不支持。`); continue; }
201
+ const locator = acceptance.locator.replace(/^id:/, '');
202
+ const resolved = await resolveSource({ path: acceptance.source, type: 'id', locator }, { file: input.file, id, cells: {} }, 'source');
203
+ if (!resolved || resolved.file !== doc.file || !acs.has(locator)) { report.trace.gaps.push({ slice: input.file, acceptance: id, reason: '定位未映射到本次 Spec 的 AC,影响未知' }); continue; }
204
+ if (doc.entries.filter(e => e.id === locator).length !== 1) { report.trace.gaps.push({ slice: input.file, acceptance: id, reason: 'Spec ID 重复,无法映射' }); continue; }
205
+ const referring = collection => Object.entries(collection ?? {}).filter(([, item]) => Array.isArray(item?.acceptance_refs) && item.acceptance_refs.includes(id));
206
+ report.trace.links.push({ spec: doc.file, ac: locator, requirements: ids(field(acs.get(locator), '需求引用'), ['FR', 'NFR']), slice: input.file, acceptance: id,
207
+ verification: referring(slice.verification).map(([key, value]) => ({ id: key, command: value.command ?? null, expected_evidence: value.expected_evidence ?? null })),
208
+ work_units: referring(slice.work_units).map(([key]) => key), evidence_status: '引用可见;未执行命令、未验证证据内容或批准' });
209
+ }
210
+ }
211
+ for (const requirement of requirements) if (!report.trace.links.some(link => link.requirements.includes(requirement.id))) report.trace.gaps.push({ requirement: requirement.id, reason: '显式输入内没有下游映射;依赖未知' });
212
+ for (const link of report.trace.links) if (!link.verification.length) report.trace.gaps.push({ ac: link.ac, slice: link.slice, reason: '未找到 acceptance_refs 对应的 verification' });
213
+ }
214
+ if (root && options.command === 'check') {
215
+ if (!options.plan && !options.spec) issue('INPUT_REQUIRED', '.', null, null, 'check 至少需要 --plan 或 --spec', '显式指定要诊断的文档。', true);
216
+ if (options.plan) { const input = await load(options.plan, 'plan'); if (input) await checkDocument(input, 'plan'); }
217
+ if (options.spec) { const input = await load(options.spec, 'spec'); if (input) await trace(await checkDocument(input, 'spec')); }
218
+ else if (options.slices?.length) issue('INPUT_REQUIRED', '.', null, null, '--slice 需要 --spec', '提供用于追溯的 Spec。', true);
219
+ } else if (root && options.command === 'diff') {
220
+ const before = options.before ? await load(options.before, 'before') : null;
221
+ const after = options.after ? await load(options.after, 'after') : null;
222
+ report.diff = { status: '无法比较旧内容', entries: [], raw_difference: null };
223
+ if (!options.before || !options.after) issue('BASELINE_MISSING', options.before ?? '.', null, null, '旧基线或新文档缺失,无法比较', '提供可读的显式 --before 和 --after。', true);
224
+ if (before && after) {
225
+ const oldDoc = markdown(before), newDoc = markdown(after);
226
+ let prefix = 0, suffix = 0;
227
+ while (prefix < Math.min(before.bytes.length, after.bytes.length) && before.bytes[prefix] === after.bytes[prefix]) prefix++;
228
+ while (suffix < Math.min(before.bytes.length, after.bytes.length) - prefix && before.bytes[before.bytes.length - 1 - suffix] === after.bytes[after.bytes.length - 1 - suffix]) suffix++;
229
+ report.diff.raw_difference = { encoding: 'base64', common_prefix_bytes: prefix, common_suffix_bytes: suffix, before_sha256: before.sha256, after_sha256: after.sha256, removed: before.bytes.subarray(prefix, before.bytes.length - suffix).toString('base64'), added: after.bytes.subarray(prefix, after.bytes.length - suffix).toString('base64') };
230
+ if (oldDoc && newDoc) {
231
+ report.diff.status = 'compared';
232
+ const unparsedKinds = new Set();
233
+ for (const [doc, role] of [[oldDoc, 'before'], [newDoc, 'after']]) {
234
+ report.scope.documents.push({ file: doc.file, role, profile: doc.frontmatter.content_profile ?? null, extracted_items: doc.entries.length });
235
+ if (!doc.supported) continue;
236
+ for (const kind of ['FR', 'NFR', 'AC']) if (!doc.sections.some(section => section.kind === kind)) {
237
+ unparsedKinds.add(kind);
238
+ unassessed('SECTION_MISSING', doc.file, `${kind} 缺少可识别章节;该类条目无法可靠比较增删。`);
239
+ }
240
+ for (const section of doc.sections) if (!section.count && !notApplicable(section.text.trim()) && section.kind !== 'Q') {
241
+ unparsedKinds.add(section.kind);
242
+ unassessed('SECTION_UNPARSED', doc.file, `${section.kind} 未提取到 ID 表;该类条目无法可靠比较增删。`, null, section.position);
243
+ }
244
+ }
245
+ if (!oldDoc.supported || !newDoc.supported || unparsedKinds.size) {
246
+ report.diff.status = 'partially-compared';
247
+ unassessed('PARTIAL_DIFF', after.file, '格式或章节存在提取缺口;只比较可识别范围,缺口不判为条目增删。原始字节差异覆盖全部内容。');
248
+ }
249
+ const allIds = [...new Set([...oldDoc.entries, ...newDoc.entries].map(e => e.id))].sort();
250
+ for (const id of allIds) {
251
+ const oldItems = oldDoc.entries.filter(e => e.id === id), newItems = newDoc.entries.filter(e => e.id === id);
252
+ if (oldItems.length > 1 || newItems.length > 1) { issue('DUPLICATE_ID', after.file, newItems[0]?.position, id, '差异中的 ID 不唯一,无法比较该条目', '消除歧义,保留原始字节证据。'); report.diff.entries.push({ id, change: 'unassessed' }); continue; }
253
+ const left = oldItems[0], right = newItems[0];
254
+ if (unparsedKinds.has(left?.kind) || unparsedKinds.has(right?.kind) || (!left || !right) && (!oldDoc.supported || !newDoc.supported)) {
255
+ report.diff.entries.push({ id, change: 'unassessed', reason: '所属章节提取不完整,不能据此判断新增或删除', location: location(right ? after.file : before.file, (right ?? left).position) });
256
+ continue;
257
+ }
258
+ const values = item => item && Object.fromEntries(Object.entries(item.cells).map(([key, cell]) => [key, cell.raw]));
259
+ const oldFields = values(left), newFields = values(right);
260
+ if (JSON.stringify(oldFields) === JSON.stringify(newFields)) continue;
261
+ const referenceChanges = ['来源引用', '验收引用', '需求引用', '未决项', '权威引用', '数据来源'].filter(key => oldFields?.[key] !== newFields?.[key]);
262
+ report.diff.entries.push({ id, change: !left ? 'added' : !right ? 'removed' : 'modified', before: oldFields ?? null, after: newFields ?? null, reference_changes: referenceChanges, location: location(right ? after.file : before.file, (right ?? left).position) });
263
+ }
264
+ report.diff.note = '重排无重新编号;未按 ID 展示的变化见原始字节差异。语义等价、ID 历史复用、批准与下游影响未自动判定。';
265
+ }
266
+ }
267
+ } else if (root) issue('COMMAND_INVALID', '.', null, null, '命令必须为 check 或 diff', '查看 --help。', true);
268
+ // Test hook exercises an actual read/re-read race without changing runtime CLI behavior.
269
+ if (hooks.beforeFreshnessCheck) await hooks.beforeFreshnessCheck();
270
+ for (const input of cache.values()) {
271
+ report.inputs.push({ file: input.file, roles: [...input.roles].sort(), bytes: input.bytes.length, sha256: input.sha256 });
272
+ try {
273
+ if (await realpath(input.absolute) !== input.resolved || digest(await readFile(input.absolute)) !== input.sha256) throw new Error('读取期间内容或真实路径变化');
274
+ } catch (error) { issue('INPUT_DRIFT', input.file, null, null, error.message, '冻结输入并重新运行;本报告不得作为当前证据。', true); }
275
+ }
276
+ report.inputs.sort((a, b) => a.file.localeCompare(b.file));
277
+ report.summary = { findings: report.findings.length, unevaluated: report.unevaluated.length, result: '诊断证据,不是内容合格或流转许可' };
278
+ return { report, exitCode: report.execution === 'completed' ? 0 : 2 };
279
+ }
280
+
281
+ export function renderReport(report) {
282
+ const lines = [`inspect-plan-spec ${report.tool_version} · ${report.mode} · ${report.execution}`, report.summary.result];
283
+ for (const input of report.inputs) lines.push(`输入 ${input.file} ${input.sha256}`);
284
+ for (const item of [...report.findings, ...report.unevaluated]) lines.push(`${item.code} ${item.location.file}:${item.location.line}:${item.location.column}${item.item_id ? ` [${item.item_id}]` : ''} ${item.message}\n 恢复:${item.recovery}`);
285
+ for (const item of report.manual_review) lines.push(`人工审查:${item}`);
286
+ if (report.diff) { lines.push(`差异:${report.diff.status}`, JSON.stringify(report.diff, null, 2)); }
287
+ if (report.trace) lines.push(`追溯:${JSON.stringify(report.trace, null, 2)}`);
288
+ return `${lines.join('\n')}\n`;
289
+ }
@@ -0,0 +1,98 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { randomUUID } from 'node:crypto';
4
+ import { safeFile, fileBinding, readDocument, digest } from './governance-io.mjs';
5
+ import { CI_CONFIG, TRACKER, governanceScope } from './project-governance.mjs';
6
+
7
+ export const CI_WORKFLOW='.github/workflows/yss-governance.yml';
8
+ export const CI_RECEIPT='.template-spec/process/project-ci-install.json';
9
+ export const CI_JOURNAL='.template-spec/process/.project-ci-transaction.json';
10
+ const conflict=message=>{const error=new Error(message);error.exitCode=1;throw error;};
11
+ const canonical=value=>Array.isArray(value)?value.map(canonical):value&&typeof value==='object'?Object.fromEntries(Object.keys(value).sort().map(k=>[k,canonical(value[k])])):value;
12
+ const encode=value=>JSON.stringify(canonical(value),null,2)+'\n';
13
+ const hashObject=value=>digest(encode(value));
14
+ function workflow(branch) {
15
+ return `# Managed by scripts/project-ci; edit through an explicit plan/apply.\nname: YSS project governance\non:\n pull_request:\n push:\n branches: [${JSON.stringify(branch)}]\n workflow_dispatch:\npermissions:\n contents: read\njobs:\n governance:\n name: YSS governance\n runs-on: ubuntu-latest\n timeout-minutes: 15\n steps:\n - uses: actions/checkout@v4\n with:\n fetch-depth: 0\n persist-credentials: false\n - uses: actions/setup-node@v4\n with:\n node-version: '24'\n - uses: actions/setup-python@v5\n with:\n python-version: '3.12'\n - run: python -m pip install jsonschema==4.23.0\n - name: Check current governance evidence\n env:\n BASE_SHA: \${{ github.event.pull_request.base.sha }}\n shell: bash\n run: |\n if [[ -n "$BASE_SHA" ]]; then\n node scripts/project-ci check --root . --base "$BASE_SHA" --json > "$RUNNER_TEMP/yss-governance.json"\n else\n node scripts/project-ci check --root . --json > "$RUNNER_TEMP/yss-governance.json"\n fi\n - uses: actions/upload-artifact@v4\n if: always()\n with:\n name: yss-governance\n path: \${{ runner.temp }}/yss-governance.json\n if-no-files-found: error\n`;
16
+ }
17
+ function configuration(branch,additionalPaths) {
18
+ if(typeof branch!=='string'||!/^[A-Za-z0-9][A-Za-z0-9._/-]*$/.test(branch)||branch.includes('..')||branch.includes('//')||branch.endsWith('/')||branch.endsWith('.lock'))throw new Error('目标分支无效');
19
+ return {schema_version:1,provider:'github',branch,additional_paths:[...new Set(additionalPaths)].sort()};
20
+ }
21
+ function outputs(config) {
22
+ const items=[{ref:CI_WORKFLOW,content:workflow(config.branch)},{ref:CI_CONFIG,content:encode(config)}];
23
+ const receipt={schema_version:1,kind:'project-ci-installation',managed:Object.fromEntries(items.map(x=>[x.ref,digest(x.content)]))};
24
+ return [...items,{ref:CI_RECEIPT,content:encode(receipt)}].map(x=>({...x,sha256:digest(x.content)}));
25
+ }
26
+ export function planProjectCi({root,provider='github',branch,additionalPaths}={}) {
27
+ root=fs.realpathSync(root);
28
+ if(provider!=='github')throw new Error('首版仅支持 --provider github');
29
+ const scope=governanceScope(root);
30
+ const config=configuration(branch??scope.config.branch??'main',additionalPaths??scope.config.additional_paths);
31
+ config.additional_paths.forEach(ref=>safeFile(root,ref));
32
+ const owned=fileBinding(root,CI_RECEIPT)?readDocument(root,CI_RECEIPT):null;
33
+ if(owned&&(owned.schema_version!==1||owned.kind!=='project-ci-installation'||!owned.managed))throw new Error('CI 托管凭据无效');
34
+ const expected=outputs(config),conflicts=[];
35
+ const inputs=[...new Set(['yss-project.yaml',TRACKER,CI_CONFIG,CI_RECEIPT,CI_WORKFLOW,CI_JOURNAL])].sort().map(ref=>({ref,sha256:fileBinding(root,ref)}));
36
+ for(const item of expected) {
37
+ const current=fileBinding(root,item.ref);
38
+ if(item.ref===CI_RECEIPT)continue;
39
+ if(current&&(!owned||owned.managed[item.ref]!==current))conflicts.push({ref:item.ref,reason:'已有人工文件或托管输出已被修改'});
40
+ if(!current&&owned?.managed[item.ref])conflicts.push({ref:item.ref,reason:'托管文件缺失,先恢复或显式处理'});
41
+ }
42
+ if(fileBinding(root,CI_JOURNAL))conflicts.push({ref:CI_JOURNAL,reason:'存在未完成事务,运行 apply --recover'});
43
+ const implementation=['project-ci-install.mjs','project-governance.mjs','governance-io.mjs'].map(ref=>({ref,sha256:digest(fs.readFileSync(new URL(ref,import.meta.url)))}));
44
+ const plan={schema_version:1,kind:'project-ci-plan',root,provider,branch:config.branch,additional_paths:config.additional_paths,roots:[...new Set([scope.trackerRoot,...config.additional_paths])],inputs,implementation,outputs:expected,conflicts,execution_authorization:'not-evaluated'};
45
+ return {...plan,plan_digest:hashObject(plan)};
46
+ }
47
+ function atomicWrite(root,ref,bytes) {
48
+ const target=safeFile(root,ref);fs.mkdirSync(path.dirname(target),{recursive:true});
49
+ const temporary=`${target}.tmp-${randomUUID()}`;
50
+ try{fs.writeFileSync(temporary,bytes,{flag:'wx'});fs.renameSync(temporary,target);}finally{if(fs.existsSync(temporary))fs.unlinkSync(temporary);}
51
+ }
52
+ export function recoverProjectCi(root) {
53
+ root=fs.realpathSync(root);
54
+ governanceScope(root);
55
+ const journal=readDocument(root,CI_JOURNAL);
56
+ if(journal.schema_version!==1||journal.kind!=='project-ci-transaction'||!Array.isArray(journal.files)||journal.files.length!==3||new Set(journal.files.map(x=>x.ref)).size!==3||journal.files.some(x=>![CI_WORKFLOW,CI_CONFIG,CI_RECEIPT].includes(x.ref)))throw new Error('CI 恢复日志无效');
57
+ for(const item of journal.files) {
58
+ const old=item.before===null?null:Buffer.from(item.before,'base64');
59
+ if((old===null?null:digest(old))!==item.before_digest)throw new Error(`恢复备份摘要不一致: ${item.ref}`);
60
+ const current=fileBinding(root,item.ref);
61
+ if(current!==item.after_digest&&current!==item.before_digest)conflict(`恢复冲突,保留后续修改: ${item.ref}`);
62
+ }
63
+ for(const item of [...journal.files].reverse())if(fileBinding(root,item.ref)!==item.before_digest) {
64
+ if(item.before===null)fs.unlinkSync(safeFile(root,item.ref));else atomicWrite(root,item.ref,Buffer.from(item.before,'base64'));
65
+ }
66
+ fs.unlinkSync(safeFile(root,CI_JOURNAL));return {status:'recovered',remote_changed:false};
67
+ }
68
+ export function applyProjectCi({root,plan,recover=false}={}) {
69
+ root=fs.realpathSync(root);
70
+ if(recover)return recoverProjectCi(root);
71
+ const {plan_digest,...body}=plan||{};
72
+ if(plan_digest!==hashObject(body)||plan.schema_version!==1||plan.provider!=='github'||plan.kind!=='project-ci-plan'||plan.root!==root||plan.conflicts.length)throw new Error('CI 计划无效、根不匹配或存在冲突');
73
+ const intended=outputs(configuration(plan.branch,plan.additional_paths));
74
+ if(encode(intended)!==encode(plan.outputs))throw new Error('CI 计划输出被替换');
75
+ if(fileBinding(root,CI_JOURNAL))throw new Error('存在未完成事务,先运行 apply --recover');
76
+ const currentScope=governanceScope(root);
77
+ if(intended.every(x=>fileBinding(root,x.ref)===x.sha256)) {
78
+ const unchanged=plan.inputs.filter(x=>![CI_CONFIG,CI_RECEIPT,CI_WORKFLOW].includes(x.ref)).every(x=>fileBinding(root,x.ref)===x.sha256);
79
+ const sameCode=plan.implementation.every(x=>['project-ci-install.mjs','project-governance.mjs','governance-io.mjs'].includes(x.ref)&&digest(fs.readFileSync(new URL(x.ref,import.meta.url)))===x.sha256);
80
+ if(!unchanged||!sameCode||!plan.roots.includes(currentScope.trackerRoot))conflict('CI 计划输入已变化,请重新 plan');
81
+ return {status:'unchanged',remote_changed:false};
82
+ }
83
+ const current=planProjectCi({root,provider:plan.provider,branch:plan.branch,additionalPaths:plan.additional_paths});
84
+ if(current.plan_digest!==plan.plan_digest)conflict('CI 计划输入已变化,请重新 plan');
85
+ const journal={schema_version:1,kind:'project-ci-transaction',plan_digest,files:intended.map(x=>{const hash=fileBinding(root,x.ref);return {ref:x.ref,before:hash?fs.readFileSync(safeFile(root,x.ref)).toString('base64'):null,before_digest:hash,after_digest:x.sha256};})};
86
+ const journalFile=safeFile(root,CI_JOURNAL);fs.mkdirSync(path.dirname(journalFile),{recursive:true});
87
+ fs.writeFileSync(journalFile,encode(journal),{flag:'wx'});
88
+ try {
89
+ for(const item of intended) {
90
+ const before=journal.files.find(x=>x.ref===item.ref).before_digest;
91
+ if(fileBinding(root,item.ref)!==before)throw new Error(`并发修改: ${item.ref}`);
92
+ atomicWrite(root,item.ref,item.content);
93
+ }
94
+ if(!intended.every(x=>fileBinding(root,x.ref)===x.sha256))throw new Error('CI 写入后并发变化');
95
+ fs.unlinkSync(journalFile);
96
+ }catch(error){try{recoverProjectCi(root);}catch(recovery){throw new Error(`${error.message}; ${recovery.message}`);}throw error;}
97
+ return {status:'applied',files:intended.map(x=>x.ref),remote_changed:false};
98
+ }
@@ -0,0 +1,189 @@
1
+ import fs from 'node:fs';
2
+ import { spawnSync } from 'node:child_process';
3
+ import { parseDocument } from '../vendor/yaml.mjs';
4
+ import { assertCheckpointBoundary } from './checkpoint-boundary.mjs';
5
+ import { safeFile, fileBinding, readDocument, digest, orchestrationRef } from './governance-io.mjs';
6
+
7
+ export const CI_CONFIG='.template-spec/process/project-ci.yaml';
8
+ export const TRACKER='.template-spec/agents/issue-tracker.md';
9
+ export function parseGovernance(bytes, ref) {
10
+ const source=String(bytes), yaml=ref.endsWith('.md')?source.match(/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/)?.[1]:source;
11
+ if(yaml===undefined)return null;
12
+ const doc=parseDocument(yaml,{uniqueKeys:true,maxAliasCount:0});
13
+ if(doc.errors.length)throw new Error(`${ref}: ${doc.errors[0].message}`);
14
+ return doc.toJS({maxAliasCount:0});
15
+ }
16
+ export function governanceScope(root) {
17
+ const identity=readDocument(root,'yss-project.yaml');
18
+ if(identity?.schema_version!==1||identity.repository_mode!=='project-instance')throw new Error('project-ci 仅适用于 project-instance');
19
+ const tracker=parseGovernance(fs.readFileSync(safeFile(root,TRACKER)),TRACKER)?.tracker;
20
+ if(!tracker||!['local-markdown','github','gitlab'].includes(tracker.platform)||typeof tracker.root!=='string')throw new Error('主 tracker 配置无效');
21
+ const config=fileBinding(root,CI_CONFIG)?readDocument(root,CI_CONFIG):{schema_version:1,provider:'github',branch:'main',additional_paths:[]};
22
+ if(config.schema_version!==1||config.provider!=='github'||!Array.isArray(config.additional_paths)||config.additional_paths.some(x=>typeof x!=='string'))throw new Error('project-ci 配置无效');
23
+ const roots=[...new Set([tracker.root.replace(/\/$/,''),...config.additional_paths])].sort();
24
+ roots.forEach(ref=>safeFile(root,ref));
25
+ return {roots,config,trackerRoot:tracker.root.replace(/\/$/,'')};
26
+ }
27
+ export function governanceFiles(root, roots) {
28
+ const result=[];
29
+ const visit=ref=>{
30
+ const full=safeFile(root,ref);
31
+ if(!fs.existsSync(full))return;
32
+ const st=fs.lstatSync(full);
33
+ if(st.isDirectory()) for(const name of fs.readdirSync(full).sort())visit(`${ref}/${name}`);
34
+ else if(st.isFile())result.push(ref);
35
+ else throw new Error(`治理范围含不支持的文件: ${ref}`);
36
+ };
37
+ roots.forEach(visit);return [...new Set(result)].sort();
38
+ }
39
+ const checkpoint=(value,ref)=>/(?:^|\/)checkpoint\.(?:yaml|yml|json)$/.test(ref)||Boolean(value?.repository_mode&&value?.stage&&value?.gates);
40
+ const claimed=value=>Boolean(value&&typeof value==='object'&&(['approved','completed','ready-for-agent','running','paused-human-gate'].includes(value.status)||['active','paused','failed','resolved'].includes(value.workflow_status)||value.result==='completed'||value.decision==='approved'||Object.values(value.gates||{}).some(x=>x?.status==='approved')||Object.values(value.artifacts||{}).some(x=>x?.status==='approved')));
41
+ const identityRefs=new Set(['term_refs','skill_refs','principal_ref','drafter_principal_ref','requester_ref','responder_ref','runtime_instance_ref','original_ref','owner_ref']);
42
+ const fileReference=item=>typeof item==='string'&&!/^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(item)&&! /^(?:gate|artifact|work-unit|stage|evidence|check|skill|runtime|role)\.[a-z0-9-]+$/.test(item)&&/[./]/.test(item);
43
+ function references(value, found=new Set()) {
44
+ if(Array.isArray(value))for(const item of value)references(item,found);
45
+ else if(value&&typeof value==='object')for(const [key,item] of Object.entries(value)) {
46
+ if(identityRefs.has(key))continue;
47
+ if((key==='ref'||key.endsWith('_ref'))&&fileReference(item))found.add(item);
48
+ else if((key.endsWith('_refs')||key==='inputs')&&Array.isArray(item))for(const ref of item)if(fileReference(ref))found.add(ref);
49
+ if(item&&typeof item==='object')references(item,found);
50
+ }
51
+ return found;
52
+ }
53
+ function bindings(value, output=[]) {
54
+ if(Array.isArray(value))for(const item of value)bindings(item,output);
55
+ else if(value&&typeof value==='object') {
56
+ if(typeof value.ref==='string'&&(value.digest||value.sha256))output.push([value.ref,value.digest||value.sha256]);
57
+ for(const [key,item] of Object.entries(value)) {
58
+ if(key.endsWith('_ref')&&typeof item==='string'&&value[key.replace(/_ref$/,'_digest')])output.push([item,value[key.replace(/_ref$/,'_digest')]]);
59
+ if(item&&typeof item==='object')bindings(item,output);
60
+ }
61
+ }
62
+ return output;
63
+ }
64
+
65
+ /** Fixed validators only. Checkpoint verification commands are data, never executable input. */
66
+ export function checkProjectGovernance({root,base,checkpointRef,taskRef,recovery=false}={}) {
67
+ root=fs.realpathSync(root);
68
+ const report={schema_version:1,kind:'project-governance-verification',read_only:true,execution_authorization:'not-evaluated',status:'passed',checks:[],diagnostics:[],inputs:[],scope:{roots:[],files:[],checkpoints:[],tasks:[],unrecognized:[],missing_capabilities:[]},base:base||null};
69
+ const observed=new Map();
70
+ const issue=(code,message,ref,exception=false)=>{report.diagnostics.push({code,message,source_ref:ref,recovery:'修复明确输入或证据后重新运行当前校验'});report.status=exception?'error':report.status==='error'?'error':'failed';};
71
+ const observe=ref=>{const hash=fileBinding(root,ref);if(observed.has(ref)&&observed.get(ref)!==hash)throw new Error(`INPUT_DRIFT: ${ref}`);observed.set(ref,hash);return hash;};
72
+ const read=ref=>{if(!observe(ref))throw new Error(`输入不可读: ${ref}`);return fs.readFileSync(safeFile(root,ref));};
73
+ const run=(id,script,args,refs)=>{
74
+ const requirements={
75
+ 'scripts/verify-lifecycle-checkpoint':['.template-spec/process/schemas/lifecycle-checkpoint.schema.json'],
76
+ 'scripts/verify-digital-human-task-package':['.template-spec/process/schemas/digital-human-task-package.schema.json','.template-spec/agents/digital-human-roles.yaml'],
77
+ 'scripts/verify-approval-record':['.template-spec/agents/digital-human-roles.yaml']
78
+ };
79
+ const missing=[script,...(requirements[script]||[])].filter(ref=>!observe(ref));
80
+ if(missing.length){report.scope.missing_capabilities.push(...missing);report.checks.push({id,command:[process.execPath,script,...args],input_refs:refs,exit_code:null,status:'unavailable',missing});issue('capability-missing',`缺少适用校验能力 ${missing.join(', ')},先显式安装对应阶段资产`,script,true);return;}
81
+ const begin=performance.now(),result=spawnSync(process.execPath,[safeFile(root,script),...args],{cwd:root,encoding:'utf8',maxBuffer:8*1024*1024,timeout:120000});
82
+ const unavailable=result.error||result.status===null||result.status===2||/ERR_MODULE_NOT_FOUND|MODULE_NOT_FOUND|ModuleNotFoundError/.test(result.stderr||'');
83
+ report.checks.push({id,command:[process.execPath,script,...args],input_refs:refs,exit_code:result.status,duration_ms:Math.round(performance.now()-begin),stdout:result.stdout||'',stderr:result.stderr||result.error?.message||'',status:result.status===0?'passed':'failed'});
84
+ if(result.status!==0)issue(unavailable?'capability-unavailable':'validation-failed',`${id}: ${result.error?.message||result.stderr||result.stdout}`,refs[0],Boolean(unavailable));
85
+ };
86
+ try {
87
+ for(const ref of ['yss-project.yaml',TRACKER,CI_CONFIG,'CONTEXT.md','.template-spec/process/harness-profile.yaml','.template-spec/process/checkpoint-boundary.yaml','.template-spec/process/lifecycle-registry.yaml','.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml'])observe(ref);
88
+ const {roots}=governanceScope(root);report.scope.roots=roots;
89
+ const registry=readDocument(root,'.template-spec/process/lifecycle-registry.yaml');
90
+ observe(orchestrationRef(root));
91
+ const initial=governanceFiles(root,roots);report.scope.files=initial;
92
+ // Validator code/schema changes invalidate this run too; do not import future Skill validators.
93
+ const toolFiles=governanceFiles(root,['scripts','.template-spec/process/schemas','.template-spec/agents','.agents/skills/yss-product-lifecycle']);
94
+ toolFiles.forEach(observe);
95
+ run('context','scripts/verify-context-contract',['--root',root,'--json'],['CONTEXT.md']);
96
+ report.recovery = recovery ? {sequence:['context','checkpoint','approval','transition','task-package'],dispatch:false,action:'复核实际任务结果及当前证据后由主控继续',prerequisites:['当前适用检查通过','原任务结果明确']} : null;
97
+ const queue=checkpointRef?[checkpointRef]:initial.filter(ref=>/\.(?:ya?ml|json|md)$/.test(ref));
98
+ if(taskRef)queue.push(taskRef);
99
+ const strictRefs=new Set([checkpointRef,taskRef].filter(Boolean));
100
+ const seen=new Set(),values=new Map(),claimFiles=new Set(),tickets=[];
101
+ while(queue.length) {
102
+ const ref=queue.shift();if(seen.has(ref))continue;seen.add(ref);
103
+ let bytes,value;
104
+ try{bytes=read(ref);value=parseGovernance(bytes,ref);}catch(error){issue('input-invalid',error.message,ref,true);continue;}
105
+ values.set(ref,value);
106
+ const isCheckpoint=checkpoint(value,ref),isTask=Boolean(value?.task_id&&value?.work_unit_id&&(value?.contract||['active','paused','failed','resolved'].includes(value.workflow_status)));
107
+ if(isCheckpoint) {
108
+ report.scope.checkpoints.push(ref);
109
+ if(value.repository_mode!=='project-instance')issue('checkpoint-identity-mismatch','checkpoint 身份与项目实例不一致',ref);
110
+ const nextUnit=registry.work_units.find(x=>x.id===value.next_work_unit);
111
+ if(nextUnit?.scope==='template-source'&&nextUnit.id!=='work-unit.entry-triage')issue('work-unit-scope-invalid','项目实例不得路由模板维护工作单元',ref);
112
+ for(const id of Object.keys(value.artifacts||{}))if(!registry.artifacts.some(x=>x.id===id))issue('artifact-id-unknown',`未识别生命周期资产 ID: ${id}`,ref);
113
+ try{assertCheckpointBoundary(value,{root});}catch(error){issue('checkpoint-boundary-invalid',error.message,ref);}
114
+ run('checkpoint','scripts/verify-lifecycle-checkpoint',[ref],[ref]);
115
+ if(claimed(value))claimFiles.add(ref);
116
+ if(value.stage_trace?.completed_work_unit)run('transition','scripts/project-ci-transition',[ref],[ref]);
117
+ else if(['running','completed'].includes(value.status)&&['resume','orchestrate'].includes(value.mode))issue('transition-origin-missing','当前流转缺少 stage_trace.completed_work_unit,无法核验前后因果',ref);
118
+ if(recovery&&(value.blockers?.length||['blocked','stale'].includes(value.status)))issue('recovery-blocked','当前 checkpoint 存在阻塞',ref);
119
+ } else if(isTask) {
120
+ report.scope.tasks.push(ref);run('task-package','scripts/verify-digital-human-task-package',[ref],[ref]);
121
+ if(recovery) {
122
+ const status=value.workflow_status;
123
+ if(status==='resolved'&&!value.result?.evidence_refs?.length&&!value.verification_results?.length)issue('task-result-unknown','resolved 任务缺少实际结果引用,不能判定完成',ref);
124
+ if(status!=='resolved')issue('task-not-resolved',`任务状态 ${status||'unknown'};先核查原任务,禁止重复派发`,ref);
125
+ }
126
+ } else if(value?.gate_id&&value?.decision==='approved') {
127
+ run('approval','scripts/verify-approval-record',['--require-approved',ref],[ref]);
128
+ } else if(claimed(value)) {
129
+ // Claimed assets need an owning checkpoint; owner-specific validators are called through it.
130
+ claimFiles.add(ref);
131
+ } else report.scope.unrecognized.push(ref);
132
+ if(/(?:^|\n)Status:\s*ready-for-agent\s*(?:\n|$)/.test(bytes.toString()))tickets.push(ref);
133
+ if(isCheckpoint||isTask||claimed(value)||value?.gate_id||strictRefs.has(ref)) {
134
+ for(const dependency of references(value)) {
135
+ if(!strictRefs.has(dependency)){strictRefs.add(dependency);seen.delete(dependency);}
136
+ try{read(dependency);if(/\.(?:ya?ml|json|md)$/.test(dependency))queue.push(dependency);}catch(error){issue('reference-unreadable',error.message,ref);}
137
+ }
138
+ for(const [target,hash] of bindings(value)) {
139
+ try{const actual=observe(target);if(actual!==String(hash).replace(/^(?!sha256:)/,'sha256:'))issue('evidence-drift',`摘要不一致: ${target}`,ref);}catch(error){issue('evidence-unreadable',error.message,ref);}
140
+ }
141
+ }
142
+ }
143
+ if(checkpointRef&&!report.scope.checkpoints.includes(checkpointRef))issue('checkpoint-unrecognized','指定引用不是可识别的 checkpoint',checkpointRef);
144
+ if(taskRef&&!report.scope.tasks.includes(taskRef))issue('task-unrecognized','指定引用不是可识别的任务包',taskRef);
145
+ const owned=new Set();
146
+ const owningQueue=[...report.scope.checkpoints];
147
+ while(owningQueue.length)for(const dependency of references(values.get(owningQueue.shift())))if(!owned.has(dependency)){owned.add(dependency);owningQueue.push(dependency);}
148
+ for(const ref of claimFiles)if(!report.scope.checkpoints.includes(ref)) {
149
+ if(!owned.has(ref))issue('claim-without-checkpoint','已声明完成或批准的资产缺少 checkpoint 归属',ref);
150
+ else {
151
+ const asset=values.get(ref),contract=asset?.slice_contract||asset;
152
+ if(contract?.contract_id&&contract?.work_units)run('slice-contract','scripts/slice-contract',['verify',ref,'--root',root,'--json'],[ref]);
153
+ else {report.scope.unrecognized.push(ref);report.scope.missing_capabilities.push(ref);issue('asset-validator-missing','当前声称批准或完成的结构化资产缺少已接入的专属校验能力;补齐资产校验适配后重验',ref,true);}
154
+ }
155
+ }
156
+ for(const ref of tickets)if(!owned.has(ref)&&!report.scope.tasks.some(t=>references(values.get(t)).has(ref)))issue('ticket-without-readiness','ready-for-agent Ticket 缺少当前 checkpoint/任务包证据',ref);
157
+ if(base) {
158
+ if(!/^[a-fA-F0-9]{40}$/.test(base))throw new Error('--base 必须为完整 40 位 commit');
159
+ const git=args=>{const r=spawnSync('git',args,{cwd:root,encoding:'utf8',maxBuffer:16*1024*1024});if(r.status!==0)throw new Error(r.stderr||'Git 基线不可读');return r.stdout;};
160
+ git(['cat-file','-e',`${base}^{commit}`]);
161
+ const oldFiles=git(['ls-tree','-r','--name-only','-z',base]).split('\0').filter(Boolean);
162
+ const oldTracker=parseGovernance(git(['show',`${base}:${TRACKER}`]),TRACKER)?.tracker;
163
+ const oldConfig=oldFiles.includes(CI_CONFIG)?parseGovernance(git(['show',`${base}:${CI_CONFIG}`]),CI_CONFIG):{additional_paths:[]};
164
+ const oldRoots=[oldTracker?.root?.replace(/\/$/,''),...(oldConfig.additional_paths||[])].filter(Boolean);
165
+ for(const ref of oldRoots)if(!roots.some(r=>ref===r||ref.startsWith(r+'/')))issue('scope-reduced',`相对基线缩小检查范围: ${ref}`,CI_CONFIG);
166
+ const oldValues=new Map();
167
+ const oldRead=ref=>{if(!oldValues.has(ref))oldValues.set(ref,parseGovernance(git(['show',`${base}:${ref}`]),ref));return oldValues.get(ref);};
168
+ const oldScope=oldFiles.filter(ref=>oldRoots.some(r=>ref===r||ref.startsWith(r+'/'))&&/\.(?:ya?ml|json|md)$/.test(ref));
169
+ const oldEvidence=new Set(),oldQueue=[];
170
+ for(const ref of oldScope)if(claimed(oldRead(ref)))oldQueue.push(ref);
171
+ while(oldQueue.length){const ref=oldQueue.shift();if(oldEvidence.has(ref))continue;oldEvidence.add(ref);if(!observe(ref))issue('approved-evidence-deleted',`基线批准依据已删除: ${ref}`,ref);if(/\.(?:ya?ml|json|md)$/.test(ref)&&oldFiles.includes(ref))for(const dep of references(oldRead(ref)))if(oldFiles.includes(dep))oldQueue.push(dep);}
172
+ for(const ref of oldScope.filter(ref=>/\.(?:ya?ml|json)$/.test(ref))) {
173
+ const old=parseGovernance(git(['show',`${base}:${ref}`]),ref);
174
+ if(!checkpoint(old,ref))continue;
175
+ if(!observe(ref)){issue('checkpoint-deleted',`基线 checkpoint 已删除: ${ref}`,ref);continue;}
176
+ const now=values.get(ref);
177
+ if(!report.scope.checkpoints.includes(ref))issue('checkpoint-unassessed',`基线 checkpoint 不再被识别或检查: ${ref}`,ref);
178
+ for(const [id,state] of Object.entries(old.gates||{}))if(state.status==='approved'&&!now?.gates?.[id])issue('approval-claim-removed',`基线批准 ${id} 被移除,须保留历史与当前处置`,ref);
179
+ if(claimed(old))for(const dep of references(old))if(!observe(dep))issue('approved-evidence-deleted',`基线批准依据已删除: ${dep}`,ref);
180
+ }
181
+ }
182
+ if(JSON.stringify(initial)!==JSON.stringify(governanceFiles(root,roots))||JSON.stringify(toolFiles)!==JSON.stringify(governanceFiles(root,['scripts','.template-spec/process/schemas','.template-spec/agents','.agents/skills/yss-product-lifecycle'])))throw new Error('INPUT_DRIFT: 检查范围发生变化');
183
+ for(const [ref,hash] of observed)if(fileBinding(root,ref)!==hash)throw new Error(`INPUT_DRIFT: ${ref}`);
184
+ }catch(error){issue('input-or-execution-error',error.message,checkpointRef||null,true);}
185
+ report.scope.files=[...new Set([...report.scope.files,...observed.keys()].filter(ref=>!ref.startsWith('scripts/')&&!ref.startsWith('.agents/')))].sort();
186
+ report.inputs=[...observed].sort(([a],[b])=>a.localeCompare(b)).map(([ref,sha256])=>({ref,sha256}));
187
+ report.input_digest=digest(JSON.stringify(report.inputs));
188
+ return {report,exitCode:report.status==='passed'?0:report.status==='error'?2:1};
189
+ }