@zhin.js/workroom 0.0.5 → 0.0.7

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 (610) hide show
  1. package/lib/data-governance/canonical-value.d.ts +0 -1
  2. package/lib/data-governance/canonical-value.js.map +1 -1
  3. package/lib/data-governance/data-governance.d.ts +0 -1
  4. package/lib/data-governance/data-governance.js.map +1 -1
  5. package/lib/data-governance/database-payload-lifecycle-repository.d.ts +0 -1
  6. package/lib/data-governance/database-payload-lifecycle-repository.js.map +1 -1
  7. package/lib/data-governance/disclosure-authority.d.ts +0 -1
  8. package/lib/data-governance/disclosure-authority.js.map +1 -1
  9. package/lib/data-governance/disclosure-manifest.d.ts +0 -1
  10. package/lib/data-governance/disclosure-manifest.js.map +1 -1
  11. package/lib/data-governance/durable-file-store.d.ts +0 -1
  12. package/lib/data-governance/durable-file-store.js.map +1 -1
  13. package/lib/data-governance/encrypted-database-payload-vault.d.ts +0 -1
  14. package/lib/data-governance/encrypted-database-payload-vault.js.map +1 -1
  15. package/lib/data-governance/encrypted-file-payload-vault.d.ts +0 -1
  16. package/lib/data-governance/encrypted-file-payload-vault.js.map +1 -1
  17. package/lib/data-governance/file-payload-lifecycle-repository.d.ts +0 -1
  18. package/lib/data-governance/file-payload-lifecycle-repository.js.map +1 -1
  19. package/lib/data-governance/governance-authority-repository.d.ts +0 -1
  20. package/lib/data-governance/governance-authority-repository.js.map +1 -1
  21. package/lib/data-governance/governed-payload-write-saga.d.ts +0 -1
  22. package/lib/data-governance/governed-payload-write-saga.js.map +1 -1
  23. package/lib/data-governance/payload-hold-overdue-projection.d.ts +0 -1
  24. package/lib/data-governance/payload-hold-overdue-projection.js.map +1 -1
  25. package/lib/data-governance/payload-lifecycle.d.ts +0 -1
  26. package/lib/data-governance/payload-lifecycle.js.map +1 -1
  27. package/lib/data-governance/payload-vault-storage-handoff.d.ts +0 -1
  28. package/lib/data-governance/payload-vault-storage-handoff.js.map +1 -1
  29. package/lib/data-governance.d.ts +0 -1
  30. package/lib/data-governance.js.map +1 -1
  31. package/lib/index.d.ts +0 -1
  32. package/lib/index.js.map +1 -1
  33. package/lib/portfolio/capacity-control-outbox.d.ts +0 -1
  34. package/lib/portfolio/capacity-control-outbox.js.map +1 -1
  35. package/lib/portfolio/database-capacity-control-outbox.d.ts +0 -1
  36. package/lib/portfolio/database-capacity-control-outbox.js.map +1 -1
  37. package/lib/portfolio/file-capacity-control-outbox.d.ts +0 -1
  38. package/lib/portfolio/file-capacity-control-outbox.js.map +1 -1
  39. package/lib/portfolio/file-portfolio-journal.d.ts +0 -1
  40. package/lib/portfolio/file-portfolio-journal.js.map +1 -1
  41. package/lib/portfolio/portfolio-admission.d.ts +0 -1
  42. package/lib/portfolio/portfolio-admission.js.map +1 -1
  43. package/lib/portfolio/portfolio-journal.d.ts +0 -1
  44. package/lib/portfolio/portfolio-journal.js.map +1 -1
  45. package/lib/portfolio/resource-bundle.d.ts +0 -1
  46. package/lib/portfolio/resource-bundle.js.map +1 -1
  47. package/lib/portfolio/sponsor-projection.d.ts +0 -1
  48. package/lib/portfolio/sponsor-projection.js.map +1 -1
  49. package/lib/portfolio.d.ts +0 -1
  50. package/lib/portfolio.js.map +1 -1
  51. package/lib/remote.d.ts +0 -1
  52. package/lib/remote.js.map +1 -1
  53. package/lib/room/database-room-task-journal.d.ts +0 -1
  54. package/lib/room/database-room-task-journal.js.map +1 -1
  55. package/lib/room/index.d.ts +0 -1
  56. package/lib/room/index.js.map +1 -1
  57. package/lib/room/room-bus.d.ts +0 -1
  58. package/lib/room/room-bus.js.map +1 -1
  59. package/lib/room/room-definition.d.ts +0 -1
  60. package/lib/room/room-definition.js.map +1 -1
  61. package/lib/room/room-event-sequencer.d.ts +0 -1
  62. package/lib/room/room-event-sequencer.js.map +1 -1
  63. package/lib/room/room-guards.d.ts +0 -1
  64. package/lib/room/room-guards.js.map +1 -1
  65. package/lib/room/room-membership.d.ts +0 -1
  66. package/lib/room/room-membership.js.map +1 -1
  67. package/lib/room/room-registry.d.ts +0 -1
  68. package/lib/room/room-registry.js.map +1 -1
  69. package/lib/room/room-router.d.ts +0 -1
  70. package/lib/room/room-router.js.map +1 -1
  71. package/lib/room/room-send-limiter.d.ts +0 -1
  72. package/lib/room/room-send-limiter.js.map +1 -1
  73. package/lib/room/room-task-authorizer.d.ts +0 -1
  74. package/lib/room/room-task-authorizer.js.map +1 -1
  75. package/lib/room/room-task-journal.d.ts +0 -1
  76. package/lib/room/room-task-journal.js.map +1 -1
  77. package/lib/room/room-task-service.d.ts +0 -1
  78. package/lib/room/room-task-service.js.map +1 -1
  79. package/lib/room/room-task.d.ts +0 -1
  80. package/lib/room/room-task.js.map +1 -1
  81. package/lib/room/validate-room.d.ts +0 -1
  82. package/lib/room/validate-room.js.map +1 -1
  83. package/lib/scheduler.d.ts +0 -1
  84. package/lib/scheduler.js.map +1 -1
  85. package/lib/workroom/acceptance-control.d.ts +0 -1
  86. package/lib/workroom/acceptance-control.js.map +1 -1
  87. package/lib/workroom/acceptance-policy.d.ts +0 -1
  88. package/lib/workroom/acceptance-policy.js.map +1 -1
  89. package/lib/workroom/accepted-source-memory-application.d.ts +0 -1
  90. package/lib/workroom/accepted-source-memory-application.js.map +1 -1
  91. package/lib/workroom/accepted-source-projector.d.ts +0 -1
  92. package/lib/workroom/accepted-source-projector.js.map +1 -1
  93. package/lib/workroom/assignment-authority-grant-application.d.ts +0 -1
  94. package/lib/workroom/assignment-authority-grant-application.js.map +1 -1
  95. package/lib/workroom/assignment-authority-grant-repository.d.ts +0 -1
  96. package/lib/workroom/assignment-authority-grant-repository.js.map +1 -1
  97. package/lib/workroom/assignment-authority.d.ts +0 -1
  98. package/lib/workroom/assignment-authority.js.map +1 -1
  99. package/lib/workroom/assignment-executor.d.ts +0 -1
  100. package/lib/workroom/assignment-executor.js.map +1 -1
  101. package/lib/workroom/assignment-observation-ingress.d.ts +0 -1
  102. package/lib/workroom/assignment-observation-ingress.js.map +1 -1
  103. package/lib/workroom/canonical-value.d.ts +0 -1
  104. package/lib/workroom/canonical-value.js.map +1 -1
  105. package/lib/workroom/catalog-definition.d.ts +0 -1
  106. package/lib/workroom/catalog-definition.js.map +1 -1
  107. package/lib/workroom/catalog.d.ts +0 -1
  108. package/lib/workroom/catalog.js.map +1 -1
  109. package/lib/workroom/coding-assignment-executor.d.ts +0 -1
  110. package/lib/workroom/coding-assignment-executor.js.map +1 -1
  111. package/lib/workroom/coding-git-objects.d.ts +0 -1
  112. package/lib/workroom/coding-git-objects.js.map +1 -1
  113. package/lib/workroom/database-project-knowledge-journal.d.ts +0 -1
  114. package/lib/workroom/database-project-knowledge-journal.js.map +1 -1
  115. package/lib/workroom/durable-file-store.d.ts +0 -1
  116. package/lib/workroom/durable-file-store.js.map +1 -1
  117. package/lib/workroom/dynamic-workflow-planner.d.ts +0 -1
  118. package/lib/workroom/dynamic-workflow-planner.js.map +1 -1
  119. package/lib/workroom/effect-blocker-repository.d.ts +0 -1
  120. package/lib/workroom/effect-blocker-repository.js.map +1 -1
  121. package/lib/workroom/effect-ledger.d.ts +0 -1
  122. package/lib/workroom/effect-ledger.js.map +1 -1
  123. package/lib/workroom/file-accepted-source-memory-repository.d.ts +0 -1
  124. package/lib/workroom/file-accepted-source-memory-repository.js.map +1 -1
  125. package/lib/workroom/file-coding-execution-store.d.ts +0 -1
  126. package/lib/workroom/file-coding-execution-store.js.map +1 -1
  127. package/lib/workroom/file-effect-ledger.d.ts +0 -1
  128. package/lib/workroom/file-effect-ledger.js.map +1 -1
  129. package/lib/workroom/file-human-ingress-application.d.ts +0 -1
  130. package/lib/workroom/file-human-ingress-application.js.map +1 -1
  131. package/lib/workroom/file-human-ingress.d.ts +0 -1
  132. package/lib/workroom/file-human-ingress.js.map +1 -1
  133. package/lib/workroom/file-interaction-space-binding-repository.d.ts +0 -1
  134. package/lib/workroom/file-interaction-space-binding-repository.js.map +1 -1
  135. package/lib/workroom/file-profile-journal.d.ts +0 -1
  136. package/lib/workroom/file-profile-journal.js.map +1 -1
  137. package/lib/workroom/git-workspace-gateway.d.ts +0 -1
  138. package/lib/workroom/git-workspace-gateway.js.map +1 -1
  139. package/lib/workroom/github-workspace-transport.d.ts +0 -1
  140. package/lib/workroom/github-workspace-transport.js.map +1 -1
  141. package/lib/workroom/governed-dispatch-reasons.d.ts +0 -1
  142. package/lib/workroom/governed-dispatch-reasons.js.map +1 -1
  143. package/lib/workroom/human-ingress-application.d.ts +0 -1
  144. package/lib/workroom/human-ingress-application.js.map +1 -1
  145. package/lib/workroom/human-ingress-orchestrator.d.ts +0 -1
  146. package/lib/workroom/human-ingress-orchestrator.js.map +1 -1
  147. package/lib/workroom/human-ingress-source-reader.d.ts +0 -1
  148. package/lib/workroom/human-ingress-source-reader.js.map +1 -1
  149. package/lib/workroom/human-ingress.d.ts +0 -1
  150. package/lib/workroom/human-ingress.js.map +1 -1
  151. package/lib/workroom/interaction-space-binding-service.d.ts +0 -1
  152. package/lib/workroom/interaction-space-binding-service.js.map +1 -1
  153. package/lib/workroom/interaction-space-router.d.ts +0 -1
  154. package/lib/workroom/interaction-space-router.js.map +1 -1
  155. package/lib/workroom/journal/activatable-journal.d.ts +0 -1
  156. package/lib/workroom/journal/activatable-journal.js.map +1 -1
  157. package/lib/workroom/journal/contracts.d.ts +0 -1
  158. package/lib/workroom/journal/contracts.js.map +1 -1
  159. package/lib/workroom/journal/database-journal.d.ts +0 -1
  160. package/lib/workroom/journal/database-journal.js.map +1 -1
  161. package/lib/workroom/journal/event-codec.d.ts +0 -1
  162. package/lib/workroom/journal/event-codec.js.map +1 -1
  163. package/lib/workroom/journal/event-validation.d.ts +0 -1
  164. package/lib/workroom/journal/event-validation.js.map +1 -1
  165. package/lib/workroom/journal/file-journal.d.ts +0 -1
  166. package/lib/workroom/journal/file-journal.js.map +1 -1
  167. package/lib/workroom/journal/index.d.ts +0 -1
  168. package/lib/workroom/journal/index.js.map +1 -1
  169. package/lib/workroom/journal/legacy-payload-guard.d.ts +0 -1
  170. package/lib/workroom/journal/legacy-payload-guard.js.map +1 -1
  171. package/lib/workroom/journal/memory-journal.d.ts +0 -1
  172. package/lib/workroom/journal/memory-journal.js.map +1 -1
  173. package/lib/workroom/journal/payload-governance.d.ts +0 -1
  174. package/lib/workroom/journal/payload-governance.js.map +1 -1
  175. package/lib/workroom/journal/payload-reference.d.ts +0 -1
  176. package/lib/workroom/journal/payload-reference.js.map +1 -1
  177. package/lib/workroom/journal/stored-event-projection.d.ts +0 -1
  178. package/lib/workroom/journal/stored-event-projection.js.map +1 -1
  179. package/lib/workroom/journal-model.d.ts +0 -1
  180. package/lib/workroom/journal-model.js.map +1 -1
  181. package/lib/workroom/kernel-contracts.d.ts +0 -1
  182. package/lib/workroom/kernel-contracts.js.map +1 -1
  183. package/lib/workroom/kernel-state.d.ts +0 -1
  184. package/lib/workroom/kernel-state.js.map +1 -1
  185. package/lib/workroom/local-assignment-issuance.d.ts +0 -1
  186. package/lib/workroom/local-assignment-issuance.js.map +1 -1
  187. package/lib/workroom/plan-approval-control.d.ts +0 -1
  188. package/lib/workroom/plan-approval-control.js.map +1 -1
  189. package/lib/workroom/plan-revision.d.ts +0 -1
  190. package/lib/workroom/plan-revision.js.map +1 -1
  191. package/lib/workroom/profile-compiler.d.ts +0 -1
  192. package/lib/workroom/profile-compiler.js.map +1 -1
  193. package/lib/workroom/profile-registry.d.ts +0 -1
  194. package/lib/workroom/profile-registry.js.map +1 -1
  195. package/lib/workroom/project-knowledge-registry.d.ts +0 -1
  196. package/lib/workroom/project-knowledge-registry.js.map +1 -1
  197. package/lib/workroom/projection-outbox/contracts.d.ts +0 -1
  198. package/lib/workroom/projection-outbox/contracts.js.map +1 -1
  199. package/lib/workroom/projection-outbox/delivery-worker.d.ts +0 -1
  200. package/lib/workroom/projection-outbox/delivery-worker.js.map +1 -1
  201. package/lib/workroom/projection-outbox/file-repository.d.ts +0 -1
  202. package/lib/workroom/projection-outbox/file-repository.js.map +1 -1
  203. package/lib/workroom/projection-outbox/index.d.ts +0 -1
  204. package/lib/workroom/projection-outbox/index.js.map +1 -1
  205. package/lib/workroom/projection-outbox/memory-repository.d.ts +0 -1
  206. package/lib/workroom/projection-outbox/memory-repository.js.map +1 -1
  207. package/lib/workroom/projection-outbox/projector.d.ts +0 -1
  208. package/lib/workroom/projection-outbox/projector.js.map +1 -1
  209. package/lib/workroom/projection-outbox/repository-state.d.ts +0 -1
  210. package/lib/workroom/projection-outbox/repository-state.js.map +1 -1
  211. package/lib/workroom/projection-outbox/tracer.d.ts +0 -1
  212. package/lib/workroom/projection-outbox/tracer.js.map +1 -1
  213. package/lib/workroom/remote-assignment-dispatch-command.d.ts +0 -1
  214. package/lib/workroom/remote-assignment-dispatch-command.js.map +1 -1
  215. package/lib/workroom/remote-assignment-issuance.d.ts +0 -1
  216. package/lib/workroom/remote-assignment-issuance.js.map +1 -1
  217. package/lib/workroom/remote-callback-application.d.ts +0 -1
  218. package/lib/workroom/remote-callback-application.js.map +1 -1
  219. package/lib/workroom/remote-callback-gateway.d.ts +0 -1
  220. package/lib/workroom/remote-callback-gateway.js.map +1 -1
  221. package/lib/workroom/remote-callback-inbox.d.ts +0 -1
  222. package/lib/workroom/remote-callback-inbox.js.map +1 -1
  223. package/lib/workroom/remote-callback-reconciliation-worker.d.ts +0 -1
  224. package/lib/workroom/remote-callback-reconciliation-worker.js.map +1 -1
  225. package/lib/workroom/remote-dispatch-admission.d.ts +0 -1
  226. package/lib/workroom/remote-dispatch-admission.js.map +1 -1
  227. package/lib/workroom/remote-dispatch-outbox.d.ts +0 -1
  228. package/lib/workroom/remote-dispatch-outbox.js.map +1 -1
  229. package/lib/workroom/remote-dispatch-scheduler.d.ts +0 -1
  230. package/lib/workroom/remote-dispatch-scheduler.js.map +1 -1
  231. package/lib/workroom/remote-dispatch-worker.d.ts +0 -1
  232. package/lib/workroom/remote-dispatch-worker.js.map +1 -1
  233. package/lib/workroom/remote-dispatch.d.ts +0 -1
  234. package/lib/workroom/remote-dispatch.js.map +1 -1
  235. package/lib/workroom/remote-executor.d.ts +0 -1
  236. package/lib/workroom/remote-executor.js.map +1 -1
  237. package/lib/workroom/role-capability-snapshot.d.ts +0 -1
  238. package/lib/workroom/role-capability-snapshot.js.map +1 -1
  239. package/lib/workroom/runtime.d.ts +0 -1
  240. package/lib/workroom/runtime.js.map +1 -1
  241. package/lib/workroom/scheduler-priority-control.d.ts +0 -1
  242. package/lib/workroom/scheduler-priority-control.js.map +1 -1
  243. package/lib/workroom/software-delivery-plan.d.ts +0 -1
  244. package/lib/workroom/software-delivery-plan.js.map +1 -1
  245. package/lib/workroom/validate-catalog.d.ts +0 -1
  246. package/lib/workroom/validate-catalog.js.map +1 -1
  247. package/lib/workroom/workflow-plan-builder.d.ts +0 -1
  248. package/lib/workroom/workflow-plan-builder.js.map +1 -1
  249. package/lib/workroom/workroom-assignment-knowledge-context.d.ts +0 -1
  250. package/lib/workroom/workroom-assignment-knowledge-context.js.map +1 -1
  251. package/lib/workroom/workroom-kernel.d.ts +0 -1
  252. package/lib/workroom/workroom-kernel.js.map +1 -1
  253. package/lib/workroom/workroom-preemption.d.ts +0 -1
  254. package/lib/workroom/workroom-preemption.js.map +1 -1
  255. package/lib/workroom/workroom-run-control.d.ts +0 -1
  256. package/lib/workroom/workroom-run-control.js.map +1 -1
  257. package/lib/workroom/workroom-scheduler-application.d.ts +0 -1
  258. package/lib/workroom/workroom-scheduler-application.js.map +1 -1
  259. package/lib/workroom/workroom-scheduler.d.ts +0 -1
  260. package/lib/workroom/workroom-scheduler.js.map +1 -1
  261. package/lib/workroom/workroom-task-report-store.d.ts +0 -1
  262. package/lib/workroom/workroom-task-report-store.js.map +1 -1
  263. package/lib/workroom-runtime/database-overlay-pack-promotion-repository.d.ts +0 -1
  264. package/lib/workroom-runtime/database-overlay-pack-promotion-repository.js.map +1 -1
  265. package/lib/workroom-runtime/github-actions-delivery-provider.d.ts +0 -1
  266. package/lib/workroom-runtime/github-actions-delivery-provider.js.map +1 -1
  267. package/lib/workroom-runtime/github-exact-merge-gateway.d.ts +0 -1
  268. package/lib/workroom-runtime/github-exact-merge-gateway.js.map +1 -1
  269. package/lib/workroom-runtime/github-workroom-capability.d.ts +0 -1
  270. package/lib/workroom-runtime/github-workroom-capability.js.map +1 -1
  271. package/lib/workroom-runtime/self-delivery-project-composition.d.ts +0 -1
  272. package/lib/workroom-runtime/self-delivery-project-composition.js.map +1 -1
  273. package/lib/workroom-runtime/self-delivery-project.d.ts +0 -1
  274. package/lib/workroom-runtime/self-delivery-project.js.map +1 -1
  275. package/lib/workroom-runtime/workroom-acceptance-authority.d.ts +0 -1
  276. package/lib/workroom-runtime/workroom-acceptance-authority.js.map +1 -1
  277. package/lib/workroom-runtime/workroom-acceptance-fact-providers.d.ts +0 -1
  278. package/lib/workroom-runtime/workroom-acceptance-fact-providers.js.map +1 -1
  279. package/lib/workroom-runtime/workroom-acceptance-internal-providers.d.ts +0 -1
  280. package/lib/workroom-runtime/workroom-acceptance-internal-providers.js.map +1 -1
  281. package/lib/workroom-runtime/workroom-acceptance-policy.d.ts +0 -1
  282. package/lib/workroom-runtime/workroom-acceptance-policy.js.map +1 -1
  283. package/lib/workroom-runtime/workroom-acceptance-production-composition.d.ts +0 -1
  284. package/lib/workroom-runtime/workroom-acceptance-production-composition.js.map +1 -1
  285. package/lib/workroom-runtime/workroom-acceptance-provider-composition.d.ts +0 -1
  286. package/lib/workroom-runtime/workroom-acceptance-provider-composition.js.map +1 -1
  287. package/lib/workroom-runtime/workroom-accepted-source-runtime.d.ts +0 -1
  288. package/lib/workroom-runtime/workroom-accepted-source-runtime.js.map +1 -1
  289. package/lib/workroom-runtime/workroom-assignment-authority-grant-runtime.d.ts +0 -1
  290. package/lib/workroom-runtime/workroom-assignment-authority-grant-runtime.js.map +1 -1
  291. package/lib/workroom-runtime/workroom-assignment-authority-provider.d.ts +0 -1
  292. package/lib/workroom-runtime/workroom-assignment-authority-provider.js.map +1 -1
  293. package/lib/workroom-runtime/workroom-assignment-knowledge-composition.d.ts +0 -1
  294. package/lib/workroom-runtime/workroom-assignment-knowledge-composition.js.map +1 -1
  295. package/lib/workroom-runtime/workroom-bot-identity.d.ts +0 -1
  296. package/lib/workroom-runtime/workroom-bot-identity.js.map +1 -1
  297. package/lib/workroom-runtime/workroom-capability-realization.d.ts +0 -1
  298. package/lib/workroom-runtime/workroom-capability-realization.js.map +1 -1
  299. package/lib/workroom-runtime/workroom-data-governance-authority-writer.d.ts +0 -1
  300. package/lib/workroom-runtime/workroom-data-governance-authority-writer.js.map +1 -1
  301. package/lib/workroom-runtime/workroom-data-governance-bootstrap.d.ts +0 -1
  302. package/lib/workroom-runtime/workroom-data-governance-bootstrap.js.map +1 -1
  303. package/lib/workroom-runtime/workroom-data-governance-composition.d.ts +0 -1
  304. package/lib/workroom-runtime/workroom-data-governance-composition.js.map +1 -1
  305. package/lib/workroom-runtime/workroom-data-governance-root-provider.d.ts +0 -1
  306. package/lib/workroom-runtime/workroom-data-governance-root-provider.js.map +1 -1
  307. package/lib/workroom-runtime/workroom-data-governance-runtime.d.ts +0 -1
  308. package/lib/workroom-runtime/workroom-data-governance-runtime.js.map +1 -1
  309. package/lib/workroom-runtime/workroom-data-governance-storage.d.ts +0 -1
  310. package/lib/workroom-runtime/workroom-data-governance-storage.js.map +1 -1
  311. package/lib/workroom-runtime/workroom-data-lifecycle-composition.d.ts +0 -1
  312. package/lib/workroom-runtime/workroom-data-lifecycle-composition.js.map +1 -1
  313. package/lib/workroom-runtime/workroom-data-lifecycle-console.d.ts +0 -1
  314. package/lib/workroom-runtime/workroom-data-lifecycle-console.js.map +1 -1
  315. package/lib/workroom-runtime/workroom-data-lifecycle-human-ingress.d.ts +0 -1
  316. package/lib/workroom-runtime/workroom-data-lifecycle-human-ingress.js.map +1 -1
  317. package/lib/workroom-runtime/workroom-database-models.d.ts +0 -1
  318. package/lib/workroom-runtime/workroom-database-models.js.map +1 -1
  319. package/lib/workroom-runtime/workroom-database-storage.d.ts +0 -1
  320. package/lib/workroom-runtime/workroom-database-storage.js.map +1 -1
  321. package/lib/workroom-runtime/workroom-delivery-gateway.d.ts +0 -1
  322. package/lib/workroom-runtime/workroom-delivery-gateway.js.map +1 -1
  323. package/lib/workroom-runtime/workroom-dynamic-planning-provider.d.ts +0 -1
  324. package/lib/workroom-runtime/workroom-dynamic-planning-provider.js.map +1 -1
  325. package/lib/workroom-runtime/workroom-dynamic-planning.d.ts +0 -1
  326. package/lib/workroom-runtime/workroom-dynamic-planning.js.map +1 -1
  327. package/lib/workroom-runtime/workroom-effect-composition.d.ts +0 -1
  328. package/lib/workroom-runtime/workroom-effect-composition.js.map +1 -1
  329. package/lib/workroom-runtime/workroom-effect-production.d.ts +0 -1
  330. package/lib/workroom-runtime/workroom-effect-production.js.map +1 -1
  331. package/lib/workroom-runtime/workroom-effect-runtime.d.ts +0 -1
  332. package/lib/workroom-runtime/workroom-effect-runtime.js.map +1 -1
  333. package/lib/workroom-runtime/workroom-governed-dispatch-composition.d.ts +0 -1
  334. package/lib/workroom-runtime/workroom-governed-dispatch-composition.js.map +1 -1
  335. package/lib/workroom-runtime/workroom-host-port.d.ts +0 -1
  336. package/lib/workroom-runtime/workroom-host-port.js.map +1 -1
  337. package/lib/workroom-runtime/workroom-journal-payload-composition.d.ts +0 -1
  338. package/lib/workroom-runtime/workroom-journal-payload-composition.js.map +1 -1
  339. package/lib/workroom-runtime/workroom-local-agent-core-adapter.d.ts +0 -1
  340. package/lib/workroom-runtime/workroom-local-agent-core-adapter.js.map +1 -1
  341. package/lib/workroom-runtime/workroom-local-agent-loop.d.ts +0 -1
  342. package/lib/workroom-runtime/workroom-local-agent-loop.js.map +1 -1
  343. package/lib/workroom-runtime/workroom-local-assignment-authority.d.ts +0 -1
  344. package/lib/workroom-runtime/workroom-local-assignment-authority.js.map +1 -1
  345. package/lib/workroom-runtime/workroom-local-assignment-executor.d.ts +0 -1
  346. package/lib/workroom-runtime/workroom-local-assignment-executor.js.map +1 -1
  347. package/lib/workroom-runtime/workroom-local-assignment-runtime.d.ts +0 -1
  348. package/lib/workroom-runtime/workroom-local-assignment-runtime.js.map +1 -1
  349. package/lib/workroom-runtime/workroom-local-assignment-supply.d.ts +0 -1
  350. package/lib/workroom-runtime/workroom-local-assignment-supply.js.map +1 -1
  351. package/lib/workroom-runtime/workroom-overlay-pack-promotion.d.ts +0 -1
  352. package/lib/workroom-runtime/workroom-overlay-pack-promotion.js.map +1 -1
  353. package/lib/workroom-runtime/workroom-payload-processor-recall.d.ts +0 -1
  354. package/lib/workroom-runtime/workroom-payload-processor-recall.js.map +1 -1
  355. package/lib/workroom-runtime/workroom-plan-gate-authority.d.ts +0 -1
  356. package/lib/workroom-runtime/workroom-plan-gate-authority.js.map +1 -1
  357. package/lib/workroom-runtime/workroom-portfolio-capacity.d.ts +0 -1
  358. package/lib/workroom-runtime/workroom-portfolio-capacity.js.map +1 -1
  359. package/lib/workroom-runtime/workroom-portfolio-checkpoint-ack.d.ts +0 -1
  360. package/lib/workroom-runtime/workroom-portfolio-checkpoint-ack.js.map +1 -1
  361. package/lib/workroom-runtime/workroom-portfolio-control-composition.d.ts +0 -1
  362. package/lib/workroom-runtime/workroom-portfolio-control-composition.js.map +1 -1
  363. package/lib/workroom-runtime/workroom-portfolio-control-runtime.d.ts +0 -1
  364. package/lib/workroom-runtime/workroom-portfolio-control-runtime.js.map +1 -1
  365. package/lib/workroom-runtime/workroom-portfolio-grant-assignment.d.ts +0 -1
  366. package/lib/workroom-runtime/workroom-portfolio-grant-assignment.js.map +1 -1
  367. package/lib/workroom-runtime/workroom-portfolio-kernel-authority.d.ts +0 -1
  368. package/lib/workroom-runtime/workroom-portfolio-kernel-authority.js.map +1 -1
  369. package/lib/workroom-runtime/workroom-portfolio-sponsor.d.ts +0 -1
  370. package/lib/workroom-runtime/workroom-portfolio-sponsor.js.map +1 -1
  371. package/lib/workroom-runtime/workroom-preemption-runtime.d.ts +0 -1
  372. package/lib/workroom-runtime/workroom-preemption-runtime.js.map +1 -1
  373. package/lib/workroom-runtime/workroom-priority-authority.d.ts +0 -1
  374. package/lib/workroom-runtime/workroom-priority-authority.js.map +1 -1
  375. package/lib/workroom-runtime/workroom-profile-authority-composition.d.ts +0 -1
  376. package/lib/workroom-runtime/workroom-profile-authority-composition.js.map +1 -1
  377. package/lib/workroom-runtime/workroom-profile-authority-runtime.d.ts +0 -1
  378. package/lib/workroom-runtime/workroom-profile-authority-runtime.js.map +1 -1
  379. package/lib/workroom-runtime/workroom-projection-outbound.d.ts +0 -1
  380. package/lib/workroom-runtime/workroom-projection-outbound.js.map +1 -1
  381. package/lib/workroom-runtime/workroom-projection-runtime.d.ts +0 -1
  382. package/lib/workroom-runtime/workroom-projection-runtime.js.map +1 -1
  383. package/lib/workroom-runtime/workroom-remote-assignment-authority.d.ts +0 -1
  384. package/lib/workroom-runtime/workroom-remote-assignment-authority.js.map +1 -1
  385. package/lib/workroom-runtime/workroom-remote-callback-runtime.d.ts +0 -1
  386. package/lib/workroom-runtime/workroom-remote-callback-runtime.js.map +1 -1
  387. package/lib/workroom-runtime/workroom-remote-executor.d.ts +0 -1
  388. package/lib/workroom-runtime/workroom-remote-executor.js.map +1 -1
  389. package/lib/workroom-runtime/workroom-reviewer-authority-runtime.d.ts +0 -1
  390. package/lib/workroom-runtime/workroom-reviewer-authority-runtime.js.map +1 -1
  391. package/lib/workroom-runtime/workroom-risk-acceptance-runtime.d.ts +0 -1
  392. package/lib/workroom-runtime/workroom-risk-acceptance-runtime.js.map +1 -1
  393. package/lib/workroom-runtime/workroom-run-profile-pin-authority.d.ts +0 -1
  394. package/lib/workroom-runtime/workroom-run-profile-pin-authority.js.map +1 -1
  395. package/lib/workroom-runtime/workroom-scheduler-portfolio-composition.d.ts +0 -1
  396. package/lib/workroom-runtime/workroom-scheduler-portfolio-composition.js.map +1 -1
  397. package/lib/workroom-runtime/workroom-scheduler-portfolio-contract.d.ts +0 -1
  398. package/lib/workroom-runtime/workroom-scheduler-portfolio-contract.js.map +1 -1
  399. package/lib/workroom-runtime/workroom-scheduler-portfolio-request-authority.d.ts +0 -1
  400. package/lib/workroom-runtime/workroom-scheduler-portfolio-request-authority.js.map +1 -1
  401. package/lib/workroom-runtime/workroom-scheduler-portfolio-supply.d.ts +0 -1
  402. package/lib/workroom-runtime/workroom-scheduler-portfolio-supply.js.map +1 -1
  403. package/lib/workroom-runtime/workroom-scheduler-route-registry.d.ts +0 -1
  404. package/lib/workroom-runtime/workroom-scheduler-route-registry.js.map +1 -1
  405. package/lib/workroom-runtime/workroom-scheduler-runtime.d.ts +0 -1
  406. package/lib/workroom-runtime/workroom-scheduler-runtime.js.map +1 -1
  407. package/package.json +7 -7
  408. package/lib/data-governance/canonical-value.d.ts.map +0 -1
  409. package/lib/data-governance/data-governance.d.ts.map +0 -1
  410. package/lib/data-governance/database-payload-lifecycle-repository.d.ts.map +0 -1
  411. package/lib/data-governance/disclosure-authority.d.ts.map +0 -1
  412. package/lib/data-governance/disclosure-manifest.d.ts.map +0 -1
  413. package/lib/data-governance/durable-file-store.d.ts.map +0 -1
  414. package/lib/data-governance/encrypted-database-payload-vault.d.ts.map +0 -1
  415. package/lib/data-governance/encrypted-file-payload-vault.d.ts.map +0 -1
  416. package/lib/data-governance/file-payload-lifecycle-repository.d.ts.map +0 -1
  417. package/lib/data-governance/governance-authority-repository.d.ts.map +0 -1
  418. package/lib/data-governance/governed-payload-write-saga.d.ts.map +0 -1
  419. package/lib/data-governance/payload-hold-overdue-projection.d.ts.map +0 -1
  420. package/lib/data-governance/payload-lifecycle.d.ts.map +0 -1
  421. package/lib/data-governance/payload-vault-storage-handoff.d.ts.map +0 -1
  422. package/lib/data-governance.d.ts.map +0 -1
  423. package/lib/index.d.ts.map +0 -1
  424. package/lib/portfolio/capacity-control-outbox.d.ts.map +0 -1
  425. package/lib/portfolio/database-capacity-control-outbox.d.ts.map +0 -1
  426. package/lib/portfolio/file-capacity-control-outbox.d.ts.map +0 -1
  427. package/lib/portfolio/file-portfolio-journal.d.ts.map +0 -1
  428. package/lib/portfolio/portfolio-admission.d.ts.map +0 -1
  429. package/lib/portfolio/portfolio-journal.d.ts.map +0 -1
  430. package/lib/portfolio/resource-bundle.d.ts.map +0 -1
  431. package/lib/portfolio/sponsor-projection.d.ts.map +0 -1
  432. package/lib/portfolio.d.ts.map +0 -1
  433. package/lib/remote.d.ts.map +0 -1
  434. package/lib/room/database-room-task-journal.d.ts.map +0 -1
  435. package/lib/room/index.d.ts.map +0 -1
  436. package/lib/room/room-bus.d.ts.map +0 -1
  437. package/lib/room/room-definition.d.ts.map +0 -1
  438. package/lib/room/room-event-sequencer.d.ts.map +0 -1
  439. package/lib/room/room-guards.d.ts.map +0 -1
  440. package/lib/room/room-membership.d.ts.map +0 -1
  441. package/lib/room/room-registry.d.ts.map +0 -1
  442. package/lib/room/room-router.d.ts.map +0 -1
  443. package/lib/room/room-send-limiter.d.ts.map +0 -1
  444. package/lib/room/room-task-authorizer.d.ts.map +0 -1
  445. package/lib/room/room-task-journal.d.ts.map +0 -1
  446. package/lib/room/room-task-service.d.ts.map +0 -1
  447. package/lib/room/room-task.d.ts.map +0 -1
  448. package/lib/room/validate-room.d.ts.map +0 -1
  449. package/lib/scheduler.d.ts.map +0 -1
  450. package/lib/workroom/acceptance-control.d.ts.map +0 -1
  451. package/lib/workroom/acceptance-policy.d.ts.map +0 -1
  452. package/lib/workroom/accepted-source-memory-application.d.ts.map +0 -1
  453. package/lib/workroom/accepted-source-projector.d.ts.map +0 -1
  454. package/lib/workroom/assignment-authority-grant-application.d.ts.map +0 -1
  455. package/lib/workroom/assignment-authority-grant-repository.d.ts.map +0 -1
  456. package/lib/workroom/assignment-authority.d.ts.map +0 -1
  457. package/lib/workroom/assignment-executor.d.ts.map +0 -1
  458. package/lib/workroom/assignment-observation-ingress.d.ts.map +0 -1
  459. package/lib/workroom/canonical-value.d.ts.map +0 -1
  460. package/lib/workroom/catalog-definition.d.ts.map +0 -1
  461. package/lib/workroom/catalog.d.ts.map +0 -1
  462. package/lib/workroom/coding-assignment-executor.d.ts.map +0 -1
  463. package/lib/workroom/coding-git-objects.d.ts.map +0 -1
  464. package/lib/workroom/database-project-knowledge-journal.d.ts.map +0 -1
  465. package/lib/workroom/durable-file-store.d.ts.map +0 -1
  466. package/lib/workroom/dynamic-workflow-planner.d.ts.map +0 -1
  467. package/lib/workroom/effect-blocker-repository.d.ts.map +0 -1
  468. package/lib/workroom/effect-ledger.d.ts.map +0 -1
  469. package/lib/workroom/file-accepted-source-memory-repository.d.ts.map +0 -1
  470. package/lib/workroom/file-coding-execution-store.d.ts.map +0 -1
  471. package/lib/workroom/file-effect-ledger.d.ts.map +0 -1
  472. package/lib/workroom/file-human-ingress-application.d.ts.map +0 -1
  473. package/lib/workroom/file-human-ingress.d.ts.map +0 -1
  474. package/lib/workroom/file-interaction-space-binding-repository.d.ts.map +0 -1
  475. package/lib/workroom/file-profile-journal.d.ts.map +0 -1
  476. package/lib/workroom/git-workspace-gateway.d.ts.map +0 -1
  477. package/lib/workroom/github-workspace-transport.d.ts.map +0 -1
  478. package/lib/workroom/governed-dispatch-reasons.d.ts.map +0 -1
  479. package/lib/workroom/human-ingress-application.d.ts.map +0 -1
  480. package/lib/workroom/human-ingress-orchestrator.d.ts.map +0 -1
  481. package/lib/workroom/human-ingress-source-reader.d.ts.map +0 -1
  482. package/lib/workroom/human-ingress.d.ts.map +0 -1
  483. package/lib/workroom/interaction-space-binding-service.d.ts.map +0 -1
  484. package/lib/workroom/interaction-space-router.d.ts.map +0 -1
  485. package/lib/workroom/journal/activatable-journal.d.ts.map +0 -1
  486. package/lib/workroom/journal/contracts.d.ts.map +0 -1
  487. package/lib/workroom/journal/database-journal.d.ts.map +0 -1
  488. package/lib/workroom/journal/event-codec.d.ts.map +0 -1
  489. package/lib/workroom/journal/event-validation.d.ts.map +0 -1
  490. package/lib/workroom/journal/file-journal.d.ts.map +0 -1
  491. package/lib/workroom/journal/index.d.ts.map +0 -1
  492. package/lib/workroom/journal/legacy-payload-guard.d.ts.map +0 -1
  493. package/lib/workroom/journal/memory-journal.d.ts.map +0 -1
  494. package/lib/workroom/journal/payload-governance.d.ts.map +0 -1
  495. package/lib/workroom/journal/payload-reference.d.ts.map +0 -1
  496. package/lib/workroom/journal/stored-event-projection.d.ts.map +0 -1
  497. package/lib/workroom/journal-model.d.ts.map +0 -1
  498. package/lib/workroom/kernel-contracts.d.ts.map +0 -1
  499. package/lib/workroom/kernel-state.d.ts.map +0 -1
  500. package/lib/workroom/local-assignment-issuance.d.ts.map +0 -1
  501. package/lib/workroom/plan-approval-control.d.ts.map +0 -1
  502. package/lib/workroom/plan-revision.d.ts.map +0 -1
  503. package/lib/workroom/profile-compiler.d.ts.map +0 -1
  504. package/lib/workroom/profile-registry.d.ts.map +0 -1
  505. package/lib/workroom/project-knowledge-registry.d.ts.map +0 -1
  506. package/lib/workroom/projection-outbox/contracts.d.ts.map +0 -1
  507. package/lib/workroom/projection-outbox/delivery-worker.d.ts.map +0 -1
  508. package/lib/workroom/projection-outbox/file-repository.d.ts.map +0 -1
  509. package/lib/workroom/projection-outbox/index.d.ts.map +0 -1
  510. package/lib/workroom/projection-outbox/memory-repository.d.ts.map +0 -1
  511. package/lib/workroom/projection-outbox/projector.d.ts.map +0 -1
  512. package/lib/workroom/projection-outbox/repository-state.d.ts.map +0 -1
  513. package/lib/workroom/projection-outbox/tracer.d.ts.map +0 -1
  514. package/lib/workroom/remote-assignment-dispatch-command.d.ts.map +0 -1
  515. package/lib/workroom/remote-assignment-issuance.d.ts.map +0 -1
  516. package/lib/workroom/remote-callback-application.d.ts.map +0 -1
  517. package/lib/workroom/remote-callback-gateway.d.ts.map +0 -1
  518. package/lib/workroom/remote-callback-inbox.d.ts.map +0 -1
  519. package/lib/workroom/remote-callback-reconciliation-worker.d.ts.map +0 -1
  520. package/lib/workroom/remote-dispatch-admission.d.ts.map +0 -1
  521. package/lib/workroom/remote-dispatch-outbox.d.ts.map +0 -1
  522. package/lib/workroom/remote-dispatch-scheduler.d.ts.map +0 -1
  523. package/lib/workroom/remote-dispatch-worker.d.ts.map +0 -1
  524. package/lib/workroom/remote-dispatch.d.ts.map +0 -1
  525. package/lib/workroom/remote-executor.d.ts.map +0 -1
  526. package/lib/workroom/role-capability-snapshot.d.ts.map +0 -1
  527. package/lib/workroom/runtime.d.ts.map +0 -1
  528. package/lib/workroom/scheduler-priority-control.d.ts.map +0 -1
  529. package/lib/workroom/software-delivery-plan.d.ts.map +0 -1
  530. package/lib/workroom/validate-catalog.d.ts.map +0 -1
  531. package/lib/workroom/workflow-plan-builder.d.ts.map +0 -1
  532. package/lib/workroom/workroom-assignment-knowledge-context.d.ts.map +0 -1
  533. package/lib/workroom/workroom-kernel.d.ts.map +0 -1
  534. package/lib/workroom/workroom-preemption.d.ts.map +0 -1
  535. package/lib/workroom/workroom-run-control.d.ts.map +0 -1
  536. package/lib/workroom/workroom-scheduler-application.d.ts.map +0 -1
  537. package/lib/workroom/workroom-scheduler.d.ts.map +0 -1
  538. package/lib/workroom/workroom-task-report-store.d.ts.map +0 -1
  539. package/lib/workroom-runtime/database-overlay-pack-promotion-repository.d.ts.map +0 -1
  540. package/lib/workroom-runtime/github-actions-delivery-provider.d.ts.map +0 -1
  541. package/lib/workroom-runtime/github-exact-merge-gateway.d.ts.map +0 -1
  542. package/lib/workroom-runtime/github-workroom-capability.d.ts.map +0 -1
  543. package/lib/workroom-runtime/self-delivery-project-composition.d.ts.map +0 -1
  544. package/lib/workroom-runtime/self-delivery-project.d.ts.map +0 -1
  545. package/lib/workroom-runtime/workroom-acceptance-authority.d.ts.map +0 -1
  546. package/lib/workroom-runtime/workroom-acceptance-fact-providers.d.ts.map +0 -1
  547. package/lib/workroom-runtime/workroom-acceptance-internal-providers.d.ts.map +0 -1
  548. package/lib/workroom-runtime/workroom-acceptance-policy.d.ts.map +0 -1
  549. package/lib/workroom-runtime/workroom-acceptance-production-composition.d.ts.map +0 -1
  550. package/lib/workroom-runtime/workroom-acceptance-provider-composition.d.ts.map +0 -1
  551. package/lib/workroom-runtime/workroom-accepted-source-runtime.d.ts.map +0 -1
  552. package/lib/workroom-runtime/workroom-assignment-authority-grant-runtime.d.ts.map +0 -1
  553. package/lib/workroom-runtime/workroom-assignment-authority-provider.d.ts.map +0 -1
  554. package/lib/workroom-runtime/workroom-assignment-knowledge-composition.d.ts.map +0 -1
  555. package/lib/workroom-runtime/workroom-bot-identity.d.ts.map +0 -1
  556. package/lib/workroom-runtime/workroom-capability-realization.d.ts.map +0 -1
  557. package/lib/workroom-runtime/workroom-data-governance-authority-writer.d.ts.map +0 -1
  558. package/lib/workroom-runtime/workroom-data-governance-bootstrap.d.ts.map +0 -1
  559. package/lib/workroom-runtime/workroom-data-governance-composition.d.ts.map +0 -1
  560. package/lib/workroom-runtime/workroom-data-governance-root-provider.d.ts.map +0 -1
  561. package/lib/workroom-runtime/workroom-data-governance-runtime.d.ts.map +0 -1
  562. package/lib/workroom-runtime/workroom-data-governance-storage.d.ts.map +0 -1
  563. package/lib/workroom-runtime/workroom-data-lifecycle-composition.d.ts.map +0 -1
  564. package/lib/workroom-runtime/workroom-data-lifecycle-console.d.ts.map +0 -1
  565. package/lib/workroom-runtime/workroom-data-lifecycle-human-ingress.d.ts.map +0 -1
  566. package/lib/workroom-runtime/workroom-database-models.d.ts.map +0 -1
  567. package/lib/workroom-runtime/workroom-database-storage.d.ts.map +0 -1
  568. package/lib/workroom-runtime/workroom-delivery-gateway.d.ts.map +0 -1
  569. package/lib/workroom-runtime/workroom-dynamic-planning-provider.d.ts.map +0 -1
  570. package/lib/workroom-runtime/workroom-dynamic-planning.d.ts.map +0 -1
  571. package/lib/workroom-runtime/workroom-effect-composition.d.ts.map +0 -1
  572. package/lib/workroom-runtime/workroom-effect-production.d.ts.map +0 -1
  573. package/lib/workroom-runtime/workroom-effect-runtime.d.ts.map +0 -1
  574. package/lib/workroom-runtime/workroom-governed-dispatch-composition.d.ts.map +0 -1
  575. package/lib/workroom-runtime/workroom-host-port.d.ts.map +0 -1
  576. package/lib/workroom-runtime/workroom-journal-payload-composition.d.ts.map +0 -1
  577. package/lib/workroom-runtime/workroom-local-agent-core-adapter.d.ts.map +0 -1
  578. package/lib/workroom-runtime/workroom-local-agent-loop.d.ts.map +0 -1
  579. package/lib/workroom-runtime/workroom-local-assignment-authority.d.ts.map +0 -1
  580. package/lib/workroom-runtime/workroom-local-assignment-executor.d.ts.map +0 -1
  581. package/lib/workroom-runtime/workroom-local-assignment-runtime.d.ts.map +0 -1
  582. package/lib/workroom-runtime/workroom-local-assignment-supply.d.ts.map +0 -1
  583. package/lib/workroom-runtime/workroom-overlay-pack-promotion.d.ts.map +0 -1
  584. package/lib/workroom-runtime/workroom-payload-processor-recall.d.ts.map +0 -1
  585. package/lib/workroom-runtime/workroom-plan-gate-authority.d.ts.map +0 -1
  586. package/lib/workroom-runtime/workroom-portfolio-capacity.d.ts.map +0 -1
  587. package/lib/workroom-runtime/workroom-portfolio-checkpoint-ack.d.ts.map +0 -1
  588. package/lib/workroom-runtime/workroom-portfolio-control-composition.d.ts.map +0 -1
  589. package/lib/workroom-runtime/workroom-portfolio-control-runtime.d.ts.map +0 -1
  590. package/lib/workroom-runtime/workroom-portfolio-grant-assignment.d.ts.map +0 -1
  591. package/lib/workroom-runtime/workroom-portfolio-kernel-authority.d.ts.map +0 -1
  592. package/lib/workroom-runtime/workroom-portfolio-sponsor.d.ts.map +0 -1
  593. package/lib/workroom-runtime/workroom-preemption-runtime.d.ts.map +0 -1
  594. package/lib/workroom-runtime/workroom-priority-authority.d.ts.map +0 -1
  595. package/lib/workroom-runtime/workroom-profile-authority-composition.d.ts.map +0 -1
  596. package/lib/workroom-runtime/workroom-profile-authority-runtime.d.ts.map +0 -1
  597. package/lib/workroom-runtime/workroom-projection-outbound.d.ts.map +0 -1
  598. package/lib/workroom-runtime/workroom-projection-runtime.d.ts.map +0 -1
  599. package/lib/workroom-runtime/workroom-remote-assignment-authority.d.ts.map +0 -1
  600. package/lib/workroom-runtime/workroom-remote-callback-runtime.d.ts.map +0 -1
  601. package/lib/workroom-runtime/workroom-remote-executor.d.ts.map +0 -1
  602. package/lib/workroom-runtime/workroom-reviewer-authority-runtime.d.ts.map +0 -1
  603. package/lib/workroom-runtime/workroom-risk-acceptance-runtime.d.ts.map +0 -1
  604. package/lib/workroom-runtime/workroom-run-profile-pin-authority.d.ts.map +0 -1
  605. package/lib/workroom-runtime/workroom-scheduler-portfolio-composition.d.ts.map +0 -1
  606. package/lib/workroom-runtime/workroom-scheduler-portfolio-contract.d.ts.map +0 -1
  607. package/lib/workroom-runtime/workroom-scheduler-portfolio-request-authority.d.ts.map +0 -1
  608. package/lib/workroom-runtime/workroom-scheduler-portfolio-supply.d.ts.map +0 -1
  609. package/lib/workroom-runtime/workroom-scheduler-route-registry.d.ts.map +0 -1
  610. package/lib/workroom-runtime/workroom-scheduler-runtime.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"encrypted-database-payload-vault.js","sourceRoot":"","sources":["../../src/data-governance/encrypted-database-payload-vault.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encrypted-database-payload-vault.js","sourceRoot":"","sources":["../../src/data-governance/encrypted-database-payload-vault.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n canonicalWorkroomJson,\n deepFreezeWorkroomValue as deepFreeze,\n digestCanonicalWorkroomValue as digest,\n} from './canonical-value.js';\nimport type {\n PayloadVaultDerivedWriteInput,\n PayloadVaultObjectHandle,\n PayloadVaultPort,\n PayloadVaultReadInput,\n} from './disclosure-manifest.js';\nimport {\n PayloadVaultIntegrityError,\n openEncryptedPayloadVaultEnvelope,\n readEncryptedPayloadVaultAudit,\n resolveEncryptedPayloadVaultLifecycleObject,\n sealEncryptedPayloadVaultEnvelope,\n type PayloadVaultCryptographyPort,\n type PayloadVaultSourceWriteInput,\n type SealedPayloadVaultObject,\n type VaultObjectEnvelope,\n} from './encrypted-file-payload-vault.js';\nimport type { PayloadLifecycleObjectAuthority } from './payload-lifecycle.js';\n\nexport interface EncryptedPayloadVaultDatabaseModel {\n select(...fields: string[]): {\n where(query: Record<string, unknown>): Promise<Record<string, unknown>[]>;\n };\n}\n\nexport interface EncryptedPayloadVaultDatabaseTransaction {\n select(table: string): {\n where(query: Record<string, unknown>): Promise<Record<string, unknown>[]>;\n };\n insertMany(table: string, rows: Record<string, unknown>[]): Promise<unknown>;\n}\n\nexport interface EncryptedPayloadVaultDatabase {\n transaction<T>(\n operation: (transaction: EncryptedPayloadVaultDatabaseTransaction) => Promise<T>,\n options: { isolationLevel: 'SERIALIZABLE' },\n ): Promise<T>;\n}\n\nexport interface EncryptedDatabasePayloadVaultOptions {\n readonly database: EncryptedPayloadVaultDatabase;\n readonly objectModel: EncryptedPayloadVaultDatabaseModel;\n readonly auditModel: EncryptedPayloadVaultDatabaseModel;\n readonly generation: number;\n readonly cryptography: PayloadVaultCryptographyPort;\n /** Stable Root-owned database identity, never a connection string or credential. */\n readonly repositoryIdentity: string;\n}\n\n/** Root-private Database adapter. Only governed materializers receive its narrow ports. */\nexport class EncryptedDatabasePayloadVault implements PayloadVaultPort {\n readonly #database: EncryptedPayloadVaultDatabase;\n readonly #objectModel: EncryptedPayloadVaultDatabaseModel;\n readonly #auditModel: EncryptedPayloadVaultDatabaseModel;\n readonly #generation: number;\n readonly #cryptography: PayloadVaultCryptographyPort;\n readonly #storage = {\n locationIdPrefix: 'vault-database',\n authorityDigest: '',\n };\n\n constructor(options: EncryptedDatabasePayloadVaultOptions) {\n this.#database = options.database;\n this.#objectModel = options.objectModel;\n this.#auditModel = options.auditModel;\n this.#generation = positiveInteger(options.generation, 'generation');\n this.#cryptography = options.cryptography;\n const repositoryIdentity = required(options.repositoryIdentity, 'repositoryIdentity');\n this.#storage = deepFreeze({\n locationIdPrefix: 'vault-database',\n authorityDigest: digest({\n version: 1,\n adapter: 'encrypted-database-payload-vault',\n repositoryIdentityDigest: digest({ repositoryIdentity }),\n }),\n });\n }\n\n putSource(\n input: PayloadVaultSourceWriteInput,\n signal: AbortSignal,\n ): Promise<PayloadVaultObjectHandle> {\n return this.#put(input, signal);\n }\n\n putDerived(\n input: PayloadVaultDerivedWriteInput,\n signal: AbortSignal,\n ): Promise<PayloadVaultObjectHandle> {\n return this.#put(input, signal);\n }\n\n async readExact(input: PayloadVaultReadInput, signal: AbortSignal): Promise<Uint8Array> {\n signal.throwIfAborted();\n const envelope = await this.#readEnvelope(input.handle);\n const plaintext = await openEncryptedPayloadVaultEnvelope({\n generation: this.#generation,\n cryptography: this.#cryptography,\n envelope,\n input,\n signal,\n });\n await this.#appendAudit(readEncryptedPayloadVaultAudit(this.#generation, input), signal);\n return plaintext;\n }\n\n async resolveLifecycleObject(\n handle: PayloadVaultObjectHandle,\n signal: AbortSignal,\n ): Promise<PayloadLifecycleObjectAuthority | undefined> {\n signal.throwIfAborted();\n const rows = await this.#objectModel.select().where({ vault_object_id: handle.vaultObjectId });\n if (rows.length === 0) return undefined;\n return resolveEncryptedPayloadVaultLifecycleObject(parseObjectRow(rows, handle), handle);\n }\n\n async #put(\n input: PayloadVaultSourceWriteInput | PayloadVaultDerivedWriteInput,\n signal: AbortSignal,\n ): Promise<PayloadVaultObjectHandle> {\n signal.throwIfAborted();\n const sealed = await sealEncryptedPayloadVaultEnvelope({\n generation: this.#generation,\n cryptography: this.#cryptography,\n storage: this.#storage,\n input,\n signal,\n });\n try {\n return await this.#database.transaction(async transaction => {\n signal.throwIfAborted();\n const rows = await transaction.select('payload_vault_objects').where({\n vault_object_id: sealed.handle.vaultObjectId,\n });\n if (rows.length > 0) {\n const winner = parseObjectRow(rows, sealed.handle);\n await insertAudit(transaction, sealed.audit);\n return winner.handle;\n }\n await transaction.insertMany('payload_vault_objects', [objectRow(sealed)]);\n await insertAudit(transaction, sealed.audit);\n return sealed.handle;\n }, { isolationLevel: 'SERIALIZABLE' });\n } catch (error) {\n if (!isDatabaseCasLoser(error)) throw error;\n const winner = await this.#readEnvelope(sealed.handle);\n await this.#appendAudit(sealed.audit, signal);\n return winner.handle;\n }\n }\n\n async #readEnvelope(handle: PayloadVaultObjectHandle): Promise<VaultObjectEnvelope> {\n const rows = await this.#objectModel.select().where({ vault_object_id: handle.vaultObjectId });\n return parseObjectRow(rows, handle);\n }\n\n async #appendAudit(value: Readonly<Record<string, unknown>>, signal: AbortSignal): Promise<void> {\n signal.throwIfAborted();\n const candidate = auditRow(value);\n try {\n await this.#database.transaction(async transaction => {\n signal.throwIfAborted();\n const rows = await transaction.select('payload_vault_audit').where({ id: candidate.id });\n if (rows.length > 0) {\n assertAuditRows(rows, candidate);\n return;\n }\n await transaction.insertMany('payload_vault_audit', [candidate]);\n }, { isolationLevel: 'SERIALIZABLE' });\n } catch (error) {\n if (!isDatabaseCasLoser(error)) throw error;\n assertAuditRows(await this.#auditModel.select().where({ id: candidate.id }), candidate);\n }\n }\n}\n\nexport const ENCRYPTED_PAYLOAD_VAULT_OBJECT_MODEL = {\n id: { type: 'text' as const, primary: true, nullable: false },\n vault_object_id: { type: 'text' as const, nullable: false },\n tenant_id: { type: 'text' as const, nullable: false },\n project_id: { type: 'text' as const, nullable: false },\n object_id: { type: 'text' as const, nullable: false },\n payload_hash: { type: 'text' as const, nullable: false },\n descriptor_digest: { type: 'text' as const, nullable: false },\n location_manifest_digest: { type: 'text' as const, nullable: false },\n envelope_digest: { type: 'text' as const, nullable: false },\n envelope_json: { type: 'text' as const, nullable: false },\n};\n\nexport const ENCRYPTED_PAYLOAD_VAULT_AUDIT_MODEL = {\n id: { type: 'text' as const, primary: true, nullable: false },\n vault_object_id: { type: 'text' as const, nullable: false },\n operation: { type: 'text' as const, nullable: false },\n audit_digest: { type: 'text' as const, nullable: false },\n audit_json: { type: 'text' as const, nullable: false },\n};\n\nexport function defineEncryptedPayloadVaultDatabaseModels(\n database: Readonly<{ define(name: string, definition: unknown): void }>,\n): void {\n database.define('payload_vault_objects', ENCRYPTED_PAYLOAD_VAULT_OBJECT_MODEL);\n database.define('payload_vault_audit', ENCRYPTED_PAYLOAD_VAULT_AUDIT_MODEL);\n}\n\nfunction objectRow(sealed: SealedPayloadVaultObject): Record<string, unknown> {\n return {\n id: sealed.handle.vaultObjectId,\n vault_object_id: sealed.handle.vaultObjectId,\n tenant_id: sealed.handle.tenantId,\n project_id: sealed.handle.projectId,\n object_id: sealed.handle.objectId,\n payload_hash: sealed.handle.payloadHash,\n descriptor_digest: sealed.handle.descriptorDigest,\n location_manifest_digest: sealed.handle.locationManifestDigest,\n envelope_digest: sealed.envelope.digest,\n envelope_json: canonicalWorkroomJson(sealed.envelope),\n };\n}\n\nfunction parseObjectRow(\n rows: readonly Record<string, unknown>[],\n handle: PayloadVaultObjectHandle,\n): VaultObjectEnvelope {\n if (rows.length !== 1) {\n throw new PayloadVaultIntegrityError('Payload Vault Database object is absent or duplicated');\n }\n const row = rows[0]!;\n exactKeys(row, [\n 'id', 'vault_object_id', 'tenant_id', 'project_id', 'object_id', 'payload_hash',\n 'descriptor_digest', 'location_manifest_digest', 'envelope_digest', 'envelope_json',\n ], 'object');\n if (row.id !== handle.vaultObjectId || row.vault_object_id !== handle.vaultObjectId\n || row.tenant_id !== handle.tenantId || row.project_id !== handle.projectId\n || row.object_id !== handle.objectId || row.payload_hash !== handle.payloadHash\n || row.descriptor_digest !== handle.descriptorDigest\n || row.location_manifest_digest !== handle.locationManifestDigest\n || typeof row.envelope_json !== 'string') {\n throw new PayloadVaultIntegrityError('Payload Vault Database row authority binding mismatch');\n }\n let envelope: VaultObjectEnvelope;\n try {\n envelope = JSON.parse(row.envelope_json) as VaultObjectEnvelope;\n } catch (error) {\n throw new PayloadVaultIntegrityError('Payload Vault Database envelope is malformed', { cause: error });\n }\n if (canonicalWorkroomJson(envelope) !== row.envelope_json\n || row.envelope_digest !== envelope.digest) {\n throw new PayloadVaultIntegrityError('Payload Vault Database envelope row digest mismatch');\n }\n // The shared assertion binds full handle, AAD, manifest and envelope digest.\n resolveEncryptedPayloadVaultLifecycleObject(envelope, handle);\n return deepFreeze(structuredClone(envelope));\n}\n\nasync function insertAudit(\n transaction: EncryptedPayloadVaultDatabaseTransaction,\n value: Readonly<Record<string, unknown>>,\n): Promise<void> {\n const candidate = auditRow(value);\n const rows = await transaction.select('payload_vault_audit').where({ id: candidate.id });\n if (rows.length > 0) {\n assertAuditRows(rows, candidate);\n return;\n }\n await transaction.insertMany('payload_vault_audit', [candidate]);\n}\n\nfunction auditRow(value: Readonly<Record<string, unknown>>): Record<string, unknown> {\n const body = deepFreeze(structuredClone(value));\n const auditDigest = digest(body);\n const content = deepFreeze({ ...body, digest: auditDigest });\n const vaultObjectId = required(body.vaultObjectId, 'audit.vaultObjectId');\n const operation = required(body.operation, 'audit.operation');\n return {\n id: digest(content),\n vault_object_id: vaultObjectId,\n operation,\n audit_digest: auditDigest,\n audit_json: canonicalWorkroomJson(content),\n };\n}\n\nfunction assertAuditRows(\n rows: readonly Record<string, unknown>[],\n expected: Record<string, unknown>,\n): void {\n if (rows.length !== 1) throw new PayloadVaultIntegrityError('Payload Vault Database audit is absent or duplicated');\n exactKeys(rows[0]!, ['id', 'vault_object_id', 'operation', 'audit_digest', 'audit_json'], 'audit');\n if (canonicalWorkroomJson(rows[0]) !== canonicalWorkroomJson(expected)) {\n throw new PayloadVaultIntegrityError('Payload Vault Database audit replay drift');\n }\n}\n\nfunction exactKeys(value: Record<string, unknown>, expected: readonly string[], label: string): void {\n if (canonicalWorkroomJson(Object.keys(value).sort()) !== canonicalWorkroomJson([...expected].sort())) {\n throw new PayloadVaultIntegrityError(`Payload Vault Database ${label} row shape drift`);\n }\n}\n\nfunction required(value: unknown, label: string): string {\n if (typeof value !== 'string' || value.trim() !== value || value.length === 0) {\n throw new PayloadVaultIntegrityError(`Payload Vault Database ${label} is invalid`);\n }\n return value;\n}\n\nfunction positiveInteger(value: number, label: string): number {\n if (!Number.isSafeInteger(value) || value < 1) {\n throw new PayloadVaultIntegrityError(`Payload Vault Database ${label} must be positive`);\n }\n return value;\n}\n\nfunction isDatabaseCasLoser(error: unknown): boolean {\n return error instanceof Error\n && ('code' in error && ['23505', 'SQLITE_CONSTRAINT', 'ER_DUP_ENTRY'].includes(String(error.code))\n || /unique|duplicate|constraint/iu.test(error.message));\n}\n"]}
