@zhin.js/workroom 0.0.4 → 0.0.6

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 +8 -8
  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":"profile-registry.js","sourceRoot":"","sources":["../../src/workroom/profile-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profile-registry.js","sourceRoot":"","sources":["../../src/workroom/profile-registry.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n canonicalWorkroomJson as stableJson,\n deepFreezeWorkroomValue as deepFreeze,\n digestCanonicalWorkroomValue as digest,\n} from './canonical-value.js';\nimport type { CapabilityPackRef, CompiledWorkroomProfile } from './profile-compiler.js';\n\nexport type ProfileRevisionSourceKind =\n | 'acceptance_record'\n | 'accepted_task_memory'\n | 'sponsor_decision'\n | 'trusted_pack_publication';\n\nexport interface ProfileRevisionSource {\n readonly kind: ProfileRevisionSourceKind;\n readonly sourceId: string;\n}\n\nexport type ProjectProfileGovernanceOperation = 'register_revision' | 'register_rollback';\n\nexport interface ProfileCompositionCapabilityRef {\n readonly id: string;\n readonly digest: string;\n readonly semanticDigest: string;\n}\n\nexport interface ProjectProfileGovernanceComposition {\n readonly revisionId: string;\n readonly charterRevisionId: string;\n readonly compiledDigest: string;\n readonly overlayDigest: string;\n readonly packs: readonly CapabilityPackRef[];\n readonly tools: readonly ProfileCompositionCapabilityRef[];\n readonly skills: readonly ProfileCompositionCapabilityRef[];\n readonly agents: readonly ProfileCompositionCapabilityRef[];\n readonly workflows: readonly ProfileCompositionCapabilityRef[];\n readonly memories: readonly ProfileCompositionCapabilityRef[];\n readonly glossaries: readonly ProfileCompositionCapabilityRef[];\n readonly acceptancePolicies: readonly ProfileCompositionCapabilityRef[];\n}\n\nexport interface ProfileSemanticCapabilityDiff {\n readonly added: readonly string[];\n readonly removed: readonly string[];\n readonly changed: readonly string[];\n readonly authorityExpansion: boolean;\n}\n\nexport interface ProjectProfileSemanticDiff {\n readonly bootstrap: boolean;\n readonly charter: Readonly<{\n changed: boolean;\n authorityExpansion: boolean;\n }>;\n readonly tool: ProfileSemanticCapabilityDiff;\n readonly skill: ProfileSemanticCapabilityDiff;\n readonly agent: ProfileSemanticCapabilityDiff;\n readonly workflow: ProfileSemanticCapabilityDiff;\n readonly memory: ProfileSemanticCapabilityDiff;\n readonly glossary: ProfileSemanticCapabilityDiff;\n readonly acceptancePolicy: ProfileSemanticCapabilityDiff;\n /** Pack kind is absent from compiler output, so any Pack add/change is conservatively policy expansion. */\n readonly policy: ProfileSemanticCapabilityDiff;\n readonly overlay: Readonly<{\n changed: boolean;\n authorityExpansion: boolean;\n }>;\n readonly authorityExpansion: boolean;\n}\n\nexport interface ProjectProfileGovernanceAuthorizationInput {\n readonly operation: ProjectProfileGovernanceOperation;\n readonly projectId: string;\n readonly expectedRegistryRevision: number;\n readonly revisionId: string;\n readonly compiledDigest: string;\n readonly overlayDigest: string;\n readonly source: ProfileRevisionSource;\n readonly currentActive?: ProjectProfileGovernanceComposition;\n readonly semanticDiff: ProjectProfileSemanticDiff;\n readonly parentRevisionId?: string;\n readonly restoredFromRevisionId?: string;\n}\n\nexport interface ProfileGovernanceDecision extends ProjectProfileGovernanceAuthorizationInput {\n readonly approved: true;\n readonly decisionId: string;\n readonly route: 'policy' | 'sponsor';\n readonly outcome: 'approved';\n readonly decidedBy: string;\n}\n\nexport type ProjectProfileGovernanceAuthorizationDecision =\n | ProfileGovernanceDecision\n | Readonly<{ approved: false; reason: string }>;\n\nexport interface ProjectProfileGovernancePort {\n authorize(\n input: ProjectProfileGovernanceAuthorizationInput,\n ): Promise<ProjectProfileGovernanceAuthorizationDecision>;\n}\n\n/** Immutable Project-local record of one compiler output and its authority. */\nexport interface ProjectProfileRevision {\n readonly revisionId: string;\n readonly projectId: string;\n readonly charterRevisionId: string;\n readonly packRefs: readonly CapabilityPackRef[];\n readonly overlayDigest: string;\n readonly compiledDigest: string;\n readonly compiledProfile: CompiledWorkroomProfile;\n readonly parentRevisionId?: string;\n readonly restoredFromRevisionId?: string;\n readonly source: ProfileRevisionSource;\n readonly governanceDecision: ProfileGovernanceDecision;\n}\n\nexport type ProjectProfileRevisionCandidate = Omit<ProjectProfileRevision, 'governanceDecision'>;\n\nexport interface ActiveProjectProfile {\n readonly revisionId: string;\n readonly compiledDigest: string;\n readonly activatedAtRegistryRevision: number;\n}\n\nexport interface WorkroomRunProfilePin {\n readonly projectId: string;\n readonly runId: string;\n readonly profileRevisionId: string;\n readonly profileDigest: string;\n readonly activationRegistryRevision: number;\n readonly pinnedAtRegistryRevision: number;\n}\n\nexport interface ProjectProfileRegistrySnapshot {\n readonly projectId: string;\n readonly registryRevision: number;\n readonly revisions: Readonly<Record<string, ProjectProfileRevision>>;\n readonly active?: ActiveProjectProfile;\n readonly runPins: Readonly<Record<string, WorkroomRunProfilePin>>;\n}\n\nexport class ProfileRegistrySequenceConflictError extends Error {\n constructor(\n readonly projectId: string,\n readonly expectedRevision: number,\n readonly actualRevision: number,\n ) {\n super(`Project Profile Registry ${projectId} revision conflict: expected ${expectedRevision}, actual ${actualRevision}`);\n this.name = 'ProfileRegistrySequenceConflictError';\n }\n}\n\nexport type ProjectProfileEvent = Readonly<{\n version: 1;\n projectId: string;\n sequence: number;\n} & (\n | { type: 'profile.revision_registered'; payload: { revision: ProjectProfileRevision } }\n | { type: 'profile.revision_activated'; payload: ActiveProjectProfile }\n | { type: 'run.profile_pinned'; payload: WorkroomRunProfilePin }\n)>;\n\nexport type ProjectProfileEventDraft =\n | { readonly type: 'profile.revision_registered'; readonly payload: { readonly revision: ProjectProfileRevision } }\n | { readonly type: 'profile.revision_activated'; readonly payload: ActiveProjectProfile }\n | { readonly type: 'run.profile_pinned'; readonly payload: WorkroomRunProfilePin };\n\nexport interface ProjectProfileJournal {\n read(projectId: string): Promise<readonly ProjectProfileEvent[]>;\n append(\n projectId: string,\n expectedRevision: number,\n drafts: readonly ProjectProfileEventDraft[],\n ): Promise<readonly ProjectProfileEvent[]>;\n}\n\n/** Contract fixture only. Production durability belongs in a journal adapter. */\nexport class MemoryProjectProfileJournal implements ProjectProfileJournal {\n readonly #projects = new Map<string, readonly ProjectProfileEvent[]>();\n\n async read(projectId: string): Promise<readonly ProjectProfileEvent[]> {\n return this.#projects.get(projectId) ?? [];\n }\n\n async append(\n projectId: string,\n expectedRevision: number,\n drafts: readonly ProjectProfileEventDraft[],\n ): Promise<readonly ProjectProfileEvent[]> {\n const current = this.#projects.get(projectId) ?? [];\n const actualRevision = current.at(-1)?.sequence ?? -1;\n if (actualRevision !== expectedRevision) {\n throw new ProfileRegistrySequenceConflictError(projectId, expectedRevision, actualRevision);\n }\n const events = drafts.map<ProjectProfileEvent>((draft, index) => deepFreeze({\n ...copyDraft(draft),\n version: 1 as const,\n projectId,\n sequence: expectedRevision + index + 1,\n } as ProjectProfileEvent));\n this.#projects.set(projectId, deepFreeze([...current, ...events]));\n return deepFreeze(events);\n }\n}\n\nexport interface RegisterProjectProfileRevisionInput {\n readonly projectId: string;\n readonly expectedRegistryRevision: number;\n readonly revision: ProjectProfileRevisionCandidate;\n}\n\nexport interface ActivateProjectProfileRevisionInput {\n readonly projectId: string;\n readonly expectedRegistryRevision: number;\n readonly revisionId: string;\n readonly compiledDigest: string;\n}\n\nexport interface RegisterProjectProfileRollbackInput extends RegisterProjectProfileRevisionInput {\n readonly restoredFromRevisionId: string;\n}\n\nexport interface PinWorkroomRunProfileInput {\n readonly projectId: string;\n readonly runId: string;\n readonly expectedRegistryRevision: number;\n}\n\n/** Project-scoped authority for immutable Profile history, activation, and Run pins. */\nexport class ProjectProfileRegistry {\n readonly #journal: ProjectProfileJournal;\n readonly #governance?: ProjectProfileGovernancePort;\n\n constructor(journal: ProjectProfileJournal, governance?: ProjectProfileGovernancePort) {\n this.#journal = journal;\n this.#governance = governance;\n }\n\n async read(projectId: string): Promise<ProjectProfileRegistrySnapshot> {\n assertId(projectId, 'projectId');\n return replayProjectProfileJournal(projectId, await this.#journal.read(projectId));\n }\n\n async registerRevision(input: RegisterProjectProfileRevisionInput): Promise<ProjectProfileRegistrySnapshot> {\n return this.#register(input, false);\n }\n\n async registerRollback(input: RegisterProjectProfileRollbackInput): Promise<ProjectProfileRegistrySnapshot> {\n const projectId = input.projectId;\n const expectedRegistryRevision = input.expectedRegistryRevision;\n const restoredFromRevisionId = input.restoredFromRevisionId;\n const candidate = copyRevisionCandidate(input.revision);\n assertInputPosition(projectId, expectedRegistryRevision);\n assertRevisionCandidate(candidate, projectId);\n const state = await this.read(projectId);\n const active = state.active;\n if (!active) throw new Error('Profile rollback requires an active Profile Revision');\n const restored = state.revisions[restoredFromRevisionId];\n if (!restored) throw new Error(`Restored Profile Revision ${restoredFromRevisionId} not found`);\n if (candidate.revisionId === restoredFromRevisionId) {\n throw new Error('Profile rollback must create a new Profile Revision identity');\n }\n if (candidate.parentRevisionId !== active.revisionId) {\n throw new Error(`Profile rollback parent must be active Revision ${active.revisionId}`);\n }\n if (candidate.restoredFromRevisionId !== restoredFromRevisionId) {\n throw new Error('Profile rollback restoredFromRevisionId binding mismatch');\n }\n if (candidate.overlayDigest !== restored.overlayDigest\n || profileComposition(candidate.compiledProfile) !== profileComposition(restored.compiledProfile)) {\n throw new Error(`Profile rollback ${candidate.revisionId} does not restore Revision ${restoredFromRevisionId}`);\n }\n return this.#register({ projectId, expectedRegistryRevision, revision: candidate }, true);\n }\n\n async activateRevision(input: ActivateProjectProfileRevisionInput): Promise<ProjectProfileRegistrySnapshot> {\n const { projectId, expectedRegistryRevision, revisionId, compiledDigest } = input;\n assertInputPosition(projectId, expectedRegistryRevision);\n assertId(revisionId, 'revisionId');\n assertDigest(compiledDigest, 'compiledDigest');\n const state = await this.read(projectId);\n const revision = state.revisions[revisionId];\n if (!revision) throw new Error(`Profile Revision ${revisionId} not found`);\n if (revision.compiledDigest !== compiledDigest) {\n throw new Error(`Profile Revision ${revisionId} compiled digest mismatch`);\n }\n if (state.active?.revisionId === revisionId) {\n if (state.active.compiledDigest !== compiledDigest) {\n throw new Error(`Active Profile Revision ${revisionId} digest drift`);\n }\n return state;\n }\n const previouslyActivated = (await this.#journal.read(projectId)).some(event =>\n event.type === 'profile.revision_activated' && event.payload.revisionId === revisionId);\n if (previouslyActivated) {\n throw new Error(`Profile Revision ${revisionId} was already active; create a rollback Revision`);\n }\n if (state.active && revision.parentRevisionId !== state.active.revisionId) {\n throw new Error(`Profile Revision ${revisionId} is stale; expected parent ${state.active.revisionId}`);\n }\n const activatedAtRegistryRevision = state.registryRevision + 1;\n await this.#journal.append(projectId, expectedRegistryRevision, [{\n type: 'profile.revision_activated',\n payload: {\n revisionId: revision.revisionId,\n compiledDigest: revision.compiledDigest,\n activatedAtRegistryRevision,\n },\n }]);\n return this.read(projectId);\n }\n\n async pinRun(input: PinWorkroomRunProfileInput): Promise<WorkroomRunProfilePin> {\n const { projectId, runId, expectedRegistryRevision } = input;\n assertInputPosition(projectId, expectedRegistryRevision);\n assertId(runId, 'runId');\n const state = await this.read(projectId);\n const existing = state.runPins[runId];\n if (existing) return existing;\n if (!state.active) throw new Error('Cannot pin a Run without an active Profile Revision');\n const pin = deepFreeze({\n projectId,\n runId,\n profileRevisionId: state.active.revisionId,\n profileDigest: state.active.compiledDigest,\n activationRegistryRevision: state.active.activatedAtRegistryRevision,\n pinnedAtRegistryRevision: state.registryRevision + 1,\n });\n await this.#journal.append(projectId, expectedRegistryRevision, [{\n type: 'run.profile_pinned',\n payload: pin,\n }]);\n const pinned = (await this.read(projectId)).runPins[runId];\n if (!pinned) throw new Error(`Workroom Run ${runId} Profile pin was not persisted`);\n return pinned;\n }\n\n async #register(\n input: RegisterProjectProfileRevisionInput,\n rollback: boolean,\n ): Promise<ProjectProfileRegistrySnapshot> {\n const candidate = copyRevisionCandidate(input.revision);\n const projectId = input.projectId;\n const expectedRegistryRevision = input.expectedRegistryRevision;\n assertInputPosition(projectId, expectedRegistryRevision);\n assertRevisionCandidate(candidate, projectId);\n const state = await this.read(projectId);\n const existing = state.revisions[candidate.revisionId];\n if (existing) {\n if (stableJson(copyRevisionCandidate(existing)) !== stableJson(candidate)) {\n throw new Error(`Profile Revision ${candidate.revisionId} identity payload drift`);\n }\n return state;\n }\n if (Boolean(candidate.restoredFromRevisionId) !== rollback) {\n throw new Error(rollback\n ? 'Profile rollback must bind restoredFromRevisionId'\n : 'restoredFromRevisionId is only valid through registerRollback');\n }\n const revisionIds = Object.keys(state.revisions);\n if (revisionIds.length === 0 && candidate.parentRevisionId) {\n throw new Error('Initial Profile Revision cannot have a parent');\n }\n if (revisionIds.length > 0) {\n if (!candidate.parentRevisionId) throw new Error('Profile Revision parentRevisionId is required');\n if (!state.revisions[candidate.parentRevisionId]) {\n throw new Error(`Parent Profile Revision ${candidate.parentRevisionId} not found`);\n }\n }\n const governanceDecision = await this.#authorize(\n candidate,\n rollback ? 'register_rollback' : 'register_revision',\n expectedRegistryRevision,\n state.active ? state.revisions[state.active.revisionId] : undefined,\n );\n const revision = deepFreeze({ ...candidate, governanceDecision });\n await this.#journal.append(projectId, expectedRegistryRevision, [{\n type: 'profile.revision_registered',\n payload: { revision },\n }]);\n return this.read(projectId);\n }\n\n async #authorize(\n candidate: ProjectProfileRevisionCandidate,\n operation: ProjectProfileGovernanceOperation,\n expectedRegistryRevision: number,\n currentActive: ProjectProfileRevision | undefined,\n ): Promise<ProfileGovernanceDecision> {\n const governance = this.#governance;\n if (!governance) throw new Error('Project Profile Governance Port is not installed');\n const input = createProjectProfileGovernanceAuthorizationInput(\n candidate,\n operation,\n expectedRegistryRevision,\n currentActive,\n );\n const decision = await governance.authorize(input);\n if (!decision.approved) {\n throw new Error(`Profile governance denied: ${decision.reason}`);\n }\n const canonicalDecision = copyGovernanceDecision(decision);\n assertGovernanceDecision(canonicalDecision, input);\n assertGovernanceFloor(canonicalDecision);\n return canonicalDecision;\n }\n}\n\nexport function createProjectProfileGovernanceAuthorizationInput(\n candidate: ProjectProfileRevisionCandidate,\n operation: ProjectProfileGovernanceOperation,\n expectedRegistryRevision: number,\n currentActive: ProjectProfileRevision | undefined,\n): ProjectProfileGovernanceAuthorizationInput {\n const activeComposition = currentActive ? profileGovernanceComposition(currentActive) : undefined;\n const candidateComposition = profileGovernanceComposition(candidate);\n const tool = semanticCapabilityDiff(activeComposition?.tools ?? [], candidateComposition.tools);\n const skill = semanticCapabilityDiff(activeComposition?.skills ?? [], candidateComposition.skills);\n const agent = semanticCapabilityDiff(activeComposition?.agents ?? [], candidateComposition.agents);\n const workflowChanges = semanticCapabilityDiff(\n activeComposition?.workflows ?? [],\n candidateComposition.workflows,\n );\n const workflow = deepFreeze({\n ...workflowChanges,\n // Removing a required safety/review step can widen effective authority.\n authorityExpansion: workflowChanges.added.length > 0\n || workflowChanges.removed.length > 0\n || workflowChanges.changed.length > 0,\n });\n const memoryChanges = semanticCapabilityDiff(\n activeComposition?.memories ?? [],\n candidateComposition.memories,\n );\n const memory = deepFreeze({\n ...memoryChanges,\n authorityExpansion: memoryChanges.added.length > 0\n || memoryChanges.removed.length > 0\n || memoryChanges.changed.length > 0,\n });\n const glossaryChanges = semanticCapabilityDiff(\n activeComposition?.glossaries ?? [],\n candidateComposition.glossaries,\n );\n const glossary = deepFreeze({\n ...glossaryChanges,\n authorityExpansion: glossaryChanges.added.length > 0\n || glossaryChanges.removed.length > 0\n || glossaryChanges.changed.length > 0,\n });\n const acceptancePolicyChanges = semanticCapabilityDiff(\n activeComposition?.acceptancePolicies ?? [],\n candidateComposition.acceptancePolicies,\n );\n const acceptancePolicy = deepFreeze({\n ...acceptancePolicyChanges,\n // Adding, changing or removing criteria/Memory rules can all relax a\n // previous acceptance floor, so the diff is conservatively privileged.\n authorityExpansion: acceptancePolicyChanges.added.length > 0\n || acceptancePolicyChanges.removed.length > 0\n || acceptancePolicyChanges.changed.length > 0,\n });\n const policyChanges = semanticCapabilityDiff(\n (activeComposition?.packs ?? []).map(packSemanticRef),\n candidateComposition.packs.map(packSemanticRef),\n );\n const policy = deepFreeze({\n ...policyChanges,\n // Pack kind/policy polarity is unavailable after compilation. Removal may\n // relax a deny floor, so every Pack change is an expansion until a richer\n // compiler projection can prove otherwise.\n authorityExpansion: policyChanges.added.length > 0\n || policyChanges.removed.length > 0\n || policyChanges.changed.length > 0,\n });\n const overlayChanged = activeComposition?.overlayDigest !== candidate.overlayDigest;\n const charterChanged = activeComposition?.charterRevisionId !== candidate.charterRevisionId;\n const bootstrap = !activeComposition;\n const semanticDiff = deepFreeze({\n bootstrap,\n charter: {\n changed: charterChanged,\n authorityExpansion: charterChanged,\n },\n tool,\n skill,\n agent,\n workflow,\n memory,\n glossary,\n acceptancePolicy,\n policy,\n overlay: {\n changed: overlayChanged,\n authorityExpansion: overlayChanged,\n },\n authorityExpansion: bootstrap\n || charterChanged\n || tool.authorityExpansion\n || skill.authorityExpansion\n || agent.authorityExpansion\n || workflow.authorityExpansion\n || memory.authorityExpansion\n || glossary.authorityExpansion\n || acceptancePolicy.authorityExpansion\n || policy.authorityExpansion\n || overlayChanged,\n });\n return deepFreeze({\n operation,\n projectId: candidate.projectId,\n expectedRegistryRevision,\n revisionId: candidate.revisionId,\n compiledDigest: candidate.compiledDigest,\n overlayDigest: candidate.overlayDigest,\n source: { ...candidate.source },\n ...(activeComposition ? { currentActive: activeComposition } : {}),\n semanticDiff,\n ...(candidate.parentRevisionId ? { parentRevisionId: candidate.parentRevisionId } : {}),\n ...(candidate.restoredFromRevisionId\n ? { restoredFromRevisionId: candidate.restoredFromRevisionId }\n : {}),\n });\n}\n\nexport function replayProjectProfileJournal(\n projectId: string,\n events: readonly ProjectProfileEvent[],\n): ProjectProfileRegistrySnapshot {\n assertId(projectId, 'projectId');\n const revisions: Record<string, ProjectProfileRevision> = {};\n const runPins: Record<string, WorkroomRunProfilePin> = {};\n const activatedRevisionIds = new Set<string>();\n let active: ActiveProjectProfile | undefined;\n let expectedSequence = 0;\n for (const event of events) {\n if (event.version !== 1 || event.projectId !== projectId || event.sequence !== expectedSequence) {\n throw new Error('Invalid Project Profile Journal event position');\n }\n if (event.type === 'profile.revision_registered') {\n const revision = copyRevision(event.payload.revision);\n const currentActive = active ? revisions[active.revisionId] : undefined;\n assertRevision(revision, projectId, event.sequence - 1, currentActive);\n const existing = revisions[revision.revisionId];\n if (existing && stableJson(existing) !== stableJson(revision)) {\n throw new Error(`Profile Revision ${revision.revisionId} identity payload drift`);\n }\n if (existing) throw new Error(`Duplicate Profile Revision ${revision.revisionId}`);\n const revisionCount = Object.keys(revisions).length;\n if (revisionCount === 0 && revision.parentRevisionId) {\n throw new Error('Initial Profile Revision cannot have a parent');\n }\n if (revisionCount > 0 && !revision.parentRevisionId) {\n throw new Error('Profile Revision parentRevisionId is required');\n }\n if (revision.parentRevisionId && !revisions[revision.parentRevisionId]) {\n throw new Error(`Parent Profile Revision ${revision.parentRevisionId} not found`);\n }\n if (revision.restoredFromRevisionId) {\n const restored = revisions[revision.restoredFromRevisionId];\n if (!restored) {\n throw new Error(`Restored Profile Revision ${revision.restoredFromRevisionId} not found`);\n }\n if (revision.revisionId === revision.restoredFromRevisionId) {\n throw new Error('Profile rollback must create a new Profile Revision identity');\n }\n if (!active || revision.parentRevisionId !== active.revisionId) {\n throw new Error('Profile rollback parent must be the active Profile Revision');\n }\n if (revision.overlayDigest !== restored.overlayDigest\n || profileComposition(revision.compiledProfile) !== profileComposition(restored.compiledProfile)) {\n throw new Error(`Profile rollback ${revision.revisionId} does not restore Revision ${revision.restoredFromRevisionId}`);\n }\n }\n revisions[revision.revisionId] = revision;\n } else if (event.type === 'profile.revision_activated') {\n const revision = revisions[event.payload.revisionId];\n if (!revision || revision.compiledDigest !== event.payload.compiledDigest\n || event.payload.activatedAtRegistryRevision !== event.sequence) {\n throw new Error('Invalid active Profile Revision binding');\n }\n if (active && revision.parentRevisionId !== active.revisionId) {\n throw new Error('Active Profile Revision does not descend from the current Revision');\n }\n if (activatedRevisionIds.has(revision.revisionId)) {\n throw new Error(`Profile Revision ${revision.revisionId} was activated more than once`);\n }\n assertGovernanceFloor(revision.governanceDecision);\n active = copyActive(event.payload);\n activatedRevisionIds.add(revision.revisionId);\n } else {\n const pin = copyPin(event.payload);\n if (!active || pin.projectId !== projectId || pin.profileRevisionId !== active.revisionId\n || pin.profileDigest !== active.compiledDigest\n || pin.activationRegistryRevision !== active.activatedAtRegistryRevision\n || pin.pinnedAtRegistryRevision !== event.sequence) {\n throw new Error('Invalid Workroom Run Profile pin binding');\n }\n const existing = runPins[pin.runId];\n if (existing && stableJson(existing) !== stableJson(pin)) {\n throw new Error(`Workroom Run ${pin.runId} Profile pin drift`);\n }\n if (existing) throw new Error(`Duplicate Workroom Run Profile pin ${pin.runId}`);\n runPins[pin.runId] = pin;\n }\n expectedSequence += 1;\n }\n return deepFreeze({\n projectId,\n registryRevision: events.at(-1)?.sequence ?? -1,\n revisions,\n active,\n runPins,\n });\n}\n\nfunction assertRevision(\n revision: ProjectProfileRevision,\n projectId: string,\n expectedRegistryRevision: number,\n currentActive: ProjectProfileRevision | undefined,\n): void {\n assertRevisionCandidate(revision, projectId);\n const expected = createProjectProfileGovernanceAuthorizationInput(\n revision,\n revision.restoredFromRevisionId ? 'register_rollback' : 'register_revision',\n expectedRegistryRevision,\n currentActive,\n );\n assertGovernanceDecision(revision.governanceDecision, expected);\n assertGovernanceFloor(revision.governanceDecision);\n}\n\nfunction assertRevisionCandidate(\n revision: ProjectProfileRevisionCandidate,\n projectId: string,\n): void {\n assertId(revision.revisionId, 'revisionId');\n if (revision.projectId !== projectId || revision.compiledProfile.projectId !== projectId) {\n throw new Error('Profile Revision Project binding mismatch');\n }\n assertId(revision.charterRevisionId, 'charterRevisionId');\n assertDigest(revision.overlayDigest, 'overlayDigest');\n assertDigest(revision.compiledDigest, 'compiledDigest');\n if (revision.charterRevisionId !== revision.compiledProfile.charterRevisionId\n || revision.revisionId !== revision.compiledProfile.revisionId\n || revision.compiledDigest !== revision.compiledProfile.digest\n || stableJson(revision.packRefs) !== stableJson(revision.compiledProfile.packRefs)) {\n throw new Error('Profile Revision compiler output binding mismatch');\n }\n const { digest: _digest, ...projection } = revision.compiledProfile;\n if (digest(projection) !== revision.compiledDigest) {\n throw new Error('Profile Revision compiled digest is invalid');\n }\n if (!['acceptance_record', 'accepted_task_memory', 'sponsor_decision', 'trusted_pack_publication']\n .includes(revision.source.kind)) {\n throw new Error('Invalid Profile Revision source kind');\n }\n assertId(revision.source.sourceId, 'sourceId');\n if (revision.parentRevisionId) assertId(revision.parentRevisionId, 'parentRevisionId');\n if (revision.restoredFromRevisionId) assertId(revision.restoredFromRevisionId, 'restoredFromRevisionId');\n}\n\nfunction assertGovernanceDecision(\n decision: ProfileGovernanceDecision,\n expected: ProjectProfileGovernanceAuthorizationInput,\n): void {\n assertId(decision.decisionId, 'governance decisionId');\n assertId(decision.decidedBy, 'governance decidedBy');\n if (decision.approved !== true\n || decision.outcome !== 'approved'\n || !['policy', 'sponsor'].includes(decision.route)\n || decision.operation !== expected.operation\n || decision.projectId !== expected.projectId\n || decision.expectedRegistryRevision !== expected.expectedRegistryRevision\n || decision.revisionId !== expected.revisionId\n || decision.compiledDigest !== expected.compiledDigest\n || decision.overlayDigest !== expected.overlayDigest\n || stableJson(decision.source) !== stableJson(expected.source)\n || stableJson(decision.currentActive) !== stableJson(expected.currentActive)\n || stableJson(decision.semanticDiff) !== stableJson(expected.semanticDiff)\n || decision.parentRevisionId !== expected.parentRevisionId\n || decision.restoredFromRevisionId !== expected.restoredFromRevisionId) {\n throw new Error('Profile governance decision scope mismatch');\n }\n}\n\nfunction assertGovernanceFloor(decision: ProfileGovernanceDecision): void {\n if ((decision.semanticDiff.bootstrap || decision.semanticDiff.authorityExpansion)\n && decision.route !== 'sponsor') {\n throw new Error('Sponsor governance is required for Profile bootstrap or authority expansion');\n }\n}\n\nfunction assertInputPosition(projectId: string, expectedRevision: number): void {\n assertId(projectId, 'projectId');\n if (!Number.isSafeInteger(expectedRevision) || expectedRevision < -1) {\n throw new Error('Invalid Project Profile Registry expected revision');\n }\n}\n\nfunction assertId(value: string, name: string): void {\n if (typeof value !== 'string' || !value.trim() || value !== value.trim()) {\n throw new Error(`Invalid Profile ${name}`);\n }\n}\n\nfunction assertDigest(value: string, name: string): void {\n assertId(value, name);\n if (!value.startsWith('sha256:')) throw new Error(`Invalid Profile ${name}`);\n}\n\nfunction copyRevision(value: ProjectProfileRevision): ProjectProfileRevision {\n return deepFreeze({\n ...copyRevisionCandidate(value),\n governanceDecision: copyGovernanceDecision(value.governanceDecision),\n });\n}\n\nfunction copyRevisionCandidate(\n value: ProjectProfileRevisionCandidate,\n): ProjectProfileRevisionCandidate {\n return deepFreeze({\n revisionId: value.revisionId,\n projectId: value.projectId,\n charterRevisionId: value.charterRevisionId,\n packRefs: value.packRefs.map(copyPackRef),\n overlayDigest: value.overlayDigest,\n compiledDigest: value.compiledDigest,\n compiledProfile: copyCompiledProfile(value.compiledProfile),\n ...(value.parentRevisionId ? { parentRevisionId: value.parentRevisionId } : {}),\n ...(value.restoredFromRevisionId ? { restoredFromRevisionId: value.restoredFromRevisionId } : {}),\n source: { kind: value.source.kind, sourceId: value.source.sourceId },\n });\n}\n\nfunction copyGovernanceDecision(value: ProfileGovernanceDecision): ProfileGovernanceDecision {\n return deepFreeze({\n approved: true,\n operation: value.operation,\n projectId: value.projectId,\n expectedRegistryRevision: value.expectedRegistryRevision,\n revisionId: value.revisionId,\n compiledDigest: value.compiledDigest,\n overlayDigest: value.overlayDigest,\n source: { kind: value.source.kind, sourceId: value.source.sourceId },\n ...(value.currentActive ? { currentActive: copyGovernanceComposition(value.currentActive) } : {}),\n semanticDiff: copySemanticDiff(value.semanticDiff),\n ...(value.parentRevisionId ? { parentRevisionId: value.parentRevisionId } : {}),\n ...(value.restoredFromRevisionId ? { restoredFromRevisionId: value.restoredFromRevisionId } : {}),\n decisionId: value.decisionId,\n route: value.route,\n outcome: 'approved',\n decidedBy: value.decidedBy,\n });\n}\n\nfunction profileGovernanceComposition(\n value: ProjectProfileRevisionCandidate,\n): ProjectProfileGovernanceComposition {\n return deepFreeze({\n revisionId: value.revisionId,\n charterRevisionId: value.charterRevisionId,\n compiledDigest: value.compiledDigest,\n overlayDigest: value.overlayDigest,\n packs: value.packRefs.map(copyPackRef),\n tools: value.compiledProfile.tools.map(semanticCompositionRef),\n skills: value.compiledProfile.skills.map(semanticCompositionRef),\n agents: value.compiledProfile.agents.map(semanticCompositionRef),\n workflows: value.compiledProfile.workflows.map(semanticCompositionRef),\n memories: value.compiledProfile.memories.map(semanticCompositionRef),\n glossaries: value.compiledProfile.glossaries.map(semanticCompositionRef),\n acceptancePolicies: (value.compiledProfile.acceptancePolicies ?? []).map(value => ({\n id: value.id,\n digest: value.digest,\n semanticDigest: digest(value),\n })),\n });\n}\n\nfunction semanticCapabilityDiff(\n current: readonly ProfileCompositionCapabilityRef[],\n candidate: readonly ProfileCompositionCapabilityRef[],\n): ProfileSemanticCapabilityDiff {\n const currentById = new Map(current.map(value => [value.id, value.semanticDigest]));\n const candidateById = new Map(candidate.map(value => [value.id, value.semanticDigest]));\n const added = [...candidateById.keys()].filter(id => !currentById.has(id)).sort();\n const removed = [...currentById.keys()].filter(id => !candidateById.has(id)).sort();\n const changed = [...candidateById.entries()]\n .filter(([id, itemDigest]) => currentById.has(id) && currentById.get(id) !== itemDigest)\n .map(([id]) => id)\n .sort();\n return deepFreeze({\n added,\n removed,\n changed,\n authorityExpansion: added.length > 0 || changed.length > 0,\n });\n}\n\nfunction packSemanticRef(value: CapabilityPackRef): ProfileCompositionCapabilityRef {\n return {\n id: `${value.id}@${value.version}`,\n digest: value.digest,\n semanticDigest: digest(value),\n };\n}\n\nfunction semanticCompositionRef(\n value: Readonly<{ id: string; digest: string }>,\n): ProfileCompositionCapabilityRef {\n return { id: value.id, digest: value.digest, semanticDigest: digest(value) };\n}\n\nfunction copyCompositionRef(value: ProfileCompositionCapabilityRef): ProfileCompositionCapabilityRef {\n return { id: value.id, digest: value.digest, semanticDigest: value.semanticDigest };\n}\n\nfunction copyGovernanceComposition(\n value: ProjectProfileGovernanceComposition,\n): ProjectProfileGovernanceComposition {\n return deepFreeze({\n revisionId: value.revisionId,\n charterRevisionId: value.charterRevisionId,\n compiledDigest: value.compiledDigest,\n overlayDigest: value.overlayDigest,\n packs: value.packs.map(copyPackRef),\n tools: value.tools.map(copyCompositionRef),\n skills: value.skills.map(copyCompositionRef),\n agents: value.agents.map(copyCompositionRef),\n workflows: value.workflows.map(copyCompositionRef),\n memories: value.memories.map(copyCompositionRef),\n glossaries: value.glossaries.map(copyCompositionRef),\n acceptancePolicies: value.acceptancePolicies.map(copyCompositionRef),\n });\n}\n\nfunction copySemanticCapabilityDiff(\n value: ProfileSemanticCapabilityDiff,\n): ProfileSemanticCapabilityDiff {\n return deepFreeze({\n added: [...value.added],\n removed: [...value.removed],\n changed: [...value.changed],\n authorityExpansion: value.authorityExpansion,\n });\n}\n\nfunction copySemanticDiff(value: ProjectProfileSemanticDiff): ProjectProfileSemanticDiff {\n return deepFreeze({\n bootstrap: value.bootstrap,\n charter: {\n changed: value.charter.changed,\n authorityExpansion: value.charter.authorityExpansion,\n },\n tool: copySemanticCapabilityDiff(value.tool),\n skill: copySemanticCapabilityDiff(value.skill),\n agent: copySemanticCapabilityDiff(value.agent),\n workflow: copySemanticCapabilityDiff(value.workflow),\n memory: copySemanticCapabilityDiff(value.memory),\n glossary: copySemanticCapabilityDiff(value.glossary),\n acceptancePolicy: copySemanticCapabilityDiff(value.acceptancePolicy),\n policy: copySemanticCapabilityDiff(value.policy),\n overlay: {\n changed: value.overlay.changed,\n authorityExpansion: value.overlay.authorityExpansion,\n },\n authorityExpansion: value.authorityExpansion,\n });\n}\n\nfunction copyCompiledProfile(value: CompiledWorkroomProfile): CompiledWorkroomProfile {\n return deepFreeze({\n revisionId: value.revisionId,\n projectId: value.projectId,\n charterRevisionId: value.charterRevisionId,\n packRefs: value.packRefs.map(copyPackRef),\n tools: value.tools.map(tool => ({ id: tool.id, digest: tool.digest })),\n skills: value.skills.map(skill => ({\n id: skill.id,\n digest: skill.digest,\n requiresTools: [...skill.requiresTools],\n })),\n agents: value.agents.map(agent => ({\n id: agent.id,\n digest: agent.digest,\n role: agent.role,\n allowedTools: [...agent.allowedTools],\n allowedSkills: [...agent.allowedSkills],\n })),\n workflows: value.workflows.map(workflow => ({\n id: workflow.id,\n digest: workflow.digest,\n requiredByProfile: workflow.requiredByProfile,\n tasks: workflow.tasks.map(task => ({\n key: task.key,\n role: task.role,\n requires: {\n tools: [...(task.requires.tools ?? [])],\n skills: [...(task.requires.skills ?? [])],\n },\n })),\n })),\n memories: value.memories.map(memory => ({\n id: memory.id,\n digest: memory.digest,\n allowedRoles: [...memory.allowedRoles],\n taskKeys: [...memory.taskKeys],\n })),\n glossaries: value.glossaries.map(glossary => ({\n id: glossary.id,\n digest: glossary.digest,\n allowedRoles: [...glossary.allowedRoles],\n taskKeys: [...glossary.taskKeys],\n })),\n acceptancePolicies: (value.acceptancePolicies ?? []).map(policy => ({\n id: policy.id,\n digest: policy.digest,\n tasks: policy.tasks.map(task => ({\n taskKey: task.taskKey,\n kind: task.kind,\n criteria: task.criteria.map(criterion => ({ ...criterion })),\n requiredEvidence: [...task.requiredEvidence],\n minimumRoute: task.minimumRoute,\n reviewerPrincipalId: task.reviewerPrincipalId,\n sponsorPrincipalId: task.sponsorPrincipalId,\n reviewerTimeoutMs: task.reviewerTimeoutMs,\n sponsorTimeoutMs: task.sponsorTimeoutMs,\n })),\n memorySchema: {\n revision: policy.memorySchema.revision,\n claimRules: policy.memorySchema.claimRules.map(rule => ({\n key: rule.key,\n valueType: rule.valueType,\n allowedStatuses: [...rule.allowedStatuses],\n allowSupersedes: rule.allowSupersedes,\n })),\n },\n })),\n digest: value.digest,\n });\n}\n\nfunction copyPackRef(value: CapabilityPackRef): CapabilityPackRef {\n return { id: value.id, version: value.version, digest: value.digest };\n}\n\nfunction copyActive(value: ActiveProjectProfile): ActiveProjectProfile {\n return deepFreeze({\n revisionId: value.revisionId,\n compiledDigest: value.compiledDigest,\n activatedAtRegistryRevision: value.activatedAtRegistryRevision,\n });\n}\n\nfunction copyPin(value: WorkroomRunProfilePin): WorkroomRunProfilePin {\n return deepFreeze({\n projectId: value.projectId,\n runId: value.runId,\n profileRevisionId: value.profileRevisionId,\n profileDigest: value.profileDigest,\n activationRegistryRevision: value.activationRegistryRevision,\n pinnedAtRegistryRevision: value.pinnedAtRegistryRevision,\n });\n}\n\nfunction copyDraft(value: ProjectProfileEventDraft): ProjectProfileEventDraft {\n if (value.type === 'profile.revision_registered') {\n return { type: value.type, payload: { revision: copyRevision(value.payload.revision) } };\n }\n if (value.type === 'profile.revision_activated') {\n return { type: value.type, payload: copyActive(value.payload) };\n }\n return { type: value.type, payload: copyPin(value.payload) };\n}\n\nfunction profileComposition(value: CompiledWorkroomProfile): string {\n const { revisionId: _revisionId, digest: _digest, ...composition } = value;\n return stableJson(composition);\n}\n"]}
@@ -133,4 +133,3 @@ export declare class ProjectKnowledgeRegistry {
133
133
  }
134
134
  export declare function replayProjectKnowledge(projectId: string, events: readonly ProjectKnowledgeEvent[]): ProjectKnowledgeSnapshot;
135
135
  export declare function canonicalProjectKnowledgeSource(value: ProjectKnowledgeSource): ProjectKnowledgeSource;
136
- //# sourceMappingURL=project-knowledge-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"project-knowledge-registry.js","sourceRoot":"","sources":["../../src/workroom/project-knowledge-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-knowledge-registry.js","sourceRoot":"","sources":["../../src/workroom/project-knowledge-registry.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 compareCanonicalWorkroomText,\n canonicalWorkroomJson,\n deepFreezeWorkroomValue as deepFreeze,\n digestCanonicalWorkroomValue as digest,\n} from './canonical-value.js';\nimport { DurableFileStore } from './durable-file-store.js';\nimport type { CapabilityPackRef } from './profile-compiler.js';\n\nexport type ProjectKnowledgeSource =\n | Readonly<{ kind: 'acceptance_record'; projectId: string; sourceId: string; digest: string }>\n | Readonly<{\n kind: 'accepted_task_memory'; projectId: string; sourceId: string; acceptanceId: string; digest: string;\n }>\n | Readonly<{ kind: 'sponsor_decision'; projectId: string; sourceId: string; digest: string }>\n | Readonly<{\n kind: 'trusted_pack_publication'; projectId: string; sourceId: string; packRef: CapabilityPackRef; digest: string;\n }>;\n\nexport interface ProjectKnowledgeGovernedHandle {\n readonly ref: string;\n readonly digest: string;\n}\n\nexport interface ProjectKnowledgeEntryInput {\n readonly version: 1;\n readonly projectId: string;\n readonly knowledgeId: string;\n readonly kind: 'memory' | 'glossary';\n /** Content-addressed governed handle only. The registry never stores body/display text. */\n readonly governedContent: ProjectKnowledgeGovernedHandle;\n readonly schema: ProjectKnowledgeGovernedHandle;\n readonly sensitivity: 'standard' | 'restricted' | 'high';\n readonly selectors: readonly string[];\n}\n\nexport interface ProjectKnowledgeEntry extends ProjectKnowledgeEntryInput {\n readonly digest: string;\n}\n\nexport function createProjectKnowledgeEntry(input: ProjectKnowledgeEntryInput): ProjectKnowledgeEntry {\n assertKeys(input, [\n 'version', 'projectId', 'knowledgeId', 'kind', 'governedContent', 'schema', 'sensitivity', 'selectors',\n ], 'Project Knowledge entry');\n if (input.version !== 1 || !['memory', 'glossary'].includes(input.kind)) {\n throw new Error('Project Knowledge entry version/kind is invalid');\n }\n if (!['standard', 'restricted', 'high'].includes(input.sensitivity)) {\n throw new Error('Project Knowledge sensitivity is invalid');\n }\n const body = deepFreeze({\n version: 1 as const,\n projectId: text(input.projectId, 'Knowledge projectId'),\n knowledgeId: text(input.knowledgeId, 'Knowledge knowledgeId'),\n kind: input.kind,\n governedContent: handle(input.governedContent, 'Knowledge governed content'),\n schema: handle(input.schema, 'Knowledge schema'),\n sensitivity: input.sensitivity,\n selectors: unique(input.selectors, 'Knowledge selector'),\n });\n return deepFreeze({ ...body, digest: digest(body) });\n}\n\nexport interface ProjectKnowledgeEvent {\n readonly version: 1;\n readonly projectId: string;\n readonly revision: number;\n readonly type: 'project_knowledge.published' | 'project_knowledge.rolled_back';\n readonly operationId: string;\n readonly commandDigest: string;\n readonly ownerPrincipalId: string;\n readonly source: ProjectKnowledgeSource;\n readonly restoredFromRevision?: number;\n readonly entries: readonly ProjectKnowledgeEntry[];\n readonly digest: string;\n}\n\nexport interface ProjectKnowledgeSnapshot {\n readonly projectId: string;\n readonly revision: number;\n readonly entries: readonly ProjectKnowledgeEntry[];\n readonly history: readonly ProjectKnowledgeEvent[];\n}\n\nexport interface ProjectKnowledgeJournal {\n read(projectId: string): Promise<readonly ProjectKnowledgeEvent[]>;\n append(projectId: string, expectedRevision: number, event: ProjectKnowledgeEvent): Promise<ProjectKnowledgeEvent>;\n}\n\nexport class ProjectKnowledgeRevisionConflictError extends Error {\n constructor(readonly projectId: string, readonly expectedRevision: number, readonly actualRevision: number) {\n super(`Project Knowledge ${projectId} revision conflict: expected ${expectedRevision}, actual ${actualRevision}`);\n this.name = 'ProjectKnowledgeRevisionConflictError';\n }\n}\n\nexport class MemoryProjectKnowledgeJournal implements ProjectKnowledgeJournal {\n readonly #projects = new Map<string, readonly ProjectKnowledgeEvent[]>();\n\n async read(projectId: string): Promise<readonly ProjectKnowledgeEvent[]> {\n return this.#projects.get(text(projectId, 'Knowledge projectId')) ?? Object.freeze([]);\n }\n\n async append(projectId: string, expectedRevision: number, event: ProjectKnowledgeEvent): Promise<ProjectKnowledgeEvent> {\n const current = await this.read(projectId);\n const replay = current.find(value => value.operationId === event.operationId);\n if (replay) {\n if (replay.commandDigest !== event.commandDigest) throw new Error('Project Knowledge operation identity drift');\n return replay;\n }\n const actual = current.at(-1)?.revision ?? -1;\n if (actual !== expectedRevision) throw new ProjectKnowledgeRevisionConflictError(projectId, expectedRevision, actual);\n assertProjectKnowledgeEvent(event, projectId, expectedRevision + 1);\n this.#projects.set(projectId, deepFreeze([...current, event]));\n return event;\n }\n}\n\nexport class FileProjectKnowledgeJournal implements ProjectKnowledgeJournal {\n readonly #store: DurableFileStore;\n\n constructor(readonly directory: string) {\n this.#store = new DurableFileStore(directory);\n }\n\n async read(projectId: string): Promise<readonly ProjectKnowledgeEvent[]> {\n const id = text(projectId, 'Knowledge projectId');\n const prefix = projectPrefix(id);\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 candidates = names.filter(name => name.startsWith(prefix));\n if (candidates.some(name => !segmentPattern(prefix).test(name))) {\n throw new Error('Invalid Project Knowledge Journal segment name');\n }\n const events = await Promise.all(candidates.sort().map(async name => {\n const revision = Number(name.slice(prefix.length, prefix.length + 16));\n let parsed: unknown;\n try {\n parsed = JSON.parse(await readFile(join(this.directory, name), 'utf8'));\n } catch (error) {\n throw new Error('Project Knowledge Journal segment is not valid JSON', { cause: error });\n }\n if (!isRecord(parsed)) throw new Error('Project Knowledge Journal segment is malformed');\n const event = parsed as unknown as ProjectKnowledgeEvent;\n assertProjectKnowledgeEvent(event, id, revision);\n return canonicalEvent(event);\n }));\n replayProjectKnowledge(id, events);\n if (events.length > 0) await this.#store.syncLeaf();\n return deepFreeze(events);\n }\n\n async append(projectId: string, expectedRevision: number, event: ProjectKnowledgeEvent): Promise<ProjectKnowledgeEvent> {\n const id = text(projectId, 'Knowledge projectId');\n const current = await this.read(id);\n const replay = current.find(value => value.operationId === event.operationId);\n if (replay) {\n if (replay.commandDigest !== event.commandDigest) throw new Error('Project Knowledge operation identity drift');\n return replay;\n }\n const actual = current.at(-1)?.revision ?? -1;\n if (actual !== expectedRevision) throw new ProjectKnowledgeRevisionConflictError(id, expectedRevision, actual);\n assertProjectKnowledgeEvent(event, id, expectedRevision + 1);\n await this.#store.ensureDurableLeaf('Project Knowledge Journal');\n const target = join(this.directory, segmentName(id, event.revision));\n const result = await this.#store.publishCreateOnly({\n target,\n content: canonicalWorkroomJson(event),\n createdValue: event,\n onConflict: async () => {\n const winner = (await this.read(id)).find(value => value.revision === event.revision);\n if (winner?.operationId === event.operationId && winner.commandDigest === event.commandDigest) return winner;\n throw new ProjectKnowledgeRevisionConflictError(id, expectedRevision, (await this.read(id)).at(-1)?.revision ?? -1);\n },\n });\n await this.#store.syncLeafAndParent();\n return result.value;\n }\n}\n\nexport interface ProjectKnowledgeGenerationViewPort {\n withCurrent<TResult>(\n input: Readonly<{ generation: number; operationId: string; signal: AbortSignal }>,\n use: () => TResult | Promise<TResult>,\n ): Promise<TResult>;\n}\n\nexport interface ProjectKnowledgeSourceAuthorityPort {\n verify(source: ProjectKnowledgeSource): Promise<boolean>;\n}\n\nexport interface PublishProjectKnowledgeCommand {\n readonly version: 1;\n readonly generation: number;\n readonly operationId: string;\n readonly projectId: string;\n readonly expectedRevision: number;\n readonly ownerPrincipalId: string;\n readonly source: ProjectKnowledgeSource;\n readonly entries: readonly ProjectKnowledgeEntry[];\n}\n\nexport interface RollbackProjectKnowledgeCommand extends Omit<PublishProjectKnowledgeCommand, 'entries'> {\n readonly restoreRevision: number;\n}\n\nexport interface LoadProjectKnowledgeQuery {\n readonly projectId: string;\n readonly knowledgeIds: readonly string[];\n readonly kinds?: readonly ProjectKnowledgeEntry['kind'][];\n}\n\nexport class ProjectKnowledgeRegistry {\n constructor(readonly options: Readonly<{\n journal: ProjectKnowledgeJournal;\n generationView: ProjectKnowledgeGenerationViewPort;\n sourceAuthority: ProjectKnowledgeSourceAuthorityPort;\n }>) {}\n\n async read(projectId: string): Promise<ProjectKnowledgeSnapshot> {\n const id = text(projectId, 'Knowledge projectId');\n const events = await this.options.journal.read(id);\n for (const event of events) {\n if (!await this.options.sourceAuthority.verify(event.source)) {\n throw new Error('Project Knowledge persisted source verification denied');\n }\n }\n return replayProjectKnowledge(id, events);\n }\n\n async load(query: LoadProjectKnowledgeQuery): Promise<Readonly<{ projectId: string; revision: number; entries: readonly ProjectKnowledgeEntry[] }>> {\n assertKeys(query, ['projectId', 'knowledgeIds', ...(query.kinds ? ['kinds'] : [])], 'Project Knowledge query');\n const state = await this.read(query.projectId);\n const ids = new Set(unique(query.knowledgeIds, 'Knowledge query id'));\n const kinds = query.kinds ? new Set(unique(query.kinds, 'Knowledge query kind')) : undefined;\n return deepFreeze({\n projectId: state.projectId,\n revision: state.revision,\n entries: state.entries.filter(entry => ids.has(entry.knowledgeId) && (!kinds || kinds.has(entry.kind))),\n });\n }\n\n async publish(command: PublishProjectKnowledgeCommand, signal: AbortSignal): Promise<ProjectKnowledgeSnapshot> {\n assertKeys(command, [\n 'version', 'generation', 'operationId', 'projectId', 'expectedRevision', 'ownerPrincipalId', 'source', 'entries',\n ], 'Project Knowledge publish command');\n commandHeader(command, signal);\n return await this.options.generationView.withCurrent({\n generation: command.generation, operationId: command.operationId, signal,\n }, async () => {\n const source = await this.#source(command.source, command.projectId);\n const suppliedEntries = command.entries.map(canonicalEntry);\n const commandDigest = digest({ ...structuredClone(command), source, entries: suppliedEntries });\n const state = await this.read(command.projectId);\n const replay = state.history.find(event => event.operationId === command.operationId);\n if (replay) {\n if (replay.commandDigest !== commandDigest) throw new Error('Project Knowledge operation identity drift');\n return state;\n }\n if (state.revision !== command.expectedRevision) {\n throw new ProjectKnowledgeRevisionConflictError(command.projectId, command.expectedRevision, state.revision);\n }\n const next = new Map(state.entries.map(entry => [entry.knowledgeId, entry]));\n for (const entry of suppliedEntries) {\n if (entry.projectId !== command.projectId) throw new Error('Project Knowledge entry Project binding mismatch');\n const current = next.get(entry.knowledgeId);\n if (current && current.digest !== entry.digest && source.kind !== 'sponsor_decision') {\n throw new Error('Sponsor Decision is required to replace conflicting Project Knowledge');\n }\n next.set(entry.knowledgeId, entry);\n }\n const entries = [...next.values()].sort(byKnowledgeId);\n const event = createEvent({\n projectId: command.projectId, revision: state.revision + 1, type: 'project_knowledge.published',\n operationId: command.operationId, commandDigest, ownerPrincipalId: command.ownerPrincipalId,\n source, entries,\n });\n await this.options.journal.append(command.projectId, state.revision, event);\n return await this.read(command.projectId);\n });\n }\n\n async rollback(command: RollbackProjectKnowledgeCommand, signal: AbortSignal): Promise<ProjectKnowledgeSnapshot> {\n assertKeys(command, [\n 'version', 'generation', 'operationId', 'projectId', 'expectedRevision', 'ownerPrincipalId', 'source', 'restoreRevision',\n ], 'Project Knowledge rollback command');\n commandHeader(command, signal);\n if (!Number.isSafeInteger(command.restoreRevision) || command.restoreRevision < 0) {\n throw new Error('Invalid Project Knowledge restore revision');\n }\n return await this.options.generationView.withCurrent({\n generation: command.generation, operationId: command.operationId, signal,\n }, async () => {\n const source = await this.#source(command.source, command.projectId);\n if (source.kind !== 'sponsor_decision') throw new Error('Sponsor Decision is required for Project Knowledge rollback');\n const commandDigest = digest({ ...structuredClone(command), source });\n const state = await this.read(command.projectId);\n const replay = state.history.find(event => event.operationId === command.operationId);\n if (replay) {\n if (replay.commandDigest !== commandDigest) throw new Error('Project Knowledge operation identity drift');\n return state;\n }\n if (state.revision !== command.expectedRevision) {\n throw new ProjectKnowledgeRevisionConflictError(command.projectId, command.expectedRevision, state.revision);\n }\n const restored = state.history.find(event => event.revision === command.restoreRevision);\n if (!restored) throw new Error(`Project Knowledge restore revision ${command.restoreRevision} not found`);\n const event = createEvent({\n projectId: command.projectId, revision: state.revision + 1, type: 'project_knowledge.rolled_back',\n operationId: command.operationId, commandDigest, ownerPrincipalId: command.ownerPrincipalId,\n source, restoredFromRevision: command.restoreRevision, entries: restored.entries,\n });\n await this.options.journal.append(command.projectId, state.revision, event);\n return await this.read(command.projectId);\n });\n }\n\n async #source(source: ProjectKnowledgeSource, projectId: string): Promise<ProjectKnowledgeSource> {\n const canonical = canonicalProjectKnowledgeSource(source);\n if (canonical.projectId !== projectId) throw new Error('Project Knowledge source Project binding mismatch');\n if (!await this.options.sourceAuthority.verify(canonical)) {\n throw new Error('Project Knowledge trusted source verification denied');\n }\n return canonical;\n }\n}\n\nexport function replayProjectKnowledge(projectId: string, events: readonly ProjectKnowledgeEvent[]): ProjectKnowledgeSnapshot {\n let expected = 0;\n const history: ProjectKnowledgeEvent[] = [];\n const operationIds = new Set<string>();\n let previous = new Map<string, ProjectKnowledgeEntry>();\n for (const event of events) {\n assertProjectKnowledgeEvent(event, projectId, expected++);\n if (operationIds.has(event.operationId)) throw new Error('Duplicate Project Knowledge operationId');\n operationIds.add(event.operationId);\n const next = new Map(event.entries.map(entry => [entry.knowledgeId, entry]));\n if (event.type === 'project_knowledge.published') {\n const conflicts = [...next].some(([id, entry]) => previous.has(id) && previous.get(id)?.digest !== entry.digest);\n if (conflicts && event.source.kind !== 'sponsor_decision') {\n throw new Error('Sponsor Decision is required to replay conflicting Project Knowledge');\n }\n if (event.restoredFromRevision !== undefined) throw new Error('Published Project Knowledge cannot be a rollback');\n } else {\n if (event.source.kind !== 'sponsor_decision' || event.restoredFromRevision === undefined) {\n throw new Error('Sponsor Decision is required to replay Project Knowledge rollback');\n }\n const restored = history.find(value => value.revision === event.restoredFromRevision);\n if (!restored || canonicalWorkroomJson(restored.entries) !== canonicalWorkroomJson(event.entries)) {\n throw new Error('Project Knowledge rollback snapshot binding mismatch');\n }\n }\n previous = next;\n history.push(event);\n }\n return deepFreeze({\n projectId,\n revision: events.at(-1)?.revision ?? -1,\n entries: events.at(-1)?.entries ?? [],\n history,\n });\n}\n\nfunction createEvent(input: Omit<ProjectKnowledgeEvent, 'version' | 'digest'>): ProjectKnowledgeEvent {\n const body = deepFreeze({ version: 1 as const, ...structuredClone(input) });\n return deepFreeze({ ...body, digest: digest(body) });\n}\n\nfunction canonicalEvent(event: ProjectKnowledgeEvent): ProjectKnowledgeEvent {\n assertKeys(event, [\n 'version', 'projectId', 'revision', 'type', 'operationId', 'commandDigest', 'ownerPrincipalId',\n 'source', 'entries', ...(event.restoredFromRevision !== undefined ? ['restoredFromRevision'] : []), 'digest',\n ], 'Project Knowledge event');\n return createEvent({\n projectId: event.projectId,\n revision: event.revision,\n type: event.type,\n operationId: event.operationId,\n commandDigest: event.commandDigest,\n ownerPrincipalId: event.ownerPrincipalId,\n source: event.source,\n ...(event.restoredFromRevision !== undefined ? { restoredFromRevision: event.restoredFromRevision } : {}),\n entries: event.entries,\n });\n}\n\nfunction assertProjectKnowledgeEvent(event: ProjectKnowledgeEvent, projectId: string, revision: number): void {\n const canonical = canonicalEvent(event);\n if (event.version !== 1 || event.projectId !== projectId || event.revision !== revision\n || !['project_knowledge.published', 'project_knowledge.rolled_back'].includes(event.type)\n || event.digest !== canonical.digest || canonicalWorkroomJson(event) !== canonicalWorkroomJson(canonical)) {\n throw new Error('Invalid Project Knowledge Journal event');\n }\n canonicalProjectKnowledgeSource(event.source);\n if (event.source.projectId !== projectId) throw new Error('Project Knowledge event source Project binding mismatch');\n text(event.ownerPrincipalId, 'Knowledge event owner principalId');\n text(event.operationId, 'Knowledge event operationId');\n requiredDigest(event.commandDigest, 'Knowledge event command digest');\n if (event.restoredFromRevision !== undefined\n && (!Number.isSafeInteger(event.restoredFromRevision) || event.restoredFromRevision < 0)) {\n throw new Error('Knowledge event restored revision is invalid');\n }\n const knowledgeIds = event.entries.map(entry => entry.knowledgeId);\n if (new Set(knowledgeIds).size !== knowledgeIds.length\n || canonicalWorkroomJson(knowledgeIds) !== canonicalWorkroomJson([...knowledgeIds].sort())) {\n throw new Error('Project Knowledge event entries must be unique and sorted');\n }\n event.entries.forEach(entry => {\n if (canonicalEntry(entry).projectId !== projectId) throw new Error('Project Knowledge event Project binding mismatch');\n });\n}\n\nfunction canonicalEntry(value: ProjectKnowledgeEntry): ProjectKnowledgeEntry {\n const { digest: supplied, ...input } = value;\n const canonical = createProjectKnowledgeEntry(input);\n if (supplied !== canonical.digest || canonicalWorkroomJson(value) !== canonicalWorkroomJson(canonical)) {\n throw new Error('Project Knowledge entry digest mismatch');\n }\n return canonical;\n}\n\nexport function canonicalProjectKnowledgeSource(value: ProjectKnowledgeSource): ProjectKnowledgeSource {\n if (!isRecord(value) || !['acceptance_record', 'accepted_task_memory', 'sponsor_decision', 'trusted_pack_publication']\n .includes(String(value.kind))) throw new Error('Invalid Project Knowledge source kind');\n const keys = ['kind', 'projectId', 'sourceId', 'digest'];\n if (value.kind === 'accepted_task_memory') keys.push('acceptanceId');\n if (value.kind === 'trusted_pack_publication') keys.push('packRef');\n assertKeys(value, keys, 'Project Knowledge source');\n const body = {\n kind: value.kind,\n projectId: text(value.projectId, 'Knowledge source projectId'),\n sourceId: text(value.sourceId, 'Knowledge sourceId'),\n ...(value.kind === 'accepted_task_memory'\n ? { acceptanceId: text(value.acceptanceId, 'Knowledge source acceptanceId') }\n : {}),\n ...(value.kind === 'trusted_pack_publication'\n ? { packRef: packRef(value.packRef) }\n : {}),\n } as Omit<ProjectKnowledgeSource, 'digest'>;\n const canonical = deepFreeze({ ...body, digest: digest(body) }) as ProjectKnowledgeSource;\n if (value.digest !== canonical.digest || canonicalWorkroomJson(value) !== canonicalWorkroomJson(canonical)) {\n throw new Error('Project Knowledge source digest mismatch');\n }\n return canonical;\n}\n\nfunction commandHeader(command: PublishProjectKnowledgeCommand | RollbackProjectKnowledgeCommand, signal: AbortSignal): void {\n if (command.version !== 1 || !Number.isSafeInteger(command.generation) || command.generation < 0\n || !Number.isSafeInteger(command.expectedRevision) || command.expectedRevision < -1) {\n throw new Error('Project Knowledge command position is invalid');\n }\n text(command.operationId, 'Knowledge operationId');\n text(command.projectId, 'Knowledge projectId');\n text(command.ownerPrincipalId, 'Knowledge owner principalId');\n signal.throwIfAborted();\n}\n\nfunction handle(value: ProjectKnowledgeGovernedHandle, label: string): ProjectKnowledgeGovernedHandle {\n assertKeys(value, ['ref', 'digest'], label);\n return deepFreeze({ ref: text(value.ref, `${label} ref`), digest: requiredDigest(value.digest, `${label} digest`) });\n}\n\nfunction packRef(value: CapabilityPackRef): CapabilityPackRef {\n assertKeys(value, ['id', 'version', 'digest'], 'Knowledge source Pack ref');\n return deepFreeze({ id: text(value.id, 'Pack id'), version: text(value.version, 'Pack version'), digest: requiredDigest(value.digest, 'Pack digest') });\n}\n\nfunction assertKeys(value: object, expected: readonly string[], label: string): void {\n const actual = Object.keys(value).sort();\n const allowed = [...expected].sort();\n if (canonicalWorkroomJson(actual) !== canonicalWorkroomJson(allowed)) throw new Error(`${label} keys are invalid`);\n}\n\nfunction text(value: unknown, 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 requiredDigest(value: unknown, label: string): string {\n const result = text(value, label);\n if (!result.startsWith('sha256:')) throw new Error(`${label} is invalid`);\n return result;\n}\n\nfunction unique(values: readonly string[], label: string): readonly string[] {\n const result = [...values].map(value => text(value, label)).sort();\n if (new Set(result).size !== result.length) throw new Error(`${label} contains duplicates`);\n return deepFreeze(result);\n}\n\nfunction byKnowledgeId(left: ProjectKnowledgeEntry, right: ProjectKnowledgeEntry): number {\n return compareCanonicalWorkroomText(left.knowledgeId, right.knowledgeId);\n}\n\nfunction projectPrefix(projectId: string): string {\n return createHash('sha256').update(projectId).digest('hex') + '.';\n}\n\nfunction segmentName(projectId: string, revision: number): string {\n return projectPrefix(projectId) + String(revision).padStart(16, '0') + '.json';\n}\n\nfunction segmentPattern(prefix: string): RegExp {\n return new RegExp(`^${prefix}[0-9]{16}\\\\.json$`, 'u');\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value && typeof value === 'object' && !Array.isArray(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"]}
@@ -192,4 +192,3 @@ export declare class WorkroomProjectionRevisionConflictError extends Error {
192
192
  readonly actualRevision: number;
193
193
  constructor(expectedRevision: number, actualRevision: number);
194
194
  }
195
- //# sourceMappingURL=contracts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/contracts.ts"],"names":[],"mappings":"AAiOA,MAAM,OAAO,uCAAwC,SAAQ,KAAK;IAErD;IACA;IAFX,YACW,gBAAwB,EACxB,cAAsB;QAE/B,KAAK,CAAC,mDAAmD,gBAAgB,YAAY,cAAc,EAAE,CAAC,CAAC;QAH9F,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,mBAAc,GAAd,cAAc,CAAQ;QAG/B,IAAI,CAAC,IAAI,GAAG,yCAAyC,CAAC;IACxD,CAAC;CACF"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/contracts.ts"],"names":[],"mappings":"AAiOA,MAAM,OAAO,uCAAwC,SAAQ,KAAK;IAErD;IACA;IAFX,YACW,gBAAwB,EACxB,cAAsB;QAE/B,KAAK,CAAC,mDAAmD,gBAAgB,YAAY,cAAc,EAAE,CAAC,CAAC;QAH9F,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,mBAAc,GAAd,cAAc,CAAQ;QAG/B,IAAI,CAAC,IAAI,GAAG,yCAAyC,CAAC;IACxD,CAAC;CACF","sourcesContent":["import type { WorkroomExecutionRole } from '../kernel-contracts.js';\nimport type {\n GovernedDisclosureManifestRequest,\n MaterializedDisclosureManifest,\n} from '../../data-governance/disclosure-manifest.js';\nimport type {\n GovernedDisclosureRevalidationResult,\n GovernedProjectionDisclosureResult,\n} from '../../data-governance/disclosure-authority.js';\n\nexport interface WorkroomProjectionConversation {\n readonly endpoint: Readonly<{ id: string; adapter: string }>;\n readonly kind: 'private' | 'group' | 'channel';\n readonly id: string;\n readonly parent?: Readonly<{ kind: 'private' | 'group' | 'channel'; id: string }>;\n readonly threadId?: string;\n}\n\nexport interface WorkroomProjectionAgentIdentity {\n readonly principalId: string;\n readonly agentDefinitionId: string;\n readonly displayName: string;\n readonly role: 'orchestrator' | WorkroomExecutionRole;\n /** Exact generation-owned Endpoint used to present this member in the room. */\n readonly messageEndpoint?: Readonly<{ id: string; adapter: string }>;\n}\n\nexport interface WorkroomProjectionBinding {\n readonly version: 1;\n readonly audience: 'workroom' | 'sponsor_room';\n readonly projectId: string;\n readonly catalogBindingDigest: string;\n readonly bindingRevision: number;\n readonly projectionPolicyRevision: number;\n readonly conversation: WorkroomProjectionConversation;\n readonly orchestrator: WorkroomProjectionAgentIdentity & Readonly<{ role: 'orchestrator' }>;\n readonly agents: readonly WorkroomProjectionAgentIdentity[];\n}\n\nexport interface WorkroomProjectionTarget {\n readonly projectId: string;\n readonly runId: string;\n readonly taskKey?: string;\n readonly taskRevision?: number;\n readonly assignmentId?: string;\n readonly assignmentRevision?: number;\n readonly agentDefinitionId: string;\n}\n\nexport interface WorkroomProjectionDeliveryState {\n readonly status: 'pending' | 'leased' | 'failed' | 'sent';\n readonly attempts: number;\n readonly fence: number;\n readonly leaseOwner?: string;\n readonly leaseExpiresAt?: number;\n readonly failureCode?: string;\n readonly retryable?: boolean;\n readonly nextAttemptAt?: number;\n readonly message?: WorkroomProjectionMessageRef;\n}\n\nexport interface WorkroomProjectionOutboxItem {\n readonly version: 1;\n readonly audience: 'workroom' | 'sponsor_room';\n readonly id: string;\n readonly idempotencyKey: string;\n readonly digest: string;\n readonly projectId: string;\n readonly runId: string;\n /** Binding-generation cursor for this exact Project, audience and binding revision. */\n readonly cursorId: string;\n readonly sourceEventIds: readonly string[];\n readonly sourceSequence: number;\n readonly bindingRevision: number;\n readonly projectionPolicyRevision: number;\n readonly conversation: WorkroomProjectionConversation;\n readonly speaker: WorkroomProjectionAgentIdentity;\n readonly kind: 'status' | 'progress' | 'milestone' | 'attention' | 'conclusion';\n /** Exact content-free authority snapshot. The body remains only in the Vault. */\n readonly disclosure: Readonly<{\n request: GovernedDisclosureManifestRequest;\n manifest: MaterializedDisclosureManifest;\n }>;\n readonly target: WorkroomProjectionTarget;\n readonly delivery: WorkroomProjectionDeliveryState;\n}\n\nexport interface WorkroomProjectionMessageRef {\n readonly conversation: WorkroomProjectionConversation;\n readonly id: string;\n}\n\nexport interface WorkroomProjectionMessageIndexEntry {\n readonly projectionId: string;\n readonly bindingRevision: number;\n readonly sourceEventIds: readonly string[];\n readonly target: WorkroomProjectionTarget;\n readonly speaker: WorkroomProjectionAgentIdentity;\n readonly message: WorkroomProjectionMessageRef;\n}\n\nexport interface WorkroomProjectionActiveAssignmentTarget {\n readonly projectId: string;\n readonly runId: string;\n readonly taskKey: string;\n readonly taskRevision: number;\n readonly assignmentId: string;\n readonly assignmentRevision: number;\n}\n\nexport interface WorkroomProjectionReplyTargetInput {\n readonly projectId: string;\n readonly bindingRevision: number;\n readonly replyTo: WorkroomProjectionMessageRef;\n readonly intent: 'discussion' | 'task_input';\n readonly activeAssignments: readonly WorkroomProjectionActiveAssignmentTarget[];\n}\n\nexport type WorkroomProjectionReplyTargetDecision =\n | Readonly<{\n status: 'task_target';\n via: 'reply';\n disposition: 'discussion_only' | 'context_proposal';\n sourceProjectionId: string;\n sourceEventIds: readonly string[];\n target: WorkroomProjectionActiveAssignmentTarget & Readonly<{\n agentDefinitionId: string;\n status: 'active' | 'historical';\n }>;\n }>\n | Readonly<{\n status: 'clarification_required';\n reason: 'target_not_found' | 'cross_project_target' | 'stale_binding' | 'non_task_projection';\n candidateRefs: readonly string[];\n }>;\n\nexport interface WorkroomProjectionState {\n readonly revision: number;\n readonly bindings: Readonly<Record<string, WorkroomProjectionBinding>>;\n readonly cursors: Readonly<Record<string, number>>;\n readonly items: Readonly<Record<string, WorkroomProjectionOutboxItem>>;\n readonly messageIndex: Readonly<Record<string, WorkroomProjectionMessageIndexEntry>>;\n}\n\nexport interface WorkroomProjectionCapture {\n readonly runId: string;\n readonly expectedCursor: number;\n readonly cursor: number;\n readonly items: readonly WorkroomProjectionOutboxItem[];\n}\n\nexport interface WorkroomProjectionRepository {\n read(): Promise<WorkroomProjectionState>;\n bind(\n expectedRevision: number,\n binding: WorkroomProjectionBinding,\n ): Promise<WorkroomProjectionState>;\n capture(expectedRevision: number, input: WorkroomProjectionCapture): Promise<WorkroomProjectionState>;\n claimNext(\n expectedRevision: number,\n workerId: string,\n now: number,\n leaseMs: number,\n ): Promise<WorkroomProjectionOutboxItem | undefined>;\n settle(\n expectedRevision: number,\n itemId: string,\n workerId: string,\n fence: number,\n result: WorkroomProjectionDeliveryResult,\n settledAt: number,\n ): Promise<WorkroomProjectionState>;\n}\n\nexport type WorkroomProjectionDeliveryResult =\n | Readonly<{ status: 'sent'; message?: WorkroomProjectionMessageRef }>\n | Readonly<{ status: 'failed'; code: string; retryable: boolean }>;\n\nexport interface WorkroomProjectionDeliveryPort {\n send(\n item: WorkroomProjectionOutboxItem,\n body: Uint8Array,\n signal: AbortSignal,\n ): Promise<WorkroomProjectionDeliveryResult>;\n}\n\nexport interface WorkroomProjectionGovernancePort {\n prepareProjection(\n input: Readonly<{\n operationId: string;\n projectId: string;\n sinkRuleId: string;\n body: string;\n sourceEventIds: readonly string[];\n }>,\n signal: AbortSignal,\n ): Promise<GovernedProjectionDisclosureResult>;\n revalidate(\n input: Readonly<{\n request: GovernedDisclosureManifestRequest;\n manifest: MaterializedDisclosureManifest;\n }>,\n signal: AbortSignal,\n ): Promise<GovernedDisclosureRevalidationResult>;\n}\n\nexport interface WorkroomLifecycleHoldOverdueSnapshot {\n readonly version: 1;\n readonly projectId: string;\n readonly clockRevision: number;\n readonly observedAt: number;\n readonly overdue: readonly Readonly<{\n objectId: string;\n stateSequence: number;\n stateDigest: string;\n holdId: string;\n ownerPrincipalId: string;\n reasonCode: 'legal_hold' | 'investigation' | 'regulatory_preservation';\n placedAt: number;\n reviewAt: number;\n overdueBy: number;\n }>[];\n readonly digest: string;\n}\n\nexport class WorkroomProjectionRevisionConflictError extends Error {\n constructor(\n readonly expectedRevision: number,\n readonly actualRevision: number,\n ) {\n super(`Workroom Projection revision conflict: expected ${expectedRevision}, actual ${actualRevision}`);\n this.name = 'WorkroomProjectionRevisionConflictError';\n }\n}\n"]}
@@ -19,4 +19,3 @@ export declare class WorkroomProjectionDeliveryWorker {
19
19
  status: 'idle';
20
20
  }>>;
21
21
  }
