@agent-teams/engineering-foundation 0.16.1 → 0.17.0-rc.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 (330) hide show
  1. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/filesystem-public-api-repository.d.ts +3 -2
  2. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/filesystem-public-api-repository.d.ts.map +1 -1
  3. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/filesystem-public-api-repository.js +39 -6
  4. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/filesystem-public-api-repository.js.map +1 -1
  5. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/public-api-baseline-mapper.d.ts +1 -1
  6. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/public-api-baseline-mapper.d.ts.map +1 -1
  7. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/public-api-baseline-mapper.js +5 -2
  8. package/dist/capabilities/public-api-compatibility/adapters/outbound/filesystem/public-api-baseline-mapper.js.map +1 -1
  9. package/dist/capabilities/public-api-compatibility/application/ports/public-api-repository.d.ts +3 -2
  10. package/dist/capabilities/public-api-compatibility/application/ports/public-api-repository.d.ts.map +1 -1
  11. package/dist/capabilities/public-api-compatibility/application/use-cases/promote-public-api-baselines.d.ts.map +1 -1
  12. package/dist/capabilities/public-api-compatibility/application/use-cases/promote-public-api-baselines.js +19 -2
  13. package/dist/capabilities/public-api-compatibility/application/use-cases/promote-public-api-baselines.js.map +1 -1
  14. package/dist/document-authoring/adapters/node/load-validated-document-authoring-profile-v2.d.ts +26 -0
  15. package/dist/document-authoring/adapters/node/load-validated-document-authoring-profile-v2.d.ts.map +1 -0
  16. package/dist/document-authoring/adapters/node/load-validated-document-authoring-profile-v2.js +74 -0
  17. package/dist/document-authoring/adapters/node/load-validated-document-authoring-profile-v2.js.map +1 -0
  18. package/dist/document-authoring/adapters/node/node-authoring-profile-reader-v2.d.ts +9 -0
  19. package/dist/document-authoring/adapters/node/node-authoring-profile-reader-v2.d.ts.map +1 -0
  20. package/dist/document-authoring/adapters/node/node-authoring-profile-reader-v2.js +41 -0
  21. package/dist/document-authoring/adapters/node/node-authoring-profile-reader-v2.js.map +1 -0
  22. package/dist/document-authoring/adapters/node/node-document-contract-validator.d.ts +1 -1
  23. package/dist/document-authoring/adapters/node/node-document-contract-validator.d.ts.map +1 -1
  24. package/dist/document-authoring/adapters/node/node-document-contract-validator.js +1 -1
  25. package/dist/document-authoring/adapters/node/node-document-contract-validator.js.map +1 -1
  26. package/dist/document-authoring/adapters/node/node-document-file-state.d.ts +1 -1
  27. package/dist/document-authoring/adapters/node/node-document-file-state.d.ts.map +1 -1
  28. package/dist/document-authoring/adapters/node/node-document-file-state.js +17 -1
  29. package/dist/document-authoring/adapters/node/node-document-file-state.js.map +1 -1
  30. package/dist/document-authoring/adapters/node/node-document-metadata-sidecar-reader.d.ts +9 -0
  31. package/dist/document-authoring/adapters/node/node-document-metadata-sidecar-reader.d.ts.map +1 -0
  32. package/dist/document-authoring/adapters/node/node-document-metadata-sidecar-reader.js +87 -0
  33. package/dist/document-authoring/adapters/node/node-document-metadata-sidecar-reader.js.map +1 -0
  34. package/dist/document-authoring/adapters/node/node-document-parent-materializer.d.ts +39 -0
  35. package/dist/document-authoring/adapters/node/node-document-parent-materializer.d.ts.map +1 -0
  36. package/dist/document-authoring/adapters/node/node-document-parent-materializer.js +270 -0
  37. package/dist/document-authoring/adapters/node/node-document-parent-materializer.js.map +1 -0
  38. package/dist/document-authoring/adapters/node/node-document-planning-profile-reader.d.ts.map +1 -1
  39. package/dist/document-authoring/adapters/node/node-document-planning-profile-reader.js +11 -3
  40. package/dist/document-authoring/adapters/node/node-document-planning-profile-reader.js.map +1 -1
  41. package/dist/document-authoring/adapters/node/node-document-planning-state-reader.d.ts +1 -0
  42. package/dist/document-authoring/adapters/node/node-document-planning-state-reader.d.ts.map +1 -1
  43. package/dist/document-authoring/adapters/node/node-document-planning-state-reader.js +18 -1
  44. package/dist/document-authoring/adapters/node/node-document-planning-state-reader.js.map +1 -1
  45. package/dist/document-authoring/adapters/node/node-document-publisher.d.ts +1 -1
  46. package/dist/document-authoring/adapters/node/node-document-publisher.d.ts.map +1 -1
  47. package/dist/document-authoring/adapters/node/node-document-publisher.js +102 -11
  48. package/dist/document-authoring/adapters/node/node-document-publisher.js.map +1 -1
  49. package/dist/document-authoring/adapters/node/node-document-reachability-projector.d.ts +1 -1
  50. package/dist/document-authoring/adapters/node/node-document-reachability-projector.d.ts.map +1 -1
  51. package/dist/document-authoring/adapters/node/node-document-structure-verifier.d.ts +1 -1
  52. package/dist/document-authoring/adapters/node/node-document-structure-verifier.d.ts.map +1 -1
  53. package/dist/document-authoring/adapters/node/node-document-transaction-coordinator.d.ts.map +1 -1
  54. package/dist/document-authoring/adapters/node/node-document-transaction-coordinator.js +1 -1
  55. package/dist/document-authoring/adapters/node/node-document-transaction-coordinator.js.map +1 -1
  56. package/dist/document-authoring/adapters/node/node-metadata-instance-validator.d.ts.map +1 -1
  57. package/dist/document-authoring/adapters/node/node-metadata-instance-validator.js +6 -0
  58. package/dist/document-authoring/adapters/node/node-metadata-instance-validator.js.map +1 -1
  59. package/dist/document-authoring/adapters/node/node-path-authority.d.ts +53 -0
  60. package/dist/document-authoring/adapters/node/node-path-authority.d.ts.map +1 -0
  61. package/dist/document-authoring/adapters/node/node-path-authority.js +186 -0
  62. package/dist/document-authoring/adapters/node/node-path-authority.js.map +1 -0
  63. package/dist/document-authoring/adapters/node/recapture-document-publication-paths.d.ts +2 -1
  64. package/dist/document-authoring/adapters/node/recapture-document-publication-paths.d.ts.map +1 -1
  65. package/dist/document-authoring/adapters/node/recapture-document-publication-paths.js +21 -77
  66. package/dist/document-authoring/adapters/node/recapture-document-publication-paths.js.map +1 -1
  67. package/dist/document-authoring/application/model/document-authoring-profile-description.d.ts +53 -0
  68. package/dist/document-authoring/application/model/document-authoring-profile-description.d.ts.map +1 -0
  69. package/dist/document-authoring/application/model/document-authoring-profile-description.js +2 -0
  70. package/dist/document-authoring/application/model/document-authoring-profile-description.js.map +1 -0
  71. package/dist/document-authoring/application/model/document-catalog.d.ts +29 -0
  72. package/dist/document-authoring/application/model/document-catalog.d.ts.map +1 -1
  73. package/dist/document-authoring/application/model/document-find.d.ts +5 -1
  74. package/dist/document-authoring/application/model/document-find.d.ts.map +1 -1
  75. package/dist/document-authoring/application/model/document-parent-materialization.d.ts +26 -0
  76. package/dist/document-authoring/application/model/document-parent-materialization.d.ts.map +1 -0
  77. package/dist/document-authoring/application/model/document-parent-materialization.js +2 -0
  78. package/dist/document-authoring/application/model/document-parent-materialization.js.map +1 -0
  79. package/dist/document-authoring/application/model/document-planning.d.ts +29 -2
  80. package/dist/document-authoring/application/model/document-planning.d.ts.map +1 -1
  81. package/dist/document-authoring/application/model/document-receipt.d.ts +28 -1
  82. package/dist/document-authoring/application/model/document-receipt.d.ts.map +1 -1
  83. package/dist/document-authoring/application/model/document-transaction-inspection.d.ts +23 -0
  84. package/dist/document-authoring/application/model/document-transaction-inspection.d.ts.map +1 -1
  85. package/dist/document-authoring/application/model/document-transaction.d.ts +91 -3
  86. package/dist/document-authoring/application/model/document-transaction.d.ts.map +1 -1
  87. package/dist/document-authoring/application/policies/assert-artifact-owner-allowed.d.ts +3 -0
  88. package/dist/document-authoring/application/policies/assert-artifact-owner-allowed.d.ts.map +1 -0
  89. package/dist/document-authoring/application/policies/assert-artifact-owner-allowed.js +8 -0
  90. package/dist/document-authoring/application/policies/assert-artifact-owner-allowed.js.map +1 -0
  91. package/dist/document-authoring/application/policies/assert-v2-planning-profile.d.ts +3 -0
  92. package/dist/document-authoring/application/policies/assert-v2-planning-profile.d.ts.map +1 -0
  93. package/dist/document-authoring/application/policies/assert-v2-planning-profile.js +7 -0
  94. package/dist/document-authoring/application/policies/assert-v2-planning-profile.js.map +1 -0
  95. package/dist/document-authoring/application/policies/document-authoring-semantic-digests.d.ts +30 -0
  96. package/dist/document-authoring/application/policies/document-authoring-semantic-digests.d.ts.map +1 -0
  97. package/dist/document-authoring/application/policies/document-authoring-semantic-digests.js +157 -0
  98. package/dist/document-authoring/application/policies/document-authoring-semantic-digests.js.map +1 -0
  99. package/dist/document-authoring/application/policies/document-catalog-authority-stability.d.ts +12 -0
  100. package/dist/document-authoring/application/policies/document-catalog-authority-stability.d.ts.map +1 -0
  101. package/dist/document-authoring/application/policies/document-catalog-authority-stability.js +16 -0
  102. package/dist/document-authoring/application/policies/document-catalog-authority-stability.js.map +1 -0
  103. package/dist/document-authoring/application/policies/document-catalog-sidecar.d.ts +10 -0
  104. package/dist/document-authoring/application/policies/document-catalog-sidecar.d.ts.map +1 -0
  105. package/dist/document-authoring/application/policies/document-catalog-sidecar.js +66 -0
  106. package/dist/document-authoring/application/policies/document-catalog-sidecar.js.map +1 -0
  107. package/dist/document-authoring/application/policies/document-command-projection.d.ts +1 -1
  108. package/dist/document-authoring/application/policies/document-command-projection.d.ts.map +1 -1
  109. package/dist/document-authoring/application/policies/document-contract-digests.d.ts.map +1 -1
  110. package/dist/document-authoring/application/policies/document-contract-digests.js +61 -7
  111. package/dist/document-authoring/application/policies/document-contract-digests.js.map +1 -1
  112. package/dist/document-authoring/application/policies/document-receipt-policy.d.ts +3 -3
  113. package/dist/document-authoring/application/policies/document-receipt-policy.d.ts.map +1 -1
  114. package/dist/document-authoring/application/policies/document-receipt-policy.js +43 -4
  115. package/dist/document-authoring/application/policies/document-receipt-policy.js.map +1 -1
  116. package/dist/document-authoring/application/policies/document-transaction-digests.d.ts +2 -2
  117. package/dist/document-authoring/application/policies/document-transaction-digests.d.ts.map +1 -1
  118. package/dist/document-authoring/application/policies/document-transaction-digests.js.map +1 -1
  119. package/dist/document-authoring/application/policies/document-transaction-envelope-body.d.ts +28 -0
  120. package/dist/document-authoring/application/policies/document-transaction-envelope-body.d.ts.map +1 -0
  121. package/dist/document-authoring/application/policies/document-transaction-envelope-body.js +140 -0
  122. package/dist/document-authoring/application/policies/document-transaction-envelope-body.js.map +1 -0
  123. package/dist/document-authoring/application/policies/document-transaction-envelope-policy.d.ts.map +1 -1
  124. package/dist/document-authoring/application/policies/document-transaction-envelope-policy.js +47 -6
  125. package/dist/document-authoring/application/policies/document-transaction-envelope-policy.js.map +1 -1
  126. package/dist/document-authoring/application/policies/inspect-catalog-document.d.ts +8 -1
  127. package/dist/document-authoring/application/policies/inspect-catalog-document.d.ts.map +1 -1
  128. package/dist/document-authoring/application/policies/inspect-catalog-document.js +48 -0
  129. package/dist/document-authoring/application/policies/inspect-catalog-document.js.map +1 -1
  130. package/dist/document-authoring/application/policies/project-catalog-metadata.d.ts +7 -0
  131. package/dist/document-authoring/application/policies/project-catalog-metadata.d.ts.map +1 -0
  132. package/dist/document-authoring/application/policies/project-catalog-metadata.js +165 -0
  133. package/dist/document-authoring/application/policies/project-catalog-metadata.js.map +1 -0
  134. package/dist/document-authoring/application/policies/same-document-catalog-snapshot.d.ts +3 -0
  135. package/dist/document-authoring/application/policies/same-document-catalog-snapshot.d.ts.map +1 -0
  136. package/dist/document-authoring/application/policies/same-document-catalog-snapshot.js +24 -0
  137. package/dist/document-authoring/application/policies/same-document-catalog-snapshot.js.map +1 -0
  138. package/dist/document-authoring/application/ports/authoring-profile-reader.d.ts +10 -0
  139. package/dist/document-authoring/application/ports/authoring-profile-reader.d.ts.map +1 -1
  140. package/dist/document-authoring/application/ports/document-authority-recompiler.d.ts +1 -1
  141. package/dist/document-authoring/application/ports/document-authority-recompiler.d.ts.map +1 -1
  142. package/dist/document-authoring/application/ports/document-contract-validator.d.ts +1 -1
  143. package/dist/document-authoring/application/ports/document-contract-validator.d.ts.map +1 -1
  144. package/dist/document-authoring/application/ports/document-file-state.d.ts +1 -1
  145. package/dist/document-authoring/application/ports/document-file-state.d.ts.map +1 -1
  146. package/dist/document-authoring/application/ports/document-metadata-sidecar-reader.d.ts +13 -0
  147. package/dist/document-authoring/application/ports/document-metadata-sidecar-reader.d.ts.map +1 -0
  148. package/dist/document-authoring/application/ports/document-metadata-sidecar-reader.js +2 -0
  149. package/dist/document-authoring/application/ports/document-metadata-sidecar-reader.js.map +1 -0
  150. package/dist/document-authoring/application/ports/document-parent-materializer.d.ts +24 -0
  151. package/dist/document-authoring/application/ports/document-parent-materializer.d.ts.map +1 -0
  152. package/dist/document-authoring/application/ports/document-parent-materializer.js +2 -0
  153. package/dist/document-authoring/application/ports/document-parent-materializer.js.map +1 -0
  154. package/dist/document-authoring/application/ports/document-planning-state-reader.d.ts +1 -0
  155. package/dist/document-authoring/application/ports/document-planning-state-reader.d.ts.map +1 -1
  156. package/dist/document-authoring/application/ports/document-publisher.d.ts +1 -1
  157. package/dist/document-authoring/application/ports/document-publisher.d.ts.map +1 -1
  158. package/dist/document-authoring/application/ports/document-reachability-projector.d.ts +1 -1
  159. package/dist/document-authoring/application/ports/document-reachability-projector.d.ts.map +1 -1
  160. package/dist/document-authoring/application/ports/document-structure-verifier.d.ts +1 -1
  161. package/dist/document-authoring/application/ports/document-structure-verifier.d.ts.map +1 -1
  162. package/dist/document-authoring/application/ports/documentation-catalog-reader-v2.d.ts +11 -0
  163. package/dist/document-authoring/application/ports/documentation-catalog-reader-v2.d.ts.map +1 -0
  164. package/dist/document-authoring/application/ports/documentation-catalog-reader-v2.js +2 -0
  165. package/dist/document-authoring/application/ports/documentation-catalog-reader-v2.js.map +1 -0
  166. package/dist/document-authoring/application/ports/documentation-catalog-reader.d.ts +2 -2
  167. package/dist/document-authoring/application/ports/documentation-catalog-reader.d.ts.map +1 -1
  168. package/dist/document-authoring/application/ports/documentation-search-catalog-reader-v2.d.ts +9 -0
  169. package/dist/document-authoring/application/ports/documentation-search-catalog-reader-v2.d.ts.map +1 -0
  170. package/dist/document-authoring/application/ports/documentation-search-catalog-reader-v2.js +2 -0
  171. package/dist/document-authoring/application/ports/documentation-search-catalog-reader-v2.js.map +1 -0
  172. package/dist/document-authoring/application/ports/metadata-instance-validator.d.ts +1 -0
  173. package/dist/document-authoring/application/ports/metadata-instance-validator.d.ts.map +1 -1
  174. package/dist/document-authoring/application/use-cases/apply-document-plan.d.ts +1 -1
  175. package/dist/document-authoring/application/use-cases/apply-document-plan.d.ts.map +1 -1
  176. package/dist/document-authoring/application/use-cases/apply-document-plan.js +150 -54
  177. package/dist/document-authoring/application/use-cases/apply-document-plan.js.map +1 -1
  178. package/dist/document-authoring/application/use-cases/apply-document-recovery-receipt.d.ts +14 -0
  179. package/dist/document-authoring/application/use-cases/apply-document-recovery-receipt.d.ts.map +1 -0
  180. package/dist/document-authoring/application/use-cases/apply-document-recovery-receipt.js +17 -0
  181. package/dist/document-authoring/application/use-cases/apply-document-recovery-receipt.js.map +1 -0
  182. package/dist/document-authoring/application/use-cases/build-documentation-catalog.d.ts +18 -1
  183. package/dist/document-authoring/application/use-cases/build-documentation-catalog.d.ts.map +1 -1
  184. package/dist/document-authoring/application/use-cases/build-documentation-catalog.js +81 -26
  185. package/dist/document-authoring/application/use-cases/build-documentation-catalog.js.map +1 -1
  186. package/dist/document-authoring/application/use-cases/compile-document-plan.d.ts +1 -1
  187. package/dist/document-authoring/application/use-cases/compile-document-plan.d.ts.map +1 -1
  188. package/dist/document-authoring/application/use-cases/compile-document-plan.js +50 -6
  189. package/dist/document-authoring/application/use-cases/compile-document-plan.js.map +1 -1
  190. package/dist/document-authoring/application/use-cases/document-parent-materialization-continuation.d.ts +3 -0
  191. package/dist/document-authoring/application/use-cases/document-parent-materialization-continuation.d.ts.map +1 -0
  192. package/dist/document-authoring/application/use-cases/document-parent-materialization-continuation.js +79 -0
  193. package/dist/document-authoring/application/use-cases/document-parent-materialization-continuation.js.map +1 -0
  194. package/dist/document-authoring/application/use-cases/document-transaction-continuation.d.ts +18 -13
  195. package/dist/document-authoring/application/use-cases/document-transaction-continuation.d.ts.map +1 -1
  196. package/dist/document-authoring/application/use-cases/document-transaction-continuation.js +88 -165
  197. package/dist/document-authoring/application/use-cases/document-transaction-continuation.js.map +1 -1
  198. package/dist/document-authoring/application/use-cases/document-transaction-receipts.d.ts +21 -0
  199. package/dist/document-authoring/application/use-cases/document-transaction-receipts.d.ts.map +1 -0
  200. package/dist/document-authoring/application/use-cases/document-transaction-receipts.js +180 -0
  201. package/dist/document-authoring/application/use-cases/document-transaction-receipts.js.map +1 -0
  202. package/dist/document-authoring/application/use-cases/find-documents.d.ts +7 -1
  203. package/dist/document-authoring/application/use-cases/find-documents.d.ts.map +1 -1
  204. package/dist/document-authoring/application/use-cases/find-documents.js +19 -0
  205. package/dist/document-authoring/application/use-cases/find-documents.js.map +1 -1
  206. package/dist/document-authoring/application/use-cases/load-v2-profile-description.d.ts +15 -0
  207. package/dist/document-authoring/application/use-cases/load-v2-profile-description.d.ts.map +1 -0
  208. package/dist/document-authoring/application/use-cases/load-v2-profile-description.js +12 -0
  209. package/dist/document-authoring/application/use-cases/load-v2-profile-description.js.map +1 -0
  210. package/dist/document-authoring/application/use-cases/plan-documentation-document.d.ts +12 -4
  211. package/dist/document-authoring/application/use-cases/plan-documentation-document.d.ts.map +1 -1
  212. package/dist/document-authoring/application/use-cases/plan-documentation-document.js +25 -28
  213. package/dist/document-authoring/application/use-cases/plan-documentation-document.js.map +1 -1
  214. package/dist/document-authoring/application/use-cases/recapture-directory-receipt-evidence.d.ts +8 -0
  215. package/dist/document-authoring/application/use-cases/recapture-directory-receipt-evidence.d.ts.map +1 -0
  216. package/dist/document-authoring/application/use-cases/recapture-directory-receipt-evidence.js +32 -0
  217. package/dist/document-authoring/application/use-cases/recapture-directory-receipt-evidence.js.map +1 -0
  218. package/dist/document-authoring/application/use-cases/recover-document-transaction.d.ts +1 -1
  219. package/dist/document-authoring/application/use-cases/recover-document-transaction.d.ts.map +1 -1
  220. package/dist/document-authoring/application/use-cases/recover-document-transaction.js +148 -20
  221. package/dist/document-authoring/application/use-cases/recover-document-transaction.js.map +1 -1
  222. package/dist/document-authoring/application/use-cases/run-document-doctor.d.ts +2 -2
  223. package/dist/document-authoring/application/use-cases/run-document-doctor.d.ts.map +1 -1
  224. package/dist/document-authoring/application/use-cases/run-document-doctor.js.map +1 -1
  225. package/dist/document-authoring/application/use-cases/run-document-new.d.ts +4 -4
  226. package/dist/document-authoring/application/use-cases/run-document-new.d.ts.map +1 -1
  227. package/dist/document-authoring/application/use-cases/run-document-new.js.map +1 -1
  228. package/dist/document-authoring/application/use-cases/run-document-recover.d.ts +3 -3
  229. package/dist/document-authoring/application/use-cases/run-document-recover.d.ts.map +1 -1
  230. package/dist/document-authoring/composition/describe-document-authoring-profile-v2.d.ts +8 -0
  231. package/dist/document-authoring/composition/describe-document-authoring-profile-v2.d.ts.map +1 -0
  232. package/dist/document-authoring/composition/describe-document-authoring-profile-v2.js +183 -0
  233. package/dist/document-authoring/composition/describe-document-authoring-profile-v2.js.map +1 -0
  234. package/dist/document-authoring/composition/inspect-document-authoring-environment-v1.d.ts +7 -0
  235. package/dist/document-authoring/composition/inspect-document-authoring-environment-v1.d.ts.map +1 -0
  236. package/dist/document-authoring/composition/inspect-document-authoring-environment-v1.js +10 -0
  237. package/dist/document-authoring/composition/inspect-document-authoring-environment-v1.js.map +1 -0
  238. package/dist/document-authoring/composition/inspect-document-transaction.d.ts +3 -1
  239. package/dist/document-authoring/composition/inspect-document-transaction.d.ts.map +1 -1
  240. package/dist/document-authoring/composition/inspect-document-transaction.js +39 -1
  241. package/dist/document-authoring/composition/inspect-document-transaction.js.map +1 -1
  242. package/dist/document-authoring/composition/node-document-authority-recompiler.d.ts +1 -1
  243. package/dist/document-authoring/composition/node-document-authority-recompiler.d.ts.map +1 -1
  244. package/dist/document-authoring/composition/node-document-authority-recompiler.js +22 -3
  245. package/dist/document-authoring/composition/node-document-authority-recompiler.js.map +1 -1
  246. package/dist/document-authoring/composition/node-document-commands.js +2 -2
  247. package/dist/document-authoring/composition/node-document-planning.d.ts +2 -2
  248. package/dist/document-authoring/composition/node-document-planning.d.ts.map +1 -1
  249. package/dist/document-authoring/composition/node-document-planning.js +28 -7
  250. package/dist/document-authoring/composition/node-document-planning.js.map +1 -1
  251. package/dist/document-authoring/composition/node-document-writing-private.d.ts +1 -1
  252. package/dist/document-authoring/composition/node-document-writing-private.d.ts.map +1 -1
  253. package/dist/document-authoring/composition/node-document-writing-private.js +5 -3
  254. package/dist/document-authoring/composition/node-document-writing-private.js.map +1 -1
  255. package/dist/document-authoring/composition/node-document-writing.d.ts +1 -1
  256. package/dist/document-authoring/composition/node-document-writing.d.ts.map +1 -1
  257. package/dist/document-authoring/index.d.ts +29 -8
  258. package/dist/document-authoring/index.d.ts.map +1 -1
  259. package/dist/document-authoring/index.js +50 -3
  260. package/dist/document-authoring/index.js.map +1 -1
  261. package/dist/document-authoring/qualification/index.d.ts +22 -0
  262. package/dist/document-authoring/qualification/index.d.ts.map +1 -0
  263. package/dist/document-authoring/qualification/index.js +131 -0
  264. package/dist/document-authoring/qualification/index.js.map +1 -0
  265. package/dist/index.d.ts +1 -0
  266. package/dist/index.d.ts.map +1 -1
  267. package/dist/index.js +1 -0
  268. package/dist/index.js.map +1 -1
  269. package/dist/local-mode/inspection.d.ts.map +1 -1
  270. package/dist/local-mode/inspection.js +2 -1
  271. package/dist/local-mode/inspection.js.map +1 -1
  272. package/dist/mutation/index.d.ts +3 -0
  273. package/dist/mutation/index.d.ts.map +1 -0
  274. package/dist/mutation/index.js +2 -0
  275. package/dist/mutation/index.js.map +1 -0
  276. package/dist/package-self-check.d.ts +1 -1
  277. package/dist/package-self-check.d.ts.map +1 -1
  278. package/dist/package-self-check.js +12 -0
  279. package/dist/package-self-check.js.map +1 -1
  280. package/dist/public-api-surface.d.ts +1 -0
  281. package/dist/public-api-surface.d.ts.map +1 -1
  282. package/dist/public-api-surface.js +1 -0
  283. package/dist/public-api-surface.js.map +1 -1
  284. package/dist/repository-mutation/adapters/node/node-cleanup-owned-temporary.d.ts.map +1 -1
  285. package/dist/repository-mutation/adapters/node/node-cleanup-owned-temporary.js +21 -0
  286. package/dist/repository-mutation/adapters/node/node-cleanup-owned-temporary.js.map +1 -1
  287. package/dist/repository-mutation/adapters/node/node-create-and-bind-directory.d.ts +15 -0
  288. package/dist/repository-mutation/adapters/node/node-create-and-bind-directory.d.ts.map +1 -0
  289. package/dist/repository-mutation/adapters/node/node-create-and-bind-directory.js +23 -0
  290. package/dist/repository-mutation/adapters/node/node-create-and-bind-directory.js.map +1 -0
  291. package/dist/repository-mutation/adapters/node/node-directory-materialization.d.ts +37 -0
  292. package/dist/repository-mutation/adapters/node/node-directory-materialization.d.ts.map +1 -0
  293. package/dist/repository-mutation/adapters/node/node-directory-materialization.js +224 -0
  294. package/dist/repository-mutation/adapters/node/node-directory-materialization.js.map +1 -0
  295. package/dist/repository-mutation/adapters/node/node-prepare-exact-sibling-temporary.d.ts +1 -0
  296. package/dist/repository-mutation/adapters/node/node-prepare-exact-sibling-temporary.d.ts.map +1 -1
  297. package/dist/repository-mutation/adapters/node/node-prepare-exact-sibling-temporary.js +1 -0
  298. package/dist/repository-mutation/adapters/node/node-prepare-exact-sibling-temporary.js.map +1 -1
  299. package/dist/repository-mutation/application/model/directory-materialization.d.ts +35 -0
  300. package/dist/repository-mutation/application/model/directory-materialization.d.ts.map +1 -0
  301. package/dist/repository-mutation/application/model/directory-materialization.js +11 -0
  302. package/dist/repository-mutation/application/model/directory-materialization.js.map +1 -0
  303. package/dist/schema-catalog.d.ts.map +1 -1
  304. package/dist/schema-catalog.js +9 -0
  305. package/dist/schema-catalog.js.map +1 -1
  306. package/dist/schema-ids.d.ts +1 -1
  307. package/dist/schema-ids.d.ts.map +1 -1
  308. package/dist/schema-ids.js +5 -0
  309. package/dist/schema-ids.js.map +1 -1
  310. package/dist/transaction-coordination/adapters/node/document-envelope-bindings.d.ts +2 -2
  311. package/dist/transaction-coordination/adapters/node/document-envelope-bindings.d.ts.map +1 -1
  312. package/dist/transaction-coordination/adapters/node/document-envelope-bindings.js +33 -19
  313. package/dist/transaction-coordination/adapters/node/document-envelope-bindings.js.map +1 -1
  314. package/dist/transaction-coordination/adapters/node/document-temporary-identity.d.ts +1 -1
  315. package/dist/transaction-coordination/adapters/node/document-temporary-identity.d.ts.map +1 -1
  316. package/dist/transaction-coordination/adapters/node/document-temporary-identity.js.map +1 -1
  317. package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.d.ts.map +1 -1
  318. package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.js +11 -1
  319. package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.js.map +1 -1
  320. package/dist/transaction-coordination/application/foundation-transaction-coordinator.d.ts.map +1 -1
  321. package/dist/transaction-coordination/application/foundation-transaction-coordinator.js +1 -1
  322. package/dist/transaction-coordination/application/foundation-transaction-coordinator.js.map +1 -1
  323. package/dist/transaction-coordination/application/model/internal-transaction-status.d.ts +2 -2
  324. package/dist/transaction-coordination/application/model/internal-transaction-status.d.ts.map +1 -1
  325. package/package.json +14 -1
  326. package/schemas/document-authoring-profile/v2.schema.json +168 -0
  327. package/schemas/document-parent-materialization/v2.schema.json +65 -0
  328. package/schemas/document-plan/v2.schema.json +85 -0
  329. package/schemas/document-receipt/v2.schema.json +108 -0
  330. package/schemas/foundation-transaction-envelope/v4.schema.json +164 -0