@@ -114,4 +114,3 @@ export declare function openEncryptedPayloadVaultEnvelope(options: Readonly<{
114
114
  }>): Promise<Uint8Array>;
115
115
  export declare function resolveEncryptedPayloadVaultLifecycleObject(envelope: VaultObjectEnvelope, handle: PayloadVaultObjectHandle): PayloadLifecycleObjectAuthority;
116
116
  export declare function readEncryptedPayloadVaultAudit(generation: number, input: PayloadVaultReadInput): Readonly<Record<string, unknown>>;
117
- //# sourceMappingURL=encrypted-file-payload-vault.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"encrypted-file-payload-vault.js","sourceRoot":"","sources":["../../src/data-governance/encrypted-file-payload-vault.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encrypted-file-payload-vault.js","sourceRoot":"","sources":["../../src/data-governance/encrypted-file-payload-vault.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n createCipheriv,\n createDecipheriv,\n createHash,\n randomBytes,\n} from 'node:crypto';\nimport { readFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport type {\n ConfidentialityClass,\n DataDescriptor,\n DisclosurePurpose,\n} from './data-governance.js';\nimport type {\n PayloadVaultDerivedWriteInput,\n PayloadVaultObjectHandle,\n PayloadVaultPort,\n PayloadVaultReadInput,\n} from './disclosure-manifest.js';\nimport {\n canonicalWorkroomJson,\n deepFreezeWorkroomValue as deepFreeze,\n digestCanonicalWorkroomValue as digest,\n} from './canonical-value.js';\nimport { DurableFileStore } from './durable-file-store.js';\nimport {\n createPayloadLifecycleObjectAuthority,\n createPayloadLocationManifest,\n digestPayloadSubjectRef,\n type PayloadLifecycleObjectAuthority,\n type PayloadLocationManifest,\n} from './payload-lifecycle.js';\n\nexport interface PayloadVaultWrappedKey {\n readonly keyId: string;\n /** Provider-opaque wrapped DEK. It must never be the raw key encoding. */\n readonly wrappedKey: string;\n}\n\nexport interface PayloadVaultCryptographyContext {\n readonly version: 1;\n readonly generation: number;\n readonly tenantId: string;\n readonly projectId: string;\n readonly objectId: string;\n readonly descriptorDigest: string;\n readonly aadDigest: string;\n}\n\n/** Trusted Root-only crypto/KMS seam. KEK bytes never leave the provider. */\nexport interface PayloadVaultCryptographyPort {\n wrap(\n request: PayloadVaultCryptographyContext & Readonly<{ dataKey: Uint8Array }>,\n signal: AbortSignal,\n ): PayloadVaultWrappedKey | null | Promise<PayloadVaultWrappedKey | null>;\n unwrap(\n request: PayloadVaultCryptographyContext & PayloadVaultWrappedKey,\n signal: AbortSignal,\n ): Uint8Array | null | Promise<Uint8Array | null>;\n}\n\nexport interface PayloadVaultSourceWriteInput {\n /** Complete canonical descriptor; loose classification fields are forbidden. */\n readonly descriptor: DataDescriptor;\n readonly descriptorDigest: string;\n readonly payload: Uint8Array;\n readonly sourceBindingDigest: string;\n}\n\nexport class PayloadVaultCryptographyUnavailableError extends Error {\n constructor(readonly tenantId: string, readonly projectId: string, readonly keyId?: string) {\n super(`Payload Vault key authority is unavailable for ${tenantId}/${projectId}`);\n this.name = 'PayloadVaultCryptographyUnavailableError';\n }\n}\n\nexport class PayloadVaultIntegrityError extends Error {\n constructor(message: string, options?: ErrorOptions) {\n super(message, options);\n this.name = 'PayloadVaultIntegrityError';\n }\n}\n\nexport interface VaultObjectEnvelope {\n readonly version: 1;\n readonly handle: PayloadVaultObjectHandle;\n readonly aad: Readonly<{\n version: 1;\n issuedGeneration: number;\n objectId: string;\n payloadHash: string;\n descriptorDigest: string;\n tenantId: string;\n projectId: string;\n confidentiality: Exclude<ConfidentialityClass, 'unknown'>;\n categories: readonly string[];\n subjectDigests: readonly string[];\n lineage: Readonly<{\n sourceObjectIds: readonly string[];\n transformRef?: string;\n sourceBindingDigest?: string;\n }>;\n retention: DataDescriptor['retention'];\n locationManifest: PayloadLocationManifest;\n }>;\n readonly encryption: Readonly<{\n algorithm: 'aes-256-gcm';\n keyId: string;\n payloadIv: string;\n payloadTag: string;\n wrappedKey: string;\n }>;\n readonly ciphertext: string;\n readonly digest: string;\n}\n\nexport interface EncryptedFilePayloadVaultOptions {\n /** Repository leaf; its parent must already exist. */\n readonly directory: string;\n readonly generation: number;\n readonly cryptography: PayloadVaultCryptographyPort;\n}\n\nexport interface EncryptedPayloadVaultStorageAuthority {\n readonly locationIdPrefix: string;\n readonly authorityDigest: string;\n}\n\nexport interface SealedPayloadVaultObject {\n readonly handle: PayloadVaultObjectHandle;\n readonly envelope: VaultObjectEnvelope;\n readonly audit: Readonly<Record<string, unknown>>;\n}\n\n/**\n * Immutable AES-256-GCM envelope Vault. Every object receives a random DEK;\n * only a KeyProvider-wrapped DEK is persisted. Handles reveal no path or key id.\n */\nexport class EncryptedFilePayloadVault implements PayloadVaultPort {\n readonly #root: DurableFileStore;\n readonly #objects: DurableFileStore;\n readonly #audit: DurableFileStore;\n readonly #generation: number;\n readonly #cryptography: PayloadVaultCryptographyPort;\n readonly #locationAuthorityDigest: string;\n #ready?: Promise<void>;\n\n constructor(options: EncryptedFilePayloadVaultOptions) {\n this.#generation = positiveInteger(options.generation, 'generation');\n this.#cryptography = options.cryptography;\n this.#locationAuthorityDigest = digest({\n version: 1,\n adapter: 'encrypted-file-payload-vault',\n repositoryIdentityDigest: digest({ directory: options.directory }),\n });\n this.#root = new DurableFileStore(options.directory);\n this.#objects = new DurableFileStore(join(options.directory, 'objects'));\n this.#audit = new DurableFileStore(join(options.directory, 'audit'));\n }\n\n async putSource(\n input: PayloadVaultSourceWriteInput,\n signal: AbortSignal,\n ): Promise<PayloadVaultObjectHandle> {\n return await this.#put(input, signal);\n }\n\n async putDerived(\n input: PayloadVaultDerivedWriteInput,\n signal: AbortSignal,\n ): Promise<PayloadVaultObjectHandle> {\n return await this.#put(input, signal);\n }\n\n async readExact(input: PayloadVaultReadInput, signal: AbortSignal): Promise<Uint8Array> {\n signal.throwIfAborted();\n await this.#ensureReady();\n assertHandle(input.handle);\n requireDigest(input.requestDigest, 'requestDigest');\n requireText(input.principalId, 'principalId');\n requireText(input.destinationId, 'destinationId');\n const envelope = await this.#readEnvelope(this.#objectPath(input.handle.vaultObjectId));\n const plaintext = await openEncryptedPayloadVaultEnvelope({\n generation: this.#generation,\n cryptography: this.#cryptography,\n envelope,\n input,\n signal,\n });\n await this.#recordAudit(readAudit(this.#generation, input));\n return plaintext;\n }\n\n /** Trusted Root lifecycle resolver; never publish the Vault itself as a Resource. */\n async resolveLifecycleObject(\n handle: PayloadVaultObjectHandle,\n signal: AbortSignal,\n ): Promise<PayloadLifecycleObjectAuthority | undefined> {\n signal.throwIfAborted();\n await this.#ensureReady();\n let envelope: VaultObjectEnvelope;\n try {\n envelope = await this.#readEnvelope(this.#objectPath(handle.vaultObjectId));\n } catch (error) {\n if (error instanceof PayloadVaultIntegrityError) return undefined;\n throw error;\n }\n return resolveEncryptedPayloadVaultLifecycleObject(envelope, handle);\n }\n\n async #put(\n input: PayloadVaultSourceWriteInput | PayloadVaultDerivedWriteInput,\n signal: AbortSignal,\n ): Promise<PayloadVaultObjectHandle> {\n signal.throwIfAborted();\n await this.#ensureReady();\n const sealed = await sealEncryptedPayloadVaultEnvelope({\n generation: this.#generation,\n cryptography: this.#cryptography,\n storage: {\n locationIdPrefix: 'vault-file',\n authorityDigest: this.#locationAuthorityDigest,\n },\n input,\n signal,\n });\n const target = this.#objectPath(sealed.handle.vaultObjectId);\n const published = await this.#objects.publishCreateOnly({\n target,\n content: canonicalWorkroomJson(sealed.envelope),\n createdValue: sealed.handle,\n onConflict: async () => {\n const winner = await this.#readEnvelope(target);\n assertEnvelope(winner, sealed.handle);\n return winner.handle;\n },\n });\n await this.#recordAudit(sealed.audit);\n return published.value;\n }\n\n #objectPath(vaultObjectId: string): string {\n const match = /^vault-object:([a-f\\d]{64})$/u.exec(vaultObjectId);\n if (!match) throw new PayloadVaultIntegrityError('Payload Vault object id is invalid');\n return join(this.#objects.directory, `${match[1]}.json`);\n }\n\n async #readEnvelope(path: string): Promise<VaultObjectEnvelope> {\n await this.#objects.syncLeaf();\n let value: unknown;\n try {\n value = JSON.parse(await readFile(path, 'utf8'));\n } catch (error) {\n throw new PayloadVaultIntegrityError('Payload Vault object is absent or malformed', { cause: error });\n }\n if (!value || typeof value !== 'object') {\n throw new PayloadVaultIntegrityError('Payload Vault object is malformed');\n }\n return value as VaultObjectEnvelope;\n }\n\n async #recordAudit(value: Readonly<Record<string, unknown>>): Promise<void> {\n const content = deepFreeze({ ...structuredClone(value), digest: digest(value) });\n const id = digest(content).slice('sha256:'.length);\n const target = join(this.#audit.directory, `${id}.json`);\n await this.#audit.publishCreateOnly({\n target,\n content: canonicalWorkroomJson(content),\n createdValue: undefined,\n onConflict: async () => {\n await this.#audit.syncLeaf();\n const winner = await readFile(target, 'utf8');\n if (winner !== canonicalWorkroomJson(content)) {\n throw new PayloadVaultIntegrityError('Payload Vault audit replay drift');\n }\n },\n });\n }\n\n #ensureReady(): Promise<void> {\n this.#ready ??= (async () => {\n await this.#root.ensureDurableLeaf('Encrypted Payload Vault');\n await this.#objects.ensureDurableLeaf('Encrypted Payload Vault objects');\n await this.#audit.ensureDurableLeaf('Encrypted Payload Vault audit');\n await this.#root.syncLeafAndParent();\n })();\n return this.#ready;\n }\n}\n\nexport async function sealEncryptedPayloadVaultEnvelope(options: Readonly<{\n generation: number;\n cryptography: PayloadVaultCryptographyPort;\n storage: EncryptedPayloadVaultStorageAuthority;\n input: PayloadVaultSourceWriteInput | PayloadVaultDerivedWriteInput;\n signal: AbortSignal;\n}>): Promise<SealedPayloadVaultObject> {\n options.signal.throwIfAborted();\n const generation = positiveInteger(options.generation, 'generation');\n requireText(options.storage.locationIdPrefix, 'locationIdPrefix');\n requireDigest(options.storage.authorityDigest, 'storage authorityDigest');\n const normalized = normalizeWrite(options.input);\n const identity = deepFreeze({\n version: 1 as const,\n objectId: normalized.objectId,\n payloadHash: normalized.payloadHash,\n descriptorDigest: normalized.descriptorDigest,\n tenantId: normalized.tenantId,\n projectId: normalized.projectId,\n });\n const vaultObjectId = `vault-object:${digest(identity).slice('sha256:'.length)}`;\n const locationManifest = createPayloadLocationManifest({\n version: 1,\n tenantId: normalized.tenantId,\n projectId: normalized.projectId,\n objectId: normalized.objectId,\n vaultObjectId,\n descriptorDigest: normalized.descriptorDigest,\n revision: 1,\n locations: [{\n id: `${options.storage.locationIdPrefix}:${vaultObjectId}`,\n kind: 'vault_primary',\n authorityDigest: options.storage.authorityDigest,\n deletionMode: 'crypto_erase',\n }],\n });\n const handle = deepFreeze<PayloadVaultObjectHandle>({\n version: 1,\n vaultObjectId,\n objectId: normalized.objectId,\n payloadHash: normalized.payloadHash,\n descriptorDigest: normalized.descriptorDigest,\n tenantId: normalized.tenantId,\n projectId: normalized.projectId,\n locationManifestDigest: locationManifest.digest,\n });\n const aad = deepFreeze<VaultObjectEnvelope['aad']>({\n ...identity,\n issuedGeneration: generation,\n confidentiality: normalized.confidentiality,\n categories: normalized.categories,\n subjectDigests: normalized.subjectRefs.map(subjectRef =>\n digestPayloadSubjectRef(normalized.tenantId, subjectRef)),\n lineage: normalized.lineage,\n retention: normalized.retention,\n locationManifest,\n });\n const dataKey = randomBytes(32);\n try {\n const payloadCipher = encrypt(dataKey, Buffer.from(normalized.payload), Buffer.from(canonicalWorkroomJson(aad)));\n const wrappedKey = await wrapEncryptedPayloadVaultKey(options.cryptography, {\n version: 1,\n generation,\n tenantId: normalized.tenantId,\n projectId: normalized.projectId,\n objectId: normalized.objectId,\n descriptorDigest: normalized.descriptorDigest,\n aadDigest: digest(aad),\n dataKey: new Uint8Array(dataKey),\n }, options.signal);\n const body = deepFreeze<Omit<VaultObjectEnvelope, 'digest'>>({\n version: 1,\n handle,\n aad,\n encryption: {\n algorithm: 'aes-256-gcm',\n keyId: wrappedKey.keyId,\n payloadIv: payloadCipher.iv,\n payloadTag: payloadCipher.tag,\n wrappedKey: wrappedKey.wrappedKey,\n },\n ciphertext: payloadCipher.ciphertext,\n });\n return deepFreeze({\n handle,\n envelope: deepFreeze({ ...body, digest: digest(body) }),\n audit: writeAudit(generation, handle, normalized.lineage),\n });\n } finally {\n dataKey.fill(0);\n normalized.payload.fill(0);\n }\n}\n\nexport async function openEncryptedPayloadVaultEnvelope(options: Readonly<{\n generation: number;\n cryptography: PayloadVaultCryptographyPort;\n envelope: VaultObjectEnvelope;\n input: PayloadVaultReadInput;\n signal: AbortSignal;\n}>): Promise<Uint8Array> {\n options.signal.throwIfAborted();\n const generation = positiveInteger(options.generation, 'generation');\n assertHandle(options.input.handle);\n requireDigest(options.input.requestDigest, 'requestDigest');\n requireText(options.input.principalId, 'principalId');\n requireText(options.input.destinationId, 'destinationId');\n assertEnvelope(options.envelope, options.input.handle);\n const dataKey = await unwrapEncryptedPayloadVaultKey(options.cryptography, {\n version: 1,\n generation,\n tenantId: options.input.handle.tenantId,\n projectId: options.input.handle.projectId,\n objectId: options.input.handle.objectId,\n descriptorDigest: options.input.handle.descriptorDigest,\n aadDigest: digest(options.envelope.aad),\n keyId: options.envelope.encryption.keyId,\n wrappedKey: options.envelope.encryption.wrappedKey,\n }, options.signal);\n try {\n const plaintext = decrypt(\n Buffer.from(dataKey),\n options.envelope.encryption.payloadIv,\n options.envelope.encryption.payloadTag,\n options.envelope.ciphertext,\n Buffer.from(canonicalWorkroomJson(options.envelope.aad)),\n );\n if (hashBytes(plaintext) !== options.input.handle.payloadHash) {\n throw new PayloadVaultIntegrityError('Payload Vault decrypted body hash mismatch');\n }\n return new Uint8Array(plaintext);\n } finally {\n dataKey.fill(0);\n }\n}\n\nexport function resolveEncryptedPayloadVaultLifecycleObject(\n envelope: VaultObjectEnvelope,\n handle: PayloadVaultObjectHandle,\n): PayloadLifecycleObjectAuthority {\n assertEnvelope(envelope, handle);\n const manifest = createPayloadLocationManifest(envelope.aad.locationManifest);\n if (canonicalWorkroomJson(manifest) !== canonicalWorkroomJson(envelope.aad.locationManifest)) {\n throw new PayloadVaultIntegrityError('Payload Vault Location Manifest is non-canonical');\n }\n return createPayloadLifecycleObjectAuthority({\n version: 1,\n handle,\n retention: envelope.aad.retention,\n subjectDigests: envelope.aad.subjectDigests,\n locations: manifest,\n });\n}\n\nexport function readEncryptedPayloadVaultAudit(\n generation: number,\n input: PayloadVaultReadInput,\n): Readonly<Record<string, unknown>> {\n return readAudit(generation, input);\n}\n\nasync function wrapEncryptedPayloadVaultKey(\n cryptography: PayloadVaultCryptographyPort,\n request: PayloadVaultCryptographyContext & Readonly<{ dataKey: Uint8Array }>,\n signal: AbortSignal,\n): Promise<PayloadVaultWrappedKey> {\n const ownedDataKey = new Uint8Array(request.dataKey);\n try {\n const authority = await abortable(Promise.resolve(cryptography.wrap(\n Object.freeze({ ...request, dataKey: ownedDataKey }),\n signal,\n )), signal);\n if (!authority) throw new PayloadVaultCryptographyUnavailableError(request.tenantId, request.projectId);\n requireText(authority.keyId, 'keyId');\n requireText(authority.wrappedKey, 'wrappedKey');\n if (authority.wrappedKey === Buffer.from(ownedDataKey).toString('base64')) {\n throw new PayloadVaultIntegrityError('Payload Vault crypto provider returned an unwrapped data key');\n }\n return { keyId: authority.keyId, wrappedKey: authority.wrappedKey };\n } finally {\n ownedDataKey.fill(0);\n }\n}\n\nasync function unwrapEncryptedPayloadVaultKey(\n cryptography: PayloadVaultCryptographyPort,\n request: PayloadVaultCryptographyContext & PayloadVaultWrappedKey,\n signal: AbortSignal,\n): Promise<Uint8Array> {\n const key = await abortable(Promise.resolve(cryptography.unwrap(deepFreeze(request), signal)), signal);\n if (!key) throw new PayloadVaultCryptographyUnavailableError(request.tenantId, request.projectId, request.keyId);\n if (!(key instanceof Uint8Array) || key.byteLength !== 32) {\n throw new PayloadVaultIntegrityError('Payload Vault crypto provider returned an invalid data key');\n }\n return new Uint8Array(key);\n}\n\nfunction writeAudit(\n generation: number,\n handle: PayloadVaultObjectHandle,\n lineage: Readonly<Record<string, unknown>>,\n): Readonly<Record<string, unknown>> {\n return deepFreeze({\n version: 1,\n operation: 'write',\n generation,\n vaultObjectId: handle.vaultObjectId,\n objectId: handle.objectId,\n descriptorDigest: handle.descriptorDigest,\n payloadHash: handle.payloadHash,\n tenantId: handle.tenantId,\n projectId: handle.projectId,\n lineageDigest: digest(lineage),\n });\n}\n\nfunction readAudit(\n generation: number,\n input: PayloadVaultReadInput,\n): Readonly<Record<string, unknown>> {\n return deepFreeze({\n version: 1,\n operation: 'read',\n generation,\n vaultObjectId: input.handle.vaultObjectId,\n objectId: input.handle.objectId,\n descriptorDigest: input.handle.descriptorDigest,\n payloadHash: input.handle.payloadHash,\n tenantId: input.handle.tenantId,\n projectId: input.handle.projectId,\n requestDigest: input.requestDigest,\n purpose: input.purpose,\n principalId: input.principalId,\n destinationId: input.destinationId,\n });\n}\n\nfunction normalizeWrite(input: PayloadVaultSourceWriteInput | PayloadVaultDerivedWriteInput) {\n const descriptor = structuredClone(input.descriptor);\n requireText(descriptor.objectId, 'objectId');\n requireDigest(descriptor.payloadHash, 'payloadHash');\n requireText(descriptor.tenantId, 'tenantId');\n requireText(descriptor.projectId, 'projectId');\n const descriptorDigest = digest(descriptor);\n requireDigest(input.descriptorDigest, 'descriptorDigest');\n if (input.descriptorDigest !== descriptorDigest) {\n throw new PayloadVaultIntegrityError('Payload Vault Descriptor digest mismatch');\n }\n if (!(input.payload instanceof Uint8Array) || hashBytes(input.payload) !== descriptor.payloadHash) {\n throw new PayloadVaultIntegrityError('Payload Vault write body does not match payloadHash');\n }\n if (!['public', 'project_internal', 'confidential', 'restricted'].includes(descriptor.confidentiality)) {\n throw new PayloadVaultIntegrityError('Payload Vault confidentiality is invalid');\n }\n const categories = uniqueTexts(descriptor.categories, 'categories');\n const subjectRefs = uniqueTexts(descriptor.subjectRefs, 'subjectRefs');\n const sourceObjectIds = uniqueTexts(descriptor.lineage.sourceObjectIds, 'lineage.sourceObjectIds');\n if (sourceObjectIds.length === 0) {\n throw new PayloadVaultIntegrityError('Payload Vault source lineage is empty');\n }\n const lineage = 'sourceBindingDigest' in input\n ? deepFreeze({\n sourceObjectIds,\n sourceBindingDigest: requireDigest(input.sourceBindingDigest, 'sourceBindingDigest'),\n })\n : deepFreeze({\n sourceObjectIds,\n ...(descriptor.lineage.transformRef === undefined\n ? {}\n : { transformRef: requireText(descriptor.lineage.transformRef, 'transformRef') }),\n });\n if (!descriptor.retention || !Number.isSafeInteger(descriptor.retention.minimumRetainUntil)\n || !Number.isSafeInteger(descriptor.retention.deleteAfter)\n || descriptor.retention.minimumRetainUntil < 0\n || descriptor.retention.deleteAfter < descriptor.retention.minimumRetainUntil) {\n throw new PayloadVaultIntegrityError('Payload Vault retention window is invalid');\n }\n if (canonicalWorkroomJson(descriptor.categories) !== canonicalWorkroomJson(categories)\n || canonicalWorkroomJson(descriptor.subjectRefs) !== canonicalWorkroomJson(subjectRefs)\n || canonicalWorkroomJson(descriptor.lineage.sourceObjectIds) !== canonicalWorkroomJson(sourceObjectIds)) {\n throw new PayloadVaultIntegrityError('Payload Vault Descriptor is non-canonical');\n }\n // ECMAScript rejects freezing non-empty typed arrays. The Vault owns this\n // byte copy and never exposes it; all authority-bearing metadata is frozen.\n return Object.freeze({\n objectId: descriptor.objectId,\n payload: new Uint8Array(input.payload),\n payloadHash: descriptor.payloadHash,\n descriptorDigest,\n tenantId: descriptor.tenantId,\n projectId: descriptor.projectId,\n confidentiality: descriptor.confidentiality,\n categories,\n subjectRefs,\n lineage,\n retention: { ...descriptor.retention },\n });\n}\n\nfunction assertEnvelope(\n value: VaultObjectEnvelope,\n handle: PayloadVaultObjectHandle,\n): void {\n let manifest: PayloadLocationManifest;\n try {\n manifest = createPayloadLocationManifest(value.aad?.locationManifest);\n } catch (error) {\n throw new PayloadVaultIntegrityError('Payload Vault Location Manifest is malformed', { cause: error });\n }\n if (value.version !== 1 || value.encryption?.algorithm !== 'aes-256-gcm'\n || canonicalWorkroomJson(value.handle) !== canonicalWorkroomJson(handle)\n || !Number.isSafeInteger(value.aad?.issuedGeneration)\n || value.aad.issuedGeneration < 1\n || value.aad.objectId !== handle.objectId\n || value.aad.payloadHash !== handle.payloadHash\n || value.aad.descriptorDigest !== handle.descriptorDigest\n || value.aad.tenantId !== handle.tenantId\n || value.aad.projectId !== handle.projectId\n || canonicalWorkroomJson(manifest) !== canonicalWorkroomJson(value.aad.locationManifest)\n || manifest.digest !== handle.locationManifestDigest) {\n throw new PayloadVaultIntegrityError('Payload Vault envelope authority binding mismatch');\n }\n const { digest: actualDigest, ...body } = value;\n if (actualDigest !== digest(body)) {\n throw new PayloadVaultIntegrityError('Payload Vault envelope digest mismatch');\n }\n}\n\nfunction assertHandle(value: PayloadVaultObjectHandle): void {\n if (value.version !== 1 || !/^vault-object:[a-f\\d]{64}$/u.test(value.vaultObjectId)) {\n throw new PayloadVaultIntegrityError('Payload Vault handle is invalid');\n }\n requireText(value.objectId, 'objectId');\n requireDigest(value.payloadHash, 'payloadHash');\n requireDigest(value.descriptorDigest, 'descriptorDigest');\n requireText(value.tenantId, 'tenantId');\n requireText(value.projectId, 'projectId');\n requireDigest(value.locationManifestDigest, 'locationManifestDigest');\n}\n\nfunction encrypt(key: Buffer, plaintext: Buffer, aad: Buffer) {\n const iv = randomBytes(12);\n const cipher = createCipheriv('aes-256-gcm', key, iv);\n cipher.setAAD(aad);\n const ciphertext = Buffer.concat([cipher.update(plaintext), cipher.final()]);\n return {\n iv: iv.toString('base64'),\n tag: cipher.getAuthTag().toString('base64'),\n ciphertext: ciphertext.toString('base64'),\n };\n}\n\nfunction decrypt(key: Buffer, iv: string, tag: string, ciphertext: string, aad: Buffer): Buffer {\n try {\n const decipher = createDecipheriv('aes-256-gcm', key, Buffer.from(iv, 'base64'));\n decipher.setAAD(aad);\n decipher.setAuthTag(Buffer.from(tag, 'base64'));\n return Buffer.concat([decipher.update(Buffer.from(ciphertext, 'base64')), decipher.final()]);\n } catch (error) {\n throw new PayloadVaultIntegrityError('Payload Vault authenticated decryption failed', { cause: error });\n }\n}\n\nfunction uniqueTexts(values: readonly string[], label: string): readonly string[] {\n if (!Array.isArray(values)) throw new PayloadVaultIntegrityError(`Payload Vault ${label} is invalid`);\n return Object.freeze([...new Set(values.map(value => requireText(value, label)))].sort());\n}\n\nfunction requireText(value: string, label: string): string {\n if (typeof value !== 'string' || value.trim() !== value || value.length === 0) {\n throw new PayloadVaultIntegrityError(`Payload Vault ${label} is invalid`);\n }\n return value;\n}\n\nfunction requireDigest(value: string, label: string): string {\n if (!/^sha256:[a-f\\d]{64}$/u.test(value)) {\n throw new PayloadVaultIntegrityError(`Payload Vault ${label} is invalid`);\n }\n return value;\n}\n\nfunction positiveInteger(value: number, label: string): number {\n if (!Number.isSafeInteger(value) || value < 1) {\n throw new PayloadVaultIntegrityError(`Payload Vault ${label} must be positive`);\n }\n return value;\n}\n\nfunction hashBytes(value: Uint8Array): string {\n return `sha256:${createHash('sha256').update(value).digest('hex')}`;\n}\n\nasync function abortable<T>(promise: Promise<T>, signal: AbortSignal): Promise<T> {\n signal.throwIfAborted();\n return await new Promise<T>((resolve, reject) => {\n const onAbort = (): void => reject(signal.reason ?? new DOMException('Payload Vault cancelled', 'AbortError'));\n signal.addEventListener('abort', onAbort, { once: true });\n promise.then(resolve, reject).finally(() => signal.removeEventListener('abort', onAbort));\n });\n}\n"]}
@@ -16,4 +16,3 @@ export declare class FilePayloadLifecycleRepository implements PayloadLifecycleJ
16
16
  append(projectId: string, objectId: string, expectedSequence: number, drafts: readonly PayloadLifecycleEventDraft[]): Promise<readonly PayloadLifecycleEvent[]>;