22
- //# sourceMappingURL=delivery-worker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-worker.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/delivery-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-worker.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/delivery-worker.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uCAAuC,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,oCAAoC,EAAE,MAAM,iCAAiC,CAAC;AACvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAe1F,oFAAoF;AACpF,MAAM,OAAO,gCAAgC;IAClC,WAAW,CAA+B;IAC1C,SAAS,CAAiC;IAC1C,SAAS,CAAS;IAClB,QAAQ,CAAS;IACjB,WAAW,CAAoC;IAC/C,UAAU,CAAwD;IAClE,IAAI,CAAe;IAE5B,YAAY,OAAgD;QAC1D,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC1C,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,OAAO,CACX,GAAW,EACX,MAAmB;QAEnB,mBAAmB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACzC,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACvD,IAAI,MAAwC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACrF,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;oBACrB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,uBAAuB,EAAE,SAAS,EAAE,KAAK;iBAClE,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;oBACrB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK;iBAC1E,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBAC/E,MAAM,GAAG,QAAQ,CAAC,MAAM,KAAK,SAAS;oBACpC,CAAC,CAAC,CAAC,GAAG,EAAE;wBACJ,MAAM,MAAM,GAAG,oCAAoC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;wBACrE,OAAO,MAAM,CAAC,MAAM,CAAC;4BACnB,MAAM,EAAE,QAAiB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS;yBAC1E,CAAC,CAAC;oBACL,CAAC,CAAC,EAAE;oBACN,CAAC,CAAC,uBAAuB,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,MAAM,CAAC,OAAO;gBAAE,MAAM,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC;YACjD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,qEAAqE;QACrE,sEAAsE;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9B,mBAAmB,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAC/C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,KAAK,IAAI,QAAQ,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC;YACnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CACrC,KAAK,CAAC,QAAQ,EACd,IAAI,CAAC,SAAS,EACd,GAAG,EACH,IAAI,CAAC,QAAQ,CACd,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,CAAC,KAAK,YAAY,uCAAuC,CAAC;oBAAE,MAAM,KAAK,CAAC;YAC/E,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAAkC,EAClC,MAAwC,EACxC,SAAiB;QAEjB,KAAK,IAAI,QAAQ,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC;YACnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAC3B,KAAK,CAAC,QAAQ,EACd,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,CAAC,KAAK,EACnB,MAAM,EACN,SAAS,CACV,CAAC;gBACF,OAAO;YACT,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,CAAC,KAAK,YAAY,uCAAuC,CAAC;oBAAE,MAAM,KAAK,CAAC;YAC/E,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;CACF","sourcesContent":["import type {\n WorkroomProjectionDeliveryPort,\n WorkroomProjectionDeliveryResult,\n WorkroomProjectionGovernancePort,\n WorkroomProjectionOutboxItem,\n WorkroomProjectionRepository,\n} from './contracts.js';\nimport { WorkroomProjectionRevisionConflictError } from './contracts.js';\nimport { createWorkroomGovernedDispatchReason } from '../governed-dispatch-reasons.js';\nimport { normalizeDeliveryResult } from './repository-state.js';\nimport { requireFiniteNumber, requirePositiveInteger, requireText } from './projector.js';\n\nexport interface WorkroomProjectionDeliveryWorkerOptions {\n readonly repository: WorkroomProjectionRepository;\n readonly outbound: WorkroomProjectionDeliveryPort;\n readonly workerId: string;\n readonly leaseMs: number;\n readonly governance?: WorkroomProjectionGovernancePort;\n readonly authority?: Readonly<{\n authorize(item: WorkroomProjectionOutboxItem): Promise<boolean>;\n }>;\n /** Completion clock; production defaults to wall time, tests may inject a deterministic clock. */\n readonly now?: () => number;\n}\n\n/** At-least-once delivery worker; Projection receipts never mutate Kernel facts. */\nexport class WorkroomProjectionDeliveryWorker {\n readonly #repository: WorkroomProjectionRepository;\n readonly #outbound: WorkroomProjectionDeliveryPort;\n readonly #workerId: string;\n readonly #leaseMs: number;\n readonly #governance?: WorkroomProjectionGovernancePort;\n readonly #authority?: WorkroomProjectionDeliveryWorkerOptions['authority'];\n readonly #now: () => number;\n\n constructor(options: WorkroomProjectionDeliveryWorkerOptions) {\n requireText(options.workerId, 'workerId');\n requirePositiveInteger(options.leaseMs, 'leaseMs');\n this.#repository = options.repository;\n this.#outbound = options.outbound;\n this.#workerId = options.workerId;\n this.#leaseMs = options.leaseMs;\n this.#governance = options.governance;\n this.#authority = options.authority;\n this.#now = options.now ?? Date.now;\n }\n\n async runOnce(\n now: number,\n signal: AbortSignal,\n ): Promise<WorkroomProjectionDeliveryResult | Readonly<{ status: 'idle' }>> {\n requireFiniteNumber(now, 'delivery now');\n signal.throwIfAborted();\n const claimed = await this.#claim(now);\n if (!claimed) return Object.freeze({ status: 'idle' });\n let result: WorkroomProjectionDeliveryResult;\n try {\n const authorized = this.#authority ? await this.#authority.authorize(claimed) : true;\n if (!authorized) {\n result = Object.freeze({\n status: 'failed', code: 'catalog_binding_stale', retryable: false,\n });\n } else if (!this.#governance) {\n result = Object.freeze({\n status: 'failed', code: 'project_authority_unavailable', retryable: false,\n });\n } else {\n const governed = await this.#governance.revalidate(claimed.disclosure, signal);\n result = governed.status === 'blocked'\n ? (() => {\n const reason = createWorkroomGovernedDispatchReason(governed.reason);\n return Object.freeze({\n status: 'failed' as const, code: reason.code, retryable: reason.retryable,\n });\n })()\n : normalizeDeliveryResult(await this.#outbound.send(claimed, governed.body, signal));\n }\n } catch (error) {\n if (signal.aborted) throw signal.reason ?? error;\n result = Object.freeze({ status: 'failed', code: 'transport_error', retryable: true });\n }\n // Once send returned a receipt the external effect already happened;\n // cancellation must not discard it and cause a blind duplicate retry.\n const settledAt = this.#now();\n requireFiniteNumber(settledAt, 'delivery completion time');\n await this.#settle(claimed, result, settledAt);\n return result;\n }\n\n async #claim(now: number): Promise<WorkroomProjectionOutboxItem | undefined> {\n for (let conflict = 0; conflict < 8; conflict += 1) {\n const state = await this.#repository.read();\n try {\n return await this.#repository.claimNext(\n state.revision,\n this.#workerId,\n now,\n this.#leaseMs,\n );\n } catch (error) {\n if (!(error instanceof WorkroomProjectionRevisionConflictError)) throw error;\n }\n }\n throw new Error('Workroom Projection delivery claim CAS retries exhausted');\n }\n\n async #settle(\n item: WorkroomProjectionOutboxItem,\n result: WorkroomProjectionDeliveryResult,\n settledAt: number,\n ): Promise<void> {\n for (let conflict = 0; conflict < 8; conflict += 1) {\n const state = await this.#repository.read();\n try {\n await this.#repository.settle(\n state.revision,\n item.id,\n this.#workerId,\n item.delivery.fence,\n result,\n settledAt,\n );\n return;\n } catch (error) {\n if (!(error instanceof WorkroomProjectionRevisionConflictError)) throw error;\n }\n }\n throw new Error('Workroom Projection delivery settlement CAS retries exhausted');\n }\n}\n"]}
@@ -8,4 +8,3 @@ export declare class FileWorkroomProjectionRepository implements WorkroomProject
8
8
  claimNext(expectedRevision: number, workerId: string, now: number, leaseMs: number): Promise<WorkroomProjectionOutboxItem | undefined>;
