create-yss-spec 3.3.6 → 3.3.8

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 (222) hide show
  1. package/README.md +12 -13
  2. package/package.json +1 -1
  3. package/src/template/instance-runtime.js +8 -2
  4. package/src/validation/snapshot.js +7 -0
  5. package/template/.agents/skills/.strategic-design-skills-manifest.json +6 -4
  6. package/template/.agents/skills/archify/SKILL.md +1 -1
  7. package/template/.agents/skills/implementation-repo-onboarding/SKILL.md +2 -2
  8. package/template/.agents/skills/yss-application/SKILL.md +1 -1
  9. package/template/.agents/skills/yss-application/references/profiles/existing-domain-driven-maven.md +5 -0
  10. package/template/.agents/skills/yss-application/references/profiles/existing-layered-mvc-maven.md +5 -0
  11. package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +2 -2
  12. package/template/.agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +4 -0
  13. package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +6 -1
  14. package/template/.agents/skills/yss-prototype-stage/SKILL.md +10 -1
  15. package/template/.agents/skills/yss-stage-decision/SKILL.md +13 -4
  16. package/template/.agents/skills/yss-stage-decision/references/domain-strategy-contract.md +4 -3
  17. package/template/.agents/skills/yss-stage-decision/references/domain-strategy-v2.schema.json +8 -0
  18. package/template/.agents/skills/yss-stage-decision/references/domain-strategy-v3.schema.json +8 -0
  19. package/template/.agents/skills/yss-stage-decision/references/domain-strategy.schema.json +75 -5
  20. package/template/.agents/skills/yss-stage-decision/references/stage-decision-package-contract.md +4 -4
  21. package/template/.agents/skills/yss-stage-decision/references/stage-decision-package-v2.schema.json +8 -0
  22. package/template/.agents/skills/yss-stage-decision/references/stage-decision-package-v3.schema.json +8 -0
  23. package/template/.agents/skills/yss-stage-decision/references/stage-decision-package.schema.json +59 -9
  24. package/template/.agents/skills/yss-stage-decision/references/validation-rules.md +2 -2
  25. package/template/.agents/skills/yss-stage-decision/scripts/migrate-contract-v3.mjs +143 -0
  26. package/template/.agents/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +46 -4
  27. package/template/.agents/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +48 -4
  28. package/template/.agents/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +42 -13
  29. package/template/.agents/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +37 -5
  30. package/template/.agents/skills/yss-stage-decision/tests/run-scenarios.mjs +116 -23
  31. package/template/.agents/skills/yss-technical-design/SKILL.md +2 -0
  32. package/template/.agents/skills/yss-technical-design/references/engineering-design.schema.json +224 -0
  33. package/template/.agents/skills/yss-technical-design/references/technical-design-common.schema.json +6 -0
  34. package/template/.agents/skills/yss-technical-design/references/technical-design.schema.json +288 -10
  35. package/template/.agents/skills/yss-technical-design/scripts/engineering-design.mjs +30 -0
  36. package/template/.agents/skills/yss-technical-design/scripts/generate-schema.mjs +2 -1
  37. package/template/.agents/skills/yss-technical-design/scripts/validate-technical-design.mjs +20 -8
  38. package/template/.agents/skills/yss-technical-design/tests/engineering-scenarios.mjs +12 -0
  39. package/template/.agents/skills/yss-web-controller/SKILL.md +1 -1
  40. package/template/.agents/skills/yss-web-controller/references/profiles/existing-domain-driven-maven.md +5 -0
  41. package/template/.agents/skills/yss-web-controller/references/profiles/existing-layered-mvc-maven.md +5 -0
  42. package/template/.codex/skills/archify/SKILL.md +1 -1
  43. package/template/.codex/skills/implementation-repo-onboarding/SKILL.md +2 -2
  44. package/template/.codex/skills/yss-application/SKILL.md +1 -1
  45. package/template/.codex/skills/yss-application/references/profiles/existing-domain-driven-maven.md +5 -0
  46. package/template/.codex/skills/yss-application/references/profiles/existing-layered-mvc-maven.md +5 -0
  47. package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +2 -2
  48. package/template/.codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +4 -0
  49. package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +6 -1
  50. package/template/.codex/skills/yss-prototype-stage/SKILL.md +10 -1
  51. package/template/.codex/skills/yss-stage-decision/SKILL.md +13 -4
  52. package/template/.codex/skills/yss-stage-decision/references/domain-strategy-contract.md +4 -3
  53. package/template/.codex/skills/yss-stage-decision/references/domain-strategy-v2.schema.json +8 -0
  54. package/template/.codex/skills/yss-stage-decision/references/domain-strategy-v3.schema.json +8 -0
  55. package/template/.codex/skills/yss-stage-decision/references/domain-strategy.schema.json +75 -5
  56. package/template/.codex/skills/yss-stage-decision/references/stage-decision-package-contract.md +4 -4
  57. package/template/.codex/skills/yss-stage-decision/references/stage-decision-package-v2.schema.json +8 -0
  58. package/template/.codex/skills/yss-stage-decision/references/stage-decision-package-v3.schema.json +8 -0
  59. package/template/.codex/skills/yss-stage-decision/references/stage-decision-package.schema.json +59 -9
  60. package/template/.codex/skills/yss-stage-decision/references/validation-rules.md +2 -2
  61. package/template/.codex/skills/yss-stage-decision/scripts/migrate-contract-v3.mjs +143 -0
  62. package/template/.codex/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +46 -4
  63. package/template/.codex/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +48 -4
  64. package/template/.codex/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +42 -13
  65. package/template/.codex/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +37 -5
  66. package/template/.codex/skills/yss-stage-decision/tests/run-scenarios.mjs +116 -23
  67. package/template/.codex/skills/yss-technical-design/SKILL.md +2 -0
  68. package/template/.codex/skills/yss-technical-design/references/engineering-design.schema.json +224 -0
  69. package/template/.codex/skills/yss-technical-design/references/technical-design-common.schema.json +6 -0
  70. package/template/.codex/skills/yss-technical-design/references/technical-design.schema.json +288 -10
  71. package/template/.codex/skills/yss-technical-design/scripts/engineering-design.mjs +30 -0
  72. package/template/.codex/skills/yss-technical-design/scripts/generate-schema.mjs +2 -1
  73. package/template/.codex/skills/yss-technical-design/scripts/validate-technical-design.mjs +20 -8
  74. package/template/.codex/skills/yss-technical-design/tests/engineering-scenarios.mjs +12 -0
  75. package/template/.codex/skills/yss-web-controller/SKILL.md +1 -1
  76. package/template/.codex/skills/yss-web-controller/references/profiles/existing-domain-driven-maven.md +5 -0
  77. package/template/.codex/skills/yss-web-controller/references/profiles/existing-layered-mvc-maven.md +5 -0
  78. package/template/.cursor/skills/archify/SKILL.md +1 -1
  79. package/template/.cursor/skills/implementation-repo-onboarding/SKILL.md +2 -2
  80. package/template/.cursor/skills/yss-application/SKILL.md +1 -1
  81. package/template/.cursor/skills/yss-application/references/profiles/existing-domain-driven-maven.md +5 -0
  82. package/template/.cursor/skills/yss-application/references/profiles/existing-layered-mvc-maven.md +5 -0
  83. package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +2 -2
  84. package/template/.cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +4 -0
  85. package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +6 -1
  86. package/template/.cursor/skills/yss-prototype-stage/SKILL.md +10 -1
  87. package/template/.cursor/skills/yss-stage-decision/SKILL.md +13 -4
  88. package/template/.cursor/skills/yss-stage-decision/references/domain-strategy-contract.md +4 -3
  89. package/template/.cursor/skills/yss-stage-decision/references/domain-strategy-v2.schema.json +8 -0
  90. package/template/.cursor/skills/yss-stage-decision/references/domain-strategy-v3.schema.json +8 -0
  91. package/template/.cursor/skills/yss-stage-decision/references/domain-strategy.schema.json +75 -5
  92. package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package-contract.md +4 -4
  93. package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package-v2.schema.json +8 -0
  94. package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package-v3.schema.json +8 -0
  95. package/template/.cursor/skills/yss-stage-decision/references/stage-decision-package.schema.json +59 -9
  96. package/template/.cursor/skills/yss-stage-decision/references/validation-rules.md +2 -2
  97. package/template/.cursor/skills/yss-stage-decision/scripts/migrate-contract-v3.mjs +143 -0
  98. package/template/.cursor/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +46 -4
  99. package/template/.cursor/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +48 -4
  100. package/template/.cursor/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +42 -13
  101. package/template/.cursor/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +37 -5
  102. package/template/.cursor/skills/yss-stage-decision/tests/run-scenarios.mjs +116 -23
  103. package/template/.cursor/skills/yss-technical-design/SKILL.md +2 -0
  104. package/template/.cursor/skills/yss-technical-design/references/engineering-design.schema.json +224 -0
  105. package/template/.cursor/skills/yss-technical-design/references/technical-design-common.schema.json +6 -0
  106. package/template/.cursor/skills/yss-technical-design/references/technical-design.schema.json +288 -10
  107. package/template/.cursor/skills/yss-technical-design/scripts/engineering-design.mjs +30 -0
  108. package/template/.cursor/skills/yss-technical-design/scripts/generate-schema.mjs +2 -1
  109. package/template/.cursor/skills/yss-technical-design/scripts/validate-technical-design.mjs +20 -8
  110. package/template/.cursor/skills/yss-technical-design/tests/engineering-scenarios.mjs +12 -0
  111. package/template/.cursor/skills/yss-web-controller/SKILL.md +1 -1
  112. package/template/.cursor/skills/yss-web-controller/references/profiles/existing-domain-driven-maven.md +5 -0
  113. package/template/.cursor/skills/yss-web-controller/references/profiles/existing-layered-mvc-maven.md +5 -0
  114. package/template/.pi/skills/archify/SKILL.md +1 -1
  115. package/template/.pi/skills/implementation-repo-onboarding/SKILL.md +2 -2
  116. package/template/.pi/skills/yss-application/SKILL.md +1 -1
  117. package/template/.pi/skills/yss-application/references/profiles/existing-domain-driven-maven.md +5 -0
  118. package/template/.pi/skills/yss-application/references/profiles/existing-layered-mvc-maven.md +5 -0
  119. package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +2 -2
  120. package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +4 -0
  121. package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +6 -1
  122. package/template/.pi/skills/yss-prototype-stage/SKILL.md +10 -1
  123. package/template/.pi/skills/yss-stage-decision/SKILL.md +13 -4
  124. package/template/.pi/skills/yss-stage-decision/references/domain-strategy-contract.md +4 -3
  125. package/template/.pi/skills/yss-stage-decision/references/domain-strategy-v2.schema.json +8 -0
  126. package/template/.pi/skills/yss-stage-decision/references/domain-strategy-v3.schema.json +8 -0
  127. package/template/.pi/skills/yss-stage-decision/references/domain-strategy.schema.json +75 -5
  128. package/template/.pi/skills/yss-stage-decision/references/stage-decision-package-contract.md +4 -4
  129. package/template/.pi/skills/yss-stage-decision/references/stage-decision-package-v2.schema.json +8 -0
  130. package/template/.pi/skills/yss-stage-decision/references/stage-decision-package-v3.schema.json +8 -0
  131. package/template/.pi/skills/yss-stage-decision/references/stage-decision-package.schema.json +59 -9
  132. package/template/.pi/skills/yss-stage-decision/references/validation-rules.md +2 -2
  133. package/template/.pi/skills/yss-stage-decision/scripts/migrate-contract-v3.mjs +143 -0
  134. package/template/.pi/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +46 -4
  135. package/template/.pi/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +48 -4
  136. package/template/.pi/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +42 -13
  137. package/template/.pi/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +37 -5
  138. package/template/.pi/skills/yss-stage-decision/tests/run-scenarios.mjs +116 -23
  139. package/template/.pi/skills/yss-technical-design/SKILL.md +2 -0
  140. package/template/.pi/skills/yss-technical-design/references/engineering-design.schema.json +224 -0
  141. package/template/.pi/skills/yss-technical-design/references/technical-design-common.schema.json +6 -0
  142. package/template/.pi/skills/yss-technical-design/references/technical-design.schema.json +288 -10
  143. package/template/.pi/skills/yss-technical-design/scripts/engineering-design.mjs +30 -0
  144. package/template/.pi/skills/yss-technical-design/scripts/generate-schema.mjs +2 -1
  145. package/template/.pi/skills/yss-technical-design/scripts/validate-technical-design.mjs +20 -8
  146. package/template/.pi/skills/yss-technical-design/tests/engineering-scenarios.mjs +12 -0
  147. package/template/.pi/skills/yss-web-controller/SKILL.md +1 -1
  148. package/template/.pi/skills/yss-web-controller/references/profiles/existing-domain-driven-maven.md +5 -0
  149. package/template/.pi/skills/yss-web-controller/references/profiles/existing-layered-mvc-maven.md +5 -0
  150. package/template/README.md +4 -6
  151. package/template/docs/agents/backend-architecture-profiles.md +4 -0
  152. package/template/docs/agents/yss-skill-registry.yaml +13 -0
  153. package/template/docs/design/templates/prototype-confirmation-template.md +2 -2
  154. package/template/docs/design/templates/prototype-review-checklist.md +2 -2
  155. package/template/docs/plan/templates/market-analysis-template.md +3 -3
  156. package/template/docs/plan/templates/user-pain-points-template.md +3 -3
  157. package/template/docs/process/delivery-preflight.md +72 -0
  158. package/template/docs/process/document-writing.md +5 -1
  159. package/template/docs/process/existing-backend-architecture.md +31 -0
  160. package/template/docs/process/existing-ui-baseline.md +40 -0
  161. package/template/docs/process/frontend-backend-delivery.md +21 -5
  162. package/template/docs/process/implementation-repo-integration.md +6 -0
  163. package/template/docs/process/schemas/backend-architecture-identity.schema.json +111 -14
  164. package/template/docs/process/schemas/backend-delivery.schema.json +4 -0
  165. package/template/docs/process/schemas/delivery-preflight-input.schema.json +158 -0
  166. package/template/docs/process/schemas/delivery-preflight-result.schema.json +159 -0
  167. package/template/docs/process/schemas/digital-human-task-package.schema.json +1 -1
  168. package/template/docs/process/schemas/existing-ui-baseline.schema.json +365 -0
  169. package/template/docs/process/schemas/frontend-delivery-acceptance-v1.schema.json +200 -0
  170. package/template/docs/process/schemas/frontend-delivery-acceptance-v3.schema.json +308 -0
  171. package/template/docs/process/schemas/frontend-delivery-acceptance.schema.json +37 -3
  172. package/template/docs/process/schemas/frontend-strategic-preflight-v2.schema.json +114 -0
  173. package/template/docs/process/schemas/frontend-strategic-preflight.schema.json +32 -0
  174. package/template/docs/process/schemas/lifecycle-checkpoint.schema.json +2 -1
  175. package/template/docs/process/schemas/strategic-consumer-feedback.schema.json +40 -0
  176. package/template/docs/process/schemas/strategic-design-handoff-v3.schema.json +743 -0
  177. package/template/docs/process/schemas/strategic-design-handoff-v4.schema.json +712 -0
  178. package/template/docs/process/schemas/strategic-design-handoff-v5.schema.json +932 -0
  179. package/template/docs/process/schemas/strategic-feedback-adjudication.schema.json +42 -0
  180. package/template/docs/process/schemas/strategic-handoff-domain-strategy-v3.schema.json +216 -0
  181. package/template/docs/process/schemas/strategic-handoff-export-v2.schema.json +378 -0
  182. package/template/docs/process/schemas/strategic-handoff-import-receipt.schema.json +39 -0
  183. package/template/docs/process/schemas/strategic-handoff-stage-decision-package-v3.schema.json +148 -0
  184. package/template/docs/process/strategic-handoff-package.md +51 -10
  185. package/template/docs/process/templates/lifecycle-checkpoint-template.yaml +1 -0
  186. package/template/docs/process/templates/stage-checkpoint-template.md +1 -0
  187. package/template/docs/user-guide//346/212/200/346/234/257/350/256/276/350/256/241/347/224/250/346/210/267/346/214/207/345/215/227.md +43 -0
  188. package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214.md +83 -67
  189. package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214/347/264/242/345/274/225.md +9 -10
  190. package/template/docs/user-guide//350/256/276/345/244/207/345/200/237/347/224/250/350/264/257/347/251/277/346/241/210/344/276/213.md +12 -9
  191. package/template/scripts/backend-delivery +20 -4
  192. package/template/scripts/lib/approval-record.mjs +2 -1
  193. package/template/scripts/lib/approved-execution-context.mjs +106 -0
  194. package/template/scripts/lib/backend-architecture.mjs +12 -0
  195. package/template/scripts/lib/backend-delivery.mjs +21 -5
  196. package/template/scripts/lib/delivery-preflight.mjs +238 -0
  197. package/template/scripts/lib/existing-backend-architecture.mjs +139 -0
  198. package/template/scripts/lib/existing-ui-baseline.mjs +84 -0
  199. package/template/scripts/lib/frontend-delivery-boundary.mjs +20 -4
  200. package/template/scripts/lib/frontend-delivery.mjs +76 -4
  201. package/template/scripts/lib/implementation-contract-compiler.mjs +19 -5
  202. package/template/scripts/lib/json-schema.mjs +19 -4
  203. package/template/scripts/lib/profile-skill-sync.mjs +26 -0
  204. package/template/scripts/lib/strategic-feedback.mjs +33 -0
  205. package/template/scripts/lib/strategic-handoff-consumption.mjs +11 -5
  206. package/template/scripts/lib/strategic-handoff-design-targets.mjs +2 -3
  207. package/template/scripts/lib/strategic-handoff-io.mjs +11 -0
  208. package/template/scripts/lib/strategic-handoff.mjs +143 -34
  209. package/template/scripts/lib/task-package.mjs +11 -3
  210. package/template/scripts/lib/technical-design-boundary.mjs +9 -1
  211. package/template/scripts/lib/ui-baseline.mjs +26 -0
  212. package/template/scripts/lib/user-decision-reuse.mjs +38 -0
  213. package/template/scripts/lib/user-decision.mjs +4 -1
  214. package/template/scripts/preflight-delivery +14 -0
  215. package/template/scripts/strategic-feedback +10 -0
  216. package/template/scripts/strategic-handoff +19 -4
  217. package/template/scripts/sync-profile-skills +4 -5
  218. package/template/scripts/verify-frontend-strategic-preflight +12 -0
  219. package/template/skills-lock.json +18 -18
  220. package/template.manifest.json +1 -0
  221. package/template.snapshot.json +6 -5
  222. package/template/docs/user-guide//346/210/230/346/234/257/350/256/276/350/256/241/345/255/220/351/241/271/347/233/256/347/224/250/346/210/267/346/211/213/345/206/214.md +0 -35