17
17
  listObjectIds(projectId: string): Promise<readonly string[]>;
18
18
  }
19
- //# sourceMappingURL=file-payload-lifecycle-repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-payload-lifecycle-repository.js","sourceRoot":"","sources":["../../src/data-governance/file-payload-lifecycle-repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-payload-lifecycle-repository.js","sourceRoot":"","sources":["../../src/data-governance/file-payload-lifecycle-repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,qBAAqB,EACrB,uBAAuB,IAAI,UAAU,EACrC,4BAA4B,IAAI,MAAM,GACvC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,GAEtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,sBAAsB,GAIvB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,OAAO,qCAAsC,SAAQ,KAAK;IAEnD;IACA;IACA;IACA;IAJX,YACW,SAAiB,EACjB,QAAgB,EAChB,QAAgB,EAChB,MAAc;QAEvB,KAAK,CAAC,2CAA2C,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;QALjE,cAAS,GAAT,SAAS,CAAQ;QACjB,aAAQ,GAAR,QAAQ,CAAQ;QAChB,aAAQ,GAAR,QAAQ,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAQ;QAGvB,IAAI,CAAC,IAAI,GAAG,uCAAuC,CAAC;IACtD,CAAC;CACF;AAgBD,uEAAuE;AACvE,MAAM,OAAO,8BAA8B;IAK9B;IAJF,MAAM,CAAmB;IAClC,MAAM,CAAiB;IAEvB,YACW,SAAiB,EAC1B,aAAgC,qBAAqB;QAD5C,cAAS,GAAT,SAAS,CAAQ;QAG1B,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAAiB,EAAE,QAAgB;QAC5C,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QAChD,YAAY,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACjD,IAAI,KAAwB,CAAC;QAC7B,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;gBAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/F,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7E,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;YACtG,IAAI,OAAO,CAAC,aAAa,KAAK,aAAa,IAAI,OAAO,CAAC,gBAAgB,KAAK,aAAa,GAAG,CAAC,EAAE,CAAC;gBAC9F,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAC/B,aAAa,GAAG,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACrC,sBAAsB,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QACvD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,SAAiB,EACjB,QAAgB,EAChB,gBAAwB,EACxB,MAA6C;QAE7C,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QAChD,YAAY,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAChE,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC;QAC9C,IAAI,MAAM,KAAK,gBAAgB,EAAE,CAAC;YAChC,MAAM,IAAI,qCAAqC,CAAC,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;QACjG,CAAC;QACD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACvD,MAAM,IAAI,GAAG,UAAU,CAAC;gBACtB,GAAG,eAAe,CAAC,KAAK,CAAC;gBACzB,OAAO,EAAE,CAAU;gBACnB,SAAS;gBACT,QAAQ;gBACR,QAAQ,EAAE,gBAAgB,GAAG,MAAM,GAAG,CAAC;aACxC,CAAC,CAAC;YACH,OAAO,UAAU,CAAwB,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAA0B,CAAC;QACvG,CAAC,CAAC,CAAC,CAAC;QACJ,sBAAsB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACjF,MAAM,WAAW,GAAG,UAAU,CAA8B;YAC1D,OAAO,EAAE,CAAC;YACV,SAAS;YACT,QAAQ;YACR,gBAAgB;YAChB,aAAa,EAAE,MAAM,CAAC,CAAC,CAAE,CAAC,QAAQ;YAClC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,QAAQ;YACrC,MAAM;SACP,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,UAAU,CAA0B,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACrG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAChC,GAAG,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACjG,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACtD,MAAM;YACN,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC;YACvC,YAAY,EAAE,MAAM;YACpB,UAAU,EAAE,KAAK,IAAI,EAAE;gBACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACpD,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;gBAC9D,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,qCAAqC,CAC7C,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CACrE,CAAC;gBACJ,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACtC,OAAO,WAAW,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB;QACnC,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC;QACxC,IAAI,KAAwB,CAAC;QAC7B,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;gBAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACrG,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAA2B,CAAC;YACrG,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAChH,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,YAAY;QACV,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AAED,SAAS,YAAY,CAAC,GAAW,EAAE,SAAiB,EAAE,QAAgB;IACpE,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,wCAAwC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,OAAO,GAAG,KAAgC,CAAC;IACjD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAC9C,IAAI,OAAO,CAAC,OAAO,KAAK,CAAC,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ;WACxF,QAAQ,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;WAC1F,OAAO,CAAC,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ;WACrD,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,WAAW,CAClB,MAAwC,EACxC,gBAAwB,EACxB,MAA6C;IAE7C,MAAM,KAAK,GAAG,gBAAgB,GAAG,CAAC,CAAC;IACnC,IAAI,MAAM,CAAC,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC5D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7D,OAAO,qBAAqB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EACpF,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;YAC7E,qBAAqB,CAAC,MAAM,CAAC;QACjC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC;QACvB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB,EAAE,QAAgB;IACvD,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;AACvD,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,KAAa;IAChD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,aAAa,CAAC,CAAC;IACjH,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,OAAO,CAAC,KAAc,EAAE,IAAY;IAC3C,OAAO,OAAO,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK;WAC9D,KAA4B,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AACpD,CAAC","sourcesContent":["import { createHash } from 'node:crypto';\nimport { readFile, readdir } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport {\n canonicalWorkroomJson,\n deepFreezeWorkroomValue as deepFreeze,\n digestCanonicalWorkroomValue as digest,\n} from './canonical-value.js';\nimport {\n DurableFileStore,\n nodeDurableFileSystem,\n type DurableFileSystem,\n} from './durable-file-store.js';\nimport {\n replayPayloadLifecycle,\n type PayloadLifecycleEvent,\n type PayloadLifecycleEventDraft,\n type PayloadLifecycleJournal,\n} from './payload-lifecycle.js';\n\nexport class PayloadLifecycleSequenceConflictError extends Error {\n constructor(\n readonly projectId: string,\n readonly objectId: string,\n readonly expected: number,\n readonly actual: number,\n ) {\n super(`Payload Lifecycle sequence conflict for ${projectId}/${objectId}`);\n this.name = 'PayloadLifecycleSequenceConflictError';\n }\n}\n\ninterface PayloadLifecycleSegmentBody {\n readonly version: 1;\n readonly projectId: string;\n readonly objectId: string;\n readonly expectedSequence: number;\n readonly firstSequence: number;\n readonly lastSequence: number;\n readonly events: readonly PayloadLifecycleEvent[];\n}\n\ninterface PayloadLifecycleSegment extends PayloadLifecycleSegmentBody {\n readonly digest: string;\n}\n\n/** Crash-durable, content-free immutable lifecycle fact repository. */\nexport class FilePayloadLifecycleRepository implements PayloadLifecycleJournal {\n readonly #store: DurableFileStore;\n #ready?: Promise<void>;\n\n constructor(\n readonly directory: string,\n fileSystem: DurableFileSystem = nodeDurableFileSystem,\n ) {\n this.#store = new DurableFileStore(directory, fileSystem);\n }\n\n async read(projectId: string, objectId: string): Promise<readonly PayloadLifecycleEvent[]> {\n requiredText(projectId, 'Lifecycle Project id');\n requiredText(objectId, 'Lifecycle object id');\n const prefix = objectPrefix(projectId, objectId);\n let names: readonly string[];\n try {\n names = await readdir(this.directory);\n } catch (error) {\n if (hasCode(error, 'ENOENT')) return Object.freeze([]);\n throw error;\n }\n const matched = names.filter(name => name.startsWith(prefix) && name.endsWith('.json')).sort();\n const events: PayloadLifecycleEvent[] = [];\n let expectedFirst = 0;\n for (const name of matched) {\n if (!new RegExp(`^${escapeRegExp(prefix)}[0-9]{16}\\\\.json$`, 'u').test(name)) {\n throw new Error('Payload Lifecycle segment filename is invalid');\n }\n const segment = parseSegment(await readFile(join(this.directory, name), 'utf8'), projectId, objectId);\n if (segment.firstSequence !== expectedFirst || segment.expectedSequence !== expectedFirst - 1) {\n throw new Error('Payload Lifecycle Journal contains a sequence gap');\n }\n events.push(...segment.events);\n expectedFirst = segment.lastSequence + 1;\n }\n const canonical = deepFreeze(events);\n replayPayloadLifecycle(projectId, objectId, canonical);\n if (canonical.length > 0) await this.#store.syncLeaf();\n return canonical;\n }\n\n async append(\n projectId: string,\n objectId: string,\n expectedSequence: number,\n drafts: readonly PayloadLifecycleEventDraft[],\n ): Promise<readonly PayloadLifecycleEvent[]> {\n requiredText(projectId, 'Lifecycle Project id');\n requiredText(objectId, 'Lifecycle object id');\n if (!Number.isSafeInteger(expectedSequence) || expectedSequence < -1) {\n throw new Error('Payload Lifecycle expected sequence is invalid');\n }\n if (!Array.isArray(drafts) || drafts.length === 0) return Object.freeze([]);\n const snapshot = deepFreeze(structuredClone(drafts));\n const current = await this.read(projectId, objectId);\n const replay = exactReplay(current, expectedSequence, snapshot);\n if (replay) return replay;\n const actual = current.at(-1)?.sequence ?? -1;\n if (actual !== expectedSequence) {\n throw new PayloadLifecycleSequenceConflictError(projectId, objectId, expectedSequence, actual);\n }\n const events = deepFreeze(snapshot.map((draft, offset) => {\n const body = deepFreeze({\n ...structuredClone(draft),\n version: 1 as const,\n projectId,\n objectId,\n sequence: expectedSequence + offset + 1,\n });\n return deepFreeze<PayloadLifecycleEvent>({ ...body, digest: digest(body) }) as PayloadLifecycleEvent;\n }));\n replayPayloadLifecycle(projectId, objectId, deepFreeze([...current, ...events]));\n const segmentBody = deepFreeze<PayloadLifecycleSegmentBody>({\n version: 1,\n projectId,\n objectId,\n expectedSequence,\n firstSequence: events[0]!.sequence,\n lastSequence: events.at(-1)!.sequence,\n events,\n });\n const segment = deepFreeze<PayloadLifecycleSegment>({ ...segmentBody, digest: digest(segmentBody) });\n await this.#ensureReady();\n const target = join(this.directory,\n `${objectPrefix(projectId, objectId)}${String(segment.firstSequence).padStart(16, '0')}.json`);\n const publication = await this.#store.publishCreateOnly({\n target,\n content: canonicalWorkroomJson(segment),\n createdValue: events,\n onConflict: async () => {\n const winner = await this.read(projectId, objectId);\n const exact = exactReplay(winner, expectedSequence, snapshot);\n if (!exact) {\n throw new PayloadLifecycleSequenceConflictError(\n projectId, objectId, expectedSequence, winner.at(-1)?.sequence ?? -1,\n );\n }\n return exact;\n },\n });\n await this.#store.syncLeafAndParent();\n return publication.value;\n }\n\n async listObjectIds(projectId: string): Promise<readonly string[]> {\n requiredText(projectId, 'Lifecycle Project id');\n const prefix = `${keyHash(projectId)}.`;\n let names: readonly string[];\n try {\n names = await readdir(this.directory);\n } catch (error) {\n if (hasCode(error, 'ENOENT')) return Object.freeze([]);\n throw error;\n }\n const objectIds = new Set<string>();\n for (const name of names.filter(value => value.startsWith(prefix) && value.endsWith('.json')).sort()) {\n const raw = JSON.parse(await readFile(join(this.directory, name), 'utf8')) as { objectId?: unknown };\n if (typeof raw.objectId !== 'string') throw new Error('Payload Lifecycle segment object identity is malformed');\n objectIds.add(raw.objectId);\n }\n return Object.freeze([...objectIds].sort());\n }\n\n #ensureReady(): Promise<void> {\n this.#ready ??= this.#store.ensureDurableLeaf('Payload Lifecycle Journal');\n return this.#ready;\n }\n}\n\nfunction parseSegment(raw: string, projectId: string, objectId: string): PayloadLifecycleSegment {\n let value: unknown;\n try {\n value = JSON.parse(raw);\n } catch (error) {\n throw new Error('Payload Lifecycle segment is malformed', { cause: error });\n }\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n throw new Error('Payload Lifecycle segment is malformed');\n }\n const segment = value as PayloadLifecycleSegment;\n const { digest: supplied, ...body } = segment;\n if (segment.version !== 1 || segment.projectId !== projectId || segment.objectId !== objectId\n || supplied !== digest(body) || !Array.isArray(segment.events) || segment.events.length === 0\n || segment.firstSequence !== segment.events[0]?.sequence\n || segment.lastSequence !== segment.events.at(-1)?.sequence) {\n throw new Error('Payload Lifecycle segment identity/digest is invalid');\n }\n return deepFreeze(structuredClone(segment));\n}\n\nfunction exactReplay(\n events: readonly PayloadLifecycleEvent[],\n expectedSequence: number,\n drafts: readonly PayloadLifecycleEventDraft[],\n): readonly PayloadLifecycleEvent[] | undefined {\n const first = expectedSequence + 1;\n if (events.length < first + drafts.length) return undefined;\n const candidate = events.slice(first, first + drafts.length);\n return canonicalWorkroomJson(candidate.map(({ version: _version, projectId: _projectId,\n objectId: _objectId, sequence: _sequence, digest: _digest, ...draft }) => draft))\n === canonicalWorkroomJson(drafts)\n ? deepFreeze(candidate)\n : undefined;\n}\n\nfunction objectPrefix(projectId: string, objectId: string): string {\n return `${keyHash(projectId)}.${keyHash(objectId)}.`;\n}\n\nfunction keyHash(value: string): string {\n return createHash('sha256').update(value).digest('hex');\n}\n\nfunction requiredText(value: string, label: string): string {\n if (typeof value !== 'string' || !value.trim() || value !== value.trim()) throw new Error(`${label} is invalid`);\n return value;\n}\n\nfunction escapeRegExp(value: string): string {\n return value.replace(/[.*+?^${}()|[\\]\\\\]/gu, '\\\\$&');\n}\n\nfunction hasCode(error: unknown, code: string): boolean {\n return Boolean(error && typeof error === 'object' && 'code' in error\n && (error as { code?: unknown }).code === code);\n}\n"]}
@@ -149,4 +149,3 @@ export declare class FileDataGovernanceAuthorityRepository implements DataGovern
149
149
  recordBlocker(input: DataGovernanceBlockerInput): Promise<DataGovernanceBlocker>;