9
9
  settle(expectedRevision: number, itemId: string, workerId: string, fence: number, result: WorkroomProjectionDeliveryResult, settledAt: number): Promise<WorkroomProjectionState>;
10
10
  }
11
- //# sourceMappingURL=file-repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-repository.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/file-repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-repository.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/file-repository.ts"],"names":[],"mappings":"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","sourcesContent":["import { readFile, readdir } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { DurableFileStore } from '../durable-file-store.js';\nimport { digestCanonicalWorkroomValue as digest } from '../canonical-value.js';\nimport type {\n WorkroomProjectionBinding,\n WorkroomProjectionCapture,\n WorkroomProjectionDeliveryResult,\n WorkroomProjectionOutboxItem,\n WorkroomProjectionRepository,\n WorkroomProjectionState,\n} from './contracts.js';\nimport { WorkroomProjectionRevisionConflictError } from './contracts.js';\nimport {\n applyBinding,\n applyCapture,\n applyClaim,\n applySettlement,\n emptyProjectionState,\n hasCode,\n parseProjectionState,\n projectionSnapshotName,\n} from './repository-state.js';\n\nexport class FileWorkroomProjectionRepository implements WorkroomProjectionRepository {\n readonly #store: DurableFileStore;\n\n constructor(directory: string) {\n this.#store = new DurableFileStore(directory);\n }\n\n async read(): Promise<WorkroomProjectionState> {\n let names: string[];\n try {\n names = (await readdir(this.#store.directory))\n .filter(name => /^projection\\.[0-9]{16}\\.json$/u.test(name))\n .sort();\n } catch (error) {\n if (hasCode(error, 'ENOENT')) return emptyProjectionState();\n throw error;\n }\n if (names.length === 0) return emptyProjectionState();\n for (let index = 0; index < names.length; index += 1) {\n const expected = projectionSnapshotName(index + 1);\n if (names[index] !== expected) {\n throw new Error(`Workroom Projection snapshot gap before revision ${index + 1}`);\n }\n }\n const parsed = JSON.parse(await readFile(\n join(this.#store.directory, names.at(-1)!),\n 'utf8',\n )) as unknown;\n return parseProjectionState(parsed, names.length);\n }\n\n async capture(\n expectedRevision: number,\n input: WorkroomProjectionCapture,\n ): Promise<WorkroomProjectionState> {\n const current = await this.read();\n if (current.revision !== expectedRevision) {\n throw new WorkroomProjectionRevisionConflictError(expectedRevision, current.revision);\n }\n const next = applyCapture(current, input);\n return await this.#publish(expectedRevision, next);\n }\n\n async bind(\n expectedRevision: number,\n binding: WorkroomProjectionBinding,\n ): Promise<WorkroomProjectionState> {\n const current = await this.read();\n if (current.revision !== expectedRevision) {\n throw new WorkroomProjectionRevisionConflictError(expectedRevision, current.revision);\n }\n const next = applyBinding(current, binding);\n if (next === current) return current;\n return await this.#publish(expectedRevision, next);\n }\n\n async claimNext(\n expectedRevision: number,\n workerId: string,\n now: number,\n leaseMs: number,\n ): Promise<WorkroomProjectionOutboxItem | undefined> {\n const current = await this.read();\n if (current.revision !== expectedRevision) {\n throw new WorkroomProjectionRevisionConflictError(expectedRevision, current.revision);\n }\n const claimed = applyClaim(current, workerId, now, leaseMs);\n if (!claimed) return undefined;\n const persisted = await this.#publish(expectedRevision, claimed.state);\n return persisted.items[claimed.item.id];\n }\n\n async settle(\n expectedRevision: number,\n itemId: string,\n workerId: string,\n fence: number,\n result: WorkroomProjectionDeliveryResult,\n settledAt: number,\n ): Promise<WorkroomProjectionState> {\n const current = await this.read();\n if (current.revision !== expectedRevision) {\n throw new WorkroomProjectionRevisionConflictError(expectedRevision, current.revision);\n }\n return await this.#publish(\n expectedRevision,\n applySettlement(current, itemId, workerId, fence, result, settledAt),\n );\n }\n\n async #publish(\n expectedRevision: number,\n next: WorkroomProjectionState,\n ): Promise<WorkroomProjectionState> {\n await this.#store.ensureDurableLeaf('Workroom Projection repository');\n const target = join(this.#store.directory, projectionSnapshotName(next.revision));\n const published = await this.#store.publishCreateOnly({\n target,\n content: JSON.stringify({ state: next, digest: digest(next) }),\n createdValue: next,\n onConflict: async () => {\n const winner = parseProjectionState(\n JSON.parse(await readFile(target, 'utf8')) as unknown,\n next.revision,\n );\n if (digest(winner) === digest(next)) return await this.read();\n const latest = await this.read();\n throw new WorkroomProjectionRevisionConflictError(expectedRevision, latest.revision);\n },\n });\n return published.value;\n }\n}\n"]}
@@ -7,4 +7,3 @@ export { WorkroomProjectionTracer } from './tracer.js';
7
7
  export type { WorkroomProjectionTracerOptions } from './tracer.js';