@@ -0,0 +1,365 @@
1
+ {
2
+ "type": "object",
3
+ "additionalProperties": false,
4
+ "required": [
5
+ "schema_version",
6
+ "kind",
7
+ "source_kind",
8
+ "baseline_id",
9
+ "version",
10
+ "status",
11
+ "ui_change",
12
+ "source",
13
+ "build",
14
+ "capture",
15
+ "openapi",
16
+ "replay",
17
+ "cases"
18
+ ],
19
+ "properties": {
20
+ "schema_version": {
21
+ "const": 1
22
+ },
23
+ "kind": {
24
+ "const": "existing-ui-baseline"
25
+ },
26
+ "source_kind": {
27
+ "const": "existing-registration"
28
+ },
29
+ "baseline_id": {
30
+ "type": "string",
31
+ "pattern": "^existing-ui-baseline\\.[a-z0-9][a-z0-9-]*$"
32
+ },
33
+ "version": {
34
+ "type": "string",
35
+ "pattern": "^v[1-9][0-9]*$"
36
+ },
37
+ "status": {
38
+ "enum": [
39
+ "ready-for-human",
40
+ "approved"
41
+ ]
42
+ },
43
+ "ui_change": {
44
+ "const": "none"
45
+ },
46
+ "source": {
47
+ "type": "object",
48
+ "additionalProperties": false,
49
+ "required": [
50
+ "repository_id",
51
+ "project_id",
52
+ "source_commit",
53
+ "root_ref",
54
+ "digest",
55
+ "manifest",
56
+ "lock"
57
+ ],
58
+ "properties": {
59
+ "repository_id": {
60
+ "type": "string",
61
+ "minLength": 1
62
+ },
63
+ "project_id": {
64
+ "type": "string",
65
+ "minLength": 1
66
+ },
67
+ "source_commit": {
68
+ "type": "string",
69
+ "pattern": "^[a-f0-9]{40}$"
70
+ },
71
+ "root_ref": {
72
+ "type": "string",
73
+ "minLength": 1
74
+ },
75
+ "digest": {
76
+ "type": "string",
77
+ "pattern": "^sha256:[a-f0-9]{64}$"
78
+ },
79
+ "manifest": {
80
+ "type": "object",
81
+ "additionalProperties": false,
82
+ "required": [
83
+ "ref",
84
+ "digest"
85
+ ],
86
+ "properties": {
87
+ "ref": {
88
+ "type": "string",
89
+ "minLength": 1
90
+ },
91
+ "digest": {
92
+ "type": "string",
93
+ "pattern": "^sha256:[a-f0-9]{64}$"
94
+ }
95
+ }
96
+ },
97
+ "lock": {
98
+ "type": "object",
99
+ "additionalProperties": false,
100
+ "required": [
101
+ "ref",
102
+ "digest"
103
+ ],
104
+ "properties": {
105
+ "ref": {
106
+ "type": "string",
107
+ "minLength": 1
108
+ },
109
+ "digest": {
110
+ "type": "string",
111
+ "pattern": "^sha256:[a-f0-9]{64}$"
112
+ }
113
+ }
114
+ }
115
+ }
116
+ },
117
+ "build": {
118
+ "type": "object",
119
+ "additionalProperties": false,
120
+ "required": [
121
+ "ref",
122
+ "digest"
123
+ ],
124
+ "properties": {
125
+ "ref": {
126
+ "type": "string",
127
+ "minLength": 1
128
+ },
129
+ "digest": {
130
+ "type": "string",
131
+ "pattern": "^sha256:[a-f0-9]{64}$"
132
+ }
133
+ }
134
+ },
135
+ "capture": {
136
+ "type": "object",
137
+ "additionalProperties": false,
138
+ "required": [
139
+ "ref",
140
+ "digest"
141
+ ],
142
+ "properties": {
143
+ "ref": {
144
+ "type": "string",
145
+ "minLength": 1
146
+ },
147
+ "digest": {
148
+ "type": "string",
149
+ "pattern": "^sha256:[a-f0-9]{64}$"
150
+ }
151
+ }
152
+ },
153
+ "openapi": {
154
+ "type": "object",
155
+ "additionalProperties": false,
156
+ "required": [
157
+ "ref",
158
+ "digest"
159
+ ],
160
+ "properties": {
161
+ "ref": {
162
+ "type": "string",
163
+ "minLength": 1
164
+ },
165
+ "digest": {
166
+ "type": "string",
167
+ "pattern": "^sha256:[a-f0-9]{64}$"
168
+ }
169
+ }
170
+ },
171
+ "replay": {
172
+ "type": "object",
173
+ "additionalProperties": false,
174
+ "required": [
175
+ "ref",
176
+ "digest"
177
+ ],
178
+ "properties": {
179
+ "ref": {
180
+ "type": "string",
181
+ "minLength": 1
182
+ },
183
+ "digest": {
184
+ "type": "string",
185
+ "pattern": "^sha256:[a-f0-9]{64}$"
186
+ }
187
+ }
188
+ },
189
+ "cases": {
190
+ "type": "array",
191
+ "minItems": 1,
192
+ "uniqueItems": true,
193
+ "items": {
194
+ "type": "object",
195
+ "additionalProperties": false,
196
+ "required": [
197
+ "case_id",
198
+ "route",
199
+ "state",
200
+ "viewport",
201
+ "source_refs",
202
+ "actions",
203
+ "image",
204
+ "api"
205
+ ],
206
+ "properties": {
207
+ "case_id": {
208
+ "type": "string",
209
+ "pattern": "^[a-z0-9][a-z0-9-]*$"
210
+ },
211
+ "route": {
212
+ "type": "string",
213
+ "minLength": 1
214
+ },
215
+ "state": {
216
+ "type": "string",
217
+ "minLength": 1
218
+ },
219
+ "viewport": {
220
+ "type": "object",
221
+ "additionalProperties": false,
222
+ "required": [
223
+ "width",
224
+ "height"
225
+ ],
226
+ "properties": {
227
+ "width": {
228
+ "type": "integer",
229
+ "minimum": 1
230
+ },
231
+ "height": {
232
+ "type": "integer",
233
+ "minimum": 1
234
+ }
235
+ }
236
+ },
237
+ "source_refs": {
238
+ "type": "array",
239
+ "minItems": 1,
240
+ "uniqueItems": true,
241
+ "items": {
242
+ "type": "string",
243
+ "minLength": 1
244
+ }
245
+ },
246
+ "actions": {
247
+ "type": "object",
248
+ "additionalProperties": false,
249
+ "required": [
250
+ "ref",
251
+ "digest"
252
+ ],
253
+ "properties": {
254
+ "ref": {
255
+ "type": "string",
256
+ "minLength": 1
257
+ },
258
+ "digest": {
259
+ "type": "string",
260
+ "pattern": "^sha256:[a-f0-9]{64}$"
261
+ }
262
+ }
263
+ },
264
+ "image": {
265
+ "type": "object",
266
+ "additionalProperties": false,
267
+ "required": [
268
+ "ref",
269
+ "digest"
270
+ ],
271
+ "properties": {
272
+ "ref": {
273
+ "type": "string",
274
+ "minLength": 1
275
+ },
276
+ "digest": {
277
+ "type": "string",
278
+ "pattern": "^sha256:[a-f0-9]{64}$"
279
+ }
280
+ }
281
+ },
282
+ "api": {
283
+ "type": "object",
284
+ "additionalProperties": false,
285
+ "required": [
286
+ "ref",
287
+ "digest"
288
+ ],
289
+ "properties": {
290
+ "ref": {
291
+ "type": "string",
292
+ "minLength": 1
293
+ },
294
+ "digest": {
295
+ "type": "string",
296
+ "pattern": "^sha256:[a-f0-9]{64}$"
297
+ }
298
+ }
299
+ }
300
+ }
301
+ }
302
+ },
303
+ "api_route_mapping": {
304
+ "type": "object",
305
+ "additionalProperties": false,
306
+ "required": [
307
+ "kind",
308
+ "config",
309
+ "environment",
310
+ "prefix",
311
+ "replacement"
312
+ ],
313
+ "properties": {
314
+ "kind": {
315
+ "const": "vite-env-prefix-rewrite"
316
+ },
317
+ "config": {
318
+ "type": "object",
319
+ "additionalProperties": false,
320
+ "required": [
321
+ "ref",
322
+ "digest"
323
+ ],
324
+ "properties": {
325
+ "ref": {
326
+ "type": "string",
327
+ "minLength": 1
328
+ },
329
+ "digest": {
330
+ "type": "string",
331
+ "pattern": "^sha256:[a-f0-9]{64}$"
332
+ }
333
+ }
334
+ },
335
+ "environment": {
336
+ "type": "object",
337
+ "additionalProperties": false,
338
+ "required": [
339
+ "ref",
340
+ "digest"
341
+ ],
342
+ "properties": {
343
+ "ref": {
344
+ "type": "string",
345
+ "minLength": 1
346
+ },
347
+ "digest": {
348
+ "type": "string",
349
+ "pattern": "^sha256:[a-f0-9]{64}$"
350
+ }
351
+ }
352
+ },
353
+ "prefix": {
354
+ "type": "string",
355
+ "pattern": "^(/[A-Za-z0-9_-]+)+$"
356
+ },
357
+ "replacement": {
358
+ "const": ""
359
+ }
360
+ }
361
+ }
362
+ },
363
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
364
+ "$id": "https://yss.dev/schemas/existing-ui-baseline.schema.json"
365
+ }
@@ -0,0 +1,200 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "schema_version": {
7
+ "const": 1
8
+ },
9
+ "status": {
10
+ "const": "accepted"
11
+ },
12
+ "slice_id": {
13
+ "type": "string",
14
+ "minLength": 1
15
+ },
16
+ "backend_delivery": {
17
+ "type": "object",
18
+ "additionalProperties": false,
19
+ "properties": {
20
+ "import_receipt_ref": {
21
+ "type": "string",
22
+ "minLength": 1
23
+ },
24
+ "bundle_digest": {
25
+ "type": "string",
26
+ "pattern": "^sha256:[0-9a-f]{64}$"
27
+ }
28
+ },
29
+ "required": [
30
+ "import_receipt_ref",
31
+ "bundle_digest"
32
+ ]
33
+ },
34
+ "strategic_handoff": {
35
+ "type": "object",
36
+ "additionalProperties": false,
37
+ "properties": {
38
+ "import_receipt_ref": {
39
+ "type": "string",
40
+ "minLength": 1
41
+ },
42
+ "bundle_digest": {
43
+ "type": "string",
44
+ "pattern": "^sha256:[0-9a-f]{64}$"
45
+ },
46
+ "context_reconciliation_ref": {
47
+ "type": "string",
48
+ "minLength": 1
49
+ },
50
+ "rows": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "object",
54
+ "required": [
55
+ "source_id",
56
+ "source_digest",
57
+ "disposition",
58
+ "dependency_status",
59
+ "dependent_slice_refs",
60
+ "evidence_refs"
61
+ ],
62
+ "properties": {
63
+ "source_id": {
64
+ "type": "string",
65
+ "minLength": 1
66
+ },
67
+ "source_digest": {
68
+ "type": "string",
69
+ "pattern": "^sha256:[0-9a-f]{64}$"
70
+ },
71
+ "disposition": {
72
+ "enum": [
73
+ "mapped",
74
+ "pending",
75
+ "conflict",
76
+ "deferred",
77
+ "not-applicable"
78
+ ]
79
+ },
80
+ "dependency_status": {
81
+ "enum": [
82
+ "known",
83
+ "unknown"
84
+ ]
85
+ },
86
+ "dependent_slice_refs": {
87
+ "type": "array",
88
+ "items": {
89
+ "type": "string",
90
+ "minLength": 1
91
+ },
92
+ "minItems": 0,
93
+ "uniqueItems": true
94
+ },
95
+ "evidence_refs": {
96
+ "type": "array",
97
+ "items": {
98
+ "type": "string",
99
+ "minLength": 1
100
+ },
101
+ "minItems": 0,
102
+ "uniqueItems": true
103
+ },
104
+ "frontend_case_refs": {
105
+ "type": "array",
106
+ "items": {
107
+ "type": "string",
108
+ "minLength": 1
109
+ },
110
+ "minItems": 0,
111
+ "uniqueItems": true
112
+ }
113
+ }
114
+ },
115
+ "minItems": 1,
116
+ "uniqueItems": true
117
+ }
118
+ },
119
+ "required": [
120
+ "import_receipt_ref",
121
+ "bundle_digest",
122
+ "context_reconciliation_ref",
123
+ "rows"
124
+ ]
125
+ },
126
+ "frontend_cases": {
127
+ "type": "array",
128
+ "items": {
129
+ "type": "object",
130
+ "additionalProperties": false,
131
+ "properties": {
132
+ "case_id": {
133
+ "type": "string",
134
+ "minLength": 1
135
+ },
136
+ "source_ids": {
137
+ "type": "array",
138
+ "items": {
139
+ "type": "string",
140
+ "minLength": 1
141
+ },
142
+ "minItems": 1,
143
+ "uniqueItems": true
144
+ },
145
+ "outcome": {
146
+ "enum": [
147
+ "success",
148
+ "failure"
149
+ ]
150
+ },
151
+ "operation_ids": {
152
+ "type": "array",
153
+ "items": {
154
+ "type": "string",
155
+ "minLength": 1
156
+ },
157
+ "minItems": 1,
158
+ "uniqueItems": true
159
+ },
160
+ "visual_case_ids": {
161
+ "type": "array",
162
+ "items": {
163
+ "type": "string",
164
+ "minLength": 1
165
+ },
166
+ "minItems": 1,
167
+ "uniqueItems": true
168
+ },
169
+ "evidence_ref": {
170
+ "type": "string",
171
+ "minLength": 1
172
+ },
173
+ "evidence_digest": {
174
+ "type": "string",
175
+ "pattern": "^sha256:[a-f0-9]{64}$"
176
+ }
177
+ },
178
+ "required": [
179
+ "case_id",
180
+ "source_ids",
181
+ "outcome",
182
+ "operation_ids",
183
+ "visual_case_ids",
184
+ "evidence_ref",
185
+ "evidence_digest"
186
+ ]
187
+ },
188
+ "minItems": 1,
189
+ "uniqueItems": true
190
+ }
191
+ },
192
+ "required": [
193
+ "schema_version",
194
+ "status",
195
+ "slice_id",
196
+ "backend_delivery",
197
+ "strategic_handoff",
198
+ "frontend_cases"
199
+ ]
200
+ }