150
150
  listBlockers(projectId: string): Promise<readonly DataGovernanceBlocker[]>;
151
151
  }
152
- //# sourceMappingURL=governance-authority-repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"governance-authority-repository.js","sourceRoot":"","sources":["../../src/data-governance/governance-authority-repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"governance-authority-repository.js","sourceRoot":"","sources":["../../src/data-governance/governance-authority-repository.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from 'node:crypto';\nimport { readFile, readdir } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport {\n assertDataCategoryRegistrySnapshot,\n assertDataGovernancePolicySnapshot,\n assertDisclosureRecipientSetSnapshot,\n assertRegisteredDataDescriptor,\n type ConfidentialityClass,\n type DataCategoryRegistrySnapshot,\n type DataDescriptor,\n type DataGovernancePolicySnapshot,\n type DisclosureApprovalSnapshot,\n type DisclosurePrincipalSnapshot,\n type DisclosurePurpose,\n type DisclosureRecipientSetSnapshot,\n type RetentionClass,\n} from './data-governance.js';\nimport type { PayloadVaultObjectHandle } from './disclosure-manifest.js';\nimport {\n canonicalWorkroomJson,\n compareCanonicalWorkroomText,\n deepFreezeWorkroomValue as deepFreeze,\n digestCanonicalWorkroomValue as digest,\n} from './canonical-value.js';\nimport { DurableFileStore } from './durable-file-store.js';\n\nexport interface WorkroomPlanningDataRule {\n readonly destinationId: string;\n readonly recipients: DisclosureRecipientSetSnapshot;\n readonly principal: Readonly<Pick<\n DisclosurePrincipalSnapshot,\n 'role' | 'clearance' | 'allowedPurposes'\n >>;\n readonly source: Readonly<{\n proposedConfidentiality: Exclude<ConfidentialityClass, 'unknown'>;\n categories: readonly string[];\n allowedPurposes: readonly DisclosurePurpose[];\n allowedRegions: readonly string[];\n retentionClass: RetentionClass;\n minimumRetentionMs: number;\n maximumRetentionMs: number;\n requestedMode: 'full' | 'metadata_only';\n linkPrincipalAsSubject: boolean;\n }>;\n}\n\nexport interface WorkroomRemoteDisclosureRule {\n readonly recipients: DisclosureRecipientSetSnapshot;\n readonly principal: Readonly<Pick<DisclosurePrincipalSnapshot, 'role' | 'clearance' | 'allowedPurposes'>>;\n readonly requestedMode: 'full' | 'metadata_only';\n}\n\nexport interface WorkroomSinkDisclosureRule extends WorkroomRemoteDisclosureRule {\n readonly destinationId: string;\n readonly channel: 'context_view' | 'evidence_port' | 'workroom_projection' | 'sponsor_projection' | 'console' | 'model_provider' | 'a2a';\n readonly purpose: DisclosurePurpose;\n /** Trusted service sinks may pin identity instead of accepting caller identity. */\n readonly fixedPrincipalId?: string;\n}\n\nexport interface WorkroomDerivedPayloadRule {\n readonly proposedConfidentiality: Exclude<ConfidentialityClass, 'unknown'>;\n readonly categories: readonly string[];\n readonly allowedPurposes: readonly DisclosurePurpose[];\n readonly allowedRegions: readonly string[];\n readonly retentionClass: RetentionClass;\n readonly minimumRetentionMs: number;\n readonly maximumRetentionMs: number;\n}\n\nexport interface DataGovernanceAuthorityDecision {\n readonly decisionId: string;\n readonly projectId: string;\n readonly expectedPreviousDigest?: string;\n readonly candidateDigest: string;\n readonly principalId: string;\n readonly authorizedBy: 'data_steward' | 'sponsor';\n readonly decidedAt: number;\n /** Present on Catalog-mediated publications; historical authorities may predate this binding. */\n readonly catalogRevision?: string;\n readonly catalogBindingDigest?: string;\n}\n\nexport interface ProjectDataGovernanceAuthorityInput {\n readonly version: 1;\n readonly revision: number;\n readonly previousDigest?: string;\n readonly projectId: string;\n readonly tenantId: string;\n readonly categoryRegistry: DataCategoryRegistrySnapshot;\n readonly policy: DataGovernancePolicySnapshot;\n readonly planning: WorkroomPlanningDataRule;\n readonly remote: Readonly<Record<string, WorkroomRemoteDisclosureRule>>;\n readonly sinks: Readonly<Record<string, WorkroomSinkDisclosureRule>>;\n readonly derivedPayloads: Readonly<{\n evidence?: WorkroomDerivedPayloadRule;\n taskReport?: WorkroomDerivedPayloadRule;\n projection?: WorkroomDerivedPayloadRule;\n acceptanceProjection?: WorkroomDerivedPayloadRule;\n journal?: WorkroomDerivedPayloadRule;\n }>;\n readonly approvals: readonly DisclosureApprovalSnapshot[];\n readonly governanceDecision: DataGovernanceAuthorityDecision;\n}\n\nexport interface ProjectDataGovernanceAuthority extends ProjectDataGovernanceAuthorityInput {\n readonly digest: string;\n}\n\nexport function canonicalizeProjectDataGovernanceAuthorityCandidate(\n input: Omit<ProjectDataGovernanceAuthorityInput, 'governanceDecision'>,\n): Omit<ProjectDataGovernanceAuthorityInput, 'governanceDecision'> {\n return deepFreeze({\n ...structuredClone(input),\n planning: {\n ...structuredClone(input.planning),\n principal: {\n ...structuredClone(input.planning.principal),\n allowedPurposes: unique(input.planning.principal.allowedPurposes),\n },\n source: {\n ...structuredClone(input.planning.source),\n categories: unique(input.planning.source.categories),\n allowedPurposes: unique(input.planning.source.allowedPurposes),\n allowedRegions: unique(input.planning.source.allowedRegions),\n },\n },\n remote: Object.fromEntries(Object.entries(input.remote)\n .sort(([left], [right]) => compareCanonicalWorkroomText(left, right))\n .map(([destinationId, rule]) => [destinationId, {\n ...structuredClone(rule),\n principal: {\n ...structuredClone(rule.principal),\n allowedPurposes: unique(rule.principal.allowedPurposes),\n },\n }])),\n sinks: Object.fromEntries(Object.entries(input.sinks)\n .sort(([left], [right]) => compareCanonicalWorkroomText(left, right))\n .map(([ruleId, rule]) => [ruleId, {\n ...structuredClone(rule),\n principal: {\n ...structuredClone(rule.principal),\n allowedPurposes: unique(rule.principal.allowedPurposes),\n },\n }])),\n derivedPayloads: Object.fromEntries(Object.entries(input.derivedPayloads)\n .sort(([left], [right]) => compareCanonicalWorkroomText(left, right))\n .map(([kind, rule]) => [kind, {\n ...structuredClone(rule),\n categories: unique(rule.categories),\n allowedPurposes: unique(rule.allowedPurposes),\n allowedRegions: unique(rule.allowedRegions),\n }])),\n approvals: [...input.approvals]\n .sort((left, right) => compareCanonicalWorkroomText(left.id, right.id))\n .map(value => structuredClone(value)),\n });\n}\n\nexport function createProjectDataGovernanceAuthority(\n input: ProjectDataGovernanceAuthorityInput,\n): ProjectDataGovernanceAuthority {\n assertProjectAuthorityInput(input);\n const { governanceDecision, ...candidateInput } = structuredClone(input);\n const candidate = canonicalizeProjectDataGovernanceAuthorityCandidate(candidateInput);\n if (governanceDecision.candidateDigest !== digest(candidate)) {\n throw new Error('Data Governance decision does not bind the exact authority candidate');\n }\n const body = deepFreeze({\n ...candidate,\n governanceDecision: structuredClone(governanceDecision),\n });\n return deepFreeze({ ...body, digest: digest(body) });\n}\n\nexport interface GovernedSourceAuthorityInput {\n readonly version: 1;\n readonly projectId: string;\n readonly sourceRef: string;\n readonly sourceDigest: string;\n readonly sourceBindingDigest: string;\n readonly descriptor: DataDescriptor;\n readonly handle: PayloadVaultObjectHandle;\n readonly projectAuthorityRevision: number;\n readonly projectAuthorityDigest: string;\n}\n\nexport interface GovernedSourceAuthority extends GovernedSourceAuthorityInput {\n readonly digest: string;\n}\n\nexport function createGovernedSourceAuthority(\n input: GovernedSourceAuthorityInput,\n): GovernedSourceAuthority {\n requireText(input.projectId, 'source projectId');\n requireText(input.sourceRef, 'source ref');\n requireDigest(input.sourceDigest, 'source digest');\n requireDigest(input.sourceBindingDigest, 'source binding digest');\n requireDigest(input.projectAuthorityDigest, 'source Project authority digest');\n positive(input.projectAuthorityRevision, 'source Project authority revision');\n if (input.descriptor.projectId !== input.projectId\n || input.handle.projectId !== input.projectId\n || input.handle.objectId !== input.descriptor.objectId\n || input.handle.payloadHash !== input.descriptor.payloadHash\n || input.handle.descriptorDigest !== digest(input.descriptor)) {\n throw new Error('Governed source Descriptor/Vault binding is invalid');\n }\n const body = deepFreeze(structuredClone(input));\n return deepFreeze({ ...body, digest: digest(body) });\n}\n\nexport type DataGovernanceBlockerKind =\n | 'project_authority_unavailable'\n | 'payload_vault_key_unavailable'\n | 'source_classification_quarantined'\n | 'source_authority_conflict'\n | 'disclosure_denied'\n | 'disclosure_approval_required'\n | 'disclosure_manifest_stale'\n | 'disclosure_manifest_expired'\n | 'disclosure_recipient_revoked'\n | 'generation_retired';\n\nexport interface DataGovernanceBlockerInput {\n readonly version: 1;\n readonly generation: number;\n readonly operationId: string;\n readonly projectId: string;\n readonly kind: DataGovernanceBlockerKind;\n readonly authorityDigest?: string;\n readonly sourceBindingDigest?: string;\n readonly createdAt: number;\n}\n\nexport interface DataGovernanceBlocker extends DataGovernanceBlockerInput {\n readonly digest: string;\n}\n\nexport function createDataGovernanceBlocker(input: DataGovernanceBlockerInput): DataGovernanceBlocker {\n positive(input.generation, 'blocker generation');\n requireText(input.operationId, 'blocker operationId');\n requireText(input.projectId, 'blocker projectId');\n nonNegative(input.createdAt, 'blocker createdAt');\n if (input.authorityDigest !== undefined) requireDigest(input.authorityDigest, 'blocker authority digest');\n if (input.sourceBindingDigest !== undefined) {\n requireDigest(input.sourceBindingDigest, 'blocker source binding digest');\n }\n const body = deepFreeze(structuredClone(input));\n return deepFreeze({ ...body, digest: digest(body) });\n}\n\nexport interface DataGovernanceAuthorityRepository {\n readProject(projectId: string): Promise<ProjectDataGovernanceAuthority | undefined>;\n /** Resolves an immutable historical authority pinned by an older payload. */\n readProjectRevision?(\n projectId: string,\n revision: number,\n ): Promise<ProjectDataGovernanceAuthority | undefined>;\n appendProject(\n authority: ProjectDataGovernanceAuthority,\n expectedDigest: string | undefined,\n ): Promise<Readonly<{ status: 'created' | 'replayed'; authority: ProjectDataGovernanceAuthority }>>;\n readSource(projectId: string, sourceRef: string, sourceDigest: string): Promise<GovernedSourceAuthority | undefined>;\n appendSource(source: GovernedSourceAuthority): Promise<GovernedSourceAuthority>;\n recordBlocker(input: DataGovernanceBlockerInput): Promise<DataGovernanceBlocker>;\n listBlockers(projectId: string): Promise<readonly DataGovernanceBlocker[]>;\n}\n\n/** Trusted Root-only Data Steward/Sponsor decision verifier. */\nexport interface DataGovernanceAuthorityVerificationPort {\n verify(\n decision: DataGovernanceAuthorityDecision,\n candidateDigest: string,\n ): boolean | Promise<boolean>;\n}\n\nexport class DataGovernanceAuthorityConflictError extends Error {\n constructor(readonly projectId: string, readonly expected?: string, readonly actual?: string) {\n super(`Data Governance authority conflict for ${projectId}`);\n this.name = 'DataGovernanceAuthorityConflictError';\n }\n}\n\nexport class DataGovernanceAuthorityUnauthorizedError extends Error {\n constructor(readonly projectId: string, readonly decisionId: string) {\n super(`Data Governance authority decision ${decisionId} is not trusted for ${projectId}`);\n this.name = 'DataGovernanceAuthorityUnauthorizedError';\n }\n}\n\n/** Immutable flat-segment repository; its parent must pre-exist. */\nexport class FileDataGovernanceAuthorityRepository implements DataGovernanceAuthorityRepository {\n readonly #root: DurableFileStore;\n readonly #projects: DurableFileStore;\n readonly #sources: DurableFileStore;\n readonly #blockers: DurableFileStore;\n #ready?: Promise<void>;\n\n constructor(\n directory: string,\n readonly governance?: DataGovernanceAuthorityVerificationPort,\n ) {\n this.#root = new DurableFileStore(directory);\n this.#projects = new DurableFileStore(join(directory, 'projects'));\n this.#sources = new DurableFileStore(join(directory, 'sources'));\n this.#blockers = new DurableFileStore(join(directory, 'blockers'));\n }\n\n async readProject(projectId: string): Promise<ProjectDataGovernanceAuthority | undefined> {\n return (await this.#readProjects(projectId)).at(-1);\n }\n\n async readProjectRevision(\n projectId: string,\n revision: number,\n ): Promise<ProjectDataGovernanceAuthority | undefined> {\n positive(revision, 'Project authority revision');\n return (await this.#readProjects(projectId)).find(authority => authority.revision === revision);\n }\n\n async #readProjects(projectId: string): Promise<readonly ProjectDataGovernanceAuthority[]> {\n requireText(projectId, 'projectId');\n await this.#ensureReady();\n await this.#projects.syncLeaf();\n const prefix = `${idHash(projectId)}.`;\n const names = (await readdir(this.#projects.directory))\n .filter(name => name.startsWith(prefix) && name.endsWith('.json'))\n .sort();\n const history: ProjectDataGovernanceAuthority[] = [];\n let latest: ProjectDataGovernanceAuthority | undefined;\n for (const [index, name] of names.entries()) {\n const match = /^[a-f\\d]{64}\\.(\\d{12})\\.json$/u.exec(name);\n if (!match || Number(match[1]) !== index + 1) {\n throw new DataGovernanceAuthorityConflictError(projectId, latest?.digest);\n }\n const current = parseProjectAuthority(JSON.parse(await readFile(join(this.#projects.directory, name), 'utf8')));\n await this.#verify(current);\n if (current.projectId !== projectId || current.revision !== index + 1\n || current.previousDigest !== latest?.digest) {\n throw new DataGovernanceAuthorityConflictError(projectId, latest?.digest, current.previousDigest);\n }\n latest = current;\n history.push(current);\n }\n return history;\n }\n\n async appendProject(authority: ProjectDataGovernanceAuthority, expectedDigest: string | undefined) {\n await this.#ensureReady();\n const canonical = parseProjectAuthority(authority);\n await this.#verify(canonical);\n const current = await this.readProject(canonical.projectId);\n if (current?.digest !== expectedDigest) {\n if (current && current.digest === canonical.digest) {\n return Object.freeze({ status: 'replayed' as const, authority: current });\n }\n throw new DataGovernanceAuthorityConflictError(canonical.projectId, expectedDigest, current?.digest);\n }\n if (canonical.revision !== (current?.revision ?? 0) + 1\n || canonical.previousDigest !== current?.digest) {\n throw new DataGovernanceAuthorityConflictError(canonical.projectId, current?.digest, canonical.previousDigest);\n }\n const target = join(this.#projects.directory,\n `${idHash(canonical.projectId)}.${String(canonical.revision).padStart(12, '0')}.json`);\n const result = await this.#projects.publishCreateOnly({\n target,\n content: canonicalWorkroomJson(canonical),\n createdValue: canonical,\n onConflict: async () => {\n const winner = parseProjectAuthority(JSON.parse(await readFile(target, 'utf8')));\n if (winner.digest !== canonical.digest) {\n throw new DataGovernanceAuthorityConflictError(canonical.projectId, canonical.digest, winner.digest);\n }\n return winner;\n },\n });\n return Object.freeze({ status: result.status, authority: result.value });\n }\n\n async readSource(\n projectId: string,\n sourceRef: string,\n sourceDigest: string,\n ): Promise<GovernedSourceAuthority | undefined> {\n await this.#ensureReady();\n await this.#sources.syncLeaf();\n const target = this.#sourcePath(projectId, sourceRef, sourceDigest);\n try {\n return parseGovernedSource(JSON.parse(await readFile(target, 'utf8')));\n } catch (error) {\n if (hasCode(error, 'ENOENT')) return undefined;\n throw error;\n }\n }\n\n async appendSource(source: GovernedSourceAuthority): Promise<GovernedSourceAuthority> {\n await this.#ensureReady();\n const canonical = parseGovernedSource(source);\n const target = this.#sourcePath(canonical.projectId, canonical.sourceRef, canonical.sourceDigest);\n const result = await this.#sources.publishCreateOnly({\n target,\n content: canonicalWorkroomJson(canonical),\n createdValue: canonical,\n onConflict: async () => {\n const winner = parseGovernedSource(JSON.parse(await readFile(target, 'utf8')));\n if (winner.digest !== canonical.digest) {\n throw new DataGovernanceAuthorityConflictError(canonical.projectId, canonical.digest, winner.digest);\n }\n return winner;\n },\n });\n return result.value;\n }\n\n async recordBlocker(input: DataGovernanceBlockerInput): Promise<DataGovernanceBlocker> {\n await this.#ensureReady();\n const blocker = createDataGovernanceBlocker(input);\n const target = join(this.#blockers.directory,\n `${idHash(blocker.projectId)}.${blocker.digest.slice('sha256:'.length)}.json`);\n const result = await this.#blockers.publishCreateOnly({\n target,\n content: canonicalWorkroomJson(blocker),\n createdValue: blocker,\n onConflict: async () => parseBlocker(JSON.parse(await readFile(target, 'utf8'))),\n });\n if (result.value.digest !== blocker.digest) {\n throw new DataGovernanceAuthorityConflictError(blocker.projectId, blocker.digest, result.value.digest);\n }\n return result.value;\n }\n\n async listBlockers(projectId: string): Promise<readonly DataGovernanceBlocker[]> {\n await this.#ensureReady();\n await this.#blockers.syncLeaf();\n const prefix = `${idHash(projectId)}.`;\n const values: DataGovernanceBlocker[] = [];\n for (const name of (await readdir(this.#blockers.directory)).filter(value => value.startsWith(prefix)).sort()) {\n const blocker = parseBlocker(JSON.parse(await readFile(join(this.#blockers.directory, name), 'utf8')));\n if (blocker.projectId !== projectId) throw new DataGovernanceAuthorityConflictError(projectId);\n values.push(blocker);\n }\n return deepFreeze(values.sort((left, right) => left.createdAt - right.createdAt\n || compareCanonicalWorkroomText(left.digest, right.digest)));\n }\n\n #sourcePath(projectId: string, sourceRef: string, sourceDigest: string): string {\n requireText(projectId, 'source projectId');\n requireText(sourceRef, 'source ref');\n requireDigest(sourceDigest, 'source digest');\n return join(this.#sources.directory, `${idHash(`${projectId}\\0${sourceRef}\\0${sourceDigest}`)}.json`);\n }\n\n async #verify(authority: ProjectDataGovernanceAuthority): Promise<void> {\n if (!this.governance\n || !await this.governance.verify(\n authority.governanceDecision,\n authority.governanceDecision.candidateDigest,\n )) {\n throw new DataGovernanceAuthorityUnauthorizedError(\n authority.projectId,\n authority.governanceDecision.decisionId,\n );\n }\n }\n\n #ensureReady(): Promise<void> {\n this.#ready ??= (async () => {\n await this.#root.ensureDurableLeaf('Data Governance authority repository');\n await this.#projects.ensureDurableLeaf('Data Governance Project authority repository');\n await this.#sources.ensureDurableLeaf('Data Governance source authority repository');\n await this.#blockers.ensureDurableLeaf('Data Governance blocker repository');\n await this.#root.syncLeafAndParent();\n })();\n return this.#ready;\n }\n}\n\nfunction parseProjectAuthority(value: unknown): ProjectDataGovernanceAuthority {\n if (!value || typeof value !== 'object') throw new Error('Data Governance Project authority is malformed');\n const { digest: actualDigest, ...input } = value as ProjectDataGovernanceAuthority;\n const canonical = createProjectDataGovernanceAuthority(input);\n if (actualDigest !== canonical.digest || canonicalWorkroomJson(value) !== canonicalWorkroomJson(canonical)) {\n throw new Error('Data Governance Project authority digest mismatch');\n }\n return canonical;\n}\n\nfunction parseGovernedSource(value: unknown): GovernedSourceAuthority {\n if (!value || typeof value !== 'object') throw new Error('Governed source authority is malformed');\n const { digest: actualDigest, ...input } = value as GovernedSourceAuthority;\n const canonical = createGovernedSourceAuthority(input);\n if (actualDigest !== canonical.digest || canonicalWorkroomJson(value) !== canonicalWorkroomJson(canonical)) {\n throw new Error('Governed source authority digest mismatch');\n }\n return canonical;\n}\n\nfunction parseBlocker(value: unknown): DataGovernanceBlocker {\n if (!value || typeof value !== 'object') throw new Error('Data Governance blocker is malformed');\n const { digest: actualDigest, ...input } = value as DataGovernanceBlocker;\n const canonical = createDataGovernanceBlocker(input);\n if (actualDigest !== canonical.digest || canonicalWorkroomJson(value) !== canonicalWorkroomJson(canonical)) {\n throw new Error('Data Governance blocker digest mismatch');\n }\n return canonical;\n}\n\nfunction assertProjectAuthorityInput(input: ProjectDataGovernanceAuthorityInput): void {\n if (input.version !== 1) throw new Error('Data Governance Project authority version is invalid');\n positive(input.revision, 'Project authority revision');\n if (input.revision === 1 ? input.previousDigest !== undefined : input.previousDigest === undefined) {\n throw new Error('Data Governance Project authority chain is invalid');\n }\n if (input.previousDigest !== undefined) requireDigest(input.previousDigest, 'previous digest');\n requireText(input.projectId, 'projectId');\n requireText(input.tenantId, 'tenantId');\n assertDataCategoryRegistrySnapshot(input.categoryRegistry);\n assertDataGovernancePolicySnapshot(input.policy);\n if (input.categoryRegistry.tenantId !== input.tenantId\n || input.policy.tenantId !== input.tenantId\n || input.policy.projectId !== input.projectId) {\n throw new Error('Data Governance Project authority tenant/Project scope mismatch');\n }\n const destination = input.policy.destinations[input.planning.destinationId];\n if (!destination) throw new Error('Planning Processing Destination is absent from Data Governance Policy');\n assertDisclosureRecipientSetSnapshot(input.planning.recipients);\n if (destination.recipientSnapshotRevision !== input.planning.recipients.revision\n || destination.recipientSnapshotDigest !== input.planning.recipients.digest) {\n throw new Error('Planning recipient snapshot does not match Processing Destination');\n }\n for (const [destinationId, rule] of Object.entries(input.remote)) {\n const remoteDestination = input.policy.destinations[destinationId];\n if (!remoteDestination) throw new Error(`Remote Processing Destination ${destinationId} is absent from Policy`);\n assertDisclosureRecipientSetSnapshot(rule.recipients);\n if (remoteDestination.recipientSnapshotRevision !== rule.recipients.revision\n || remoteDestination.recipientSnapshotDigest !== rule.recipients.digest\n || !rule.principal.allowedPurposes.includes('remote_execution')) {\n throw new Error(`Remote disclosure rule ${destinationId} is outside its Destination authority`);\n }\n }\n for (const [ruleId, rule] of Object.entries(input.sinks)) {\n requireText(ruleId, 'sink rule id');\n const sinkDestination = input.policy.destinations[rule.destinationId];\n if (!sinkDestination || !rule.principal.allowedPurposes.includes(rule.purpose)) {\n throw new Error(`Disclosure sink rule ${ruleId} is outside its policy authority`);\n }\n assertDisclosureRecipientSetSnapshot(rule.recipients);\n if (sinkDestination.recipientSnapshotRevision !== rule.recipients.revision\n || sinkDestination.recipientSnapshotDigest !== rule.recipients.digest) {\n throw new Error(`Disclosure sink rule ${ruleId} recipient authority drift`);\n }\n if (rule.fixedPrincipalId !== undefined) requireText(rule.fixedPrincipalId, 'fixed sink principal');\n }\n for (const [kind, rule] of Object.entries(input.derivedPayloads)) {\n if (kind !== 'evidence' && kind !== 'taskReport' && kind !== 'projection'\n && kind !== 'acceptanceProjection' && kind !== 'journal') {\n throw new Error(`Unknown governed derived payload rule ${kind}`);\n }\n if (!['public', 'project_internal', 'confidential', 'restricted']\n .includes(rule.proposedConfidentiality)) {\n throw new Error(`Governed derived payload rule ${kind} confidentiality is invalid`);\n }\n if (!['transient', 'operational', 'project_record', 'regulated_record']\n .includes(rule.retentionClass)) {\n throw new Error(`Governed derived payload rule ${kind} retention class is invalid`);\n }\n unique(rule.categories);\n unique(rule.allowedPurposes);\n unique(rule.allowedRegions);\n nonNegative(rule.minimumRetentionMs, `${kind} minimum retention`);\n positive(rule.maximumRetentionMs, `${kind} maximum retention`);\n if (rule.maximumRetentionMs < rule.minimumRetentionMs) {\n throw new Error(`Governed derived payload rule ${kind} retention window is invalid`);\n }\n }\n if (!['orchestrator', 'executor', 'reviewer', 'sponsor', 'auditor', 'projector']\n .includes(input.planning.principal.role)) {\n throw new Error('Planning principal role is invalid');\n }\n unique(input.planning.principal.allowedPurposes);\n unique(input.planning.source.categories);\n unique(input.planning.source.allowedPurposes);\n unique(input.planning.source.allowedRegions);\n nonNegative(input.planning.source.minimumRetentionMs, 'minimum retention');\n positive(input.planning.source.maximumRetentionMs, 'maximum retention');\n if (input.planning.source.maximumRetentionMs < input.planning.source.minimumRetentionMs) {\n throw new Error('Planning source retention window is invalid');\n }\n for (const approval of input.approvals) {\n requireText(approval.id, 'approval id');\n requireDigest(approval.requestDigest, 'approval request digest');\n positive(approval.policyRevision, 'approval policy revision');\n nonNegative(approval.expiresAt, 'approval expiry');\n }\n const decision = input.governanceDecision;\n requireText(decision.decisionId, 'governance decision id');\n requireText(decision.principalId, 'governance decision principal');\n requireDigest(decision.candidateDigest, 'governance decision candidate digest');\n nonNegative(decision.decidedAt, 'governance decision timestamp');\n if ((decision.catalogRevision === undefined) !== (decision.catalogBindingDigest === undefined)) {\n throw new Error('Data Governance decision Catalog binding is incomplete');\n }\n if (decision.catalogRevision !== undefined) {\n requireText(decision.catalogRevision, 'governance decision Catalog revision');\n requireDigest(decision.catalogBindingDigest, 'governance decision Catalog binding digest');\n }\n if (decision.authorizedBy !== 'data_steward' && decision.authorizedBy !== 'sponsor') {\n throw new Error('Data Governance decision authority role is invalid');\n }\n if (decision.projectId !== input.projectId\n || decision.expectedPreviousDigest !== input.previousDigest) {\n throw new Error('Data Governance decision scope/chain binding mismatch');\n }\n}\n\nfunction unique<T extends string>(values: readonly T[]): readonly T[] {\n if (!Array.isArray(values) || values.some(value => typeof value !== 'string' || !value.trim())) {\n throw new Error('Data Governance authority contains invalid canonical names');\n }\n return Object.freeze([...new Set(values)].sort()) as readonly T[];\n}\n\nfunction idHash(value: string): string {\n return createHash('sha256').update(value).digest('hex');\n}\n\nfunction requireText(value: unknown, label: string): asserts value is string {\n if (typeof value !== 'string' || !value.trim() || value !== value.trim()) {\n throw new Error(`Data Governance ${label} is invalid`);\n }\n}\n\nfunction requireDigest(value: unknown, label: string): asserts value is string {\n if (typeof value !== 'string' || !/^sha256:[a-f\\d]{64}$/u.test(value)) {\n throw new Error(`Data Governance ${label} is invalid`);\n }\n}\n\nfunction positive(value: unknown, label: string): number {\n if (!Number.isSafeInteger(value) || Number(value) < 1) throw new Error(`Data Governance ${label} is invalid`);\n return Number(value);\n}\n\nfunction nonNegative(value: unknown, label: string): number {\n if (!Number.isSafeInteger(value) || Number(value) < 0) throw new Error(`Data Governance ${label} is invalid`);\n return Number(value);\n}\n\nfunction hasCode(error: unknown, code: string): boolean {\n return Boolean(error && typeof error === 'object' && 'code' in error\n && (error as { code?: unknown }).code === code);\n}\n"]}
@@ -123,4 +123,3 @@ export declare class GovernedPayloadPublicationReconciler {
123
123
  drainProject(projectId: string, signal: AbortSignal): Promise<readonly GovernedPayloadWriteSagaSnapshot[]>;
124
124
  }
125
125
  export declare function createGovernedPayloadWriteIntentId(input: GovernedPayloadWriteIntentInput): string;
126
- //# sourceMappingURL=governed-payload-write-saga.d.ts.map