8
8
  export { resolveProjectionReplyTarget, workroomProjectionMessageKey, } from './repository-state.js';
9
9
  export { projectionAudience, workroomLifecycleProjectionCursorKey, workroomPortfolioProjectionCursorKey, workroomProjectionBindingKey, } from './projector.js';
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,oCAAoC,EACpC,oCAAoC,EACpC,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,oCAAoC,EACpC,oCAAoC,EACpC,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC","sourcesContent":["export * from './contracts.js';\nexport { MemoryWorkroomProjectionRepository } from './memory-repository.js';\nexport { FileWorkroomProjectionRepository } from './file-repository.js';\nexport { WorkroomProjectionDeliveryWorker } from './delivery-worker.js';\nexport type { WorkroomProjectionDeliveryWorkerOptions } from './delivery-worker.js';\nexport { WorkroomProjectionTracer } from './tracer.js';\nexport type { WorkroomProjectionTracerOptions } from './tracer.js';\nexport {\n resolveProjectionReplyTarget,\n workroomProjectionMessageKey,\n} from './repository-state.js';\nexport {\n projectionAudience,\n workroomLifecycleProjectionCursorKey,\n workroomPortfolioProjectionCursorKey,\n workroomProjectionBindingKey,\n} from './projector.js';\n"]}
@@ -8,4 +8,3 @@ export declare class MemoryWorkroomProjectionRepository implements WorkroomProje
8
8
  settle(expectedRevision: number, itemId: string, workerId: string, fence: number, result: WorkroomProjectionDeliveryResult, settledAt: number): Promise<WorkroomProjectionState>;
