@sourcey/catalog-verifier 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (402) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/LICENSE +21 -0
  3. package/README.md +64 -0
  4. package/SBOM.cdx.json +177 -0
  5. package/SECURITY.md +8 -0
  6. package/SOURCEY-CLOSURE.json +1559 -0
  7. package/SOURCEY-DISTRIBUTION.json +24 -0
  8. package/SOURCEY-LICENSE-POLICY.json +5 -0
  9. package/SOURCEY-TOOLCHAIN.json +8 -0
  10. package/SUPPORT.md +5 -0
  11. package/THIRD_PARTY_NOTICES.json +69 -0
  12. package/dist/contracts/agent-readiness/src/declaration-acquisition.d.ts +548 -0
  13. package/dist/contracts/agent-readiness/src/declaration-acquisition.d.ts.map +1 -0
  14. package/dist/contracts/agent-readiness/src/declaration-acquisition.js +159 -0
  15. package/dist/contracts/agent-readiness/src/declaration-acquisition.js.map +1 -0
  16. package/dist/contracts/agent-readiness/src/declaration-reference.d.ts +48 -0
  17. package/dist/contracts/agent-readiness/src/declaration-reference.d.ts.map +1 -0
  18. package/dist/contracts/agent-readiness/src/declaration-reference.js +42 -0
  19. package/dist/contracts/agent-readiness/src/declaration-reference.js.map +1 -0
  20. package/dist/contracts/agent-readiness/src/declaration.d.ts +1357 -0
  21. package/dist/contracts/agent-readiness/src/declaration.d.ts.map +1 -0
  22. package/dist/contracts/agent-readiness/src/declaration.js +659 -0
  23. package/dist/contracts/agent-readiness/src/declaration.js.map +1 -0
  24. package/dist/contracts/agent-readiness/src/evidence.d.ts +146 -0
  25. package/dist/contracts/agent-readiness/src/evidence.d.ts.map +1 -0
  26. package/dist/contracts/agent-readiness/src/evidence.js +154 -0
  27. package/dist/contracts/agent-readiness/src/evidence.js.map +1 -0
  28. package/dist/contracts/agent-readiness/src/index.d.ts +6487 -0
  29. package/dist/contracts/agent-readiness/src/index.d.ts.map +1 -0
  30. package/dist/contracts/agent-readiness/src/index.js +1487 -0
  31. package/dist/contracts/agent-readiness/src/index.js.map +1 -0
  32. package/dist/contracts/agent-readiness/src/interaction.d.ts +26 -0
  33. package/dist/contracts/agent-readiness/src/interaction.d.ts.map +1 -0
  34. package/dist/contracts/agent-readiness/src/interaction.js +24 -0
  35. package/dist/contracts/agent-readiness/src/interaction.js.map +1 -0
  36. package/dist/contracts/agent-readiness/src/method-pack.d.ts +391 -0
  37. package/dist/contracts/agent-readiness/src/method-pack.d.ts.map +1 -0
  38. package/dist/contracts/agent-readiness/src/method-pack.js +181 -0
  39. package/dist/contracts/agent-readiness/src/method-pack.js.map +1 -0
  40. package/dist/contracts/agent-readiness/src/shared.d.ts +119 -0
  41. package/dist/contracts/agent-readiness/src/shared.d.ts.map +1 -0
  42. package/dist/contracts/agent-readiness/src/shared.js +144 -0
  43. package/dist/contracts/agent-readiness/src/shared.js.map +1 -0
  44. package/dist/contracts/api/src/index.d.ts +48463 -0
  45. package/dist/contracts/api/src/index.d.ts.map +1 -0
  46. package/dist/contracts/api/src/index.js +1150 -0
  47. package/dist/contracts/api/src/index.js.map +1 -0
  48. package/dist/contracts/artifact/src/index.d.ts +1467 -0
  49. package/dist/contracts/artifact/src/index.d.ts.map +1 -0
  50. package/dist/contracts/artifact/src/index.js +325 -0
  51. package/dist/contracts/artifact/src/index.js.map +1 -0
  52. package/dist/contracts/assets/src/index.d.ts +1397 -0
  53. package/dist/contracts/assets/src/index.d.ts.map +1 -0
  54. package/dist/contracts/assets/src/index.js +560 -0
  55. package/dist/contracts/assets/src/index.js.map +1 -0
  56. package/dist/contracts/authoring/src/index.d.ts +1084 -0
  57. package/dist/contracts/authoring/src/index.d.ts.map +1 -0
  58. package/dist/contracts/authoring/src/index.js +211 -0
  59. package/dist/contracts/authoring/src/index.js.map +1 -0
  60. package/dist/contracts/authority/src/index.d.ts +135 -0
  61. package/dist/contracts/authority/src/index.d.ts.map +1 -0
  62. package/dist/contracts/authority/src/index.js +130 -0
  63. package/dist/contracts/authority/src/index.js.map +1 -0
  64. package/dist/contracts/billing/src/index.d.ts +587 -0
  65. package/dist/contracts/billing/src/index.d.ts.map +1 -0
  66. package/dist/contracts/billing/src/index.js +322 -0
  67. package/dist/contracts/billing/src/index.js.map +1 -0
  68. package/dist/contracts/catalog-verifier/src/index.d.ts +390 -0
  69. package/dist/contracts/catalog-verifier/src/index.d.ts.map +1 -0
  70. package/dist/contracts/catalog-verifier/src/index.js +222 -0
  71. package/dist/contracts/catalog-verifier/src/index.js.map +1 -0
  72. package/dist/contracts/commercial-work/src/index.d.ts +835 -0
  73. package/dist/contracts/commercial-work/src/index.d.ts.map +1 -0
  74. package/dist/contracts/commercial-work/src/index.js +510 -0
  75. package/dist/contracts/commercial-work/src/index.js.map +1 -0
  76. package/dist/contracts/events/src/index.d.ts +700 -0
  77. package/dist/contracts/events/src/index.d.ts.map +1 -0
  78. package/dist/contracts/events/src/index.js +553 -0
  79. package/dist/contracts/events/src/index.js.map +1 -0
  80. package/dist/contracts/evidence/src/index.d.ts +487 -0
  81. package/dist/contracts/evidence/src/index.d.ts.map +1 -0
  82. package/dist/contracts/evidence/src/index.js +342 -0
  83. package/dist/contracts/evidence/src/index.js.map +1 -0
  84. package/dist/contracts/feed/src/index.d.ts +159 -0
  85. package/dist/contracts/feed/src/index.d.ts.map +1 -0
  86. package/dist/contracts/feed/src/index.js +79 -0
  87. package/dist/contracts/feed/src/index.js.map +1 -0
  88. package/dist/contracts/funded-work/src/index.d.ts +64 -0
  89. package/dist/contracts/funded-work/src/index.d.ts.map +1 -0
  90. package/dist/contracts/funded-work/src/index.js +67 -0
  91. package/dist/contracts/funded-work/src/index.js.map +1 -0
  92. package/dist/contracts/observations/src/index.d.ts +134 -0
  93. package/dist/contracts/observations/src/index.d.ts.map +1 -0
  94. package/dist/contracts/observations/src/index.js +112 -0
  95. package/dist/contracts/observations/src/index.js.map +1 -0
  96. package/dist/contracts/policies/src/index.d.ts +151 -0
  97. package/dist/contracts/policies/src/index.d.ts.map +1 -0
  98. package/dist/contracts/policies/src/index.js +121 -0
  99. package/dist/contracts/policies/src/index.js.map +1 -0
  100. package/dist/contracts/publication/src/index.d.ts +4066 -0
  101. package/dist/contracts/publication/src/index.d.ts.map +1 -0
  102. package/dist/contracts/publication/src/index.js +535 -0
  103. package/dist/contracts/publication/src/index.js.map +1 -0
  104. package/dist/contracts/release/src/index.d.ts +2032 -0
  105. package/dist/contracts/release/src/index.d.ts.map +1 -0
  106. package/dist/contracts/release/src/index.js +252 -0
  107. package/dist/contracts/release/src/index.js.map +1 -0
  108. package/dist/contracts/revisions/src/index.d.ts +1405 -0
  109. package/dist/contracts/revisions/src/index.d.ts.map +1 -0
  110. package/dist/contracts/revisions/src/index.js +493 -0
  111. package/dist/contracts/revisions/src/index.js.map +1 -0
  112. package/dist/contracts/routes/src/index.d.ts +103 -0
  113. package/dist/contracts/routes/src/index.d.ts.map +1 -0
  114. package/dist/contracts/routes/src/index.js +163 -0
  115. package/dist/contracts/routes/src/index.js.map +1 -0
  116. package/dist/contracts/routes/src/public-route-allocations.generated.d.ts +2 -0
  117. package/dist/contracts/routes/src/public-route-allocations.generated.d.ts.map +1 -0
  118. package/dist/contracts/routes/src/public-route-allocations.generated.js +56 -0
  119. package/dist/contracts/routes/src/public-route-allocations.generated.js.map +1 -0
  120. package/dist/contracts/standards/src/index.d.ts +1482 -0
  121. package/dist/contracts/standards/src/index.d.ts.map +1 -0
  122. package/dist/contracts/standards/src/index.js +626 -0
  123. package/dist/contracts/standards/src/index.js.map +1 -0
  124. package/dist/contracts/taxonomy/src/index.d.ts +7 -0
  125. package/dist/contracts/taxonomy/src/index.d.ts.map +1 -0
  126. package/dist/contracts/taxonomy/src/index.js +25 -0
  127. package/dist/contracts/taxonomy/src/index.js.map +1 -0
  128. package/dist/modules/agent-readiness-policy/src/current-policy-metrics.d.ts +20 -0
  129. package/dist/modules/agent-readiness-policy/src/current-policy-metrics.d.ts.map +1 -0
  130. package/dist/modules/agent-readiness-policy/src/current-policy-metrics.js +604 -0
  131. package/dist/modules/agent-readiness-policy/src/current-policy-metrics.js.map +1 -0
  132. package/dist/modules/agent-readiness-policy/src/current-policy.d.ts +249 -0
  133. package/dist/modules/agent-readiness-policy/src/current-policy.d.ts.map +1 -0
  134. package/dist/modules/agent-readiness-policy/src/current-policy.js +470 -0
  135. package/dist/modules/agent-readiness-policy/src/current-policy.js.map +1 -0
  136. package/dist/modules/agent-readiness-policy/src/grading.d.ts +39 -0
  137. package/dist/modules/agent-readiness-policy/src/grading.d.ts.map +1 -0
  138. package/dist/modules/agent-readiness-policy/src/grading.js +40 -0
  139. package/dist/modules/agent-readiness-policy/src/grading.js.map +1 -0
  140. package/dist/modules/agent-readiness-policy/src/impact.d.ts +103 -0
  141. package/dist/modules/agent-readiness-policy/src/impact.d.ts.map +1 -0
  142. package/dist/modules/agent-readiness-policy/src/impact.js +249 -0
  143. package/dist/modules/agent-readiness-policy/src/impact.js.map +1 -0
  144. package/dist/modules/agent-readiness-policy/src/index.d.ts +811 -0
  145. package/dist/modules/agent-readiness-policy/src/index.d.ts.map +1 -0
  146. package/dist/modules/agent-readiness-policy/src/index.js +499 -0
  147. package/dist/modules/agent-readiness-policy/src/index.js.map +1 -0
  148. package/dist/modules/agent-readiness-policy/src/offer-relations.d.ts +12 -0
  149. package/dist/modules/agent-readiness-policy/src/offer-relations.d.ts.map +1 -0
  150. package/dist/modules/agent-readiness-policy/src/offer-relations.js +65 -0
  151. package/dist/modules/agent-readiness-policy/src/offer-relations.js.map +1 -0
  152. package/dist/modules/agent-readiness-policy/src/policy-validation.d.ts +4 -0
  153. package/dist/modules/agent-readiness-policy/src/policy-validation.d.ts.map +1 -0
  154. package/dist/modules/agent-readiness-policy/src/policy-validation.js +59 -0
  155. package/dist/modules/agent-readiness-policy/src/policy-validation.js.map +1 -0
  156. package/dist/modules/agent-readiness-policy/src/projection-lineage.d.ts +3 -0
  157. package/dist/modules/agent-readiness-policy/src/projection-lineage.d.ts.map +1 -0
  158. package/dist/modules/agent-readiness-policy/src/projection-lineage.js +12 -0
  159. package/dist/modules/agent-readiness-policy/src/projection-lineage.js.map +1 -0
  160. package/dist/modules/agent-readiness-policy/src/revision.d.ts +4 -0
  161. package/dist/modules/agent-readiness-policy/src/revision.d.ts.map +1 -0
  162. package/dist/modules/agent-readiness-policy/src/revision.js +46 -0
  163. package/dist/modules/agent-readiness-policy/src/revision.js.map +1 -0
  164. package/dist/modules/agent-readiness-policy/src/standard-mapping.d.ts +7 -0
  165. package/dist/modules/agent-readiness-policy/src/standard-mapping.d.ts.map +1 -0
  166. package/dist/modules/agent-readiness-policy/src/standard-mapping.js +13 -0
  167. package/dist/modules/agent-readiness-policy/src/standard-mapping.js.map +1 -0
  168. package/dist/modules/agent-readiness-policy/src/surface-selection.d.ts +36 -0
  169. package/dist/modules/agent-readiness-policy/src/surface-selection.d.ts.map +1 -0
  170. package/dist/modules/agent-readiness-policy/src/surface-selection.js +214 -0
  171. package/dist/modules/agent-readiness-policy/src/surface-selection.js.map +1 -0
  172. package/dist/modules/agent-readiness-repository/src/admission.d.ts +35 -0
  173. package/dist/modules/agent-readiness-repository/src/admission.d.ts.map +1 -0
  174. package/dist/modules/agent-readiness-repository/src/admission.js +56 -0
  175. package/dist/modules/agent-readiness-repository/src/admission.js.map +1 -0
  176. package/dist/modules/agent-readiness-repository/src/change.d.ts +62 -0
  177. package/dist/modules/agent-readiness-repository/src/change.d.ts.map +1 -0
  178. package/dist/modules/agent-readiness-repository/src/change.js +218 -0
  179. package/dist/modules/agent-readiness-repository/src/change.js.map +1 -0
  180. package/dist/modules/agent-readiness-repository/src/declaration-blob.d.ts +29 -0
  181. package/dist/modules/agent-readiness-repository/src/declaration-blob.d.ts.map +1 -0
  182. package/dist/modules/agent-readiness-repository/src/declaration-blob.js +126 -0
  183. package/dist/modules/agent-readiness-repository/src/declaration-blob.js.map +1 -0
  184. package/dist/modules/agent-readiness-repository/src/index.d.ts +102 -0
  185. package/dist/modules/agent-readiness-repository/src/index.d.ts.map +1 -0
  186. package/dist/modules/agent-readiness-repository/src/index.js +208 -0
  187. package/dist/modules/agent-readiness-repository/src/index.js.map +1 -0
  188. package/dist/modules/artifact/src/agent-readiness-closure.d.ts +24 -0
  189. package/dist/modules/artifact/src/agent-readiness-closure.d.ts.map +1 -0
  190. package/dist/modules/artifact/src/agent-readiness-closure.js +98 -0
  191. package/dist/modules/artifact/src/agent-readiness-closure.js.map +1 -0
  192. package/dist/modules/artifact/src/asset-closure.d.ts +12 -0
  193. package/dist/modules/artifact/src/asset-closure.d.ts.map +1 -0
  194. package/dist/modules/artifact/src/asset-closure.js +40 -0
  195. package/dist/modules/artifact/src/asset-closure.js.map +1 -0
  196. package/dist/modules/artifact/src/authoring-closure.d.ts +4 -0
  197. package/dist/modules/artifact/src/authoring-closure.d.ts.map +1 -0
  198. package/dist/modules/artifact/src/authoring-closure.js +19 -0
  199. package/dist/modules/artifact/src/authoring-closure.js.map +1 -0
  200. package/dist/modules/artifact/src/index.d.ts +46 -0
  201. package/dist/modules/artifact/src/index.d.ts.map +1 -0
  202. package/dist/modules/artifact/src/index.js +563 -0
  203. package/dist/modules/artifact/src/index.js.map +1 -0
  204. package/dist/modules/artifact/src/trust-history.d.ts +3 -0
  205. package/dist/modules/artifact/src/trust-history.d.ts.map +1 -0
  206. package/dist/modules/artifact/src/trust-history.js +134 -0
  207. package/dist/modules/artifact/src/trust-history.js.map +1 -0
  208. package/dist/modules/assets/src/authority-bundle.d.ts +36 -0
  209. package/dist/modules/assets/src/authority-bundle.d.ts.map +1 -0
  210. package/dist/modules/assets/src/authority-bundle.js +206 -0
  211. package/dist/modules/assets/src/authority-bundle.js.map +1 -0
  212. package/dist/modules/assets/src/delta.d.ts +18 -0
  213. package/dist/modules/assets/src/delta.d.ts.map +1 -0
  214. package/dist/modules/assets/src/delta.js +183 -0
  215. package/dist/modules/assets/src/delta.js.map +1 -0
  216. package/dist/modules/assets/src/disposition.d.ts +3 -0
  217. package/dist/modules/assets/src/disposition.d.ts.map +1 -0
  218. package/dist/modules/assets/src/disposition.js +30 -0
  219. package/dist/modules/assets/src/disposition.js.map +1 -0
  220. package/dist/modules/assets/src/index.d.ts +25 -0
  221. package/dist/modules/assets/src/index.d.ts.map +1 -0
  222. package/dist/modules/assets/src/index.js +234 -0
  223. package/dist/modules/assets/src/index.js.map +1 -0
  224. package/dist/modules/assets/src/ingestion.d.ts +69 -0
  225. package/dist/modules/assets/src/ingestion.d.ts.map +1 -0
  226. package/dist/modules/assets/src/ingestion.js +169 -0
  227. package/dist/modules/assets/src/ingestion.js.map +1 -0
  228. package/dist/modules/authority/src/index.d.ts +47 -0
  229. package/dist/modules/authority/src/index.d.ts.map +1 -0
  230. package/dist/modules/authority/src/index.js +349 -0
  231. package/dist/modules/authority/src/index.js.map +1 -0
  232. package/dist/modules/authority-state/src/index.d.ts +43 -0
  233. package/dist/modules/authority-state/src/index.d.ts.map +1 -0
  234. package/dist/modules/authority-state/src/index.js +194 -0
  235. package/dist/modules/authority-state/src/index.js.map +1 -0
  236. package/dist/modules/catalog-admission/src/admission-conflicts.d.ts +424 -0
  237. package/dist/modules/catalog-admission/src/admission-conflicts.d.ts.map +1 -0
  238. package/dist/modules/catalog-admission/src/admission-conflicts.js +369 -0
  239. package/dist/modules/catalog-admission/src/admission-conflicts.js.map +1 -0
  240. package/dist/modules/catalog-admission/src/index.d.ts +248 -0
  241. package/dist/modules/catalog-admission/src/index.d.ts.map +1 -0
  242. package/dist/modules/catalog-admission/src/index.js +601 -0
  243. package/dist/modules/catalog-admission/src/index.js.map +1 -0
  244. package/dist/modules/catalog-admission/src/machine-admission.d.ts +1273 -0
  245. package/dist/modules/catalog-admission/src/machine-admission.d.ts.map +1 -0
  246. package/dist/modules/catalog-admission/src/machine-admission.js +529 -0
  247. package/dist/modules/catalog-admission/src/machine-admission.js.map +1 -0
  248. package/dist/modules/catalog-admission/src/publication-assets.d.ts +5 -0
  249. package/dist/modules/catalog-admission/src/publication-assets.d.ts.map +1 -0
  250. package/dist/modules/catalog-admission/src/publication-assets.js +26 -0
  251. package/dist/modules/catalog-admission/src/publication-assets.js.map +1 -0
  252. package/dist/modules/catalog-admission/src/publication-dependencies.d.ts +96 -0
  253. package/dist/modules/catalog-admission/src/publication-dependencies.d.ts.map +1 -0
  254. package/dist/modules/catalog-admission/src/publication-dependencies.js +177 -0
  255. package/dist/modules/catalog-admission/src/publication-dependencies.js.map +1 -0
  256. package/dist/modules/catalog-admission/src/publication-entities.d.ts +9 -0
  257. package/dist/modules/catalog-admission/src/publication-entities.d.ts.map +1 -0
  258. package/dist/modules/catalog-admission/src/publication-entities.js +48 -0
  259. package/dist/modules/catalog-admission/src/publication-entities.js.map +1 -0
  260. package/dist/modules/catalog-admission/src/publication-recomposition.d.ts +42 -0
  261. package/dist/modules/catalog-admission/src/publication-recomposition.d.ts.map +1 -0
  262. package/dist/modules/catalog-admission/src/publication-recomposition.js +163 -0
  263. package/dist/modules/catalog-admission/src/publication-recomposition.js.map +1 -0
  264. package/dist/modules/catalog-admission/src/publication.d.ts +92 -0
  265. package/dist/modules/catalog-admission/src/publication.d.ts.map +1 -0
  266. package/dist/modules/catalog-admission/src/publication.js +605 -0
  267. package/dist/modules/catalog-admission/src/publication.js.map +1 -0
  268. package/dist/modules/catalog-admission/src/submission.d.ts +47 -0
  269. package/dist/modules/catalog-admission/src/submission.d.ts.map +1 -0
  270. package/dist/modules/catalog-admission/src/submission.js +289 -0
  271. package/dist/modules/catalog-admission/src/submission.js.map +1 -0
  272. package/dist/modules/catalog-authoring-validation/src/index.d.ts +46 -0
  273. package/dist/modules/catalog-authoring-validation/src/index.d.ts.map +1 -0
  274. package/dist/modules/catalog-authoring-validation/src/index.js +98 -0
  275. package/dist/modules/catalog-authoring-validation/src/index.js.map +1 -0
  276. package/dist/modules/catalog-model/src/index.d.ts +26 -0
  277. package/dist/modules/catalog-model/src/index.d.ts.map +1 -0
  278. package/dist/modules/catalog-model/src/index.js +80 -0
  279. package/dist/modules/catalog-model/src/index.js.map +1 -0
  280. package/dist/modules/cli/src/index.d.ts +10 -0
  281. package/dist/modules/cli/src/index.d.ts.map +1 -0
  282. package/dist/modules/cli/src/index.js +31 -0
  283. package/dist/modules/cli/src/index.js.map +1 -0
  284. package/dist/modules/compiler/src/index.d.ts +23 -0
  285. package/dist/modules/compiler/src/index.d.ts.map +1 -0
  286. package/dist/modules/compiler/src/index.js +75 -0
  287. package/dist/modules/compiler/src/index.js.map +1 -0
  288. package/dist/modules/evidence-operations/src/dependency-versions.d.ts +2 -0
  289. package/dist/modules/evidence-operations/src/dependency-versions.d.ts.map +1 -0
  290. package/dist/modules/evidence-operations/src/dependency-versions.js +17 -0
  291. package/dist/modules/evidence-operations/src/dependency-versions.js.map +1 -0
  292. package/dist/modules/evidence-operations/src/evidence-normalization.d.ts +111 -0
  293. package/dist/modules/evidence-operations/src/evidence-normalization.d.ts.map +1 -0
  294. package/dist/modules/evidence-operations/src/evidence-normalization.js +309 -0
  295. package/dist/modules/evidence-operations/src/evidence-normalization.js.map +1 -0
  296. package/dist/modules/evidence-operations/src/proof-graph.d.ts +22 -0
  297. package/dist/modules/evidence-operations/src/proof-graph.d.ts.map +1 -0
  298. package/dist/modules/evidence-operations/src/proof-graph.js +188 -0
  299. package/dist/modules/evidence-operations/src/proof-graph.js.map +1 -0
  300. package/dist/modules/evidence-operations/src/source-authority.d.ts +31 -0
  301. package/dist/modules/evidence-operations/src/source-authority.d.ts.map +1 -0
  302. package/dist/modules/evidence-operations/src/source-authority.js +60 -0
  303. package/dist/modules/evidence-operations/src/source-authority.js.map +1 -0
  304. package/dist/modules/evidence-operations/src/submission-verifier.d.ts +318 -0
  305. package/dist/modules/evidence-operations/src/submission-verifier.d.ts.map +1 -0
  306. package/dist/modules/evidence-operations/src/submission-verifier.js +392 -0
  307. package/dist/modules/evidence-operations/src/submission-verifier.js.map +1 -0
  308. package/dist/modules/evidence-operations/src/url-canonicalization.d.ts +3 -0
  309. package/dist/modules/evidence-operations/src/url-canonicalization.d.ts.map +1 -0
  310. package/dist/modules/evidence-operations/src/url-canonicalization.js +7 -0
  311. package/dist/modules/evidence-operations/src/url-canonicalization.js.map +1 -0
  312. package/dist/modules/primitives/src/index.d.ts +40 -0
  313. package/dist/modules/primitives/src/index.d.ts.map +1 -0
  314. package/dist/modules/primitives/src/index.js +154 -0
  315. package/dist/modules/primitives/src/index.js.map +1 -0
  316. package/dist/modules/provenance/src/evidence-bindings.d.ts +10 -0
  317. package/dist/modules/provenance/src/evidence-bindings.d.ts.map +1 -0
  318. package/dist/modules/provenance/src/evidence-bindings.js +49 -0
  319. package/dist/modules/provenance/src/evidence-bindings.js.map +1 -0
  320. package/dist/modules/provenance/src/evidence-coverage.d.ts +35 -0
  321. package/dist/modules/provenance/src/evidence-coverage.d.ts.map +1 -0
  322. package/dist/modules/provenance/src/evidence-coverage.js +131 -0
  323. package/dist/modules/provenance/src/evidence-coverage.js.map +1 -0
  324. package/dist/modules/provenance/src/index.d.ts +68 -0
  325. package/dist/modules/provenance/src/index.d.ts.map +1 -0
  326. package/dist/modules/provenance/src/index.js +536 -0
  327. package/dist/modules/provenance/src/index.js.map +1 -0
  328. package/dist/modules/provenance/src/material-claims.d.ts +381 -0
  329. package/dist/modules/provenance/src/material-claims.d.ts.map +1 -0
  330. package/dist/modules/provenance/src/material-claims.js +375 -0
  331. package/dist/modules/provenance/src/material-claims.js.map +1 -0
  332. package/dist/modules/provenance/src/prospective-evidence.d.ts +6 -0
  333. package/dist/modules/provenance/src/prospective-evidence.d.ts.map +1 -0
  334. package/dist/modules/provenance/src/prospective-evidence.js +61 -0
  335. package/dist/modules/provenance/src/prospective-evidence.js.map +1 -0
  336. package/dist/modules/release/src/asset-delta-verifier.d.ts +12 -0
  337. package/dist/modules/release/src/asset-delta-verifier.d.ts.map +1 -0
  338. package/dist/modules/release/src/asset-delta-verifier.js +82 -0
  339. package/dist/modules/release/src/asset-delta-verifier.js.map +1 -0
  340. package/dist/modules/release/src/changes.d.ts +23 -0
  341. package/dist/modules/release/src/changes.d.ts.map +1 -0
  342. package/dist/modules/release/src/changes.js +389 -0
  343. package/dist/modules/release/src/changes.js.map +1 -0
  344. package/dist/modules/release/src/identity.d.ts +17 -0
  345. package/dist/modules/release/src/identity.d.ts.map +1 -0
  346. package/dist/modules/release/src/identity.js +433 -0
  347. package/dist/modules/release/src/identity.js.map +1 -0
  348. package/dist/modules/release/src/inputs.d.ts +89 -0
  349. package/dist/modules/release/src/inputs.d.ts.map +1 -0
  350. package/dist/modules/release/src/inputs.js +514 -0
  351. package/dist/modules/release/src/inputs.js.map +1 -0
  352. package/dist/modules/release/src/publication-inputs.d.ts +9 -0
  353. package/dist/modules/release/src/publication-inputs.d.ts.map +1 -0
  354. package/dist/modules/release/src/publication-inputs.js +67 -0
  355. package/dist/modules/release/src/publication-inputs.js.map +1 -0
  356. package/dist/modules/release/src/release-directory-files.d.ts +7 -0
  357. package/dist/modules/release/src/release-directory-files.d.ts.map +1 -0
  358. package/dist/modules/release/src/release-directory-files.js +49 -0
  359. package/dist/modules/release/src/release-directory-files.js.map +1 -0
  360. package/dist/modules/release/src/release-revision-parser.d.ts +5 -0
  361. package/dist/modules/release/src/release-revision-parser.d.ts.map +1 -0
  362. package/dist/modules/release/src/release-revision-parser.js +19 -0
  363. package/dist/modules/release/src/release-revision-parser.js.map +1 -0
  364. package/dist/modules/release/src/transition.d.ts +36 -0
  365. package/dist/modules/release/src/transition.d.ts.map +1 -0
  366. package/dist/modules/release/src/transition.js +263 -0
  367. package/dist/modules/release/src/transition.js.map +1 -0
  368. package/dist/modules/release/src/verification-policies.d.ts +278 -0
  369. package/dist/modules/release/src/verification-policies.d.ts.map +1 -0
  370. package/dist/modules/release/src/verification-policies.js +38 -0
  371. package/dist/modules/release/src/verification-policies.js.map +1 -0
  372. package/dist/modules/release/src/verification-transitions.d.ts +14 -0
  373. package/dist/modules/release/src/verification-transitions.d.ts.map +1 -0
  374. package/dist/modules/release/src/verification-transitions.js +26 -0
  375. package/dist/modules/release/src/verification-transitions.js.map +1 -0
  376. package/dist/modules/release/src/verifier.d.ts +41 -0
  377. package/dist/modules/release/src/verifier.d.ts.map +1 -0
  378. package/dist/modules/release/src/verifier.js +577 -0
  379. package/dist/modules/release/src/verifier.js.map +1 -0
  380. package/dist/modules/standard-adapter-runtime/src/index.d.ts +16 -0
  381. package/dist/modules/standard-adapter-runtime/src/index.d.ts.map +1 -0
  382. package/dist/modules/standard-adapter-runtime/src/index.js +43 -0
  383. package/dist/modules/standard-adapter-runtime/src/index.js.map +1 -0
  384. package/dist/modules/standard-evidence/src/index.d.ts +33 -0
  385. package/dist/modules/standard-evidence/src/index.d.ts.map +1 -0
  386. package/dist/modules/standard-evidence/src/index.js +149 -0
  387. package/dist/modules/standard-evidence/src/index.js.map +1 -0
  388. package/dist/packages/catalog-verifier/src/application.d.ts +89 -0
  389. package/dist/packages/catalog-verifier/src/application.d.ts.map +1 -0
  390. package/dist/packages/catalog-verifier/src/application.js +363 -0
  391. package/dist/packages/catalog-verifier/src/application.js.map +1 -0
  392. package/dist/packages/catalog-verifier/src/index.d.ts +7 -0
  393. package/dist/packages/catalog-verifier/src/index.d.ts.map +1 -0
  394. package/dist/packages/catalog-verifier/src/index.js +7 -0
  395. package/dist/packages/catalog-verifier/src/index.js.map +1 -0
  396. package/dist/packages/catalog-verifier/src/program.d.ts +4 -0
  397. package/dist/packages/catalog-verifier/src/program.d.ts.map +1 -0
  398. package/dist/packages/catalog-verifier/src/program.js +203 -0
  399. package/dist/packages/catalog-verifier/src/program.js.map +1 -0
  400. package/package.json +63 -0
  401. package/sourcey-catalog-verify.js +7 -0
  402. package/taxonomy.json +29 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../contracts/standards/src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,626 @@