@@ -47,6 +47,36 @@ function isRecord(value) {
47
47
  function hasOwnedTemporary(journal) {
48
48
  return "ownedTemporary" in journal;
49
49
  }
50
+ function assertV4MaterializationBindings(envelope) {
51
+ const materialization = envelope.journal.parentMaterialization;
52
+ assertNonzeroDocumentPhysicalIdentity(materialization.anchorIdentity);
53
+ const planned = envelope.journal.plan.parentMaterialization.missingDirectories;
54
+ if (materialization.createdDirectories.length > planned.length ||
55
+ materialization.createdDirectories.some((entry, index) => {
56
+ assertNonzeroDocumentPhysicalIdentity(entry.identity);
57
+ return entry.path !== planned[index];
58
+ })) {
59
+ throw new DocumentTransactionEnvelopeError("Document transaction directory evidence is not an exact Plan prefix.");
60
+ }
61
+ const pending = materialization.pendingDirectory;
62
+ if (envelope.state === "PREPARED" && materialization.createdDirectories.length !== 0) {
63
+ throw new DocumentTransactionEnvelopeError("PREPARED must not contain created directory evidence.");
64
+ }
65
+ if (envelope.state === "MATERIALIZING" && planned.length === 0) {
66
+ throw new DocumentTransactionEnvelopeError("MATERIALIZING requires at least one planned directory.");
67
+ }
68
+ if (pending !== undefined &&
69
+ pending !== planned[materialization.createdDirectories.length]) {
70
+ throw new DocumentTransactionEnvelopeError("Document transaction pending directory does not bind the next Plan path.");
71
+ }
72
+ if (envelope.state !== "MATERIALIZING" && pending !== undefined) {
73
+ throw new DocumentTransactionEnvelopeError("Only MATERIALIZING may retain a pending directory.");
74
+ }
75
+ if ((envelope.state === "PUBLISHING" || envelope.state === "PUBLISHED") &&
76
+ materialization.createdDirectories.length !== planned.length) {
77
+ throw new DocumentTransactionEnvelopeError("Document publication requires complete directory materialization evidence.");
78
+ }
79
+ }
50
80
  function assertLifecycleBindings(envelope) {
51
81
  const { journal } = envelope;
52
82
  const { destination } = journal;
@@ -69,6 +99,9 @@ function assertLifecycleBindings(envelope) {
69
99
  if (envelope.state === "PUBLISHED") {
70
100
  assertNonzeroDocumentPhysicalIdentity(envelope.journal.publicationIdentity);
71
101
  }
102
+ if (envelope.schemaVersion === 4) {
103
+ assertV4MaterializationBindings(envelope);
104
+ }
72
105
  }
73
106
  export async function assertDocumentTransactionEnvelope(value) {
74
107
  const candidate = deepFreezeCanonical(canonicalSnapshot(value));
@@ -76,21 +109,29 @@ export async function assertDocumentTransactionEnvelope(value) {
76
109
  throw new DocumentTransactionEnvelopeError("Document transaction envelope must be an object.");
77
110
  }
78
111
  const handler = candidate["recoveryHandler"];
79
- if (candidate["schemaVersion"] !== 3 ||
112
+ if (![3, 4].includes(Number(candidate["schemaVersion"])) ||
80
113
  candidate["operationKind"] !== "document-authoring" ||
81
114
  !isRecord(handler) ||
82
115
  handler["id"] !== "foundation.document-authoring" ||
83
- handler["contractVersion"] !== 2 ||
116
+ handler["contractVersion"] !==
117
+ (candidate["schemaVersion"] === 4 ? 3 : 2) ||
84
118
  candidate["adapterContractVersion"] !== 1 ||
85
- candidate["payloadKind"] !== "document-authoring-journal/v2" ||
86
- !["PREPARED", "PUBLISHING", "PUBLISHED"].includes(String(candidate["state"]))) {
119
+ candidate["payloadKind"] !==
120
+ (candidate["schemaVersion"] === 4
121
+ ? "document-authoring-journal/v3"
122
+ : "document-authoring-journal/v2") ||
123
+ !(candidate["schemaVersion"] === 4
124
+ ? ["PREPARED", "MATERIALIZING", "PUBLISHING", "PUBLISHED"]
125
+ : ["PREPARED", "PUBLISHING", "PUBLISHED"]).includes(String(candidate["state"]))) {
87
126
  throw new DocumentTransactionEnvelopeError("Document transaction envelope constants are invalid.");
88
127
  }
89
128
  try {
90
- await assertSchema("foundation-transaction-envelope/v3", candidate, "document-transaction-envelope");
129
+ await assertSchema(candidate["schemaVersion"] === 4
130
+ ? "foundation-transaction-envelope/v4"
131
+ : "foundation-transaction-envelope/v3", candidate, "document-transaction-envelope");
91
132
  }
92
133
  catch (error) {
93
- throw new DocumentTransactionEnvelopeError("Document transaction envelope does not match the closed v3 schema.", { cause: error });
134
+ throw new DocumentTransactionEnvelopeError("Document transaction envelope does not match its closed versioned schema.", { cause: error });
94
135
  }
95
136
  const envelope = candidate;
96
137
  assertDocumentPlanDigests(envelope.journal.plan);
@@ -1 +1 @@
1
- {"version":3,"file":"document-transaction-envelope-policy.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/document-transaction-envelope-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-transaction-envelope-policy.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/document-transaction-envelope-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEd,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAO1D,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EACL,iCAAiC,EACjC,gCAAgC,EACjC,MAAM,mCAAmC,CAAC;AAE3C,MAAM,gCAAiC,SAAQ,KAAK;IAClD,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,kCAAkC,CAAC;IACjD,CAAC;CACF;AAED,SAAS,iBAAiB,CAAI,KAAQ;IACpC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CACf,aAAa,CAAC,KAAsC,CAAC,CACjD,CAAC;IACT,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,gCAAgC,CACxC,+DAA+D,EAC/D,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAI,KAAQ;IACtC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACtD,SAAS;QACX,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3C,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACjE,MAAM,KAAK,GAAY,UAAU,KAAK,SAAS,IAAI,OAAO,IAAI,UAAU;gBACtE,CAAC,CAAC,UAAU,CAAC,KAAK;gBAClB,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAChD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAkE;IAKlE,OAAO,gBAAgB,IAAI,OAAO,CAAC;AACrC,CAAC;AAED,SAAS,+BAA+B,CACtC,QAA6E;IAE7E,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC;IAC/D,qCAAqC,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,CAAC;IAC/E,IAAI,eAAe,CAAC,kBAAkB,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM;QAC5D,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACvD,qCAAqC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtD,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,EAAE,CAAC;QACL,MAAM,IAAI,gCAAgC,CACxC,sEAAsE,CACvE,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,eAAe,CAAC,gBAAgB,CAAC;IACjD,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU,IAAI,eAAe,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,gCAAgC,CACxC,uDAAuD,CACxD,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,eAAe,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/D,MAAM,IAAI,gCAAgC,CACxC,wDAAwD,CACzD,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,KAAK,SAAS;QACvB,OAAO,KAAK,OAAO,CAAC,eAAe,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,gCAAgC,CACxC,0EAA0E,CAC3E,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,eAAe,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAChE,MAAM,IAAI,gCAAgC,CACxC,oDAAoD,CACrD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,YAAY,IAAI,QAAQ,CAAC,KAAK,KAAK,WAAW,CAAC;QACrE,eAAe,CAAC,kBAAkB,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QAC/D,MAAM,IAAI,gCAAgC,CACxC,4EAA4E,CAC7E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC9B,QAAqC;IAErC,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAC7B,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,IACE,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,WAAW;QAC7C,QAAQ,CAAC,UAAU,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;QAC7D,QAAQ,CAAC,UAAU,CAAC,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EACzE,CAAC;QACD,MAAM,IAAI,gCAAgC,CACxC,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,IACE,iBAAiB,CAAC,OAAO,CAAC;QAC1B,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAC5D,CAAC;QACD,MAAM,IAAI,gCAAgC,CACxC,kEAAkE,CACnE,CAAC;IACJ,CAAC;IACD,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,qCAAqC,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACvE,IACE,OAAO,CAAC,cAAc,CAAC,IAAI;YAC3B,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EACxE,CAAC;YACD,MAAM,IAAI,gCAAgC,CACxC,sEAAsE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QACnC,qCAAqC,CACnC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CACrC,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;QACjC,+BAA+B,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,KAAc;IAEd,MAAM,SAAS,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,gCAAgC,CACxC,kDAAkD,CACnD,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,iBAAiB,CAAC,CAAC;IAC7C,IACE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;QACpD,SAAS,CAAC,eAAe,CAAC,KAAK,oBAAoB;QACnD,CAAC,QAAQ,CAAC,OAAO,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,KAAK,+BAA+B;QACjD,OAAO,CAAC,iBAAiB,CAAC;YACxB,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,SAAS,CAAC,wBAAwB,CAAC,KAAK,CAAC;QACzC,SAAS,CAAC,aAAa,CAAC;YACtB,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC;gBAC/B,CAAC,CAAC,+BAA+B;gBACjC,CAAC,CAAC,+BAA+B,CAAC;QACtC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC;YAChC,CAAC,CAAC,CAAC,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,CAAC;YAC1D,CAAC,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CACnD,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAC3B,EACD,CAAC;QACD,MAAM,IAAI,gCAAgC,CACxC,sDAAsD,CACvD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,YAAY,CAChB,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC;YAC9B,CAAC,CAAC,oCAAoC;YACtC,CAAC,CAAC,oCAAoC,EACxC,SAAS,EACT,+BAA+B,CAChC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,gCAAgC,CACxC,2EAA2E,EAC3E,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,SAAmD,CAAC;IACrE,yBAAyB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAClC,IACE,QAAQ,CAAC,aAAa;QACtB,gCAAgC,CAAC,QAAQ,CAAC,OAAO,CAAC;QAClD,QAAQ,CAAC,cAAc;YACvB,iCAAiC,CAAC,QAAQ,CAAC,EAC3C,CAAC;QACD,MAAM,IAAI,gCAAgC,CACxC,kDAAkD,CACnD,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,IAAqC;IAErC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG;QAClB,GAAG,QAAQ;QACX,aAAa,EAAE,gCAAgC,CAAC,QAAQ,CAAC,OAAO,CAAC;KACX,CAAC;IACzD,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACnC,GAAG,WAAW;QACd,cAAc,EAAE,iCAAiC,CAAC,WAAW,CAAC;KAC/D,CAAgC,CAAC;IAClC,OAAO,iCAAiC,CAAC,QAAQ,CAAC,CAAC;AACrD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type MarkdownDocumentObservation } from "../../../documentation-observation/application/model/markdown-document.js";
2
- import type { DocumentDescriptor, DocumentIdentityProjectionEntry, DocumentationCatalogDiagnostic, DocumentSearchCorpusEntry } from "../model/document-catalog.js";
2
+ import type { DocumentDescriptor, DocumentDescriptorV2, DocumentIdentityProjectionEntry, DocumentMetadataObject, DocumentationCatalogDiagnostic, DocumentSearchCorpusEntry, DocumentSearchCorpusEntryV2 } from "../model/document-catalog.js";
3
3
  import type { MetadataSchemaSnapshot } from "../ports/metadata-instance-validator.js";
4
4
  export interface InspectedCatalogDocument {
5
5
  readonly descriptor?: DocumentDescriptor;
@@ -7,5 +7,12 @@ export interface InspectedCatalogDocument {
7
7
  readonly identity?: DocumentIdentityProjectionEntry;
8
8
  readonly searchEntry?: DocumentSearchCorpusEntry;
9
9
  }
10
+ export interface InspectedCatalogDocumentV2 {
11
+ readonly descriptor?: DocumentDescriptorV2;
12
+ readonly diagnostic?: DocumentationCatalogDiagnostic;
13
+ readonly identity?: DocumentIdentityProjectionEntry;
14
+ readonly searchEntry?: DocumentSearchCorpusEntryV2;
15
+ }
10
16
  export declare function inspectCatalogDocument(document: MarkdownDocumentObservation, metadata: MetadataSchemaSnapshot, ownerIds: ReadonlySet<string>, source: DocumentDescriptor["source"]): InspectedCatalogDocument;
17
+ export declare function inspectCatalogDocumentV2(document: MarkdownDocumentObservation, metadata: MetadataSchemaSnapshot, ownerIds: ReadonlySet<string>, source: DocumentDescriptor["source"], metadataOverride?: DocumentMetadataObject): InspectedCatalogDocumentV2;
11
18
  //# sourceMappingURL=inspect-catalog-document.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inspect-catalog-document.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/inspect-catalog-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,2EAA2E,CAAC;AACnF,OAAO,KAAK,EACV,kBAAkB,EAClB,+BAA+B,EAC/B,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAQtF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,8BAA8B,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,EAAE,+BAA+B,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,yBAAyB,CAAC;CAClD;AAMD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,sBAAsB,EAChC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,EAC7B,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GACnC,wBAAwB,CAyG1B"}
1
+ {"version":3,"file":"inspect-catalog-document.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/inspect-catalog-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,2EAA2E,CAAC;AACnF,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,+BAA+B,EAC/B,sBAAsB,EACtB,8BAA8B,EAC9B,yBAAyB,EACzB,2BAA2B,EAC5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAYtF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,8BAA8B,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,EAAE,+BAA+B,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,yBAAyB,CAAC;CAClD;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,8BAA8B,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,EAAE,+BAA+B,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,2BAA2B,CAAC;CACpD;AAMD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,sBAAsB,EAChC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,EAC7B,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GACnC,wBAAwB,CAyG1B;AAED,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,sBAAsB,EAChC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,EAC7B,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,EACpC,gBAAgB,CAAC,EAAE,sBAAsB,GACxC,0BAA0B,CAwD5B"}
@@ -1,6 +1,7 @@
1
1
  import { markdownSourceWithoutFrontmatter } from "../../../documentation-observation/application/model/markdown-document.js";
2
2
  import { catalogDiagnostic } from "./document-catalog-diagnostics.js";
3
3
  import { documentTitle, inspectDocumentFields, invalidDocumentPathInspection } from "./document-catalog-fields.js";
4
+ import { CatalogMetadataProjectionError, projectCatalogMetadata } from "./project-catalog-metadata.js";
4
5
  function isRecord(value) {
5
6
  return typeof value === "object" && value !== null && !Array.isArray(value);
6
7
  }
@@ -75,4 +76,51 @@ export function inspectCatalogDocument(document, metadata, ownerIds, source) {
75
76
  })
76
77
  };
77
78
  }
79
+ export function inspectCatalogDocumentV2(document, metadata, ownerIds, source, metadataOverride) {
80
+ const inspectedDocument = metadataOverride === undefined
81
+ ? document
82
+ : Object.freeze({
83
+ ...document,
84
+ frontmatter: Object.freeze({
85
+ endOffset: document.frontmatter.endOffset,
86
+ kind: "valid",
87
+ value: metadataOverride
88
+ })
89
+ });
90
+ const inspected = inspectCatalogDocument(inspectedDocument, metadata, ownerIds, source);
91
+ if (inspected.descriptor === undefined || inspected.searchEntry === undefined) {
92
+ return Object.freeze({
93
+ ...(inspected.diagnostic === undefined
94
+ ? {}
95
+ : { diagnostic: inspected.diagnostic }),
96
+ ...(inspected.identity === undefined ? {} : { identity: inspected.identity })
97
+ });
98
+ }
99
+ try {
100
+ const projectedMetadata = projectCatalogMetadata(inspectedDocument.frontmatter.kind === "valid"
101
+ ? inspectedDocument.frontmatter.value
102
+ : undefined);
103
+ const descriptor = Object.freeze({
104
+ ...inspected.descriptor,
105
+ metadata: projectedMetadata
106
+ });
107
+ return Object.freeze({
108
+ descriptor,
109
+ ...(inspected.identity === undefined ? {} : { identity: inspected.identity }),
110
+ searchEntry: Object.freeze({
111
+ ...inspected.searchEntry,
112
+ descriptor
113
+ })
114
+ });
115
+ }
116
+ catch (error) {
117
+ if (!(error instanceof CatalogMetadataProjectionError)) {
118
+ throw error;
119
+ }
120
+ return Object.freeze({
121
+ diagnostic: catalogDiagnostic("document.catalog.metadata-projection-invalid", document.repositoryPath, error.message),
122
+ ...(inspected.identity === undefined ? {} : { identity: inspected.identity })
123
+ });
124
+ }
125
+ }
78
126
  //# sourceMappingURL=inspect-catalog-document.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inspect-catalog-document.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/inspect-catalog-document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inspect-catalog-document.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/inspect-catalog-document.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { DocumentMetadataObject } from "../model/document-catalog.js";
2
+ export declare class CatalogMetadataProjectionError extends Error {
3
+ constructor(message: string);
4
+ }
5
+ export declare function projectCatalogMetadata(value: unknown): DocumentMetadataObject;
6
+ export declare function mergeCatalogMetadata(inline: unknown, sidecar: DocumentMetadataObject): DocumentMetadataObject;
7
+ //# sourceMappingURL=project-catalog-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-catalog-metadata.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/project-catalog-metadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,8BAA8B,CAAC;AAStC,qBAAa,8BAA+B,SAAQ,KAAK;IACvD,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AA2JD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,CAU7E;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,sBAAsB,GAC9B,sBAAsB,CAiBxB"}
@@ -0,0 +1,165 @@
1
+ import { compareBinaryStrings } from "../../../binary-string-comparator.js";
2
+ import { canonicalJson } from "../../../canonical-json.js";
3
+ const MAXIMUM_METADATA_DEPTH = 64;
4
+ const MAXIMUM_METADATA_CONTAINER_ITEMS = 10_000;
5
+ const MAXIMUM_METADATA_VALUES = 100_000;
6
+ const MAXIMUM_METADATA_JSON_BYTES = 1024 * 1024;
7
+ const RESERVED_KEYS = new Set(["__proto__", "constructor", "prototype"]);
8
+ const NOT_SCALAR = Symbol("not-scalar");
9
+ export class CatalogMetadataProjectionError extends Error {
10
+ constructor(message) {
11
+ super(message);
12
+ this.name = "CatalogMetadataProjectionError";
13
+ }
14
+ }
15
+ function invalidMetadata(message) {
16
+ throw new CatalogMetadataProjectionError(message);
17
+ }
18
+ function assertCanonicalString(value, subject) {
19
+ if (value.normalize("NFC") !== value) {
20
+ invalidMetadata(`${subject} must use Unicode NFC.`);
21
+ }
22
+ for (let index = 0; index < value.length; index += 1) {
23
+ const codeUnit = value.charCodeAt(index);
24
+ if (codeUnit >= 0xd800 && codeUnit <= 0xdbff) {
25
+ const next = value.charCodeAt(index + 1);
26
+ if (!(next >= 0xdc00 && next <= 0xdfff)) {
27
+ invalidMetadata(`${subject} must not contain lone UTF-16 surrogates.`);
28
+ }
29
+ index += 1;
30
+ }
31
+ else if (codeUnit >= 0xdc00 && codeUnit <= 0xdfff) {
32
+ invalidMetadata(`${subject} must not contain lone UTF-16 surrogates.`);
33
+ }
34
+ }
35
+ }
36
+ function countValue(budget) {
37
+ budget.values += 1;
38
+ if (budget.values > MAXIMUM_METADATA_VALUES) {
39
+ invalidMetadata("Document metadata exceeds the value budget.");
40
+ }
41
+ }
42
+ function projectScalar(value) {
43
+ if (value === null || typeof value === "boolean") {
44
+ return value;
45
+ }
46
+ if (typeof value === "string") {
47
+ assertCanonicalString(value, "Document metadata string");
48
+ return value;
49
+ }
50
+ if (typeof value === "number") {
51
+ if (!Number.isFinite(value) ||
52
+ !Number.isSafeInteger(value) ||
53
+ Object.is(value, -0)) {
54
+ invalidMetadata("Document metadata numbers must be finite safe integers other than negative zero.");
55
+ }
56
+ return value;
57
+ }
58
+ if (typeof value !== "object") {
59
+ invalidMetadata("Document metadata must use the closed JSON data model.");
60
+ }
61
+ return NOT_SCALAR;
62
+ }
63
+ function ownDataKeys(value, array) {
64
+ const keys = Reflect.ownKeys(value);
65
+ if (keys.some((key) => typeof key !== "string")) {
66
+ invalidMetadata("Document metadata must not contain symbol keys.");
67
+ }
68
+ const stringKeys = keys;
69
+ if (array) {
70
+ if (stringKeys.length !== value.length + 1 ||
71
+ stringKeys.some((key) => key !== "length" && !/^(?:0|[1-9][0-9]*)$/u.test(key))) {
72
+ invalidMetadata("Document metadata arrays must be dense and contain no extra properties.");
73
+ }
74
+ }
75
+ const itemCount = array ? stringKeys.length - 1 : stringKeys.length;
76
+ if (itemCount > MAXIMUM_METADATA_CONTAINER_ITEMS) {
77
+ invalidMetadata("Document metadata container exceeds the item budget.");
78
+ }
79
+ return stringKeys;
80
+ }
81
+ function projectValue(value, depth, seen, budget) {
82
+ countValue(budget);
83
+ const scalar = projectScalar(value);
84
+ if (scalar !== NOT_SCALAR) {
85
+ return scalar;
86
+ }
87
+ const container = value;
88
+ if (depth > MAXIMUM_METADATA_DEPTH) {
89
+ invalidMetadata("Document metadata exceeds the nesting budget.");
90
+ }
91
+ if (seen.has(container)) {
92
+ invalidMetadata("Document metadata must be an unshared acyclic JSON tree.");
93
+ }
94
+ seen.add(container);
95
+ if (Array.isArray(value)) {
96
+ if (Object.getPrototypeOf(value) !== Array.prototype) {
97
+ invalidMetadata("Document metadata arrays must use the intrinsic Array prototype.");
98
+ }
99
+ ownDataKeys(value, true);
100
+ const projected = [];
101
+ for (let index = 0; index < value.length; index += 1) {
102
+ const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
103
+ if (descriptor === undefined ||
104
+ !("value" in descriptor) ||
105
+ descriptor.enumerable !== true) {
106
+ invalidMetadata("Document metadata arrays must contain enumerable own data items.");
107
+ }
108
+ projected.push(projectValue(descriptor.value, depth + 1, seen, budget));
109
+ }
110
+ return Object.freeze(projected);
111
+ }
112
+ const prototype = Object.getPrototypeOf(container);
113
+ if (prototype !== Object.prototype && prototype !== null) {
114
+ invalidMetadata("Document metadata mappings must use a plain or null prototype.");
115
+ }
116
+ const keys = ownDataKeys(container, false).toSorted(compareBinaryStrings);
117
+ const projected = {};
118
+ for (const key of keys) {
119
+ assertCanonicalString(key, "Document metadata key");
120
+ if (RESERVED_KEYS.has(key)) {
121
+ invalidMetadata(`Document metadata key ${key} is reserved.`);
122
+ }
123
+ const descriptor = Object.getOwnPropertyDescriptor(container, key);
124
+ if (descriptor === undefined ||
125
+ !("value" in descriptor) ||
126
+ descriptor.enumerable !== true) {
127
+ invalidMetadata("Document metadata mappings must contain enumerable own data properties.");
128
+ }
129
+ Object.defineProperty(projected, key, {
130
+ configurable: false,
131
+ enumerable: true,
132
+ value: projectValue(descriptor.value, depth + 1, seen, budget),
133
+ writable: false
134
+ });
135
+ }
136
+ return Object.freeze(projected);
137
+ }
138
+ export function projectCatalogMetadata(value) {
139
+ const projected = projectValue(value, 0, new WeakSet(), { values: 0 });
140
+ if (projected === null || typeof projected !== "object" || Array.isArray(projected)) {
141
+ invalidMetadata("Document metadata root must be an object.");
142
+ }
143
+ const encoded = canonicalJson(projected);
144
+ if (Buffer.byteLength(encoded, "utf8") > MAXIMUM_METADATA_JSON_BYTES) {
145
+ invalidMetadata("Document metadata exceeds the canonical JSON byte budget.");
146
+ }
147
+ return projected;
148
+ }
149
+ export function mergeCatalogMetadata(inline, sidecar) {
150
+ const projectedInline = projectCatalogMetadata(inline);
151
+ const merged = {};
152
+ for (const [key, value] of Object.entries(sidecar)) {
153
+ merged[key] = value;
154
+ }
155
+ for (const [key, value] of Object.entries(projectedInline)) {
156
+ const sidecarValue = merged[key];
157
+ if (sidecarValue !== undefined &&
158
+ canonicalJson(sidecarValue) !== canonicalJson(value)) {
159
+ invalidMetadata(`Inline and sidecar metadata conflict at root key ${key}.`);
160
+ }
161
+ merged[key] = value;
162
+ }
163
+ return projectCatalogMetadata(merged);
164
+ }
165
+ //# sourceMappingURL=project-catalog-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-catalog-metadata.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/project-catalog-metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentationCatalogSnapshotContract } from "../model/document-catalog.js";
2
+ export declare function sameDocumentCatalogSnapshot(left: DocumentationCatalogSnapshotContract, right: DocumentationCatalogSnapshotContract): boolean;
3
+ //# sourceMappingURL=same-document-catalog-snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"same-document-catalog-snapshot.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/same-document-catalog-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,oCAAoC,EACrC,MAAM,8BAA8B,CAAC;AAkBtC,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,oCAAoC,EAC1C,KAAK,EAAE,oCAAoC,GAC1C,OAAO,CAUT"}
@@ -0,0 +1,24 @@
1
+ function sameEvidence(left, right) {
2
+ return left.path === right.path && left.digest === right.digest && left.size === right.size;
3
+ }
4
+ function authority(catalog) {
5
+ return [
6
+ catalog.authority.profile,
7
+ catalog.authority.metadataSchema,
8
+ catalog.authority.ownerCatalog,
9
+ ...(catalog.authority.metadataSidecar === undefined
10
+ ? [] : [catalog.authority.metadataSidecar])
11
+ ];
12
+ }
13
+ export function sameDocumentCatalogSnapshot(left, right) {
14
+ const leftAuthority = authority(left);
15
+ const rightAuthority = authority(right);
16
+ return left.status === right.status && left.projectId === right.projectId &&
17
+ leftAuthority.length === rightAuthority.length &&
18
+ leftAuthority.every((entry, index) => sameEvidence(entry, rightAuthority[index])) &&
19
+ JSON.stringify(left.diagnostics) === JSON.stringify(right.diagnostics) &&
20
+ JSON.stringify(left.documents) === JSON.stringify(right.documents) &&
21
+ JSON.stringify(left.identityProjection) === JSON.stringify(right.identityProjection) &&
22
+ JSON.stringify(left.ownerIds) === JSON.stringify(right.ownerIds);
23
+ }
24
+ //# sourceMappingURL=same-document-catalog-snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"same-document-catalog-snapshot.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/policies/same-document-catalog-snapshot.ts"],"names":[],"mappings":"AAKA,SAAS,YAAY,CAAC,IAA+B,EAAE,KAAgC;IACrF,OAAO,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC;AAC9F,CAAC;AAED,SAAS,SAAS,CAChB,OAA6C;IAE7C,OAAO;QACL,OAAO,CAAC,SAAS,CAAC,OAAO;QACzB,OAAO,CAAC,SAAS,CAAC,cAAc;QAChC,OAAO,CAAC,SAAS,CAAC,YAAY;QAC9B,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,KAAK,SAAS;YACjD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,IAA0C,EAC1C,KAA2C;IAE3C,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;QACvE,aAAa,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;QAC9C,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAE,CAAC,CAAC;QAClF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC;QACtE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC;QACpF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AACrE,CAAC"}
@@ -7,15 +7,25 @@ export type CatalogCollection = {
7
7
  readonly root: string;
8
8
  };
9
9
  export interface CatalogProfileSnapshot {
10
+ readonly artifactOwnerIds?: readonly {
11
+ readonly ids: readonly string[];
12
+ readonly type: string;
13
+ }[];
10
14
  readonly collections: readonly CatalogCollection[];
11
15
  readonly evidence: DocumentAuthorityEvidence;
12
16
  readonly excludedPrefixes: readonly string[];
13
17
  readonly metadataSchemaPath: string;
18
+ readonly metadataSidecar?: {
19
+ readonly kind: "path-metadata-map";
20
+ readonly path: string;
21
+ };
14
22
  readonly ownerCatalog: {
15
23
  readonly contract: "foundation.owner-map/v1";
16
24
  readonly path: string;
17
25
  };
18
26
  readonly projectId: string;
27
+ readonly schemaVersion?: 1 | 2;
28
+ readonly templatePaths?: readonly string[];
19
29
  }
20
30
  export interface AuthoringProfileReader {
21
31
  read(request: {
@@ -1 +1 @@
1
- {"version":3,"file":"authoring-profile-reader.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/authoring-profile-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAE9E,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;AAEN,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE;QACrB,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;QAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,OAAO,EAAE;QACZ,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACrC"}
1
+ {"version":3,"file":"authoring-profile-reader.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/authoring-profile-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAE9E,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;AAEN,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS;QACnC,QAAQ,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;QAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,EAAE,CAAC;IACJ,QAAQ,CAAC,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;QACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,YAAY,EAAE;QACrB,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;QAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,OAAO,EAAE;QACZ,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACrC"}
@@ -1,4 +1,4 @@
1
- import type { DocumentPlan } from "../model/document-planning.js";
1
+ import type { DocumentPlanContract as DocumentPlan } from "../model/document-planning.js";
2
2
  export type DocumentAuthorityAssessment = {
3
3
  readonly state: "current";
4
4
  readonly plan: DocumentPlan;
@@ -1 +1 @@
1
- {"version":3,"file":"document-authority-recompiler.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-authority-recompiler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,MAAM,2BAA2B,GACnC;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,WAAW,2BAA2B;IAC1C,MAAM,CAAC,OAAO,EAAE;QACd,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;CAC1C"}
1
+ {"version":3,"file":"document-authority-recompiler.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-authority-recompiler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,IAAI,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE1F,MAAM,MAAM,2BAA2B,GACnC;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,WAAW,2BAA2B;IAC1C,MAAM,CAAC,OAAO,EAAE;QACd,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;CAC1C"}
@@ -1,4 +1,4 @@
1
- import type { DocumentIntent, DocumentPlan } from "../model/document-planning.js";
1
+ import type { DocumentIntent, DocumentPlanContract as DocumentPlan } from "../model/document-planning.js";
2
2
  export interface DocumentContractValidator {
3
3
  validateIntent(input: unknown): Promise<DocumentIntent>;
4
4
  validatePlan(input: unknown): Promise<DocumentPlan>;
@@ -1 +1 @@
1
- {"version":3,"file":"document-contract-validator.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-contract-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACb,MAAM,+BAA+B,CAAC;AAEvC,MAAM,WAAW,yBAAyB;IACxC,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACxD,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACrD"}
1
+ {"version":3,"file":"document-contract-validator.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-contract-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,IAAI,YAAY,EACrC,MAAM,+BAA+B,CAAC;AAEvC,MAAM,WAAW,yBAAyB;IACxC,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACxD,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACrD"}
@@ -1,6 +1,6 @@
1
1
  import type { DocumentOwnedTemporary } from "../model/document-transaction.js";
2
2
  import type { DocumentPhysicalIdentity } from "../model/document-physical-identity.js";
3
- import type { DocumentPlan } from "../model/document-planning.js";
3
+ import type { DocumentPlanContract as DocumentPlan } from "../model/document-planning.js";
4
4
  export type DocumentDestinationState = {
5
5
  readonly state: "absent";
6
6
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"document-file-state.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-file-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,MAAM,wBAAwB,GAChC;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;CAC7C,GACD;IAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,MAAM,sBAAsB,GAC9B;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAA;CAAE,GAC7E;IAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,MAAM,6BAA6B,GACrC;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;CAC7C,GACD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,CAAC,OAAO,EAAE;QAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACtC,iBAAiB,CAAC,OAAO,EAAE;QACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAC9B,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;KAC5C,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACpC,wBAAwB,CAAC,OAAO,EAAE;QAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;CAC5C"}
1
+ {"version":3,"file":"document-file-state.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-file-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,oBAAoB,IAAI,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE1F,MAAM,MAAM,wBAAwB,GAChC;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;CAC7C,GACD;IAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,MAAM,sBAAsB,GAC9B;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAA;CAAE,GAC7E;IAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,MAAM,6BAA6B,GACrC;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;CAC7C,GACD;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,CAAC,OAAO,EAAE;QAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACtC,iBAAiB,CAAC,OAAO,EAAE;QACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAC9B,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;KAC5C,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACpC,wBAAwB,CAAC,OAAO,EAAE;QAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;CAC5C"}
@@ -0,0 +1,13 @@
1
+ import type { DocumentAuthorityEvidence, DocumentMetadataObject } from "../model/document-catalog.js";
2
+ export interface DocumentMetadataSidecarSnapshot {
3
+ readonly documents: Readonly<Record<string, DocumentMetadataObject>>;
4
+ readonly evidence: DocumentAuthorityEvidence;
5
+ }
6
+ export interface DocumentMetadataSidecarReader {
7
+ read(request: {
8
+ readonly consumerRoot: string;
9
+ readonly path: string;
10
+ readonly signal?: AbortSignal;
11
+ }): Promise<DocumentMetadataSidecarSnapshot>;
12
+ }
13
+ //# sourceMappingURL=document-metadata-sidecar-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-metadata-sidecar-reader.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-metadata-sidecar-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,CAAC;IACrE,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;CAC9C;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,CAAC,OAAO,EAAE;QACZ,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;CAC9C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=document-metadata-sidecar-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-metadata-sidecar-reader.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-metadata-sidecar-reader.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import type { DocumentCreatedDirectoryEvidenceV2, DocumentParentMaterializationInspectionV2, DocumentParentMaterializationJournalV2, DocumentParentMaterializationPlanV2 } from "../model/document-parent-materialization.js";
2
+ import type { DocumentPhysicalIdentity } from "../model/document-physical-identity.js";
3
+ export interface DocumentParentMaterializerV2 {
4
+ begin(request: {
5
+ readonly consumerRoot: string;
6
+ readonly plan: DocumentParentMaterializationPlanV2;
7
+ }): Promise<DocumentParentMaterializationJournalV2>;
8
+ inspect(request: {
9
+ readonly consumerRoot: string;
10
+ readonly journal: DocumentParentMaterializationJournalV2;
11
+ }): Promise<DocumentParentMaterializationInspectionV2>;
12
+ createNext(request: {
13
+ readonly consumerRoot: string;
14
+ readonly journal: DocumentParentMaterializationJournalV2;
15
+ readonly signal?: AbortSignal;
16
+ }): Promise<DocumentCreatedDirectoryEvidenceV2 | undefined>;
17
+ createAndBindOne(request: {
18
+ readonly consumerRoot: string;
19
+ readonly expectedParentIdentity: DocumentPhysicalIdentity;
20
+ readonly path: string;
21
+ readonly bindCreatedDirectory: (evidence: DocumentCreatedDirectoryEvidenceV2) => Promise<void>;
22
+ }): Promise<void>;
23
+ }
24
+ //# sourceMappingURL=document-parent-materializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-parent-materializer.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-parent-materializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kCAAkC,EAClC,yCAAyC,EACzC,sCAAsC,EACtC,mCAAmC,EACpC,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAEvF,MAAM,WAAW,4BAA4B;IAC3C,KAAK,CAAC,OAAO,EAAE;QACb,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,IAAI,EAAE,mCAAmC,CAAC;KACpD,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACpD,OAAO,CAAC,OAAO,EAAE;QACf,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,OAAO,EAAE,sCAAsC,CAAC;KAC1D,GAAG,OAAO,CAAC,yCAAyC,CAAC,CAAC;IACvD,UAAU,CAAC,OAAO,EAAE;QAClB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,OAAO,EAAE,sCAAsC,CAAC;QACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,kCAAkC,GAAG,SAAS,CAAC,CAAC;IAC5D,gBAAgB,CAAC,OAAO,EAAE;QACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,sBAAsB,EAAE,wBAAwB,CAAC;QAC1D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,oBAAoB,EAAE,CAC7B,QAAQ,EAAE,kCAAkC,KACzC,OAAO,CAAC,IAAI,CAAC,CAAC;KACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=document-parent-materializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-parent-materializer.js","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-parent-materializer.ts"],"names":[],"mappings":""}
@@ -3,6 +3,7 @@ export interface DocumentPlanningStateReader {
3
3
  observe(request: {
4
4
  readonly consumerRoot: string;
5
5
  readonly destination: string;
6
+ readonly parentPolicy?: "create-missing-real-directories";
6
7
  readonly signal?: AbortSignal;
7
8
  }): Promise<DocumentPlanningStateSnapshot>;
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"document-planning-state-reader.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-planning-state-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAEnF,MAAM,WAAW,2BAA2B;IAC1C,OAAO,CAAC,OAAO,EAAE;QACf,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;CAC5C"}
1
+ {"version":3,"file":"document-planning-state-reader.d.ts","sourceRoot":"","sources":["../../../../src/document-authoring/application/ports/document-planning-state-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAEnF,MAAM,WAAW,2BAA2B;IAC1C,OAAO,CAAC,OAAO,EAAE;QACf,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,iCAAiC,CAAC;QAC1D,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;CAC5C"}