9
9
  }
10
10
  /** Crash-durable, cross-process CAS snapshots for one Projection binding. */
11
- //# sourceMappingURL=memory-repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-repository.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/memory-repository.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,uCAAuC,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,eAAe,EACf,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,OAAO,kCAAkC;IAC7C,MAAM,GAA4B,oBAAoB,EAAE,CAAC;IAEzD,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,gBAAwB,EAAE,OAAkC;QACrE,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,gBAAwB,EACxB,KAAgC;QAEhC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAC9C,MAAM,IAAI,uCAAuC,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,gBAAwB,EAAE,QAAgB,EAAE,GAAW,EAAE,OAAe;QACtF,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,MAAc,EACd,QAAgB,EAChB,KAAa,EACb,MAAwC,EACxC,SAAiB;QAEjB,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACvF,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,eAAe,CAAC,gBAAwB;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAC9C,MAAM,IAAI,uCAAuC,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;CACF;AAED,6EAA6E"}
1
+ {"version":3,"file":"memory-repository.js","sourceRoot":"","sources":["../../../src/workroom/projection-outbox/memory-repository.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,uCAAuC,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,eAAe,EACf,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,OAAO,kCAAkC;IAC7C,MAAM,GAA4B,oBAAoB,EAAE,CAAC;IAEzD,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,gBAAwB,EAAE,OAAkC;QACrE,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,gBAAwB,EACxB,KAAgC;QAEhC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAC9C,MAAM,IAAI,uCAAuC,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,gBAAwB,EAAE,QAAgB,EAAE,GAAW,EAAE,OAAe;QACtF,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,MAAc,EACd,QAAgB,EAChB,KAAa,EACb,MAAwC,EACxC,SAAiB;QAEjB,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACvF,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,eAAe,CAAC,gBAAwB;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAC9C,MAAM,IAAI,uCAAuC,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;CACF;AAED,6EAA6E","sourcesContent":["import type {\n WorkroomProjectionBinding,\n WorkroomProjectionCapture,\n WorkroomProjectionDeliveryResult,\n WorkroomProjectionOutboxItem,\n WorkroomProjectionRepository,\n WorkroomProjectionState,\n} from './contracts.js';\nimport { WorkroomProjectionRevisionConflictError } from './contracts.js';\nimport {\n applyBinding,\n applyCapture,\n applyClaim,\n applySettlement,\n emptyProjectionState,\n} from './repository-state.js';\n\nexport class MemoryWorkroomProjectionRepository implements WorkroomProjectionRepository {\n #state: WorkroomProjectionState = emptyProjectionState();\n\n async read(): Promise<WorkroomProjectionState> {\n return this.#state;\n }\n\n async bind(expectedRevision: number, binding: WorkroomProjectionBinding) {\n this.#assertRevision(expectedRevision);\n this.#state = applyBinding(this.#state, binding);\n return this.#state;\n }\n\n async capture(\n expectedRevision: number,\n input: WorkroomProjectionCapture,\n ): Promise<WorkroomProjectionState> {\n if (this.#state.revision !== expectedRevision) {\n throw new WorkroomProjectionRevisionConflictError(expectedRevision, this.#state.revision);\n }\n this.#state = applyCapture(this.#state, input);\n return this.#state;\n }\n\n async claimNext(expectedRevision: number, workerId: string, now: number, leaseMs: number) {\n this.#assertRevision(expectedRevision);\n const claimed = applyClaim(this.#state, workerId, now, leaseMs);\n if (!claimed) return undefined;\n this.#state = claimed.state;\n return claimed.item;\n }\n\n async settle(\n expectedRevision: number,\n itemId: string,\n workerId: string,\n fence: number,\n result: WorkroomProjectionDeliveryResult,\n settledAt: number,\n ) {\n this.#assertRevision(expectedRevision);\n this.#state = applySettlement(this.#state, itemId, workerId, fence, result, settledAt);\n return this.#state;\n }\n\n #assertRevision(expectedRevision: number): void {\n if (this.#state.revision !== expectedRevision) {\n throw new WorkroomProjectionRevisionConflictError(expectedRevision, this.#state.revision);\n }\n }\n}\n\n/** Crash-durable, cross-process CAS snapshots for one Projection binding. */\n"]}
@@ -33,4 +33,3 @@ export declare function requireFiniteNumber(value: unknown, label: string): asse
33
33
  export declare function requireRecord(value: unknown, label: string): Record<string, unknown>;
34
34
  export declare function assertExactRecordKeys(value: Record<string, unknown>, expected: readonly string[], label: string): void;
35
35
  export {};
36
- //# sourceMappingURL=projector.d.ts.map