1
+ import { z } from "zod";
2
+ import { DIGEST_PATTERN } from "../../../modules/primitives/src/index.js";
3
+ const digestSchema = z.string().regex(DIGEST_PATTERN);
4
+ const standardKeySchema = z.string().regex(/^[a-z0-9]+(?:[._-][a-z0-9]+)*$/);
5
+ const standardVersionSchema = z.string().trim().min(1).max(160);
6
+ const requirementIdSchema = z.string().trim().min(1).max(240);
7
+ export const standardIdentitySchema = z
8
+ .object({
9
+ namespace: standardKeySchema,
10
+ version: standardVersionSchema,
11
+ })
12
+ .strict();
13
+ export const standardImplementationBindingSchema = standardIdentitySchema
14
+ .safeExtend({
15
+ relation: z.enum(["declares", "describes", "implements", "uses"]),
16
+ })
17
+ .strict();
18
+ export const standardRequirementReferenceSchema = standardIdentitySchema
19
+ .safeExtend({
20
+ requirement_id: requirementIdSchema,
21
+ relation: z.enum(["tests", "informational-reference"]),
22
+ })
23
+ .strict();
24
+ export const standardSourceProvenanceSchema = z
25
+ .object({
26
+ role: z.enum(["specification", "schema", "conformance-example"]),
27
+ source_uri: z.url({ protocol: /^https$/ }),
28
+ object_digest: digestSchema,
29
+ media_type: z.string().trim().min(1).max(160),
30
+ license: z
31
+ .object({
32
+ spdx_id: z.string().trim().min(1).max(80),
33
+ source_uri: z.url({ protocol: /^https$/ }),
34
+ object_digest: digestSchema,
35
+ })
36
+ .strict(),
37
+ })
38
+ .strict();
39
+ export const standardAdapterDependencySchema = z
40
+ .object({
41
+ name: standardKeySchema,
42
+ version: standardVersionSchema,
43
+ implementation_digest: digestSchema,
44
+ })
45
+ .strict();
46
+ export const standardAdapterExecutionSchema = z
47
+ .object({
48
+ network: z.literal("forbidden"),
49
+ external_effects: z.literal("forbidden"),
50
+ })
51
+ .strict();
52
+ const standardAdapterManifestFields = {
53
+ standard: standardIdentitySchema,
54
+ accepted_media_types: z.array(z.string().trim().min(1).max(160)).min(1),
55
+ implementation_digest: digestSchema,
56
+ official_sources: z.array(standardSourceProvenanceSchema).min(1),
57
+ dependencies: z.array(standardAdapterDependencySchema),
58
+ execution: standardAdapterExecutionSchema,
59
+ };
60
+ function validateAdapterManifest(value, context) {
61
+ assertUnique(value.accepted_media_types, context, ["accepted_media_types"]);
62
+ assertUnique(value.official_sources.map((source) => `${source.role}\u0000${source.object_digest}`), context, ["official_sources"]);
63
+ assertUnique(value.dependencies.map((dependency) => `${dependency.name}\u0000${dependency.version}`), context, ["dependencies"]);
64
+ }
65
+ export const standardEvidenceAdapterManifestCoreSchema = z
66
+ .object({
67
+ adapter_contract: z.literal("sourcey.standard-evidence-adapter/v1alpha1"),
68
+ ...standardAdapterManifestFields,
69
+ requirement_ids: z.array(requirementIdSchema).min(1),
70
+ })
71
+ .strict()
72
+ .superRefine((value, context) => {
73
+ assertUnique(value.requirement_ids, context, ["requirement_ids"]);
74
+ validateAdapterManifest(value, context);
75
+ });
76
+ export const standardEvidenceAdapterManifestSchema = standardEvidenceAdapterManifestCoreSchema
77
+ .safeExtend({ adapter_digest: digestSchema })
78
+ .strict();
79
+ export const standardResourceImportAdapterManifestCoreSchema = z
80
+ .object({
81
+ adapter_contract: z.literal("sourcey.standard-resource-import-adapter/v1alpha1"),
82
+ ...standardAdapterManifestFields,
83
+ resource_kinds: z.array(standardKeySchema).min(1),
84
+ })
85
+ .strict()
86
+ .superRefine((value, context) => {
87
+ assertUnique(value.resource_kinds, context, ["resource_kinds"]);
88
+ validateAdapterManifest(value, context);
89
+ });
90
+ export const standardResourceImportAdapterManifestSchema = standardResourceImportAdapterManifestCoreSchema
91
+ .safeExtend({ adapter_digest: digestSchema })
92
+ .strict();
93
+ export const standardEvidenceArtifactSchema = z
94
+ .object({
95
+ object_digest: digestSchema,
96
+ retention_receipt_digest: digestSchema,
97
+ media_type: z.string().trim().min(1).max(160),
98
+ bytes: z.number().int().positive(),
99
+ source_uri: z.url({ protocol: /^https$/ }),
100
+ role: z.enum([
101
+ "representation",
102
+ "transport_metadata",
103
+ "rendered_view",
104
+ "interaction_trace",
105
+ "manual_record",
106
+ ]),
107
+ })
108
+ .strict();
109
+ export const standardResourceImportRequestCoreSchema = z
110
+ .object({
111
+ request_contract: z.literal("sourcey.standard-resource-import-request/v1alpha1"),
112
+ adapter: z
113
+ .object({
114
+ namespace: standardKeySchema,
115
+ version: standardVersionSchema,
116
+ adapter_digest: digestSchema,
117
+ })
118
+ .strict(),
119
+ entrypoint_object_digests: z.array(digestSchema).min(1).max(64),
120
+ artifacts: z.array(standardEvidenceArtifactSchema).min(1).max(256),
121
+ })
122
+ .strict()
123
+ .superRefine((value, context) => {
124
+ assertUnique(value.entrypoint_object_digests, context, ["entrypoint_object_digests"]);
125
+ assertUnique(value.artifacts.map((artifact) => artifact.object_digest), context, ["artifacts"]);
126
+ const artifacts = new Set(value.artifacts.map((artifact) => artifact.object_digest));
127
+ for (const [index, entrypoint] of value.entrypoint_object_digests.entries()) {
128
+ if (!artifacts.has(entrypoint)) {
129
+ context.addIssue({
130
+ code: "custom",
131
+ path: ["entrypoint_object_digests", index],
132
+ message: "Every resource-import entrypoint must name a retained request artifact.",
133
+ });
134
+ }
135
+ }
136
+ });
137
+ export const standardResourceImportRequestSchema = standardResourceImportRequestCoreSchema
138
+ .safeExtend({ request_digest: digestSchema })
139
+ .strict();
140
+ export const standardEvidenceRequestCoreSchema = z
141
+ .object({
142
+ request_contract: z.literal("sourcey.standard-evidence-request/v1alpha1"),
143
+ adapter: z
144
+ .object({
145
+ namespace: standardKeySchema,
146
+ version: standardVersionSchema,
147
+ adapter_digest: digestSchema,
148
+ })
149
+ .strict(),
150
+ requirements: z.array(standardRequirementReferenceSchema).min(1).max(256),
151
+ artifacts: z.array(standardEvidenceArtifactSchema).min(1).max(64),
152
+ })
153
+ .strict()
154
+ .superRefine((value, context) => {
155
+ assertUnique(value.requirements.map(requirementKey), context, ["requirements"]);
156
+ assertUnique(value.artifacts.map((artifact) => artifact.object_digest), context, ["artifacts"]);
157
+ for (const [index, requirement] of value.requirements.entries()) {
158
+ if (requirement.namespace !== value.adapter.namespace ||
159
+ requirement.version !== value.adapter.version ||
160
+ requirement.relation !== "tests") {
161
+ context.addIssue({
162
+ code: "custom",
163
+ path: ["requirements", index],
164
+ message: "Every requested requirement must test the exact adapter standard and version.",
165
+ });
166
+ }
167
+ }
168
+ });
169
+ export const standardEvidenceRequestSchema = standardEvidenceRequestCoreSchema
170
+ .safeExtend({ request_digest: digestSchema })
171
+ .strict();
172
+ export const standardEvidenceLocatorSchema = z
173
+ .object({
174
+ object_digest: digestSchema,
175
+ kind: z.literal("utf8-range"),
176
+ start_byte: z.number().int().nonnegative(),
177
+ end_byte: z.number().int().positive(),
178
+ value_digest: digestSchema,
179
+ })
180
+ .strict()
181
+ .superRefine((value, context) => {
182
+ if (value.end_byte <= value.start_byte) {
183
+ context.addIssue({
184
+ code: "custom",
185
+ path: ["end_byte"],
186
+ message: "A standards evidence locator must cover at least one byte.",
187
+ });
188
+ }
189
+ });
190
+ export const standardEvidenceResidueSchema = z
191
+ .object({
192
+ code: z.enum([
193
+ "resource_required",
194
+ "invalid_artifact",
195
+ "insufficient_artifacts",
196
+ "ambiguous_result",
197
+ "unsupported_version",
198
+ "cyclic_reference",
199
+ "unsupported_requirement",
200
+ ]),
201
+ resource_uri: z.url({ protocol: /^https$/ }).nullable(),
202
+ object_digest: digestSchema.nullable(),
203
+ detail: z.string().trim().min(1).max(2_000),
204
+ })
205
+ .strict()
206
+ .superRefine((value, context) => {
207
+ if ((value.code === "resource_required") !== (value.resource_uri !== null)) {
208
+ context.addIssue({
209
+ code: "custom",
210
+ path: ["resource_uri"],
211
+ message: "Only resource-required residue names the exact additional resource URI.",
212
+ });
213
+ }
214
+ });
215
+ export const standardImportedFactSchema = z
216
+ .object({
217
+ fact_id: standardKeySchema,
218
+ value: z.json(),
219
+ locators: z.array(standardEvidenceLocatorSchema).min(1).max(64),
220
+ })
221
+ .strict();
222
+ export const standardImportedResourceSchema = z
223
+ .object({
224
+ candidate_id: standardKeySchema,
225
+ resource_kind: standardKeySchema,
226
+ source_object_digest: digestSchema,
227
+ canonical_uri: z.url({ protocol: /^https$/ }).optional(),
228
+ facts: z.array(standardImportedFactSchema).max(256),
229
+ })
230
+ .strict()
231
+ .superRefine((value, context) => {
232
+ assertUnique(value.facts.map((fact) => fact.fact_id), context, ["facts"]);
233
+ for (const [factIndex, fact] of value.facts.entries()) {
234
+ for (const [locatorIndex, locator] of fact.locators.entries()) {
235
+ if (locator.object_digest !== value.source_object_digest) {
236
+ context.addIssue({
237
+ code: "custom",
238
+ path: ["facts", factIndex, "locators", locatorIndex],
239
+ message: "An imported fact locator must bind its exact source artifact.",
240
+ });
241
+ }
242
+ }
243
+ }
244
+ });
245
+ export const standardImportedResourceRelationSchema = z
246
+ .object({
247
+ relation_id: standardKeySchema,
248
+ relation_kind: standardKeySchema,
249
+ from_candidate_id: standardKeySchema,
250
+ target: z.union([
251
+ z.object({ candidate_id: standardKeySchema }).strict(),
252
+ z.object({ resource_uri: z.url({ protocol: /^https$/ }) }).strict(),
253
+ ]),
254
+ locators: z.array(standardEvidenceLocatorSchema).min(1).max(64),
255
+ })
256
+ .strict();
257
+ export const standardResourceImportResultCoreSchema = z
258
+ .object({
259
+ result_contract: z.literal("sourcey.standard-resource-import-result/v1alpha1"),
260
+ request_digest: digestSchema,
261
+ adapter_digest: digestSchema,
262
+ resources: z.array(standardImportedResourceSchema).max(512),
263
+ relations: z.array(standardImportedResourceRelationSchema).max(1_024),
264
+ residue: z.array(standardEvidenceResidueSchema).max(256),
265
+ })
266
+ .strict()
267
+ .superRefine((value, context) => {
268
+ assertUnique(value.resources.map((resource) => resource.candidate_id), context, ["resources"]);
269
+ assertUnique(value.relations.map((relation) => relation.relation_id), context, ["relations"]);
270
+ const resources = new Set(value.resources.map((resource) => resource.candidate_id));
271
+ for (const [index, relation] of value.relations.entries()) {
272
+ if (!resources.has(relation.from_candidate_id) ||
273
+ ("candidate_id" in relation.target && !resources.has(relation.target.candidate_id))) {
274
+ context.addIssue({
275
+ code: "custom",
276
+ path: ["relations", index],
277
+ message: "Imported resource relations must close over exact candidates or unresolved URIs.",
278
+ });
279
+ }
280
+ }
281
+ });
282
+ export const standardResourceImportResultSchema = standardResourceImportResultCoreSchema
283
+ .safeExtend({ result_digest: digestSchema })
284
+ .strict();
285
+ export const standardResourceImportRecordCoreSchema = z
286
+ .object({
287
+ record_contract: z.literal("sourcey.standard-resource-import-record/v1alpha1"),
288
+ request: standardResourceImportRequestSchema,
289
+ result: standardResourceImportResultSchema,
290
+ result_object_digest: digestSchema,
291
+ })
292
+ .strict()
293
+ .superRefine((value, context) => {
294
+ if (value.result.request_digest !== value.request.request_digest ||
295
+ value.result.adapter_digest !== value.request.adapter.adapter_digest) {
296
+ context.addIssue({
297
+ code: "custom",
298
+ path: ["result"],
299
+ message: "A resource-import record must bind its exact request and adapter.",
300
+ });
301
+ }
302
+ });
303
+ export const standardResourceImportRecordSchema = standardResourceImportRecordCoreSchema
304
+ .safeExtend({ record_digest: digestSchema })
305
+ .strict();
306
+ export const standardEvidenceRequirementResultSchema = z
307
+ .object({
308
+ requirement: standardRequirementReferenceSchema,
309
+ status: z.enum(["satisfied", "not_satisfied", "indeterminate"]),
310
+ locators: z.array(standardEvidenceLocatorSchema).max(64),
311
+ residue: z.array(standardEvidenceResidueSchema).max(32),
312
+ })
313
+ .strict()
314
+ .superRefine((value, context) => {
315
+ if (value.status === "indeterminate" && value.residue.length === 0) {
316
+ context.addIssue({
317
+ code: "custom",
318
+ path: ["residue"],
319
+ message: "An indeterminate standards result must preserve typed residue.",
320
+ });
321
+ }
322
+ if (value.status !== "indeterminate" && value.locators.length === 0) {
323
+ context.addIssue({
324
+ code: "custom",
325
+ path: ["locators"],
326
+ message: "A conclusive standards result requires exact retained-artifact locators.",
327
+ });
328
+ }
329
+ });
330
+ export const standardEvidenceResultCoreSchema = z
331
+ .object({
332
+ result_contract: z.literal("sourcey.standard-evidence-result/v1alpha1"),
333
+ request_digest: digestSchema,
334
+ adapter_digest: digestSchema,
335
+ requirements: z.array(standardEvidenceRequirementResultSchema).min(1).max(256),
336
+ })
337
+ .strict()
338
+ .superRefine((value, context) => {
339
+ assertUnique(value.requirements.map((result) => requirementKey(result.requirement)), context, ["requirements"]);
340
+ });
341
+ export const standardEvidenceResultSchema = standardEvidenceResultCoreSchema
342
+ .safeExtend({ result_digest: digestSchema })
343
+ .strict();
344
+ export const standardEvidenceRecordCoreSchema = z
345
+ .object({
346
+ record_contract: z.literal("sourcey.standard-evidence-record/v1alpha1"),
347
+ request: standardEvidenceRequestSchema,
348
+ result: standardEvidenceResultSchema,
349
+ result_object_digest: digestSchema,
350
+ })
351
+ .strict()
352
+ .superRefine((value, context) => {
353
+ if (value.result.request_digest !== value.request.request_digest ||
354
+ value.result.adapter_digest !== value.request.adapter.adapter_digest) {
355
+ context.addIssue({
356
+ code: "custom",
357
+ path: ["result"],
358
+ message: "A standards evidence record must bind its exact request and adapter.",
359
+ });
360
+ }
361
+ const requested = value.request.requirements.map(requirementKey);
362
+ const returned = value.result.requirements.map(({ requirement }) => requirementKey(requirement));
363
+ if (requested.length !== returned.length ||
364
+ requested.some((requirement) => !returned.includes(requirement))) {
365
+ context.addIssue({
366
+ code: "custom",
367
+ path: ["result", "requirements"],
368
+ message: "A standards evidence record must return its exact requested requirement set.",
369
+ });
370
+ }
371
+ const artifacts = new Map(value.request.artifacts.map((artifact) => [artifact.object_digest, artifact]));
372
+ for (const [resultIndex, result] of value.result.requirements.entries()) {
373
+ for (const [locatorIndex, locator] of result.locators.entries()) {
374
+ const artifact = artifacts.get(locator.object_digest);
375
+ if (!artifact) {
376
+ context.addIssue({
377
+ code: "custom",
378
+ path: ["result", "requirements", resultIndex, "locators", locatorIndex],
379
+ message: "A standards result locator must bind an artifact in its exact request.",
380
+ });
381
+ }
382
+ else if (locator.end_byte > artifact.bytes) {
383
+ context.addIssue({
384
+ code: "custom",
385
+ path: ["result", "requirements", resultIndex, "locators", locatorIndex],
386
+ message: "A standards result locator cannot exceed its retained artifact.",
387
+ });
388
+ }
389
+ }
390
+ for (const [residueIndex, residue] of result.residue.entries()) {
391
+ if (residue.object_digest !== null && !artifacts.has(residue.object_digest)) {
392
+ context.addIssue({
393
+ code: "custom",
394
+ path: ["result", "requirements", resultIndex, "residue", residueIndex],
395
+ message: "Standards residue must bind an artifact in its exact request.",
396
+ });
397
+ }
398
+ }
399
+ }
400
+ });
401
+ export const standardEvidenceRecordSchema = standardEvidenceRecordCoreSchema
402
+ .safeExtend({ record_digest: digestSchema })
403
+ .strict();
404
+ export const externalStandardSuiteDefinitionCoreSchema = z
405
+ .object({
406
+ suite_contract: z.literal("sourcey.external-standard-suite/v1alpha1"),
407
+ suite: standardIdentitySchema,
408
+ official_sources: z.array(standardSourceProvenanceSchema).min(1),
409
+ assertions: z
410
+ .array(z
411
+ .object({
412
+ assertion_id: requirementIdSchema,
413
+ title: z.string().trim().min(1).max(240),
414
+ metadata: z.record(standardKeySchema, z.json()),
415
+ operator: z.enum(["all", "any"]),
416
+ requirements: z.array(standardRequirementReferenceSchema).max(256),
417
+ mapping_residue: z.array(standardEvidenceResidueSchema).max(32),
418
+ })
419
+ .strict()
420
+ .superRefine((value, context) => {
421
+ assertUnique(value.requirements.map(requirementKey), context, ["requirements"]);
422
+ for (const [index, requirement] of value.requirements.entries()) {
423
+ if (requirement.relation !== "tests") {
424
+ context.addIssue({
425
+ code: "custom",
426
+ path: ["requirements", index, "relation"],
427
+ message: "An external suite assertion can evaluate only tested leaf requirements.",
428
+ });
429
+ }
430
+ }
431
+ if ((value.requirements.length === 0) !== value.mapping_residue.length > 0) {
432
+ context.addIssue({
433
+ code: "custom",
434
+ path: ["mapping_residue"],
435
+ message: "An unmapped suite assertion requires explicit residue; a mapped assertion must omit it.",
436
+ });
437
+ }
438
+ }))
439
+ .min(1)
440
+ .max(512),
441
+ })
442
+ .strict()
443
+ .superRefine((value, context) => {
444
+ assertUnique(value.assertions.map((assertion) => assertion.assertion_id), context, ["assertions"]);
445
+ assertUnique(value.official_sources.map((source) => `${source.role}\u0000${source.object_digest}`), context, ["official_sources"]);
446
+ });
447
+ export const externalStandardSuiteDefinitionSchema = externalStandardSuiteDefinitionCoreSchema
448
+ .safeExtend({ suite_digest: digestSchema })
449
+ .strict();
450
+ export const externalStandardSuiteEvaluationCoreSchema = z
451
+ .object({
452
+ evaluation_contract: z.literal("sourcey.external-standard-suite-evaluation/v1alpha1"),
453
+ suite_digest: digestSchema,
454
+ evidence_result_digests: z.array(digestSchema).max(512),
455
+ assertions: z
456
+ .array(z
457
+ .object({
458
+ assertion_id: requirementIdSchema,
459
+ status: z.enum(["passed", "failed", "indeterminate"]),
460
+ leaf_requirements: z
461
+ .array(z
462
+ .object({
463
+ requirement: standardRequirementReferenceSchema,
464
+ evidence_result_digest: digestSchema,
465
+ status: z.enum(["satisfied", "not_satisfied", "indeterminate"]),
466
+ })
467
+ .strict())
468
+ .max(256),
469
+ residue: z.array(standardEvidenceResidueSchema).max(256),
470
+ })
471
+ .strict()
472
+ .superRefine((value, context) => {
473
+ if (value.status === "indeterminate" && value.residue.length === 0) {
474
+ context.addIssue({
475
+ code: "custom",
476
+ path: ["residue"],
477
+ message: "An indeterminate suite assertion must preserve typed residue.",
478
+ });
479
+ }
480
+ }))
481
+ .min(1),
482
+ })
483
+ .strict()
484
+ .superRefine((value, context) => {
485
+ assertUnique(value.evidence_result_digests, context, ["evidence_result_digests"]);
486
+ assertUnique(value.assertions.map((assertion) => assertion.assertion_id), context, ["assertions"]);
487
+ });
488
+ export const externalStandardSuiteEvaluationSchema = externalStandardSuiteEvaluationCoreSchema
489
+ .safeExtend({ evaluation_digest: digestSchema })
490
+ .strict();
491
+ export const externalAssessmentAdapterManifestCoreSchema = z
492
+ .object({
493
+ adapter_contract: z.literal("sourcey.external-assessment-adapter/v1alpha1"),
494
+ assessment: standardIdentitySchema,
495
+ assertion_ids: z.array(requirementIdSchema).min(1),
496
+ accepted_media_types: standardAdapterManifestFields.accepted_media_types,
497
+ implementation_digest: digestSchema,
498
+ official_sources: standardAdapterManifestFields.official_sources,
499
+ dependencies: standardAdapterManifestFields.dependencies,
500
+ execution: standardAdapterExecutionSchema,
501
+ })
502
+ .strict()
503
+ .superRefine((value, context) => {
504
+ assertUnique(value.assertion_ids, context, ["assertion_ids"]);
505
+ validateAdapterManifest(value, context);
506
+ });
507
+ export const externalAssessmentAdapterManifestSchema = externalAssessmentAdapterManifestCoreSchema
508
+ .safeExtend({ adapter_digest: digestSchema })
509
+ .strict();
510
+ export const externalAssessmentRequestCoreSchema = z
511
+ .object({
512
+ request_contract: z.literal("sourcey.external-assessment-request/v1alpha1"),
513
+ adapter: z
514
+ .object({
515
+ namespace: standardKeySchema,
516
+ version: standardVersionSchema,
517
+ adapter_digest: digestSchema,
518
+ })
519
+ .strict(),
520
+ assertion_ids: z.array(requirementIdSchema).min(1).max(512),
521
+ artifacts: z.array(standardEvidenceArtifactSchema).min(1).max(256),
522
+ })
523
+ .strict()
524
+ .superRefine((value, context) => {
525
+ assertUnique(value.assertion_ids, context, ["assertion_ids"]);
526
+ assertUnique(value.artifacts.map((artifact) => artifact.object_digest), context, ["artifacts"]);
527
+ });
528
+ export const externalAssessmentRequestSchema = externalAssessmentRequestCoreSchema
529
+ .safeExtend({ request_digest: digestSchema })
530
+ .strict();
531
+ export const externalAssessmentResultCoreSchema = z
532
+ .object({
533
+ result_contract: z.literal("sourcey.external-assessment-result/v1alpha1"),
534
+ request_digest: digestSchema,
535
+ adapter_digest: digestSchema,
536
+ assertions: z
537
+ .array(z
538
+ .object({
539
+ assertion_id: requirementIdSchema,
540
+ reported_status: z.enum(["passed", "failed", "indeterminate"]),
541
+ reported_score: z
542
+ .object({
543
+ value: z.number().finite(),
544
+ scale_minimum: z.number().finite(),
545
+ scale_maximum: z.number().finite(),
546
+ })
547
+ .strict()
548
+ .superRefine((value, context) => {
549
+ if (value.scale_minimum >= value.scale_maximum ||
550
+ value.value < value.scale_minimum ||
551
+ value.value > value.scale_maximum) {
552
+ context.addIssue({
553
+ code: "custom",
554
+ message: "A reported assessment score must fall inside its exact scale.",
555
+ });
556
+ }
557
+ })
558
+ .optional(),
559
+ locators: z.array(standardEvidenceLocatorSchema).max(64),
560
+ residue: z.array(standardEvidenceResidueSchema).max(64),
561
+ })
562
+ .strict()
563
+ .superRefine((value, context) => {
564
+ if (value.reported_status === "indeterminate" && value.residue.length === 0) {
565
+ context.addIssue({
566
+ code: "custom",
567
+ path: ["residue"],
568
+ message: "An indeterminate external assessment must preserve typed residue.",
569
+ });
570
+ }
571
+ if (value.reported_status !== "indeterminate" && value.locators.length === 0) {
572
+ context.addIssue({
573
+ code: "custom",
574
+ path: ["locators"],
575
+ message: "A conclusive external assessment requires retained-artifact locators.",
576
+ });
577
+ }
578
+ }))
579
+ .min(1),
580
+ })
581
+ .strict()
582
+ .superRefine((value, context) => {
583
+ assertUnique(value.assertions.map((assertion) => assertion.assertion_id), context, ["assertions"]);
584
+ });
585
+ export const externalAssessmentResultSchema = externalAssessmentResultCoreSchema
586
+ .safeExtend({ result_digest: digestSchema })
587
+ .strict();
588
+ export const externalAssessmentRecordCoreSchema = z
589
+ .object({
590
+ record_contract: z.literal("sourcey.external-assessment-record/v1alpha1"),
591
+ request: externalAssessmentRequestSchema,
592
+ result: externalAssessmentResultSchema,
593
+ result_object_digest: digestSchema,
594
+ })
595
+ .strict()
596
+ .superRefine((value, context) => {
597
+ if (value.result.request_digest !== value.request.request_digest ||
598
+ value.result.adapter_digest !== value.request.adapter.adapter_digest) {
599
+ context.addIssue({
600
+ code: "custom",
601
+ path: ["result"],
602
+ message: "An external-assessment record must bind its exact request and adapter.",
603
+ });
604
+ }
605
+ const requested = new Set(value.request.assertion_ids);
606
+ if (requested.size !== value.result.assertions.length ||
607
+ value.result.assertions.some((assertion) => !requested.has(assertion.assertion_id))) {
608
+ context.addIssue({
609
+ code: "custom",
610
+ path: ["result", "assertions"],
611
+ message: "An external-assessment record must return its exact requested assertions.",
612
+ });
613
+ }
614
+ });
615
+ export const externalAssessmentRecordSchema = externalAssessmentRecordCoreSchema
616
+ .safeExtend({ record_digest: digestSchema })
617
+ .strict();
618
+ function requirementKey(value) {
619
+ return `${value.namespace}\u0000${value.version}\u0000${value.requirement_id}\u0000${value.relation}`;
620
+ }
621
+ function assertUnique(values, context, path) {
622
+ if (new Set(values).size !== values.length) {
623
+ context.addIssue({ code: "custom", path, message: "Values must be unique." });
624
+ }
625
+ }
626
+ //# sourceMappingURL=index.js.map