@tearleads/client-sdk 0.1.61 → 0.1.63

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 (1196) hide show
  1. package/client/containerContents/documentDiscovery.js +5 -5
  2. package/client/containerContents/documentDiscovery.js.map +1 -1
  3. package/client/containerContents/index.d.ts +7 -7
  4. package/client/containerContents/index.js +7 -7
  5. package/client/containerContents/index.js.map +1 -1
  6. package/client/containerContents/types.d.ts +6 -6
  7. package/client/containerContents/types.js.map +1 -1
  8. package/client/deviceFirst/index.js +2 -2
  9. package/client/deviceFirst/index.js.map +1 -1
  10. package/client/organizations/currentPrincipalMutations.js +5 -5
  11. package/client/organizations/currentPrincipalMutations.js.map +1 -1
  12. package/client/organizations/organizationDataUsage.js +1 -1
  13. package/client/organizations/organizationDataUsage.js.map +1 -1
  14. package/client/organizations/organizationGroupHistory.js +1 -1
  15. package/client/organizations/organizationGroupHistory.js.map +1 -1
  16. package/client/organizations/organizationGroupNameHydration.js +3 -3
  17. package/client/organizations/organizationGroupNameHydration.js.map +1 -1
  18. package/client/organizations/organizationHistory.js +2 -2
  19. package/client/organizations/organizationHistory.js.map +1 -1
  20. package/client/organizations/organizationReadModels.js +1 -1
  21. package/client/organizations/organizationReadModels.js.map +1 -1
  22. package/client/organizations/principalContainerMutations.js +1 -1
  23. package/client/organizations/principalContainerMutations.js.map +1 -1
  24. package/client/organizations/principalMutationRecovery.js.map +1 -1
  25. package/client/organizations/principalMutations.js +5 -5
  26. package/client/organizations/principalMutations.js.map +1 -1
  27. package/client/runtime/principalMutationApi.d.ts +1 -1
  28. package/client/runtime/principalMutationApi.js +2 -2
  29. package/client/runtime/principalMutationApi.js.map +1 -1
  30. package/client/runtime/principalMutationDispatch.js +1 -1
  31. package/client/runtime/principalMutationDispatch.js.map +1 -1
  32. package/client/session/index.js +1 -1
  33. package/client/session/index.js.map +1 -1
  34. package/client/session/sessionOrganizationCreation.js +1 -1
  35. package/client/session/sessionOrganizationCreation.js.map +1 -1
  36. package/client/session/sessionPurgeRecovery.js +2 -2
  37. package/client/session/sessionPurgeRecovery.js.map +1 -1
  38. package/package.json +1 -1
  39. package/stores/container-contents/containerStatePersistence.js +1 -1
  40. package/stores/container-contents/documentRecovery.js +2 -2
  41. package/stores/container-contents/documentRecovery.js.map +1 -1
  42. package/stores/container-contents/documentWork.js.map +1 -1
  43. package/stores/container-contents/localRefresh.js +2 -2
  44. package/stores/container-contents/localRefresh.js.map +1 -1
  45. package/stores/container-contents/operations.js +2 -2
  46. package/stores/container-contents/operations.js.map +1 -1
  47. package/stores/container-contents/remoteContainerIngestion.js +1 -1
  48. package/stores/container-contents/remoteEventSync.js +1 -1
  49. package/stores/container-contents/remoteHydrationRequest.js +1 -1
  50. package/stores/container-contents/setContainerIconOperation.js +2 -2
  51. package/stores/container-contents/setContainerIconOperation.js.map +1 -1
  52. package/stores/container-contents/shareOperations.js +1 -1
  53. package/stores/container-contents/startupHydration.js +1 -1
  54. package/stores/container-contents/syncAgent.d.ts +2 -2
  55. package/stores/container-contents/syncAgentTypes.d.ts +1 -1
  56. package/stores/container-contents/syncLaneIteration.js +2 -2
  57. package/stores/container-contents/syncLaneIteration.js.map +1 -1
  58. package/stores/container-contents/systemContainerIcon.js +1 -1
  59. package/stores/container-contents/systemContainerIcon.js.map +1 -1
  60. package/stores/documents/documentStore/attachmentHydrationCommit.js +1 -1
  61. package/stores/documents/documentStore/attachmentHydrationCommit.js.map +1 -1
  62. package/stores/documents/documentStore/attachmentUploadAttempt.js +1 -1
  63. package/stores/documents/documentStore/syncRemoteSignals.js +1 -1
  64. package/stores/documents/documentStore/syncRemoteSignals.js.map +1 -1
  65. package/stores/documents/documentStore/syncShared.js +1 -1
  66. package/stores/documents/documentStore/syncShared.js.map +1 -1
  67. package/workflows/blobs/detach.js +1 -1
  68. package/workflows/blobs/detach.js.map +1 -1
  69. package/workflows/blobs/hydration/blobChunkDecryption.js +34 -0
  70. package/workflows/blobs/hydration/blobChunkDecryption.js.map +1 -0
  71. package/workflows/blobs/hydration/decrypt.d.ts +12 -0
  72. package/workflows/blobs/hydration/decrypt.js +246 -0
  73. package/workflows/blobs/hydration/decrypt.js.map +1 -0
  74. package/workflows/blobs/hydration/hydrate.d.ts +56 -0
  75. package/workflows/blobs/hydration/hydrate.js +190 -0
  76. package/workflows/blobs/hydration/hydrate.js.map +1 -0
  77. package/workflows/blobs/hydration/hydrationResults.js +23 -0
  78. package/workflows/blobs/hydration/hydrationResults.js.map +1 -0
  79. package/workflows/blobs/index.d.ts +3 -3
  80. package/workflows/blobs/index.js +3 -3
  81. package/workflows/blobs/index.js.map +1 -1
  82. package/workflows/blobs/upload/automaticMultipartUpload.js +9 -0
  83. package/workflows/blobs/upload/automaticMultipartUpload.js.map +1 -0
  84. package/workflows/blobs/upload/index.d.ts +10 -0
  85. package/workflows/blobs/upload/index.js +243 -0
  86. package/workflows/blobs/upload/index.js.map +1 -0
  87. package/workflows/blobs/upload/multipartFirstParts.js +82 -0
  88. package/workflows/blobs/upload/multipartFirstParts.js.map +1 -0
  89. package/workflows/blobs/upload/multipartStageFailures.js +36 -0
  90. package/workflows/blobs/upload/multipartStageFailures.js.map +1 -0
  91. package/workflows/blobs/upload/multipartStageResolution.js.map +1 -0
  92. package/workflows/blobs/upload/multipartUpload.js +274 -0
  93. package/workflows/blobs/upload/multipartUpload.js.map +1 -0
  94. package/workflows/blobs/verification/attachmentBindingVerification.js +49 -0
  95. package/workflows/blobs/verification/attachmentBindingVerification.js.map +1 -0
  96. package/workflows/blobs/verification/attachmentDecryptor.js +41 -0
  97. package/workflows/blobs/verification/attachmentDecryptor.js.map +1 -0
  98. package/workflows/blobs/verification/attachmentKeyAuthenticator.js +68 -0
  99. package/workflows/blobs/verification/attachmentKeyAuthenticator.js.map +1 -0
  100. package/workflows/blobs/verification/retainedAttachmentVerification.js +40 -0
  101. package/workflows/blobs/verification/retainedAttachmentVerification.js.map +1 -0
  102. package/workflows/blobs/verification/verifiedWrapScope.js +20 -0
  103. package/workflows/blobs/verification/verifiedWrapScope.js.map +1 -0
  104. package/workflows/blobs/verification/writerProjection.js +29 -0
  105. package/workflows/blobs/verification/writerProjection.js.map +1 -0
  106. package/workflows/container-contents/attribution/documentAttributionRanges.d.ts +26 -0
  107. package/workflows/container-contents/attribution/documentCharacterBlame.js +33 -0
  108. package/workflows/container-contents/attribution/documentCharacterBlame.js.map +1 -0
  109. package/workflows/container-contents/attribution/documentFieldBlame.js +26 -0
  110. package/workflows/container-contents/attribution/documentFieldBlame.js.map +1 -0
  111. package/workflows/container-contents/container-state/createIntentSync.js +1 -1
  112. package/workflows/container-contents/container-state/createIntentSync.js.map +1 -1
  113. package/workflows/container-contents/container-state/moveIntentSync.js +1 -1
  114. package/workflows/container-contents/container-state/moveIntentSync.js.map +1 -1
  115. package/workflows/container-contents/container-state/purgeTree.js +2 -2
  116. package/workflows/container-contents/container-state/purgeTree.js.map +1 -1
  117. package/workflows/container-contents/container-state/purgeTreeContainerDeletion.js.map +1 -1
  118. package/workflows/container-contents/container-state/remote.js +1 -1
  119. package/workflows/container-contents/container-state/remote.js.map +1 -1
  120. package/workflows/container-contents/container-state/sharePersistence.js +2 -2
  121. package/workflows/container-contents/container-state/sharePersistence.js.map +1 -1
  122. package/workflows/container-contents/documentDiscovery/containerDocumentListing.js +106 -0
  123. package/workflows/container-contents/documentDiscovery/documentDiscoveryApply.js +65 -0
  124. package/workflows/container-contents/documentDiscovery/documentDiscoveryApply.js.map +1 -0
  125. package/workflows/container-contents/documentDiscovery/documentDiscoveryCandidates.js.map +1 -0
  126. package/workflows/container-contents/documentDiscovery/documentDiscoveryEvidence.js +91 -0
  127. package/workflows/container-contents/documentDiscovery/documentDiscoveryEvidence.js.map +1 -0
  128. package/workflows/container-contents/documentDiscovery/documentDiscoveryInputs.js +85 -0
  129. package/workflows/container-contents/documentDiscovery/documentDiscoveryInputs.js.map +1 -0
  130. package/workflows/container-contents/documentDiscovery/documentDiscoveryLanes.js.map +1 -0
  131. package/workflows/container-contents/documentDiscovery/documentDiscoveryTypes.d.ts +160 -0
  132. package/workflows/container-contents/documentDiscovery/documentDiscoveryTypes.js.map +1 -0
  133. package/workflows/container-contents/documentDiscovery/index.d.ts +12 -0
  134. package/workflows/container-contents/documentDiscovery/index.js +183 -0
  135. package/workflows/container-contents/documentDiscovery/index.js.map +1 -0
  136. package/workflows/container-contents/documentLinks/availableDocumentLinkIntent.js +32 -0
  137. package/workflows/container-contents/documentLinks/availableDocumentLinkIntent.js.map +1 -0
  138. package/workflows/container-contents/documentLinks/deferredDocumentLinks.js +9 -0
  139. package/workflows/container-contents/documentLinks/deferredDocumentLinks.js.map +1 -0
  140. package/workflows/container-contents/documentLinks/documentLinkIntent.js +82 -0
  141. package/workflows/container-contents/documentLinks/documentLinkIntent.js.map +1 -0
  142. package/workflows/container-contents/documentLinks/documentLocalRelink.js.map +1 -0
  143. package/workflows/container-contents/documentLinks/index.d.ts +64 -0
  144. package/workflows/container-contents/documentLinks/index.js +264 -0
  145. package/workflows/container-contents/documentLinks/index.js.map +1 -0
  146. package/workflows/container-contents/documentMove/documentMoveDeniedReplay.js.map +1 -0
  147. package/workflows/container-contents/documentMove/documentMoveFailure.js +35 -0
  148. package/workflows/container-contents/documentMove/documentMoveFailure.js.map +1 -0
  149. package/workflows/container-contents/documentMove/documentMoveIntent.js +77 -0
  150. package/workflows/container-contents/documentMove/documentMoveIntent.js.map +1 -0
  151. package/workflows/container-contents/documentMove/documentMoveIntentErrors.js +17 -0
  152. package/workflows/container-contents/documentMove/documentMoveIntentErrors.js.map +1 -0
  153. package/workflows/container-contents/documentMove/documentMoveIntentSettlement.js +25 -0
  154. package/workflows/container-contents/documentMove/documentMoveIntentSettlement.js.map +1 -0
  155. package/workflows/container-contents/documentMove/documentMoveIntentSync.js +346 -0
  156. package/workflows/container-contents/documentMove/documentMoveIntentSync.js.map +1 -0
  157. package/workflows/container-contents/documentMove/documentMoveVanishedRefresh.js +100 -0
  158. package/workflows/container-contents/documentMove/documentMoveVanishedRefresh.js.map +1 -0
  159. package/workflows/container-contents/documentPriming/documentHydrationProbe.js +146 -0
  160. package/workflows/container-contents/documentPriming/documentHydrationProbe.js.map +1 -0
  161. package/workflows/container-contents/documentPriming/documentRuntimeTargetSync.js.map +1 -0
  162. package/workflows/container-contents/documentPriming/index.js +245 -0
  163. package/workflows/container-contents/documentPriming/index.js.map +1 -0
  164. package/workflows/container-contents/documentQueries/documentStructure.d.ts +53 -0
  165. package/workflows/container-contents/documentQueries/documentStructure.js +183 -0
  166. package/workflows/container-contents/documentQueries/documentStructure.js.map +1 -0
  167. package/workflows/container-contents/documentQueries/documentStructureTypes.d.ts +32 -0
  168. package/workflows/container-contents/documentQueries/documentStructureTypes.js.map +1 -0
  169. package/workflows/container-contents/documentQueries/documentSubtreeQueries.js +169 -0
  170. package/workflows/container-contents/documentQueries/documentSubtreeQueries.js.map +1 -0
  171. package/workflows/container-contents/documentQueries/index.d.ts +62 -0
  172. package/workflows/container-contents/documentQueries/index.js +212 -0
  173. package/workflows/container-contents/documentQueries/index.js.map +1 -0
  174. package/workflows/container-contents/documentQueries/orphanedDocumentSql.js +39 -0
  175. package/workflows/container-contents/documentQueries/orphanedDocumentSql.js.map +1 -0
  176. package/workflows/container-contents/documentQueries/pendingDownloads.d.ts +12 -0
  177. package/workflows/container-contents/documentQueries/pendingDownloads.js +42 -0
  178. package/workflows/container-contents/documentQueries/pendingDownloads.js.map +1 -0
  179. package/workflows/container-contents/documentQueries/sql.js +1 -1
  180. package/workflows/container-contents/documentQueries/sql.js.map +1 -1
  181. package/workflows/container-contents/index.d.ts +13 -13
  182. package/workflows/container-contents/index.js +11 -11
  183. package/workflows/container-contents/index.js.map +1 -1
  184. package/workflows/container-contents/info/blobInfo.d.ts +6 -0
  185. package/workflows/container-contents/info/blobInfo.js +323 -0
  186. package/workflows/container-contents/info/blobInfo.js.map +1 -0
  187. package/workflows/container-contents/info/blobInfoTypes.d.ts +48 -0
  188. package/workflows/container-contents/info/blobInfoTypes.js.map +1 -0
  189. package/workflows/container-contents/info/containerInfo.d.ts +77 -0
  190. package/workflows/container-contents/info/containerInfo.js +200 -0
  191. package/workflows/container-contents/info/containerInfo.js.map +1 -0
  192. package/workflows/container-contents/info/documentInfo.d.ts +18 -0
  193. package/workflows/container-contents/info/documentInfo.js +306 -0
  194. package/workflows/container-contents/info/documentInfo.js.map +1 -0
  195. package/workflows/container-contents/info/documentInfoTypes.d.ts +92 -0
  196. package/workflows/container-contents/info/documentInfoTypes.js.map +1 -0
  197. package/workflows/container-contents/metadata/index.d.ts +25 -0
  198. package/workflows/container-contents/metadata/index.js +217 -0
  199. package/workflows/container-contents/metadata/index.js.map +1 -0
  200. package/workflows/container-contents/metadata/metadataEvents.d.ts +7 -0
  201. package/workflows/container-contents/metadata/metadataEvents.js +47 -0
  202. package/workflows/container-contents/metadata/metadataEvents.js.map +1 -0
  203. package/workflows/container-contents/metadata/metadataIncomingUpdateIsolation.js +40 -0
  204. package/workflows/container-contents/metadata/metadataIncomingUpdateIsolation.js.map +1 -0
  205. package/workflows/container-contents/metadata/metadataMutationPreparation.d.ts +75 -0
  206. package/workflows/container-contents/metadata/metadataMutationPreparation.js +177 -0
  207. package/workflows/container-contents/metadata/metadataMutationPreparation.js.map +1 -0
  208. package/workflows/container-contents/metadata/metadataPersistence.d.ts +34 -0
  209. package/workflows/container-contents/metadata/metadataPersistence.js +254 -0
  210. package/workflows/container-contents/metadata/metadataPersistence.js.map +1 -0
  211. package/workflows/container-contents/metadata/metadataPullContinuationInvalidation.js +65 -0
  212. package/workflows/container-contents/metadata/metadataPullContinuationInvalidation.js.map +1 -0
  213. package/workflows/container-contents/metadata/metadataReadState.d.ts +2 -0
  214. package/workflows/container-contents/metadata/metadataReadState.js.map +1 -0
  215. package/workflows/container-contents/metadata/metadataRecord.js +43 -0
  216. package/workflows/container-contents/metadata/metadataRecord.js.map +1 -0
  217. package/workflows/container-contents/metadata/metadataRemoteSync.d.ts +38 -0
  218. package/workflows/container-contents/metadata/metadataRemoteSync.js +91 -0
  219. package/workflows/container-contents/metadata/metadataRemoteSync.js.map +1 -0
  220. package/workflows/container-contents/metadata/metadataStateInstallation.d.ts +3 -0
  221. package/workflows/container-contents/metadata/metadataStateInstallation.js.map +1 -0
  222. package/workflows/container-contents/metadata/metadataStateIsolation.js +80 -0
  223. package/workflows/container-contents/metadata/metadataStateIsolation.js.map +1 -0
  224. package/workflows/container-contents/metadata/metadataSyncErrors.js +41 -0
  225. package/workflows/container-contents/metadata/metadataSyncErrors.js.map +1 -0
  226. package/workflows/container-contents/metadata/metadataSyncSettlement.d.ts +13 -0
  227. package/workflows/container-contents/metadata/metadataSyncSettlement.js +27 -0
  228. package/workflows/container-contents/metadata/metadataSyncSettlement.js.map +1 -0
  229. package/workflows/container-contents/metadata/metadataTypes.d.ts +54 -0
  230. package/workflows/container-contents/metadata/metadataTypes.js.map +1 -0
  231. package/workflows/container-contents/pendingWrites/aggregation.js.map +1 -1
  232. package/workflows/container-contents/pendingWrites/deferredTails.js.map +1 -1
  233. package/workflows/container-contents/pendingWrites/index.d.ts +26 -0
  234. package/workflows/container-contents/pendingWrites/index.js +116 -0
  235. package/workflows/container-contents/pendingWrites/index.js.map +1 -0
  236. package/workflows/container-contents/projectionGeneration.js.map +1 -1
  237. package/workflows/container-contents/projectionView.js +1 -1
  238. package/workflows/container-contents/projectionView.js.map +1 -1
  239. package/workflows/container-contents/recovery/folderRecovery.d.ts +19 -0
  240. package/workflows/container-contents/recovery/folderRecovery.js +32 -0
  241. package/workflows/container-contents/recovery/folderRecovery.js.map +1 -0
  242. package/workflows/container-contents/recovery/staleRootRecovery.js +111 -0
  243. package/workflows/container-contents/recovery/staleRootRecovery.js.map +1 -0
  244. package/workflows/container-contents/remoteHydration/completeHydration.js +1 -1
  245. package/workflows/container-contents/remoteHydration/completeHydration.js.map +1 -1
  246. package/workflows/container-contents/remoteHydration/destinationRootReload.js +1 -1
  247. package/workflows/container-contents/remoteHydration/destinationRootReload.js.map +1 -1
  248. package/workflows/container-contents/remoteHydration/heldContainerRebind.js +1 -1
  249. package/workflows/container-contents/remoteHydration/heldContainerRebind.js.map +1 -1
  250. package/workflows/container-contents/remoteHydration/index.d.ts +28 -0
  251. package/workflows/container-contents/remoteHydration/index.js +302 -0
  252. package/workflows/container-contents/remoteHydration/index.js.map +1 -0
  253. package/workflows/container-contents/remoteHydration/remoteContainerPageHydration.js +244 -0
  254. package/workflows/container-contents/remoteHydration/remoteContainerPageHydration.js.map +1 -0
  255. package/workflows/container-contents/remoteHydration/remoteContainerState.js +263 -0
  256. package/workflows/container-contents/remoteHydration/remoteContainerState.js.map +1 -0
  257. package/workflows/container-contents/remoteHydration/types.d.ts +1 -1
  258. package/workflows/container-contents/remoteHydration/verifiedDestination.js +1 -1
  259. package/workflows/container-contents/remoteHydration/verifiedDestination.js.map +1 -1
  260. package/workflows/container-contents/tombstones/documentPurge.d.ts +37 -0
  261. package/workflows/container-contents/tombstones/documentPurge.js +136 -0
  262. package/workflows/container-contents/tombstones/documentPurge.js.map +1 -0
  263. package/workflows/container-contents/tombstones/documentTombstoneEvidence.js +173 -0
  264. package/workflows/container-contents/tombstones/documentTombstoneEvidence.js.map +1 -0
  265. package/workflows/container-contents/tombstones/documentTombstoneGate.js +94 -0
  266. package/workflows/container-contents/tombstones/documentTombstoneGate.js.map +1 -0
  267. package/workflows/containers/child/currentShareGrantMutation.js +5 -5
  268. package/workflows/containers/child/currentShareGrantMutation.js.map +1 -1
  269. package/workflows/containers/child/currentSharePrincipalPolicy.js +5 -5
  270. package/workflows/containers/child/currentSharePrincipalPolicy.js.map +1 -1
  271. package/workflows/containers/child/runtimeCurrentGroupShare.js +1 -1
  272. package/workflows/containers/child/runtimeCurrentGroupShare.js.map +1 -1
  273. package/workflows/containers/child/share.d.ts +1 -1
  274. package/workflows/containers/child/share.js +4 -4
  275. package/workflows/containers/child/share.js.map +1 -1
  276. package/workflows/containers/child/sharePrincipalPolicy.d.ts +1 -1
  277. package/workflows/containers/child/sharePrincipalPolicy.js +2 -2
  278. package/workflows/containers/child/sharePrincipalPolicy.js.map +1 -1
  279. package/workflows/documents/attachments/attachmentPersistence.d.ts +58 -0
  280. package/workflows/documents/attachments/attachmentPersistence.js.map +1 -0
  281. package/workflows/documents/attachments/blobMutationLock.d.ts +8 -0
  282. package/workflows/documents/attachments/blobMutationLock.js +35 -0
  283. package/workflows/documents/attachments/blobMutationLock.js.map +1 -0
  284. package/workflows/documents/attachments/orphanBlobReclaimState.js.map +1 -0
  285. package/workflows/documents/attachments/orphanBlobReclaims.d.ts +6 -0
  286. package/workflows/documents/attachments/orphanBlobReclaims.js +143 -0
  287. package/workflows/documents/attachments/orphanBlobReclaims.js.map +1 -0
  288. package/workflows/documents/authorAccessFailure.js.map +1 -1
  289. package/workflows/documents/create/createAdoption.js +100 -0
  290. package/workflows/documents/create/createAdoption.js.map +1 -0
  291. package/workflows/documents/create/createProjection.d.ts +14 -0
  292. package/workflows/documents/create/createProjectionFetch.d.ts +27 -0
  293. package/workflows/documents/create/createProjectionFetch.js.map +1 -0
  294. package/workflows/documents/create/createResponse.js +49 -0
  295. package/workflows/documents/create/createResponse.js.map +1 -0
  296. package/workflows/documents/create/documentCreationPersistence.js +16 -0
  297. package/workflows/documents/create/documentCreationPersistence.js.map +1 -0
  298. package/workflows/documents/create/index.d.ts +56 -0
  299. package/workflows/documents/create/index.js +258 -0
  300. package/workflows/documents/create/index.js.map +1 -0
  301. package/workflows/documents/documentMutationCommit.js +1 -1
  302. package/workflows/documents/documentMutationCommit.js.map +1 -1
  303. package/workflows/documents/index.d.ts +17 -17
  304. package/workflows/documents/index.js +14 -14
  305. package/workflows/documents/index.js.map +1 -1
  306. package/workflows/documents/linkSet/index.d.ts +20 -0
  307. package/workflows/documents/linkSet/index.js +290 -0
  308. package/workflows/documents/linkSet/index.js.map +1 -0
  309. package/workflows/documents/linkSet/linkSetAuthority.js +61 -0
  310. package/workflows/documents/linkSet/linkSetAuthority.js.map +1 -0
  311. package/workflows/documents/linkSet/linkSetBlobRewraps.js +143 -0
  312. package/workflows/documents/linkSet/linkSetBlobRewraps.js.map +1 -0
  313. package/workflows/documents/linkSet/linkSetProjectionSeed.js +119 -0
  314. package/workflows/documents/linkSet/linkSetProjectionSeed.js.map +1 -0
  315. package/workflows/documents/linkSet/linkSetRemote.d.ts +23 -0
  316. package/workflows/documents/linkSet/linkSetRemote.js +187 -0
  317. package/workflows/documents/linkSet/linkSetRemote.js.map +1 -0
  318. package/workflows/documents/purge/index.d.ts +53 -0
  319. package/workflows/documents/purge/index.js +204 -0
  320. package/workflows/documents/purge/index.js.map +1 -0
  321. package/workflows/documents/purge/persistedDocumentRemoval.d.ts +44 -0
  322. package/workflows/documents/purge/persistedDocumentRemoval.js +70 -0
  323. package/workflows/documents/purge/persistedDocumentRemoval.js.map +1 -0
  324. package/workflows/documents/purge/subtreePurgeScope.d.ts +8 -0
  325. package/workflows/documents/purge/subtreePurgeScope.js +18 -0
  326. package/workflows/documents/purge/subtreePurgeScope.js.map +1 -0
  327. package/workflows/documents/rotationBaseline.js +1 -1
  328. package/workflows/documents/rotationBaseline.js.map +1 -1
  329. package/workflows/documents/sync/index.d.ts +4 -0
  330. package/workflows/documents/sync/index.js +287 -0
  331. package/workflows/documents/sync/index.js.map +1 -0
  332. package/workflows/documents/sync/initialSync.js +65 -0
  333. package/workflows/documents/sync/initialSync.js.map +1 -0
  334. package/workflows/documents/sync/readOnlyProjectionFailure.js +30 -0
  335. package/workflows/documents/sync/readOnlyProjectionFailure.js.map +1 -0
  336. package/workflows/documents/sync/readOnlySync.d.ts +71 -0
  337. package/workflows/documents/sync/readOnlySync.js +269 -0
  338. package/workflows/documents/sync/readOnlySync.js.map +1 -0
  339. package/workflows/documents/sync/reportDocumentSyncQuarantine.js.map +1 -0
  340. package/workflows/documents/sync/syncAttemptPlanning.js +79 -0
  341. package/workflows/documents/sync/syncAttemptPlanning.js.map +1 -0
  342. package/workflows/documents/sync/syncAttemptState.d.ts +27 -0
  343. package/workflows/documents/sync/syncAttemptState.js.map +1 -0
  344. package/workflows/documents/sync/syncLane.d.ts +20 -0
  345. package/workflows/documents/sync/syncLane.js +94 -0
  346. package/workflows/documents/sync/syncLane.js.map +1 -0
  347. package/workflows/documents/sync/syncResponseResult.js +134 -0
  348. package/workflows/documents/sync/syncResponseResult.js.map +1 -0
  349. package/workflows/documents/sync/syncSubmittedResult.js +119 -0
  350. package/workflows/documents/sync/syncSubmittedResult.js.map +1 -0
  351. package/workflows/documents/sync/syncTrace.js +148 -0
  352. package/workflows/documents/syncFailures/index.js +252 -0
  353. package/workflows/documents/syncFailures/index.js.map +1 -0
  354. package/workflows/documents/syncFailures/syncAbandon.js +51 -0
  355. package/workflows/documents/syncFailures/syncAbandon.js.map +1 -0
  356. package/workflows/documents/syncFailures/syncFailureClassification.d.ts +74 -0
  357. package/workflows/documents/syncFailures/syncFailureClassification.js +122 -0
  358. package/workflows/documents/syncFailures/syncFailureClassification.js.map +1 -0
  359. package/workflows/documents/syncFailures/syncPolicyRepair.js +50 -0
  360. package/workflows/documents/syncFailures/syncPolicyRepair.js.map +1 -0
  361. package/workflows/documents/syncFailures/syncRepairAbandon.js.map +1 -0
  362. package/workflows/documents/syncFailures/syncRepairAccess.js +42 -0
  363. package/workflows/documents/syncFailures/syncRepairAccess.js.map +1 -0
  364. package/workflows/documents/syncPlan/syncContentKeys.d.ts +39 -0
  365. package/workflows/documents/syncPlan/syncContentKeys.js +254 -0
  366. package/workflows/documents/syncPlan/syncContentKeys.js.map +1 -0
  367. package/workflows/documents/syncPlan/syncPlanIdentity.js +203 -0
  368. package/workflows/documents/syncPlan/syncPlanIdentity.js.map +1 -0
  369. package/workflows/documents/syncPlan/syncPlanMaterial.js +306 -0
  370. package/workflows/documents/syncPlan/syncPlanMaterial.js.map +1 -0
  371. package/workflows/documents/syncPlan/syncPlanProjection.js.map +1 -0
  372. package/workflows/documents/syncPlan/syncPlanRequestBounds.js +54 -0
  373. package/workflows/documents/syncPlan/syncPlanRequestBounds.js.map +1 -0
  374. package/workflows/documents/syncRekeys/syncAutomaticContainerRekeys.js +119 -0
  375. package/workflows/documents/syncRekeys/syncAutomaticContainerRekeys.js.map +1 -0
  376. package/workflows/documents/syncRekeys/syncContainerRekeyPreparation.js +227 -0
  377. package/workflows/documents/syncRekeys/syncContainerRekeyPreparation.js.map +1 -0
  378. package/workflows/documents/syncRekeys/syncContainerRekeyProjection.js +79 -0
  379. package/workflows/documents/syncRekeys/syncContainerRekeyProjection.js.map +1 -0
  380. package/workflows/documents/syncRekeys/syncContainerRekeys.js +72 -0
  381. package/workflows/documents/syncRekeys/syncContainerRekeys.js.map +1 -0
  382. package/workflows/documents/syncRekeys/syncRecoveryRekey.d.ts +70 -0
  383. package/workflows/documents/syncRekeys/syncRecoveryRekey.js +120 -0
  384. package/workflows/documents/syncRekeys/syncRecoveryRekey.js.map +1 -0
  385. package/workflows/documents/syncRekeys/syncRekeyCommit.js +18 -0
  386. package/workflows/organizations/groupMetadata/currentGroupMetadataAuthority.js +53 -0
  387. package/workflows/organizations/groupMetadata/currentGroupMetadataAuthority.js.map +1 -0
  388. package/workflows/organizations/groupMetadata/groupMetadataAccess.d.ts +33 -0
  389. package/workflows/organizations/groupMetadata/groupMetadataAccess.js +114 -0
  390. package/workflows/organizations/groupMetadata/groupMetadataAccess.js.map +1 -0
  391. package/workflows/organizations/groupMetadata/groupMetadataBinding.js +19 -0
  392. package/workflows/organizations/groupMetadata/groupMetadataBinding.js.map +1 -0
  393. package/workflows/organizations/groupMetadata/groupMetadataContainerAuthority.js +41 -0
  394. package/workflows/organizations/groupMetadata/groupMetadataContainerAuthority.js.map +1 -0
  395. package/workflows/organizations/groupMetadata/groupMetadataErrors.js +40 -0
  396. package/workflows/organizations/groupMetadata/groupMetadataRootBinding.js +51 -0
  397. package/workflows/organizations/groupMetadata/groupMetadataRootBinding.js.map +1 -0
  398. package/workflows/organizations/groupMetadata/groupMetadataRuntime.js +47 -0
  399. package/workflows/organizations/groupMetadata/groupMetadataRuntime.js.map +1 -0
  400. package/workflows/organizations/groupMetadata/runtimeGroupMetadataAuthority.js +16 -0
  401. package/workflows/organizations/groupMetadata/runtimeGroupMetadataAuthority.js.map +1 -0
  402. package/workflows/organizations/groupNames/currentOrganizationGroupNames.js +72 -0
  403. package/workflows/organizations/groupNames/currentOrganizationGroupNames.js.map +1 -0
  404. package/workflows/organizations/groupNames/groupMembershipName.d.ts +8 -0
  405. package/workflows/organizations/groupNames/groupMembershipName.js +18 -0
  406. package/workflows/organizations/groupNames/groupMembershipName.js.map +1 -0
  407. package/workflows/organizations/groupNames/groupNameUniqueness.js +151 -0
  408. package/workflows/organizations/groupNames/groupNameUniqueness.js.map +1 -0
  409. package/workflows/organizations/groupNames/organizationGroupNamePolicies.js +48 -0
  410. package/workflows/organizations/groupNames/organizationGroupNamePolicies.js.map +1 -0
  411. package/workflows/organizations/groupNames/organizationGroupNames.js +13 -0
  412. package/workflows/organizations/groupNames/organizationGroupNames.js.map +1 -0
  413. package/workflows/organizations/groupPolicy/commitCurrentGroupPolicyMutation.js +139 -0
  414. package/workflows/organizations/groupPolicy/commitCurrentGroupPolicyMutation.js.map +1 -0
  415. package/workflows/organizations/groupPolicy/currentGroupPolicyMutationContext.js +79 -0
  416. package/workflows/organizations/groupPolicy/currentGroupPolicyMutationContext.js.map +1 -0
  417. package/workflows/organizations/groupPolicy/currentPolicyMutationAcknowledgement.js +65 -0
  418. package/workflows/organizations/groupPolicy/currentPolicyMutationAcknowledgement.js.map +1 -0
  419. package/workflows/organizations/groupPolicy/groupPolicyMutationAcknowledgement.js +174 -0
  420. package/workflows/organizations/groupPolicy/groupPolicyMutationAcknowledgement.js.map +1 -0
  421. package/workflows/organizations/groupPolicy/groupPolicyMutationContext.d.ts +58 -0
  422. package/workflows/organizations/groupPolicy/groupPolicyMutationContext.js +166 -0
  423. package/workflows/organizations/groupPolicy/groupPolicyMutationContext.js.map +1 -0
  424. package/workflows/organizations/groupPolicy/groupPolicyMutationEvidence.d.ts +26 -0
  425. package/workflows/organizations/groupPolicy/groupPolicyMutationEvidence.js +64 -0
  426. package/workflows/organizations/groupPolicy/groupPolicyMutationEvidence.js.map +1 -0
  427. package/workflows/organizations/groupPolicy/groupPolicyMutationHead.js +26 -0
  428. package/workflows/organizations/groupPolicy/groupPolicyRequests.js +181 -0
  429. package/workflows/organizations/groupPolicy/groupPolicyRequests.js.map +1 -0
  430. package/workflows/organizations/groupPolicy/groupPolicyVerification.js +74 -0
  431. package/workflows/organizations/groupPolicy/groupPolicyVerification.js.map +1 -0
  432. package/workflows/organizations/groupPolicy/submitGroupPolicyCommit.d.ts +22 -0
  433. package/workflows/organizations/groupPolicy/submitGroupPolicyCommit.js +71 -0
  434. package/workflows/organizations/groupPolicy/submitGroupPolicyCommit.js.map +1 -0
  435. package/workflows/organizations/groups/createCurrentOrganizationGroup.js +85 -0
  436. package/workflows/organizations/groups/createCurrentOrganizationGroup.js.map +1 -0
  437. package/workflows/organizations/groups/deleteCurrentOrganizationGroup.js +35 -0
  438. package/workflows/organizations/groups/deleteCurrentOrganizationGroup.js.map +1 -0
  439. package/workflows/organizations/groups/deleteOrganizationGroup.d.ts +19 -0
  440. package/workflows/organizations/groups/deleteOrganizationGroup.js +75 -0
  441. package/workflows/organizations/groups/deleteOrganizationGroup.js.map +1 -0
  442. package/workflows/organizations/groups/groupCreation.d.ts +21 -0
  443. package/workflows/organizations/groups/groupCreation.js +68 -0
  444. package/workflows/organizations/groups/groupCreation.js.map +1 -0
  445. package/workflows/organizations/groups/organizationGroupDirectory.js +153 -0
  446. package/workflows/organizations/groups/organizationGroupDirectory.js.map +1 -0
  447. package/workflows/organizations/index.d.ts +13 -13
  448. package/workflows/organizations/index.js +12 -12
  449. package/workflows/organizations/index.js.map +1 -1
  450. package/workflows/organizations/policyHistory/groupPolicyHistoryPage.js.map +1 -0
  451. package/workflows/organizations/policyHistory/loadPolicyHistoryDetails.js +78 -0
  452. package/workflows/organizations/policyHistory/loadPolicyHistoryDetails.js.map +1 -0
  453. package/workflows/organizations/policyHistory/organizationPolicyHistoryDetails.js +110 -0
  454. package/workflows/organizations/policyHistory/organizationPolicyHistoryDetails.js.map +1 -0
  455. package/workflows/organizations/policyHistory/organizationPolicyHistoryVerification.js +67 -0
  456. package/workflows/organizations/policyHistory/organizationPolicyHistoryVerification.js.map +1 -0
  457. package/workflows/organizations/policyHistory/policyHistoryAccessDenial.js +19 -0
  458. package/workflows/organizations/policyHistory/policyHistoryAccessDenial.js.map +1 -0
  459. package/workflows/organizations/policyHistory/policyHistoryCache.js +42 -0
  460. package/workflows/organizations/policyHistory/policyHistoryCache.js.map +1 -0
  461. package/workflows/organizations/policyHistory/policyHistoryReadModel.d.ts +9 -0
  462. package/workflows/organizations/policyHistory/policyHistoryTypes.d.ts +58 -0
  463. package/workflows/organizations/principalMutations/acknowledgedDirectoryBindings.js +18 -0
  464. package/workflows/organizations/principalMutations/acknowledgedDirectoryBindings.js.map +1 -0
  465. package/workflows/organizations/principalMutations/currentGroupMutationReferences.js +35 -0
  466. package/workflows/organizations/principalMutations/currentGroupMutationReferences.js.map +1 -0
  467. package/workflows/organizations/principalMutations/currentOrganizationMutationAuthority.js +16 -0
  468. package/workflows/organizations/principalMutations/currentOrganizationMutationAuthority.js.map +1 -0
  469. package/workflows/organizations/principalMutations/currentOrganizationMutationRetention.js +64 -0
  470. package/workflows/organizations/principalMutations/currentOrganizationMutationRetention.js.map +1 -0
  471. package/workflows/organizations/principalMutations/currentPrincipalMutationLease.js +39 -0
  472. package/workflows/organizations/principalMutations/currentPrincipalMutationLease.js.map +1 -0
  473. package/workflows/organizations/principalMutations/principalMutationJournalManagement.d.ts +26 -0
  474. package/workflows/organizations/principalMutations/principalMutationJournalManagement.js +104 -0
  475. package/workflows/organizations/principalMutations/principalMutationJournalManagement.js.map +1 -0
  476. package/workflows/organizations/principalMutations/principalMutationJournalSession.d.ts +26 -0
  477. package/workflows/organizations/principalMutations/principalMutationJournalSession.js +85 -0
  478. package/workflows/organizations/principalMutations/principalMutationJournalSession.js.map +1 -0
  479. package/workflows/organizations/principalMutations/principalMutationReceipt.js +28 -0
  480. package/workflows/organizations/principalMutations/principalMutationReceipt.js.map +1 -0
  481. package/workflows/organizations/principalMutations/principalOperationReceipt.d.ts +5 -0
  482. package/workflows/organizations/principalMutations/principalOperationReceipt.js +36 -0
  483. package/workflows/organizations/principalMutations/principalOperationReceipt.js.map +1 -0
  484. package/workflows/organizations/principalMutations/retainAcknowledgedPrincipalCurrents.d.ts +6 -0
  485. package/workflows/organizations/principalMutations/retainAcknowledgedPrincipalCurrents.js +20 -0
  486. package/workflows/organizations/principalMutations/retainAcknowledgedPrincipalCurrents.js.map +1 -0
  487. package/workflows/organizations/principalMutations/runtimeCurrentGroupMutation.js +113 -0
  488. package/workflows/organizations/principalMutations/runtimeCurrentGroupMutation.js.map +1 -0
  489. package/workflows/organizations/principalMutations/runtimeCurrentOrganizationMutation.js +48 -0
  490. package/workflows/organizations/principalMutations/runtimeCurrentOrganizationMutation.js.map +1 -0
  491. package/workflows/organizations/principalPolicy/index.d.ts +98 -0
  492. package/workflows/organizations/principalPolicy/index.js +256 -0
  493. package/workflows/organizations/principalPolicy/index.js.map +1 -0
  494. package/workflows/organizations/principalPolicy/principalPolicyApi.d.ts +33 -0
  495. package/workflows/organizations/principalPolicy/principalPolicyApi.js.map +1 -0
  496. package/workflows/organizations/principalPolicy/principalPolicyReceiptArtifacts.js +74 -0
  497. package/workflows/organizations/principalPolicy/principalPolicyReceiptArtifacts.js.map +1 -0
  498. package/workflows/organizations/principalPolicy/principalPolicyRecipients.js +43 -0
  499. package/workflows/organizations/principalPolicy/principalPolicyRecipients.js.map +1 -0
  500. package/workflows/organizations/principalPolicy/principalPolicyRequest.d.ts +68 -0
  501. package/workflows/organizations/principalPolicy/principalPolicyRequest.js +176 -0
  502. package/workflows/organizations/provisioning/createOrganization.d.ts +62 -0
  503. package/workflows/organizations/provisioning/createOrganization.js +128 -0
  504. package/workflows/organizations/provisioning/createOrganization.js.map +1 -0
  505. package/workflows/organizations/provisioning/organizationProvisioningAttempt.d.ts +36 -0
  506. package/workflows/organizations/provisioning/organizationProvisioningAttempt.js +205 -0
  507. package/workflows/organizations/provisioning/organizationProvisioningAttempt.js.map +1 -0
  508. package/workflows/organizations/provisioning/organizationReplacementVerification.js +26 -0
  509. package/workflows/organizations/provisioning/organizationReplacementVerification.js.map +1 -0
  510. package/workflows/organizations/readModel/dataUsageReadModel.d.ts +19 -0
  511. package/workflows/organizations/readModel/dataUsageReadModel.js +64 -0
  512. package/workflows/organizations/readModel/dataUsageReadModel.js.map +1 -0
  513. package/workflows/organizations/readModel/index.d.ts +70 -0
  514. package/workflows/organizations/readModel/index.js +10 -0
  515. package/workflows/organizations/readModel/index.js.map +1 -0
  516. package/workflows/organizations/readModel/listLocalOrganizations.d.ts +20 -0
  517. package/workflows/organizations/readModel/listLocalOrganizations.js +137 -0
  518. package/workflows/organizations/readModel/listLocalOrganizations.js.map +1 -0
  519. package/workflows/organizations/readModel/localReadModelDetails.d.ts +25 -0
  520. package/workflows/organizations/readModel/localReadModelDetails.js +182 -0
  521. package/workflows/organizations/readModel/localReadModelDetails.js.map +1 -0
  522. package/workflows/organizations/readModel/organizationPresentationAccessState.js +173 -0
  523. package/workflows/organizations/readModel/organizationPresentationAccessState.js.map +1 -0
  524. package/workflows/organizations/readModel/organizationPresentationFailures.js +7 -0
  525. package/workflows/organizations/readModel/readModelProjection.d.ts +29 -0
  526. package/workflows/organizations/readModel/readModelProjection.js +255 -0
  527. package/workflows/organizations/readModel/readModelProjection.js.map +1 -0
  528. package/workflows/organizations/rematerialization/authoredPrincipalPolicyWarmer.js +25 -0
  529. package/workflows/organizations/rematerialization/authoredPrincipalPolicyWarmer.js.map +1 -0
  530. package/workflows/organizations/rematerialization/precedingPrincipalRematerialization.js +31 -0
  531. package/workflows/organizations/rematerialization/precedingPrincipalRematerialization.js.map +1 -0
  532. package/workflows/organizations/rematerialization/principalContainerRematerialization.js +321 -0
  533. package/workflows/organizations/rematerialization/principalContainerRematerialization.js.map +1 -0
  534. package/workflows/organizations/rematerialization/principalContainerRematerializationPlanning.js +77 -0
  535. package/workflows/organizations/rematerialization/principalContainerRematerializationPlanning.js.map +1 -0
  536. package/workflows/organizations/rematerialization/principalContainerRematerializationTargets.js +79 -0
  537. package/workflows/organizations/rematerialization/principalContainerRematerializationTargets.js.map +1 -0
  538. package/workflows/principals/acknowledgements/acknowledgedPrincipalCurrents.d.ts +33 -0
  539. package/workflows/principals/acknowledgements/acknowledgedPrincipalCurrents.js +140 -0
  540. package/workflows/principals/acknowledgements/acknowledgedPrincipalCurrents.js.map +1 -0
  541. package/workflows/principals/acknowledgements/acknowledgedPrincipalPredecessor.d.ts +39 -0
  542. package/workflows/principals/acknowledgements/acknowledgedPrincipalPredecessor.js +87 -0
  543. package/workflows/principals/acknowledgements/acknowledgedPrincipalPredecessor.js.map +1 -0
  544. package/workflows/principals/acknowledgements/initialPrincipalCurrentPublication.js +84 -0
  545. package/workflows/principals/acknowledgements/initialPrincipalCurrentPublication.js.map +1 -0
  546. package/workflows/principals/acknowledgements/principalAcknowledgementChecks.d.ts +30 -0
  547. package/workflows/principals/acknowledgements/principalCurrentPublicationSeal.js +51 -0
  548. package/workflows/principals/acknowledgements/principalCurrentPublicationSeal.js.map +1 -0
  549. package/workflows/principals/acknowledgements/reconcileAcknowledgedPrincipalCurrent.js +68 -0
  550. package/workflows/principals/acknowledgements/reconcileAcknowledgedPrincipalCurrent.js.map +1 -0
  551. package/workflows/principals/historyRecovery/loadRecoveredPrincipalHistoryPage.d.ts +10 -0
  552. package/workflows/principals/historyRecovery/loadRecoveredPrincipalHistoryPage.js +119 -0
  553. package/workflows/principals/historyRecovery/loadRecoveredPrincipalHistoryPage.js.map +1 -0
  554. package/workflows/principals/historyRecovery/principalHistoryRecoveryAuthority.js +20 -0
  555. package/workflows/principals/historyRecovery/principalHistoryRecoveryAuthority.js.map +1 -0
  556. package/workflows/principals/historyRecovery/principalHistoryRecoveryPrefix.js +69 -0
  557. package/workflows/principals/historyRecovery/principalHistoryRecoveryPrefix.js.map +1 -0
  558. package/workflows/principals/historyRecovery/principalHistoryRecoveryReferences.js +68 -0
  559. package/workflows/principals/historyRecovery/principalHistoryRecoveryReferences.js.map +1 -0
  560. package/workflows/principals/historyRecovery/principalHistoryRecoveryStage.js +61 -0
  561. package/workflows/principals/historyRecovery/principalHistoryRecoveryStage.js.map +1 -0
  562. package/workflows/principals/historyRecovery/principalHistoryRecoveryTypes.d.ts +35 -0
  563. package/workflows/principals/historyRecovery/principalHistoryRecoveryTypes.js +16 -0
  564. package/workflows/principals/historyRecovery/principalHistoryRecoveryTypes.js.map +1 -0
  565. package/workflows/principals/historyRecovery/principalHistoryRecoveryVerification.js +29 -0
  566. package/workflows/principals/historyRecovery/recoverCurrentOrganizationPolicy.js +38 -0
  567. package/workflows/principals/historyRecovery/recoverCurrentOrganizationPolicy.js.map +1 -0
  568. package/workflows/principals/historyRecovery/recoverPrincipalHistoryPage.js +31 -0
  569. package/workflows/principals/historyRecovery/recoverPrincipalPolicyHistory.js +295 -0
  570. package/workflows/principals/historyRecovery/recoverPrincipalPolicyHistory.js.map +1 -0
  571. package/workflows/principals/historyRecovery/recoverScopedPrincipalPolicyHistory.d.ts +27 -0
  572. package/workflows/principals/historyRecovery/recoverScopedPrincipalPolicyHistory.js +163 -0
  573. package/workflows/principals/historyRecovery/recoverScopedPrincipalPolicyHistory.js.map +1 -0
  574. package/workflows/principals/index.d.ts +6 -6
  575. package/workflows/principals/index.js +6 -6
  576. package/workflows/principals/index.js.map +1 -1
  577. package/workflows/principals/policyCache/index.d.ts +20 -0
  578. package/workflows/principals/policyCache/index.js +242 -0
  579. package/workflows/principals/policyCache/index.js.map +1 -0
  580. package/workflows/principals/policyCache/principalPolicyCacheAdvance.js +39 -0
  581. package/workflows/principals/policyCache/principalPolicyCacheAdvance.js.map +1 -0
  582. package/workflows/principals/policyCache/principalPolicyCacheValidation.js +149 -0
  583. package/workflows/principals/policyCache/principalPolicyCacheValidation.js.map +1 -0
  584. package/workflows/principals/policyCache/principalPolicyOrganizationScope.js +67 -0
  585. package/workflows/principals/policyCache/principalPolicyOrganizationScope.js.map +1 -0
  586. package/workflows/principals/publicHistory/publicPrincipalHistoryAuthority.js +60 -0
  587. package/workflows/principals/publicHistory/publicPrincipalHistoryAuthority.js.map +1 -0
  588. package/workflows/principals/publicHistory/publicPrincipalHistoryPage.js +88 -0
  589. package/workflows/principals/publicHistory/publicPrincipalHistoryPage.js.map +1 -0
  590. package/workflows/principals/publicHistory/publicPrincipalHistoryProgress.js +179 -0
  591. package/workflows/principals/publicHistory/publicPrincipalHistoryProgress.js.map +1 -0
  592. package/workflows/principals/publicHistory/publicPrincipalHistoryTypes.d.ts +41 -0
  593. package/workflows/principals/publicHistory/publicPrincipalHistoryTypes.js.map +1 -0
  594. package/workflows/principals/publicHistory/publicProjectionDirectory.js +40 -0
  595. package/workflows/principals/publicHistory/publicProjectionDirectory.js.map +1 -0
  596. package/workflows/principals/publicHistory/publicProjectionPrincipal.js +54 -0
  597. package/workflows/principals/publicHistory/publicProjectionPrincipal.js.map +1 -0
  598. package/workflows/principals/publicHistory/recoverProjectionPolicyHistory.d.ts +9 -0
  599. package/workflows/principals/publicHistory/recoverProjectionPolicyHistory.js +98 -0
  600. package/workflows/principals/publicHistory/recoverProjectionPolicyHistory.js.map +1 -0
  601. package/workflows/principals/publicHistory/recoverPublicPrincipalHistory.js +178 -0
  602. package/workflows/principals/publicHistory/recoverPublicPrincipalHistory.js.map +1 -0
  603. package/workflows/principals/publicHistory/selectPublicPrincipalHistory.js +96 -0
  604. package/workflows/principals/publicHistory/selectPublicPrincipalHistory.js.map +1 -0
  605. package/workflows/principals/recoveryOperation/principalCurrentRecoveryBatch.js +14 -0
  606. package/workflows/principals/recoveryOperation/principalCurrentRecoveryBatch.js.map +1 -0
  607. package/workflows/principals/recoveryOperation/principalRecoveryDirectory.d.ts +10 -0
  608. package/workflows/principals/recoveryOperation/principalRecoveryDirectory.js +127 -0
  609. package/workflows/principals/recoveryOperation/principalRecoveryDirectory.js.map +1 -0
  610. package/workflows/principals/recoveryOperation/principalRecoveryDiscoveryPage.js.map +1 -0
  611. package/workflows/principals/recoveryOperation/principalRecoveryLocalPreference.js +30 -0
  612. package/workflows/principals/recoveryOperation/principalRecoveryLocalPreference.js.map +1 -0
  613. package/workflows/principals/recoveryOperation/principalRecoveryMemo.d.ts +21 -0
  614. package/workflows/principals/recoveryOperation/principalRecoveryMemo.js +178 -0
  615. package/workflows/principals/recoveryOperation/principalRecoveryMemo.js.map +1 -0
  616. package/workflows/principals/recoveryOperation/principalRecoveryMemoValidity.js +33 -0
  617. package/workflows/principals/recoveryOperation/principalRecoveryMemoValidity.js.map +1 -0
  618. package/workflows/principals/recoveryOperation/principalRecoveryOutage.js +40 -0
  619. package/workflows/principals/recoveryOperation/principalRecoveryOutage.js.map +1 -0
  620. package/workflows/principals/runtimePolicyRecovery.js +3 -3
  621. package/workflows/principals/runtimePolicyRecovery.js.map +1 -1
  622. package/workflows/principals/runtimeProjectionPolicyRecovery.js +3 -3
  623. package/workflows/principals/runtimeProjectionPolicyRecovery.js.map +1 -1
  624. package/workflows/registration/organizationProvisioningArtifacts.d.ts +1 -1
  625. package/workflows/registration/provisionedPrincipalHistory.js +1 -1
  626. package/workflows/registration/provisionedPrincipalHistory.js.map +1 -1
  627. package/workflows/registration/provisionedProfileDocument.js +1 -1
  628. package/workflows/registration/provisionedProfileDocument.js.map +1 -1
  629. package/workflows/registration/provisioningBootstrapBuilders.js +2 -2
  630. package/workflows/registration/provisioningBootstrapBuilders.js.map +1 -1
  631. package/workflows/registration/registerIdentity.js +2 -2
  632. package/workflows/registration/registerIdentity.js.map +1 -1
  633. package/workflows/sync/remoteReset.js +1 -1
  634. package/workflows/sync/remoteReset.js.map +1 -1
  635. package/workflows/blobs/attachmentBindingVerification.js +0 -49
  636. package/workflows/blobs/attachmentBindingVerification.js.map +0 -1
  637. package/workflows/blobs/attachmentDecryptor.js +0 -41
  638. package/workflows/blobs/attachmentDecryptor.js.map +0 -1
  639. package/workflows/blobs/attachmentKeyAuthenticator.js +0 -68
  640. package/workflows/blobs/attachmentKeyAuthenticator.js.map +0 -1
  641. package/workflows/blobs/automaticMultipartUpload.js +0 -9
  642. package/workflows/blobs/automaticMultipartUpload.js.map +0 -1
  643. package/workflows/blobs/blobChunkDecryption.js +0 -34
  644. package/workflows/blobs/blobChunkDecryption.js.map +0 -1
  645. package/workflows/blobs/decrypt.d.ts +0 -12
  646. package/workflows/blobs/decrypt.js +0 -246
  647. package/workflows/blobs/decrypt.js.map +0 -1
  648. package/workflows/blobs/hydrate.d.ts +0 -56
  649. package/workflows/blobs/hydrate.js +0 -190
  650. package/workflows/blobs/hydrate.js.map +0 -1
  651. package/workflows/blobs/hydrationResults.js +0 -23
  652. package/workflows/blobs/hydrationResults.js.map +0 -1
  653. package/workflows/blobs/multipartFirstParts.js +0 -82
  654. package/workflows/blobs/multipartFirstParts.js.map +0 -1
  655. package/workflows/blobs/multipartStageFailures.js +0 -36
  656. package/workflows/blobs/multipartStageFailures.js.map +0 -1
  657. package/workflows/blobs/multipartStageResolution.js.map +0 -1
  658. package/workflows/blobs/multipartUpload.js +0 -274
  659. package/workflows/blobs/multipartUpload.js.map +0 -1
  660. package/workflows/blobs/retainedAttachmentVerification.js +0 -40
  661. package/workflows/blobs/retainedAttachmentVerification.js.map +0 -1
  662. package/workflows/blobs/upload.d.ts +0 -10
  663. package/workflows/blobs/upload.js +0 -243
  664. package/workflows/blobs/upload.js.map +0 -1
  665. package/workflows/blobs/verifiedWrapScope.js +0 -20
  666. package/workflows/blobs/verifiedWrapScope.js.map +0 -1
  667. package/workflows/blobs/writerProjection.js +0 -29
  668. package/workflows/blobs/writerProjection.js.map +0 -1
  669. package/workflows/container-contents/availableDocumentLinkIntent.js +0 -32
  670. package/workflows/container-contents/availableDocumentLinkIntent.js.map +0 -1
  671. package/workflows/container-contents/blobInfo.d.ts +0 -6
  672. package/workflows/container-contents/blobInfo.js +0 -323
  673. package/workflows/container-contents/blobInfo.js.map +0 -1
  674. package/workflows/container-contents/blobInfoTypes.d.ts +0 -48
  675. package/workflows/container-contents/blobInfoTypes.js.map +0 -1
  676. package/workflows/container-contents/containerDocumentListing.js +0 -106
  677. package/workflows/container-contents/containerInfo.d.ts +0 -77
  678. package/workflows/container-contents/containerInfo.js +0 -200
  679. package/workflows/container-contents/containerInfo.js.map +0 -1
  680. package/workflows/container-contents/deferredDocumentLinks.js +0 -9
  681. package/workflows/container-contents/deferredDocumentLinks.js.map +0 -1
  682. package/workflows/container-contents/documentAttributionRanges.d.ts +0 -26
  683. package/workflows/container-contents/documentCharacterBlame.js +0 -33
  684. package/workflows/container-contents/documentCharacterBlame.js.map +0 -1
  685. package/workflows/container-contents/documentDiscovery.d.ts +0 -12
  686. package/workflows/container-contents/documentDiscovery.js +0 -183
  687. package/workflows/container-contents/documentDiscovery.js.map +0 -1
  688. package/workflows/container-contents/documentDiscoveryApply.js +0 -65
  689. package/workflows/container-contents/documentDiscoveryApply.js.map +0 -1
  690. package/workflows/container-contents/documentDiscoveryCandidates.js.map +0 -1
  691. package/workflows/container-contents/documentDiscoveryEvidence.js +0 -91
  692. package/workflows/container-contents/documentDiscoveryEvidence.js.map +0 -1
  693. package/workflows/container-contents/documentDiscoveryInputs.js +0 -85
  694. package/workflows/container-contents/documentDiscoveryInputs.js.map +0 -1
  695. package/workflows/container-contents/documentDiscoveryLanes.js.map +0 -1
  696. package/workflows/container-contents/documentDiscoveryTypes.d.ts +0 -160
  697. package/workflows/container-contents/documentDiscoveryTypes.js.map +0 -1
  698. package/workflows/container-contents/documentFieldBlame.js +0 -26
  699. package/workflows/container-contents/documentFieldBlame.js.map +0 -1
  700. package/workflows/container-contents/documentHydrationProbe.js +0 -146
  701. package/workflows/container-contents/documentHydrationProbe.js.map +0 -1
  702. package/workflows/container-contents/documentInfo.d.ts +0 -18
  703. package/workflows/container-contents/documentInfo.js +0 -306
  704. package/workflows/container-contents/documentInfo.js.map +0 -1
  705. package/workflows/container-contents/documentInfoTypes.d.ts +0 -92
  706. package/workflows/container-contents/documentInfoTypes.js.map +0 -1
  707. package/workflows/container-contents/documentLinkIntent.js +0 -82
  708. package/workflows/container-contents/documentLinkIntent.js.map +0 -1
  709. package/workflows/container-contents/documentLinks.d.ts +0 -64
  710. package/workflows/container-contents/documentLinks.js +0 -264
  711. package/workflows/container-contents/documentLinks.js.map +0 -1
  712. package/workflows/container-contents/documentLocalRelink.js.map +0 -1
  713. package/workflows/container-contents/documentMoveDeniedReplay.js.map +0 -1
  714. package/workflows/container-contents/documentMoveFailure.js +0 -35
  715. package/workflows/container-contents/documentMoveFailure.js.map +0 -1
  716. package/workflows/container-contents/documentMoveIntent.js +0 -77
  717. package/workflows/container-contents/documentMoveIntent.js.map +0 -1
  718. package/workflows/container-contents/documentMoveIntentErrors.js +0 -17
  719. package/workflows/container-contents/documentMoveIntentErrors.js.map +0 -1
  720. package/workflows/container-contents/documentMoveIntentSettlement.js +0 -25
  721. package/workflows/container-contents/documentMoveIntentSettlement.js.map +0 -1
  722. package/workflows/container-contents/documentMoveIntentSync.js +0 -346
  723. package/workflows/container-contents/documentMoveIntentSync.js.map +0 -1
  724. package/workflows/container-contents/documentMoveVanishedRefresh.js +0 -100
  725. package/workflows/container-contents/documentMoveVanishedRefresh.js.map +0 -1
  726. package/workflows/container-contents/documentPriming.js +0 -245
  727. package/workflows/container-contents/documentPriming.js.map +0 -1
  728. package/workflows/container-contents/documentPurge.d.ts +0 -37
  729. package/workflows/container-contents/documentPurge.js +0 -136
  730. package/workflows/container-contents/documentPurge.js.map +0 -1
  731. package/workflows/container-contents/documentQueries.d.ts +0 -62
  732. package/workflows/container-contents/documentQueries.js +0 -212
  733. package/workflows/container-contents/documentQueries.js.map +0 -1
  734. package/workflows/container-contents/documentRuntimeTargetSync.js.map +0 -1
  735. package/workflows/container-contents/documentStructure.d.ts +0 -53
  736. package/workflows/container-contents/documentStructure.js +0 -183
  737. package/workflows/container-contents/documentStructure.js.map +0 -1
  738. package/workflows/container-contents/documentStructureTypes.d.ts +0 -32
  739. package/workflows/container-contents/documentStructureTypes.js.map +0 -1
  740. package/workflows/container-contents/documentSubtreeQueries.js +0 -169
  741. package/workflows/container-contents/documentSubtreeQueries.js.map +0 -1
  742. package/workflows/container-contents/documentTombstoneEvidence.js +0 -173
  743. package/workflows/container-contents/documentTombstoneEvidence.js.map +0 -1
  744. package/workflows/container-contents/documentTombstoneGate.js +0 -94
  745. package/workflows/container-contents/documentTombstoneGate.js.map +0 -1
  746. package/workflows/container-contents/folderRecovery.d.ts +0 -19
  747. package/workflows/container-contents/folderRecovery.js +0 -32
  748. package/workflows/container-contents/folderRecovery.js.map +0 -1
  749. package/workflows/container-contents/metadata.d.ts +0 -25
  750. package/workflows/container-contents/metadata.js +0 -217
  751. package/workflows/container-contents/metadata.js.map +0 -1
  752. package/workflows/container-contents/metadataEvents.d.ts +0 -7
  753. package/workflows/container-contents/metadataEvents.js +0 -47
  754. package/workflows/container-contents/metadataEvents.js.map +0 -1
  755. package/workflows/container-contents/metadataIncomingUpdateIsolation.js +0 -40
  756. package/workflows/container-contents/metadataIncomingUpdateIsolation.js.map +0 -1
  757. package/workflows/container-contents/metadataMutationPreparation.d.ts +0 -75
  758. package/workflows/container-contents/metadataMutationPreparation.js +0 -177
  759. package/workflows/container-contents/metadataMutationPreparation.js.map +0 -1
  760. package/workflows/container-contents/metadataPersistence.d.ts +0 -34
  761. package/workflows/container-contents/metadataPersistence.js +0 -254
  762. package/workflows/container-contents/metadataPersistence.js.map +0 -1
  763. package/workflows/container-contents/metadataPullContinuationInvalidation.js +0 -65
  764. package/workflows/container-contents/metadataPullContinuationInvalidation.js.map +0 -1
  765. package/workflows/container-contents/metadataReadState.d.ts +0 -2
  766. package/workflows/container-contents/metadataReadState.js.map +0 -1
  767. package/workflows/container-contents/metadataRecord.js +0 -43
  768. package/workflows/container-contents/metadataRecord.js.map +0 -1
  769. package/workflows/container-contents/metadataRemoteSync.d.ts +0 -38
  770. package/workflows/container-contents/metadataRemoteSync.js +0 -91
  771. package/workflows/container-contents/metadataRemoteSync.js.map +0 -1
  772. package/workflows/container-contents/metadataStateInstallation.d.ts +0 -3
  773. package/workflows/container-contents/metadataStateInstallation.js.map +0 -1
  774. package/workflows/container-contents/metadataStateIsolation.js +0 -80
  775. package/workflows/container-contents/metadataStateIsolation.js.map +0 -1
  776. package/workflows/container-contents/metadataSyncErrors.js +0 -41
  777. package/workflows/container-contents/metadataSyncErrors.js.map +0 -1
  778. package/workflows/container-contents/metadataSyncSettlement.d.ts +0 -13
  779. package/workflows/container-contents/metadataSyncSettlement.js +0 -27
  780. package/workflows/container-contents/metadataSyncSettlement.js.map +0 -1
  781. package/workflows/container-contents/metadataTypes.d.ts +0 -54
  782. package/workflows/container-contents/metadataTypes.js.map +0 -1
  783. package/workflows/container-contents/orphanedDocumentSql.js +0 -39
  784. package/workflows/container-contents/orphanedDocumentSql.js.map +0 -1
  785. package/workflows/container-contents/pendingDownloads.d.ts +0 -12
  786. package/workflows/container-contents/pendingDownloads.js +0 -42
  787. package/workflows/container-contents/pendingDownloads.js.map +0 -1
  788. package/workflows/container-contents/pendingWrites.d.ts +0 -26
  789. package/workflows/container-contents/pendingWrites.js +0 -116
  790. package/workflows/container-contents/pendingWrites.js.map +0 -1
  791. package/workflows/container-contents/remoteContainerPageHydration.js +0 -244
  792. package/workflows/container-contents/remoteContainerPageHydration.js.map +0 -1
  793. package/workflows/container-contents/remoteContainerState.js +0 -263
  794. package/workflows/container-contents/remoteContainerState.js.map +0 -1
  795. package/workflows/container-contents/remoteHydration.d.ts +0 -28
  796. package/workflows/container-contents/remoteHydration.js +0 -302
  797. package/workflows/container-contents/remoteHydration.js.map +0 -1
  798. package/workflows/container-contents/staleRootRecovery.js +0 -111
  799. package/workflows/container-contents/staleRootRecovery.js.map +0 -1
  800. package/workflows/documents/attachmentPersistence.d.ts +0 -58
  801. package/workflows/documents/attachmentPersistence.js.map +0 -1
  802. package/workflows/documents/blobMutationLock.d.ts +0 -8
  803. package/workflows/documents/blobMutationLock.js +0 -35
  804. package/workflows/documents/blobMutationLock.js.map +0 -1
  805. package/workflows/documents/create.d.ts +0 -56
  806. package/workflows/documents/create.js +0 -258
  807. package/workflows/documents/create.js.map +0 -1
  808. package/workflows/documents/createAdoption.js +0 -100
  809. package/workflows/documents/createAdoption.js.map +0 -1
  810. package/workflows/documents/createProjection.d.ts +0 -14
  811. package/workflows/documents/createProjectionFetch.d.ts +0 -27
  812. package/workflows/documents/createProjectionFetch.js.map +0 -1
  813. package/workflows/documents/createResponse.js +0 -49
  814. package/workflows/documents/createResponse.js.map +0 -1
  815. package/workflows/documents/documentCreationPersistence.js +0 -16
  816. package/workflows/documents/documentCreationPersistence.js.map +0 -1
  817. package/workflows/documents/initialSync.js +0 -65
  818. package/workflows/documents/initialSync.js.map +0 -1
  819. package/workflows/documents/linkSet.d.ts +0 -20
  820. package/workflows/documents/linkSet.js +0 -290
  821. package/workflows/documents/linkSet.js.map +0 -1
  822. package/workflows/documents/linkSetAuthority.js +0 -61
  823. package/workflows/documents/linkSetAuthority.js.map +0 -1
  824. package/workflows/documents/linkSetBlobRewraps.js +0 -143
  825. package/workflows/documents/linkSetBlobRewraps.js.map +0 -1
  826. package/workflows/documents/linkSetProjectionSeed.js +0 -119
  827. package/workflows/documents/linkSetProjectionSeed.js.map +0 -1
  828. package/workflows/documents/linkSetRemote.d.ts +0 -23
  829. package/workflows/documents/linkSetRemote.js +0 -187
  830. package/workflows/documents/linkSetRemote.js.map +0 -1
  831. package/workflows/documents/orphanBlobReclaimState.js.map +0 -1
  832. package/workflows/documents/orphanBlobReclaims.d.ts +0 -6
  833. package/workflows/documents/orphanBlobReclaims.js +0 -143
  834. package/workflows/documents/orphanBlobReclaims.js.map +0 -1
  835. package/workflows/documents/persistedDocumentRemoval.d.ts +0 -44
  836. package/workflows/documents/persistedDocumentRemoval.js +0 -70
  837. package/workflows/documents/persistedDocumentRemoval.js.map +0 -1
  838. package/workflows/documents/purge.d.ts +0 -53
  839. package/workflows/documents/purge.js +0 -204
  840. package/workflows/documents/purge.js.map +0 -1
  841. package/workflows/documents/readOnlyProjectionFailure.js +0 -30
  842. package/workflows/documents/readOnlyProjectionFailure.js.map +0 -1
  843. package/workflows/documents/readOnlySync.d.ts +0 -71
  844. package/workflows/documents/readOnlySync.js +0 -269
  845. package/workflows/documents/readOnlySync.js.map +0 -1
  846. package/workflows/documents/reportDocumentSyncQuarantine.js.map +0 -1
  847. package/workflows/documents/subtreePurgeScope.d.ts +0 -8
  848. package/workflows/documents/subtreePurgeScope.js +0 -18
  849. package/workflows/documents/subtreePurgeScope.js.map +0 -1
  850. package/workflows/documents/sync.d.ts +0 -4
  851. package/workflows/documents/sync.js +0 -287
  852. package/workflows/documents/sync.js.map +0 -1
  853. package/workflows/documents/syncAbandon.js +0 -51
  854. package/workflows/documents/syncAbandon.js.map +0 -1
  855. package/workflows/documents/syncAttemptPlanning.js +0 -79
  856. package/workflows/documents/syncAttemptPlanning.js.map +0 -1
  857. package/workflows/documents/syncAttemptState.d.ts +0 -27
  858. package/workflows/documents/syncAttemptState.js.map +0 -1
  859. package/workflows/documents/syncAutomaticContainerRekeys.js +0 -119
  860. package/workflows/documents/syncAutomaticContainerRekeys.js.map +0 -1
  861. package/workflows/documents/syncContainerRekeyPreparation.js +0 -227
  862. package/workflows/documents/syncContainerRekeyPreparation.js.map +0 -1
  863. package/workflows/documents/syncContainerRekeyProjection.js +0 -79
  864. package/workflows/documents/syncContainerRekeyProjection.js.map +0 -1
  865. package/workflows/documents/syncContainerRekeys.js +0 -72
  866. package/workflows/documents/syncContainerRekeys.js.map +0 -1
  867. package/workflows/documents/syncContentKeys.d.ts +0 -39
  868. package/workflows/documents/syncContentKeys.js +0 -254
  869. package/workflows/documents/syncContentKeys.js.map +0 -1
  870. package/workflows/documents/syncFailureClassification.d.ts +0 -74
  871. package/workflows/documents/syncFailureClassification.js +0 -122
  872. package/workflows/documents/syncFailureClassification.js.map +0 -1
  873. package/workflows/documents/syncFailures.js +0 -252
  874. package/workflows/documents/syncFailures.js.map +0 -1
  875. package/workflows/documents/syncLane.d.ts +0 -20
  876. package/workflows/documents/syncLane.js +0 -94
  877. package/workflows/documents/syncLane.js.map +0 -1
  878. package/workflows/documents/syncPlanIdentity.js +0 -203
  879. package/workflows/documents/syncPlanIdentity.js.map +0 -1
  880. package/workflows/documents/syncPlanMaterial.js +0 -306
  881. package/workflows/documents/syncPlanMaterial.js.map +0 -1
  882. package/workflows/documents/syncPlanProjection.js.map +0 -1
  883. package/workflows/documents/syncPlanRequestBounds.js +0 -54
  884. package/workflows/documents/syncPlanRequestBounds.js.map +0 -1
  885. package/workflows/documents/syncPolicyRepair.js +0 -50
  886. package/workflows/documents/syncPolicyRepair.js.map +0 -1
  887. package/workflows/documents/syncRecoveryRekey.d.ts +0 -70
  888. package/workflows/documents/syncRecoveryRekey.js +0 -120
  889. package/workflows/documents/syncRecoveryRekey.js.map +0 -1
  890. package/workflows/documents/syncRekeyCommit.js +0 -18
  891. package/workflows/documents/syncRepairAbandon.js.map +0 -1
  892. package/workflows/documents/syncRepairAccess.js +0 -42
  893. package/workflows/documents/syncRepairAccess.js.map +0 -1
  894. package/workflows/documents/syncResponseResult.js +0 -134
  895. package/workflows/documents/syncResponseResult.js.map +0 -1
  896. package/workflows/documents/syncSubmittedResult.js +0 -119
  897. package/workflows/documents/syncSubmittedResult.js.map +0 -1
  898. package/workflows/documents/syncTrace.js +0 -148
  899. package/workflows/organizations/acknowledgedDirectoryBindings.js +0 -18
  900. package/workflows/organizations/acknowledgedDirectoryBindings.js.map +0 -1
  901. package/workflows/organizations/authoredPrincipalPolicyWarmer.js +0 -25
  902. package/workflows/organizations/authoredPrincipalPolicyWarmer.js.map +0 -1
  903. package/workflows/organizations/commitCurrentGroupPolicyMutation.js +0 -139
  904. package/workflows/organizations/commitCurrentGroupPolicyMutation.js.map +0 -1
  905. package/workflows/organizations/createCurrentOrganizationGroup.js +0 -85
  906. package/workflows/organizations/createCurrentOrganizationGroup.js.map +0 -1
  907. package/workflows/organizations/createOrganization.d.ts +0 -62
  908. package/workflows/organizations/createOrganization.js +0 -128
  909. package/workflows/organizations/createOrganization.js.map +0 -1
  910. package/workflows/organizations/currentGroupMetadataAuthority.js +0 -53
  911. package/workflows/organizations/currentGroupMetadataAuthority.js.map +0 -1
  912. package/workflows/organizations/currentGroupMutationReferences.js +0 -35
  913. package/workflows/organizations/currentGroupMutationReferences.js.map +0 -1
  914. package/workflows/organizations/currentGroupPolicyMutationContext.js +0 -79
  915. package/workflows/organizations/currentGroupPolicyMutationContext.js.map +0 -1
  916. package/workflows/organizations/currentOrganizationGroupNames.js +0 -72
  917. package/workflows/organizations/currentOrganizationGroupNames.js.map +0 -1
  918. package/workflows/organizations/currentOrganizationMutationAuthority.js +0 -16
  919. package/workflows/organizations/currentOrganizationMutationAuthority.js.map +0 -1
  920. package/workflows/organizations/currentOrganizationMutationRetention.js +0 -64
  921. package/workflows/organizations/currentOrganizationMutationRetention.js.map +0 -1
  922. package/workflows/organizations/currentPolicyMutationAcknowledgement.js +0 -65
  923. package/workflows/organizations/currentPolicyMutationAcknowledgement.js.map +0 -1
  924. package/workflows/organizations/currentPrincipalMutationLease.js +0 -39
  925. package/workflows/organizations/currentPrincipalMutationLease.js.map +0 -1
  926. package/workflows/organizations/dataUsageReadModel.d.ts +0 -19
  927. package/workflows/organizations/dataUsageReadModel.js +0 -64
  928. package/workflows/organizations/dataUsageReadModel.js.map +0 -1
  929. package/workflows/organizations/deleteCurrentOrganizationGroup.js +0 -35
  930. package/workflows/organizations/deleteCurrentOrganizationGroup.js.map +0 -1
  931. package/workflows/organizations/deleteOrganizationGroup.d.ts +0 -19
  932. package/workflows/organizations/deleteOrganizationGroup.js +0 -75
  933. package/workflows/organizations/deleteOrganizationGroup.js.map +0 -1
  934. package/workflows/organizations/groupCreation.d.ts +0 -21
  935. package/workflows/organizations/groupCreation.js +0 -68
  936. package/workflows/organizations/groupCreation.js.map +0 -1
  937. package/workflows/organizations/groupMembershipName.d.ts +0 -8
  938. package/workflows/organizations/groupMembershipName.js +0 -18
  939. package/workflows/organizations/groupMembershipName.js.map +0 -1
  940. package/workflows/organizations/groupMetadataAccess.d.ts +0 -33
  941. package/workflows/organizations/groupMetadataAccess.js +0 -114
  942. package/workflows/organizations/groupMetadataAccess.js.map +0 -1
  943. package/workflows/organizations/groupMetadataBinding.js +0 -19
  944. package/workflows/organizations/groupMetadataBinding.js.map +0 -1
  945. package/workflows/organizations/groupMetadataContainerAuthority.js +0 -41
  946. package/workflows/organizations/groupMetadataContainerAuthority.js.map +0 -1
  947. package/workflows/organizations/groupMetadataErrors.js +0 -40
  948. package/workflows/organizations/groupMetadataRootBinding.js +0 -51
  949. package/workflows/organizations/groupMetadataRootBinding.js.map +0 -1
  950. package/workflows/organizations/groupMetadataRuntime.js +0 -47
  951. package/workflows/organizations/groupMetadataRuntime.js.map +0 -1
  952. package/workflows/organizations/groupNameUniqueness.js +0 -151
  953. package/workflows/organizations/groupNameUniqueness.js.map +0 -1
  954. package/workflows/organizations/groupPolicyHistoryPage.js.map +0 -1
  955. package/workflows/organizations/groupPolicyMutationAcknowledgement.js +0 -174
  956. package/workflows/organizations/groupPolicyMutationAcknowledgement.js.map +0 -1
  957. package/workflows/organizations/groupPolicyMutationContext.d.ts +0 -58
  958. package/workflows/organizations/groupPolicyMutationContext.js +0 -166
  959. package/workflows/organizations/groupPolicyMutationContext.js.map +0 -1
  960. package/workflows/organizations/groupPolicyMutationEvidence.d.ts +0 -26
  961. package/workflows/organizations/groupPolicyMutationEvidence.js +0 -64
  962. package/workflows/organizations/groupPolicyMutationEvidence.js.map +0 -1
  963. package/workflows/organizations/groupPolicyMutationHead.js +0 -26
  964. package/workflows/organizations/groupPolicyRequests.js +0 -181
  965. package/workflows/organizations/groupPolicyRequests.js.map +0 -1
  966. package/workflows/organizations/groupPolicyVerification.js +0 -74
  967. package/workflows/organizations/groupPolicyVerification.js.map +0 -1
  968. package/workflows/organizations/listLocalOrganizations.d.ts +0 -20
  969. package/workflows/organizations/listLocalOrganizations.js +0 -137
  970. package/workflows/organizations/listLocalOrganizations.js.map +0 -1
  971. package/workflows/organizations/loadPolicyHistoryDetails.js +0 -78
  972. package/workflows/organizations/loadPolicyHistoryDetails.js.map +0 -1
  973. package/workflows/organizations/localReadModelDetails.d.ts +0 -25
  974. package/workflows/organizations/localReadModelDetails.js +0 -182
  975. package/workflows/organizations/localReadModelDetails.js.map +0 -1
  976. package/workflows/organizations/organizationGroupDirectory.js +0 -153
  977. package/workflows/organizations/organizationGroupDirectory.js.map +0 -1
  978. package/workflows/organizations/organizationGroupNamePolicies.js +0 -48
  979. package/workflows/organizations/organizationGroupNamePolicies.js.map +0 -1
  980. package/workflows/organizations/organizationGroupNames.js +0 -13
  981. package/workflows/organizations/organizationGroupNames.js.map +0 -1
  982. package/workflows/organizations/organizationPolicyHistoryDetails.js +0 -110
  983. package/workflows/organizations/organizationPolicyHistoryDetails.js.map +0 -1
  984. package/workflows/organizations/organizationPolicyHistoryVerification.js +0 -67
  985. package/workflows/organizations/organizationPolicyHistoryVerification.js.map +0 -1
  986. package/workflows/organizations/organizationPresentationAccessState.js +0 -173
  987. package/workflows/organizations/organizationPresentationAccessState.js.map +0 -1
  988. package/workflows/organizations/organizationPresentationFailures.js +0 -7
  989. package/workflows/organizations/organizationProvisioningAttempt.d.ts +0 -36
  990. package/workflows/organizations/organizationProvisioningAttempt.js +0 -205
  991. package/workflows/organizations/organizationProvisioningAttempt.js.map +0 -1
  992. package/workflows/organizations/organizationReplacementVerification.js +0 -26
  993. package/workflows/organizations/organizationReplacementVerification.js.map +0 -1
  994. package/workflows/organizations/policyHistoryAccessDenial.js +0 -19
  995. package/workflows/organizations/policyHistoryAccessDenial.js.map +0 -1
  996. package/workflows/organizations/policyHistoryCache.js +0 -42
  997. package/workflows/organizations/policyHistoryCache.js.map +0 -1
  998. package/workflows/organizations/policyHistoryReadModel.d.ts +0 -9
  999. package/workflows/organizations/policyHistoryTypes.d.ts +0 -58
  1000. package/workflows/organizations/precedingPrincipalRematerialization.js +0 -31
  1001. package/workflows/organizations/precedingPrincipalRematerialization.js.map +0 -1
  1002. package/workflows/organizations/principalContainerRematerialization.js +0 -321
  1003. package/workflows/organizations/principalContainerRematerialization.js.map +0 -1
  1004. package/workflows/organizations/principalContainerRematerializationPlanning.js +0 -77
  1005. package/workflows/organizations/principalContainerRematerializationPlanning.js.map +0 -1
  1006. package/workflows/organizations/principalContainerRematerializationTargets.js +0 -79
  1007. package/workflows/organizations/principalContainerRematerializationTargets.js.map +0 -1
  1008. package/workflows/organizations/principalMutationJournalManagement.d.ts +0 -26
  1009. package/workflows/organizations/principalMutationJournalManagement.js +0 -104
  1010. package/workflows/organizations/principalMutationJournalManagement.js.map +0 -1
  1011. package/workflows/organizations/principalMutationJournalSession.d.ts +0 -26
  1012. package/workflows/organizations/principalMutationJournalSession.js +0 -85
  1013. package/workflows/organizations/principalMutationJournalSession.js.map +0 -1
  1014. package/workflows/organizations/principalMutationReceipt.js +0 -28
  1015. package/workflows/organizations/principalMutationReceipt.js.map +0 -1
  1016. package/workflows/organizations/principalOperationReceipt.d.ts +0 -5
  1017. package/workflows/organizations/principalOperationReceipt.js +0 -36
  1018. package/workflows/organizations/principalOperationReceipt.js.map +0 -1
  1019. package/workflows/organizations/principalPolicy.d.ts +0 -98
  1020. package/workflows/organizations/principalPolicy.js +0 -256
  1021. package/workflows/organizations/principalPolicy.js.map +0 -1
  1022. package/workflows/organizations/principalPolicyApi.d.ts +0 -33
  1023. package/workflows/organizations/principalPolicyApi.js.map +0 -1
  1024. package/workflows/organizations/principalPolicyReceiptArtifacts.js +0 -74
  1025. package/workflows/organizations/principalPolicyReceiptArtifacts.js.map +0 -1
  1026. package/workflows/organizations/principalPolicyRecipients.js +0 -43
  1027. package/workflows/organizations/principalPolicyRecipients.js.map +0 -1
  1028. package/workflows/organizations/principalPolicyRequest.d.ts +0 -68
  1029. package/workflows/organizations/principalPolicyRequest.js +0 -176
  1030. package/workflows/organizations/readModel.d.ts +0 -70
  1031. package/workflows/organizations/readModel.js +0 -10
  1032. package/workflows/organizations/readModel.js.map +0 -1
  1033. package/workflows/organizations/readModelProjection.d.ts +0 -29
  1034. package/workflows/organizations/readModelProjection.js +0 -255
  1035. package/workflows/organizations/readModelProjection.js.map +0 -1
  1036. package/workflows/organizations/retainAcknowledgedPrincipalCurrents.d.ts +0 -6
  1037. package/workflows/organizations/retainAcknowledgedPrincipalCurrents.js +0 -20
  1038. package/workflows/organizations/retainAcknowledgedPrincipalCurrents.js.map +0 -1
  1039. package/workflows/organizations/runtimeCurrentGroupMutation.js +0 -113
  1040. package/workflows/organizations/runtimeCurrentGroupMutation.js.map +0 -1
  1041. package/workflows/organizations/runtimeCurrentOrganizationMutation.js +0 -48
  1042. package/workflows/organizations/runtimeCurrentOrganizationMutation.js.map +0 -1
  1043. package/workflows/organizations/runtimeGroupMetadataAuthority.js +0 -16
  1044. package/workflows/organizations/runtimeGroupMetadataAuthority.js.map +0 -1
  1045. package/workflows/organizations/submitGroupPolicyCommit.d.ts +0 -22
  1046. package/workflows/organizations/submitGroupPolicyCommit.js +0 -71
  1047. package/workflows/organizations/submitGroupPolicyCommit.js.map +0 -1
  1048. package/workflows/principals/acknowledgedPrincipalCurrents.d.ts +0 -33
  1049. package/workflows/principals/acknowledgedPrincipalCurrents.js +0 -140
  1050. package/workflows/principals/acknowledgedPrincipalCurrents.js.map +0 -1
  1051. package/workflows/principals/acknowledgedPrincipalPredecessor.d.ts +0 -39
  1052. package/workflows/principals/acknowledgedPrincipalPredecessor.js +0 -87
  1053. package/workflows/principals/acknowledgedPrincipalPredecessor.js.map +0 -1
  1054. package/workflows/principals/initialPrincipalCurrentPublication.js +0 -84
  1055. package/workflows/principals/initialPrincipalCurrentPublication.js.map +0 -1
  1056. package/workflows/principals/loadRecoveredPrincipalHistoryPage.d.ts +0 -10
  1057. package/workflows/principals/loadRecoveredPrincipalHistoryPage.js +0 -119
  1058. package/workflows/principals/loadRecoveredPrincipalHistoryPage.js.map +0 -1
  1059. package/workflows/principals/policyCache.d.ts +0 -20
  1060. package/workflows/principals/policyCache.js +0 -242
  1061. package/workflows/principals/policyCache.js.map +0 -1
  1062. package/workflows/principals/principalAcknowledgementChecks.d.ts +0 -30
  1063. package/workflows/principals/principalCurrentPublicationSeal.js +0 -51
  1064. package/workflows/principals/principalCurrentPublicationSeal.js.map +0 -1
  1065. package/workflows/principals/principalCurrentRecoveryBatch.js +0 -14
  1066. package/workflows/principals/principalCurrentRecoveryBatch.js.map +0 -1
  1067. package/workflows/principals/principalHistoryRecoveryAuthority.js +0 -20
  1068. package/workflows/principals/principalHistoryRecoveryAuthority.js.map +0 -1
  1069. package/workflows/principals/principalHistoryRecoveryPrefix.js +0 -69
  1070. package/workflows/principals/principalHistoryRecoveryPrefix.js.map +0 -1
  1071. package/workflows/principals/principalHistoryRecoveryReferences.js +0 -68
  1072. package/workflows/principals/principalHistoryRecoveryReferences.js.map +0 -1
  1073. package/workflows/principals/principalHistoryRecoveryStage.js +0 -61
  1074. package/workflows/principals/principalHistoryRecoveryStage.js.map +0 -1
  1075. package/workflows/principals/principalHistoryRecoveryTypes.d.ts +0 -35
  1076. package/workflows/principals/principalHistoryRecoveryTypes.js +0 -16
  1077. package/workflows/principals/principalHistoryRecoveryTypes.js.map +0 -1
  1078. package/workflows/principals/principalHistoryRecoveryVerification.js +0 -29
  1079. package/workflows/principals/principalPolicyCacheAdvance.js +0 -39
  1080. package/workflows/principals/principalPolicyCacheAdvance.js.map +0 -1
  1081. package/workflows/principals/principalPolicyCacheValidation.js +0 -149
  1082. package/workflows/principals/principalPolicyCacheValidation.js.map +0 -1
  1083. package/workflows/principals/principalPolicyOrganizationScope.js +0 -67
  1084. package/workflows/principals/principalPolicyOrganizationScope.js.map +0 -1
  1085. package/workflows/principals/principalRecoveryDirectory.d.ts +0 -10
  1086. package/workflows/principals/principalRecoveryDirectory.js +0 -127
  1087. package/workflows/principals/principalRecoveryDirectory.js.map +0 -1
  1088. package/workflows/principals/principalRecoveryDiscoveryPage.js.map +0 -1
  1089. package/workflows/principals/principalRecoveryLocalPreference.js +0 -30
  1090. package/workflows/principals/principalRecoveryLocalPreference.js.map +0 -1
  1091. package/workflows/principals/principalRecoveryMemo.d.ts +0 -21
  1092. package/workflows/principals/principalRecoveryMemo.js +0 -178
  1093. package/workflows/principals/principalRecoveryMemo.js.map +0 -1
  1094. package/workflows/principals/principalRecoveryMemoValidity.js +0 -33
  1095. package/workflows/principals/principalRecoveryMemoValidity.js.map +0 -1
  1096. package/workflows/principals/principalRecoveryOutage.js +0 -40
  1097. package/workflows/principals/principalRecoveryOutage.js.map +0 -1
  1098. package/workflows/principals/publicPrincipalHistoryAuthority.js +0 -60
  1099. package/workflows/principals/publicPrincipalHistoryAuthority.js.map +0 -1
  1100. package/workflows/principals/publicPrincipalHistoryPage.js +0 -88
  1101. package/workflows/principals/publicPrincipalHistoryPage.js.map +0 -1
  1102. package/workflows/principals/publicPrincipalHistoryProgress.js +0 -179
  1103. package/workflows/principals/publicPrincipalHistoryProgress.js.map +0 -1
  1104. package/workflows/principals/publicPrincipalHistoryTypes.d.ts +0 -41
  1105. package/workflows/principals/publicPrincipalHistoryTypes.js.map +0 -1
  1106. package/workflows/principals/publicProjectionDirectory.js +0 -40
  1107. package/workflows/principals/publicProjectionDirectory.js.map +0 -1
  1108. package/workflows/principals/publicProjectionPrincipal.js +0 -54
  1109. package/workflows/principals/publicProjectionPrincipal.js.map +0 -1
  1110. package/workflows/principals/reconcileAcknowledgedPrincipalCurrent.js +0 -68
  1111. package/workflows/principals/reconcileAcknowledgedPrincipalCurrent.js.map +0 -1
  1112. package/workflows/principals/recoverCurrentOrganizationPolicy.js +0 -38
  1113. package/workflows/principals/recoverCurrentOrganizationPolicy.js.map +0 -1
  1114. package/workflows/principals/recoverPrincipalHistoryPage.js +0 -31
  1115. package/workflows/principals/recoverPrincipalPolicyHistory.js +0 -295
  1116. package/workflows/principals/recoverPrincipalPolicyHistory.js.map +0 -1
  1117. package/workflows/principals/recoverProjectionPolicyHistory.d.ts +0 -9
  1118. package/workflows/principals/recoverProjectionPolicyHistory.js +0 -98
  1119. package/workflows/principals/recoverProjectionPolicyHistory.js.map +0 -1
  1120. package/workflows/principals/recoverPublicPrincipalHistory.js +0 -178
  1121. package/workflows/principals/recoverPublicPrincipalHistory.js.map +0 -1
  1122. package/workflows/principals/recoverScopedPrincipalPolicyHistory.d.ts +0 -27
  1123. package/workflows/principals/recoverScopedPrincipalPolicyHistory.js +0 -163
  1124. package/workflows/principals/recoverScopedPrincipalPolicyHistory.js.map +0 -1
  1125. package/workflows/principals/selectPublicPrincipalHistory.js +0 -96
  1126. package/workflows/principals/selectPublicPrincipalHistory.js.map +0 -1
  1127. /package/workflows/blobs/{readAttachmentTransfer.js → hydration/readAttachmentTransfer.js} +0 -0
  1128. /package/workflows/blobs/{readAttachmentTransfer.js.map → hydration/readAttachmentTransfer.js.map} +0 -0
  1129. /package/workflows/blobs/{multipartStageResolution.js → upload/multipartStageResolution.js} +0 -0
  1130. /package/workflows/container-contents/{documentAttributionRanges.js → attribution/documentAttributionRanges.js} +0 -0
  1131. /package/workflows/container-contents/{documentAttributionRanges.js.map → attribution/documentAttributionRanges.js.map} +0 -0
  1132. /package/workflows/container-contents/{containerDocumentListing.js.map → documentDiscovery/containerDocumentListing.js.map} +0 -0
  1133. /package/workflows/container-contents/{documentDiscoveryCandidates.js → documentDiscovery/documentDiscoveryCandidates.js} +0 -0
  1134. /package/workflows/container-contents/{documentDiscoveryLanes.js → documentDiscovery/documentDiscoveryLanes.js} +0 -0
  1135. /package/workflows/container-contents/{documentDiscoveryTypes.js → documentDiscovery/documentDiscoveryTypes.js} +0 -0
  1136. /package/workflows/container-contents/{documentHeadScope.js → documentDiscovery/documentHeadScope.js} +0 -0
  1137. /package/workflows/container-contents/{documentHeadScope.js.map → documentDiscovery/documentHeadScope.js.map} +0 -0
  1138. /package/workflows/container-contents/{documentLocalRelink.js → documentLinks/documentLocalRelink.js} +0 -0
  1139. /package/workflows/container-contents/{documentMoveDeniedReplay.js → documentMove/documentMoveDeniedReplay.js} +0 -0
  1140. /package/workflows/container-contents/{documentMoveUnlinkIds.js → documentMove/documentMoveUnlinkIds.js} +0 -0
  1141. /package/workflows/container-contents/{documentMoveUnlinkIds.js.map → documentMove/documentMoveUnlinkIds.js.map} +0 -0
  1142. /package/workflows/container-contents/{documentRuntimeTargetSync.js → documentPriming/documentRuntimeTargetSync.js} +0 -0
  1143. /package/workflows/container-contents/{documentStructureTypes.js → documentQueries/documentStructureTypes.js} +0 -0
  1144. /package/workflows/container-contents/{blobInfoRows.js → info/blobInfoRows.js} +0 -0
  1145. /package/workflows/container-contents/{blobInfoRows.js.map → info/blobInfoRows.js.map} +0 -0
  1146. /package/workflows/container-contents/{blobInfoTypes.js → info/blobInfoTypes.js} +0 -0
  1147. /package/workflows/container-contents/{documentInfoTypes.js → info/documentInfoTypes.js} +0 -0
  1148. /package/workflows/container-contents/{metadataReadState.js → metadata/metadataReadState.js} +0 -0
  1149. /package/workflows/container-contents/{metadataStateInstallation.js → metadata/metadataStateInstallation.js} +0 -0
  1150. /package/workflows/container-contents/{metadataSyncFollowup.js → metadata/metadataSyncFollowup.js} +0 -0
  1151. /package/workflows/container-contents/{metadataSyncFollowup.js.map → metadata/metadataSyncFollowup.js.map} +0 -0
  1152. /package/workflows/container-contents/{metadataSyncRegistrations.d.ts → metadata/metadataSyncRegistrations.d.ts} +0 -0
  1153. /package/workflows/container-contents/{metadataSyncRegistrations.js → metadata/metadataSyncRegistrations.js} +0 -0
  1154. /package/workflows/container-contents/{metadataSyncRegistrations.js.map → metadata/metadataSyncRegistrations.js.map} +0 -0
  1155. /package/workflows/container-contents/{metadataTypes.js → metadata/metadataTypes.js} +0 -0
  1156. /package/workflows/container-contents/{pendingWritesTypes.d.ts → pendingWrites/pendingWritesTypes.d.ts} +0 -0
  1157. /package/workflows/container-contents/{pendingWritesTypes.js → pendingWrites/pendingWritesTypes.js} +0 -0
  1158. /package/workflows/container-contents/{pendingWritesTypes.js.map → pendingWrites/pendingWritesTypes.js.map} +0 -0
  1159. /package/workflows/container-contents/{remoteHydrationLog.js → remoteHydration/remoteHydrationLog.js} +0 -0
  1160. /package/workflows/container-contents/{remoteHydrationLog.js.map → remoteHydration/remoteHydrationLog.js.map} +0 -0
  1161. /package/workflows/documents/{attachmentPersistence.js → attachments/attachmentPersistence.js} +0 -0
  1162. /package/workflows/documents/{orphanBlobReclaimState.js → attachments/orphanBlobReclaimState.js} +0 -0
  1163. /package/workflows/documents/{createProjection.js → create/createProjection.js} +0 -0
  1164. /package/workflows/documents/{createProjection.js.map → create/createProjection.js.map} +0 -0
  1165. /package/workflows/documents/{createProjectionFetch.js → create/createProjectionFetch.js} +0 -0
  1166. /package/workflows/documents/{reportDocumentSyncQuarantine.js → sync/reportDocumentSyncQuarantine.js} +0 -0
  1167. /package/workflows/documents/{syncAttemptState.js → sync/syncAttemptState.js} +0 -0
  1168. /package/workflows/documents/{syncTrace.d.ts → sync/syncTrace.d.ts} +0 -0
  1169. /package/workflows/documents/{syncTrace.js.map → sync/syncTrace.js.map} +0 -0
  1170. /package/workflows/documents/{syncFailureClearance.d.ts → syncFailures/syncFailureClearance.d.ts} +0 -0
  1171. /package/workflows/documents/{syncFailureClearance.js → syncFailures/syncFailureClearance.js} +0 -0
  1172. /package/workflows/documents/{syncFailureClearance.js.map → syncFailures/syncFailureClearance.js.map} +0 -0
  1173. /package/workflows/documents/{syncRepairAbandon.js → syncFailures/syncRepairAbandon.js} +0 -0
  1174. /package/workflows/documents/{syncPlanProjection.js → syncPlan/syncPlanProjection.js} +0 -0
  1175. /package/workflows/documents/{syncRekeyCommit.js.map → syncRekeys/syncRekeyCommit.js.map} +0 -0
  1176. /package/workflows/organizations/{groupMetadataErrors.js.map → groupMetadata/groupMetadataErrors.js.map} +0 -0
  1177. /package/workflows/organizations/{groupMutationAuthorization.js → groupPolicy/groupMutationAuthorization.js} +0 -0
  1178. /package/workflows/organizations/{groupMutationAuthorization.js.map → groupPolicy/groupMutationAuthorization.js.map} +0 -0
  1179. /package/workflows/organizations/{groupPolicyMutationHead.js.map → groupPolicy/groupPolicyMutationHead.js.map} +0 -0
  1180. /package/workflows/organizations/{groupPolicyHistoryPage.js → policyHistory/groupPolicyHistoryPage.js} +0 -0
  1181. /package/workflows/organizations/{policyHistoryReadModel.js → policyHistory/policyHistoryReadModel.js} +0 -0
  1182. /package/workflows/organizations/{policyHistoryReadModel.js.map → policyHistory/policyHistoryReadModel.js.map} +0 -0
  1183. /package/workflows/organizations/{policyHistoryTypes.js → policyHistory/policyHistoryTypes.js} +0 -0
  1184. /package/workflows/organizations/{policyHistoryTypes.js.map → policyHistory/policyHistoryTypes.js.map} +0 -0
  1185. /package/workflows/organizations/{principalPolicyApi.js → principalPolicy/principalPolicyApi.js} +0 -0
  1186. /package/workflows/organizations/{principalPolicyRequest.js.map → principalPolicy/principalPolicyRequest.js.map} +0 -0
  1187. /package/workflows/organizations/{organizationPresentationFailures.js.map → readModel/organizationPresentationFailures.js.map} +0 -0
  1188. /package/workflows/principals/{principalAcknowledgementChecks.js → acknowledgements/principalAcknowledgementChecks.js} +0 -0
  1189. /package/workflows/principals/{principalAcknowledgementChecks.js.map → acknowledgements/principalAcknowledgementChecks.js.map} +0 -0
  1190. /package/workflows/principals/{principalHistoryRecoveryVerification.js.map → historyRecovery/principalHistoryRecoveryVerification.js.map} +0 -0
  1191. /package/workflows/principals/{recoverPrincipalHistoryPage.js.map → historyRecovery/recoverPrincipalHistoryPage.js.map} +0 -0
  1192. /package/workflows/principals/{recoverPrincipalPolicyHistory.d.ts → historyRecovery/recoverPrincipalPolicyHistory.d.ts} +0 -0
  1193. /package/workflows/principals/{principalPolicyCacheScope.js → policyCache/principalPolicyCacheScope.js} +0 -0
  1194. /package/workflows/principals/{principalPolicyCacheScope.js.map → policyCache/principalPolicyCacheScope.js.map} +0 -0
  1195. /package/workflows/principals/{publicPrincipalHistoryTypes.js → publicHistory/publicPrincipalHistoryTypes.js} +0 -0
  1196. /package/workflows/principals/{principalRecoveryDiscoveryPage.js → recoveryOperation/principalRecoveryDiscoveryPage.js} +0 -0
@@ -1,114 +0,0 @@
1
- import { decryptGroupMetadata, readGroupMetadata, } from "../../internal/crypto/index.js";
2
- import { deriveOrganizationMetadataContainerSystemSlot } from "../../internal/validators/containerSystemSlot.js";
3
- import { getTargetContainerContext, readContainerState, } from "../../data/containers/shared/projection.js";
4
- import { unwrapContainerKekPath } from "../../data/documents/shared/containerKekPath.js";
5
- import { assertProjectionVerificationCurrent } from "../../data/keyingProjectionVerification/types.js";
6
- import { loadContainers } from "../../data/persistence/containers/containerPersistence.js";
7
- import { withMetadataRootReload } from "./groupMetadataErrors.js";
8
- /**
9
- * A group's signed name does not open under the metadata key it cites, or opens
10
- * to an invalid name. Every reader holding that key gets the same result. The
11
- * API checks the citation but can never check the ciphertext, so a dishonest
12
- * admin can sign such a name; directory walks isolate the group instead of
13
- * failing every name in the organization.
14
- */
15
- export class GroupMetadataUnreadableError extends Error {
16
- constructor(groupId, cause) {
17
- super(`Group ${groupId} metadata cannot be decrypted`, { cause });
18
- this.name = "GroupMetadataUnreadableError";
19
- }
20
- }
21
- function loadMetadataKeyring(input, containerId) {
22
- return withMetadataRootReload(() => loadMetadataKeyringOnce(input, containerId), () => input.apiClient.evictContainerWriterProjection(containerId));
23
- }
24
- async function loadMetadataKeyringOnce(input, containerId) {
25
- const projection = await input.apiClient.getContainerWriterProjection(containerId);
26
- if (!projection)
27
- return null;
28
- if (projection.containerId !== containerId ||
29
- projection.organizationId !== input.organizationId)
30
- throw new Error("Group metadata container is unavailable");
31
- const target = getTargetContainerContext(projection);
32
- const state = readContainerState(target.manifest);
33
- const slot = await deriveOrganizationMetadataContainerSystemSlot({
34
- organizationId: input.organizationId,
35
- });
36
- if (state.organizationId !== input.organizationId ||
37
- state.systemSlot !== slot ||
38
- state.parentContainerId !== null)
39
- throw new Error("Group metadata requires the signed organization metadata container");
40
- await input.verifyMetadataContainer(state, projection.policyEvidence.organization?.head);
41
- assertProjectionVerificationCurrent(input.stillCurrent);
42
- const keys = await unwrapContainerKekPath({
43
- ...input,
44
- projection,
45
- secretKey: input.targetSecretKey,
46
- });
47
- assertProjectionVerificationCurrent(input.stillCurrent);
48
- const keyMaterial = keys.get(target.kek.containerKeyEpochId);
49
- if (!keyMaterial)
50
- throw new Error("Group metadata container key is unavailable");
51
- return {
52
- current: {
53
- organizationId: input.organizationId,
54
- containerId,
55
- containerKeyEpochId: target.kek.containerKeyEpochId,
56
- keyMaterial,
57
- },
58
- keys,
59
- };
60
- }
61
- /** Uses the shared metadata container's authenticated keyring, including old epochs. */
62
- export function createGroupMetadataAccess(input) {
63
- const loads = new Map();
64
- function loaded(containerId) {
65
- let pending = loads.get(containerId);
66
- if (!pending) {
67
- pending = loadMetadataKeyring(input, containerId);
68
- loads.set(containerId, pending);
69
- }
70
- return pending;
71
- }
72
- const readName = async (bundle) => {
73
- assertProjectionVerificationCurrent(input.stillCurrent);
74
- const metadata = readGroupMetadata(bundle.currentPayload.ciphertext);
75
- if ("role" in metadata)
76
- return metadata.role === "admins" ? "Admins" : "Members";
77
- if (metadata.organizationId !== input.organizationId ||
78
- metadata.groupId !== bundle.currentState.principalId ||
79
- bundle.currentState.principalType !== "group")
80
- throw new Error("Group metadata scope does not match its signed group");
81
- const keyring = await loaded(metadata.containerId);
82
- const keyMaterial = keyring?.keys.get(metadata.containerKeyEpochId);
83
- if (!keyMaterial)
84
- throw new Error("Group metadata historical key is unavailable");
85
- try {
86
- return await decryptGroupMetadata({
87
- key: { ...metadata, keyMaterial },
88
- groupId: bundle.currentState.principalId,
89
- payload: bundle.currentPayload.ciphertext,
90
- });
91
- }
92
- catch (cause) {
93
- throw new GroupMetadataUnreadableError(bundle.currentState.principalId, cause);
94
- }
95
- };
96
- return {
97
- readName,
98
- async loadEncryptionKey() {
99
- const slot = await deriveOrganizationMetadataContainerSystemSlot({
100
- organizationId: input.organizationId,
101
- });
102
- const containers = await loadContainers(input.execSql);
103
- const container = containers.find((row) => row.organizationId === input.organizationId &&
104
- row.systemSlot === slot);
105
- if (!container)
106
- throw new Error("Organization metadata container has not been discovered");
107
- const keyring = await loaded(container.id);
108
- if (!keyring)
109
- throw new Error("Group metadata container is unavailable");
110
- return keyring.current;
111
- },
112
- };
113
- }
114
- //# sourceMappingURL=groupMetadataAccess.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groupMetadataAccess.js","sourceRoot":"","sources":["groupMetadataAccess.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type ContainerAccessManifestState,\n decryptGroupMetadata,\n type GroupMetadataKey,\n type ReferencedPrincipalHead,\n readGroupMetadata,\n} from \"@tearleads/crypto\";\nimport { deriveOrganizationMetadataContainerSystemSlot } from \"@tearleads/validators/containerSystemSlot\";\nimport type { ContainerWriterProjectionResponse } from \"@tearleads/validators/response\";\nimport {\n getTargetContainerContext,\n readContainerState,\n} from \"../../data/containers/shared/projection\";\nimport { unwrapContainerKekPath } from \"../../data/documents/shared/containerKekPath\";\nimport type {\n ProjectionUserKeyResolver,\n ReferencedPrincipalPolicyWarmer,\n} from \"../../data/keyingProjectionVerification\";\nimport { assertProjectionVerificationCurrent } from \"../../data/keyingProjectionVerification/types\";\nimport { loadContainers } from \"../../data/persistence/containers/containerPersistence\";\nimport type { ExecSql } from \"../../data/sqlite/sqlSchema\";\nimport { withMetadataRootReload } from \"./groupMetadataErrors\";\nimport type { GroupPolicyNameReader } from \"./principalPolicyRequest\";\n\nexport interface GroupMetadataAccessInput {\n readonly apiClient: {\n evictContainerWriterProjection(containerId: string): void;\n getContainerWriterProjection(\n containerId: string,\n ): Promise<ContainerWriterProjectionResponse | null>;\n };\n readonly verifyMetadataContainer: (\n state: ContainerAccessManifestState,\n organizationReference?: ReferencedPrincipalHead | undefined,\n ) => Promise<void>;\n readonly execSql: ExecSql;\n readonly organizationId: string;\n readonly resolveProjectionUserKey: ProjectionUserKeyResolver;\n readonly targetSecretKey: Uint8Array;\n readonly stillCurrent?: (() => boolean) | undefined;\n readonly warmReferencedPrincipalPolicies?:\n | ReferencedPrincipalPolicyWarmer\n | undefined;\n}\n\n/**\n * A group's signed name does not open under the metadata key it cites, or opens\n * to an invalid name. Every reader holding that key gets the same result. The\n * API checks the citation but can never check the ciphertext, so a dishonest\n * admin can sign such a name; directory walks isolate the group instead of\n * failing every name in the organization.\n */\nexport class GroupMetadataUnreadableError extends Error {\n constructor(groupId: string, cause: unknown) {\n super(`Group ${groupId} metadata cannot be decrypted`, { cause });\n this.name = \"GroupMetadataUnreadableError\";\n }\n}\n\nfunction loadMetadataKeyring(\n input: GroupMetadataAccessInput,\n containerId: string,\n) {\n return withMetadataRootReload(\n () => loadMetadataKeyringOnce(input, containerId),\n () => input.apiClient.evictContainerWriterProjection(containerId),\n );\n}\n\nasync function loadMetadataKeyringOnce(\n input: GroupMetadataAccessInput,\n containerId: string,\n) {\n const projection =\n await input.apiClient.getContainerWriterProjection(containerId);\n if (!projection) return null;\n if (\n projection.containerId !== containerId ||\n projection.organizationId !== input.organizationId\n )\n throw new Error(\"Group metadata container is unavailable\");\n const target = getTargetContainerContext(projection);\n const state = readContainerState(target.manifest);\n const slot = await deriveOrganizationMetadataContainerSystemSlot({\n organizationId: input.organizationId,\n });\n if (\n state.organizationId !== input.organizationId ||\n state.systemSlot !== slot ||\n state.parentContainerId !== null\n )\n throw new Error(\n \"Group metadata requires the signed organization metadata container\",\n );\n await input.verifyMetadataContainer(\n state,\n projection.policyEvidence.organization?.head,\n );\n assertProjectionVerificationCurrent(input.stillCurrent);\n const keys = await unwrapContainerKekPath({\n ...input,\n projection,\n secretKey: input.targetSecretKey,\n });\n assertProjectionVerificationCurrent(input.stillCurrent);\n const keyMaterial = keys.get(target.kek.containerKeyEpochId);\n if (!keyMaterial)\n throw new Error(\"Group metadata container key is unavailable\");\n return {\n current: {\n organizationId: input.organizationId,\n containerId,\n containerKeyEpochId: target.kek.containerKeyEpochId,\n keyMaterial,\n },\n keys,\n };\n}\n\n/** Uses the shared metadata container's authenticated keyring, including old epochs. */\nexport function createGroupMetadataAccess(input: GroupMetadataAccessInput) {\n const loads = new Map<\n string,\n Promise<{\n current: GroupMetadataKey;\n keys: ReadonlyMap<string, Uint8Array>;\n } | null>\n >();\n function loaded(containerId: string) {\n let pending = loads.get(containerId);\n if (!pending) {\n pending = loadMetadataKeyring(input, containerId);\n loads.set(containerId, pending);\n }\n return pending;\n }\n const readName: GroupPolicyNameReader = async (bundle) => {\n assertProjectionVerificationCurrent(input.stillCurrent);\n const metadata = readGroupMetadata(bundle.currentPayload.ciphertext);\n if (\"role\" in metadata)\n return metadata.role === \"admins\" ? \"Admins\" : \"Members\";\n if (\n metadata.organizationId !== input.organizationId ||\n metadata.groupId !== bundle.currentState.principalId ||\n bundle.currentState.principalType !== \"group\"\n )\n throw new Error(\"Group metadata scope does not match its signed group\");\n const keyring = await loaded(metadata.containerId);\n const keyMaterial = keyring?.keys.get(metadata.containerKeyEpochId);\n if (!keyMaterial)\n throw new Error(\"Group metadata historical key is unavailable\");\n try {\n return await decryptGroupMetadata({\n key: { ...metadata, keyMaterial },\n groupId: bundle.currentState.principalId,\n payload: bundle.currentPayload.ciphertext,\n });\n } catch (cause) {\n throw new GroupMetadataUnreadableError(\n bundle.currentState.principalId,\n cause,\n );\n }\n };\n return {\n readName,\n async loadEncryptionKey(): Promise<GroupMetadataKey> {\n const slot = await deriveOrganizationMetadataContainerSystemSlot({\n organizationId: input.organizationId,\n });\n const containers = await loadContainers(input.execSql);\n const container = containers.find(\n (row) =>\n row.organizationId === input.organizationId &&\n row.systemSlot === slot,\n );\n if (!container)\n throw new Error(\n \"Organization metadata container has not been discovered\",\n );\n const keyring = await loaded(container.id);\n if (!keyring) throw new Error(\"Group metadata container is unavailable\");\n return keyring.current;\n },\n };\n}\n"]}
@@ -1,19 +0,0 @@
1
- import { readGroupMetadata } from "../../internal/crypto/index.js";
2
- /** Built-in labels derive from the role assigned by the signed organization. */
3
- export function assertGroupMetadataBinding(bundle, descriptor) {
4
- const groupId = bundle.currentState.principalId;
5
- const metadata = readGroupMetadata(bundle.currentPayload.ciphertext);
6
- const expectedRole = groupId === descriptor.adminGroupId
7
- ? "admins"
8
- : groupId === descriptor.memberGroupId
9
- ? "members"
10
- : null;
11
- if ("role" in metadata
12
- ? metadata.role !== expectedRole
13
- : expectedRole !== null ||
14
- metadata.organizationId !== descriptor.organizationId ||
15
- metadata.groupId !== groupId) {
16
- throw new Error("Group metadata does not match the signed organization directory");
17
- }
18
- }
19
- //# sourceMappingURL=groupMetadataBinding.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groupMetadataBinding.js","sourceRoot":"","sources":["groupMetadataBinding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAItD,gFAAgF;AAChF,MAAM,UAAU,0BAA0B,CACxC,MAGC,EACD,UAA2C;IAE3C,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC;IAChD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IACrE,MAAM,YAAY,GAChB,OAAO,KAAK,UAAU,CAAC,YAAY;QACjC,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,aAAa;YACpC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,CAAC;IACb,IACE,MAAM,IAAI,QAAQ;QAChB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY;QAChC,CAAC,CAAC,YAAY,KAAK,IAAI;YACrB,QAAQ,CAAC,cAAc,KAAK,UAAU,CAAC,cAAc;YACrD,QAAQ,CAAC,OAAO,KAAK,OAAO,EAChC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;IACJ,CAAC;AACH,CAAC","sourcesContent":["import { readGroupMetadata } from \"@tearleads/crypto\";\nimport type { PrincipalPolicyBundleResponse } from \"@tearleads/validators/response\";\nimport type { OrganizationAuthorityDescriptor } from \"../../data/principals/organizationAuthorityDescriptor\";\n\n/** Built-in labels derive from the role assigned by the signed organization. */\nexport function assertGroupMetadataBinding(\n bundle: Pick<\n PrincipalPolicyBundleResponse,\n \"currentState\" | \"currentPayload\"\n >,\n descriptor: OrganizationAuthorityDescriptor,\n): void {\n const groupId = bundle.currentState.principalId;\n const metadata = readGroupMetadata(bundle.currentPayload.ciphertext);\n const expectedRole =\n groupId === descriptor.adminGroupId\n ? \"admins\"\n : groupId === descriptor.memberGroupId\n ? \"members\"\n : null;\n if (\n \"role\" in metadata\n ? metadata.role !== expectedRole\n : expectedRole !== null ||\n metadata.organizationId !== descriptor.organizationId ||\n metadata.groupId !== groupId\n ) {\n throw new Error(\n \"Group metadata does not match the signed organization directory\",\n );\n }\n}\n"]}
@@ -1,41 +0,0 @@
1
- import { assertProjectionVerificationCurrent } from "../../data/keyingProjectionVerification/types.js";
2
- import { loadPrincipalPolicyBundle } from "../../data/persistence/principalPolicyPersistence.js";
3
- import { principalHeadMatchesReference, requireOrganizationGroupHead, } from "../../data/principals/organizationAuthorityDescriptor.js";
4
- import { principalPolicyReferenceFromBundle } from "../../data/principals/principalPolicyAdminSigners.js";
5
- import { assertMetadataRootBinding } from "./groupMetadataRootBinding.js";
6
- import { verifyDirectoryGroup } from "./groupNameUniqueness.js";
7
- import { loadGroupNameDirectoryAuthority } from "./organizationGroupNamePolicies.js";
8
- /** A public system slot alone cannot bind a self-authorized root to an organization. */
9
- export function createGroupMetadataContainerVerifier(input) {
10
- return async (state) => {
11
- assertProjectionVerificationCurrent(input.stillCurrent);
12
- const cached = await loadPrincipalPolicyBundle(input.execSql, "organization", input.organizationId);
13
- let authority = await loadGroupNameDirectoryAuthority({
14
- ...input,
15
- organizationPolicyReference: cached
16
- ? principalPolicyReferenceFromBundle(cached)
17
- : null,
18
- });
19
- if (cached &&
20
- authority &&
21
- state.referencedPrincipalHeads.some((head) => !authority?.descriptor.groupHeads.some((known) => principalHeadMatchesReference(head, known)))) {
22
- authority = await loadGroupNameDirectoryAuthority(input);
23
- }
24
- if (!authority)
25
- throw new Error("Organization metadata authority is unavailable");
26
- const memberHead = requireOrganizationGroupHead(authority.descriptor, authority.memberGroupId);
27
- const members = await verifyDirectoryGroup({
28
- ...input,
29
- descriptor: authority.descriptor,
30
- externalAuthority: authority.externalAuthority,
31
- }, memberHead);
32
- assertMetadataRootBinding({
33
- authority,
34
- members,
35
- organizationId: input.organizationId,
36
- state,
37
- });
38
- assertProjectionVerificationCurrent(input.stillCurrent);
39
- };
40
- }
41
- //# sourceMappingURL=groupMetadataContainerAuthority.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groupMetadataContainerAuthority.js","sourceRoot":"","sources":["groupMetadataContainerAuthority.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mCAAmC,EAAE,MAAM,+CAA+C,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAC;AAC9F,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EAAE,kCAAkC,EAAE,MAAM,mDAAmD,CAAC;AAEvG,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AAOlF,wFAAwF;AACxF,MAAM,UAAU,oCAAoC,CAAC,KAAY;IAC/D,OAAO,KAAK,EAAE,KAAmC,EAAiB,EAAE;QAClE,mCAAmC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAC5C,KAAK,CAAC,OAAO,EACb,cAAc,EACd,KAAK,CAAC,cAAc,CACrB,CAAC;QACF,IAAI,SAAS,GAAG,MAAM,+BAA+B,CAAC;YACpD,GAAG,KAAK;YACR,2BAA2B,EAAE,MAAM;gBACjC,CAAC,CAAC,kCAAkC,CAAC,MAAM,CAAC;gBAC5C,CAAC,CAAC,IAAI;SACT,CAAC,CAAC;QACH,IACE,MAAM;YACN,SAAS;YACT,KAAK,CAAC,wBAAwB,CAAC,IAAI,CACjC,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/C,6BAA6B,CAAC,IAAI,EAAE,KAAK,CAAC,CAC3C,CACJ,EACD,CAAC;YACD,SAAS,GAAG,MAAM,+BAA+B,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,CAAC,SAAS;YACZ,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,4BAA4B,CAC7C,SAAS,CAAC,UAAU,EACpB,SAAS,CAAC,aAAa,CACxB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC;YACE,GAAG,KAAK;YACR,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;SAC/C,EACD,UAAU,CACX,CAAC;QACF,yBAAyB,CAAC;YACxB,SAAS;YACT,OAAO;YACP,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,KAAK;SACN,CAAC,CAAC;QACH,mCAAmC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import type { ContainerAccessManifestState } from \"@tearleads/crypto\";\nimport { assertProjectionVerificationCurrent } from \"../../data/keyingProjectionVerification/types\";\nimport { loadPrincipalPolicyBundle } from \"../../data/persistence/principalPolicyPersistence\";\nimport {\n principalHeadMatchesReference,\n requireOrganizationGroupHead,\n} from \"../../data/principals/organizationAuthorityDescriptor\";\nimport { principalPolicyReferenceFromBundle } from \"../../data/principals/principalPolicyAdminSigners\";\nimport type { SecurityIncidentReporter } from \"../../data/shared/securityIncidents\";\nimport { assertMetadataRootBinding } from \"./groupMetadataRootBinding\";\nimport { verifyDirectoryGroup } from \"./groupNameUniqueness\";\nimport { loadGroupNameDirectoryAuthority } from \"./organizationGroupNamePolicies\";\n\ntype Input = Omit<\n Parameters<typeof loadGroupNameDirectoryAuthority>[0],\n \"organizationPolicyReference\"\n> & { readonly reportSecurityIncident: SecurityIncidentReporter };\n\n/** A public system slot alone cannot bind a self-authorized root to an organization. */\nexport function createGroupMetadataContainerVerifier(input: Input) {\n return async (state: ContainerAccessManifestState): Promise<void> => {\n assertProjectionVerificationCurrent(input.stillCurrent);\n const cached = await loadPrincipalPolicyBundle(\n input.execSql,\n \"organization\",\n input.organizationId,\n );\n let authority = await loadGroupNameDirectoryAuthority({\n ...input,\n organizationPolicyReference: cached\n ? principalPolicyReferenceFromBundle(cached)\n : null,\n });\n if (\n cached &&\n authority &&\n state.referencedPrincipalHeads.some(\n (head) =>\n !authority?.descriptor.groupHeads.some((known) =>\n principalHeadMatchesReference(head, known),\n ),\n )\n ) {\n authority = await loadGroupNameDirectoryAuthority(input);\n }\n if (!authority)\n throw new Error(\"Organization metadata authority is unavailable\");\n const memberHead = requireOrganizationGroupHead(\n authority.descriptor,\n authority.memberGroupId,\n );\n const members = await verifyDirectoryGroup(\n {\n ...input,\n descriptor: authority.descriptor,\n externalAuthority: authority.externalAuthority,\n },\n memberHead,\n );\n assertMetadataRootBinding({\n authority,\n members,\n organizationId: input.organizationId,\n state,\n });\n assertProjectionVerificationCurrent(input.stillCurrent);\n };\n}\n"]}
@@ -1,40 +0,0 @@
1
- import { KeyingVerificationError } from "../../internal/crypto/index.js";
2
- /**
3
- * The organization metadata root was read before a reserved-group commit that
4
- * the signed directory already reflects: each head it cites that differs from
5
- * the directory is a verified predecessor of the directory's head. That is an
6
- * honest read race, so readers reload the root rather than report tampering
7
- * (#2365 finding 22).
8
- */
9
- export class MetadataRootBehindDirectoryError extends Error {
10
- constructor() {
11
- super("Organization metadata root cites a superseded reserved-group head");
12
- this.name = "MetadataRootBehindDirectoryError";
13
- }
14
- }
15
- /**
16
- * Runs `load`, then once more after `evictRoot` if the root it read was
17
- * behind; `reread` tells `load` to skip any root it was handed. Honest servers
18
- * re-cite the reserved groups in the commit that advances them, so a root
19
- * still behind after a fresh read is an incident.
20
- */
21
- export async function withMetadataRootReload(load, evictRoot) {
22
- try {
23
- return await load(false);
24
- }
25
- catch (error) {
26
- if (!(error instanceof MetadataRootBehindDirectoryError))
27
- throw error;
28
- }
29
- evictRoot();
30
- try {
31
- return await load(true);
32
- }
33
- catch (error) {
34
- if (error instanceof MetadataRootBehindDirectoryError) {
35
- throw new KeyingVerificationError("object_mismatch", "Organization metadata root is still behind the signed directory after a reload");
36
- }
37
- throw error;
38
- }
39
- }
40
- //# sourceMappingURL=groupMetadataErrors.js.map
@@ -1,51 +0,0 @@
1
- import { KeyingVerificationError, } from "../../internal/crypto/index.js";
2
- import { principalHeadMatchesReference, requireOrganizationGroupHead, } from "../../data/principals/organizationAuthorityDescriptor.js";
3
- import { principalPolicyEvidenceEntries } from "../../data/principals/principalPolicyEvidence.js";
4
- import { MetadataRootBehindDirectoryError } from "./groupMetadataErrors.js";
5
- /** Root bindings consume verified current grants and explicitly retained predecessor citations. */
6
- export function assertMetadataRootBinding(input) {
7
- const { authority, state } = input;
8
- const expected = [
9
- {
10
- policy: authority.adminPolicy,
11
- id: authority.adminGroupId,
12
- level: "admin",
13
- grants: authority.adminPolicy.grants,
14
- },
15
- {
16
- policy: input.members.policy,
17
- id: authority.memberGroupId,
18
- level: "read",
19
- grants: input.members.policy.grants,
20
- },
21
- ];
22
- const cited = (groupId) => state.referencedPrincipalHeads.find((head) => head.principalType === "group" && head.principalId === groupId);
23
- const unbound = new KeyingVerificationError("object_mismatch", "Organization metadata root is not bound to the reserved group grants");
24
- if (state.organizationId !== input.organizationId ||
25
- state.parentContainerId !== null ||
26
- state.directGrants.length !== 2 ||
27
- state.referencedPrincipalHeads.length !== 2 ||
28
- expected.some((role) => !principalHeadMatchesReference(role.policy.state, requireOrganizationGroupHead(authority.descriptor, role.id)) ||
29
- !role.grants.some((grant) => grant.containerId === state.containerId &&
30
- grant.accessLevel === role.level) ||
31
- !state.directGrants.some((grant) => grant.subjectType === "group" &&
32
- grant.subjectId === role.id &&
33
- grant.accessLevel === role.level) ||
34
- !cited(role.id)))
35
- throw unbound;
36
- const superseded = expected.flatMap((role) => {
37
- const head = cited(role.id);
38
- return head &&
39
- !principalHeadMatchesReference(head, requireOrganizationGroupHead(authority.descriptor, role.id))
40
- ? [{ policy: role.policy, head }]
41
- : [];
42
- });
43
- if (superseded.length === 0)
44
- return;
45
- // A root read before a reserved-group commit cites a verified predecessor
46
- // of the directory's head; any other head is not an honest race.
47
- if (superseded.every(({ policy, head }) => principalPolicyEvidenceEntries(policy).some(({ state }) => principalHeadMatchesReference(state, head))))
48
- throw new MetadataRootBehindDirectoryError();
49
- throw unbound;
50
- }
51
- //# sourceMappingURL=groupMetadataRootBinding.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groupMetadataRootBinding.js","sourceRoot":"","sources":["groupMetadataRootBinding.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type ContainerAccessManifestState,\n KeyingVerificationError,\n type PrincipalPolicyAuthorization,\n} from \"@tearleads/crypto\";\nimport {\n type OrganizationAuthorityDescriptor,\n principalHeadMatchesReference,\n requireOrganizationGroupHead,\n} from \"../../data/principals/organizationAuthorityDescriptor\";\nimport { principalPolicyEvidenceEntries } from \"../../data/principals/principalPolicyEvidence\";\nimport { MetadataRootBehindDirectoryError } from \"./groupMetadataErrors\";\n\n/** Root bindings consume verified current grants and explicitly retained predecessor citations. */\nexport function assertMetadataRootBinding(input: {\n readonly authority: {\n readonly descriptor: OrganizationAuthorityDescriptor;\n readonly adminGroupId: string;\n readonly memberGroupId: string;\n readonly adminPolicy: PrincipalPolicyAuthorization;\n };\n readonly members: { readonly policy: PrincipalPolicyAuthorization };\n readonly organizationId: string;\n readonly state: ContainerAccessManifestState;\n}): void {\n const { authority, state } = input;\n const expected = [\n {\n policy: authority.adminPolicy,\n id: authority.adminGroupId,\n level: \"admin\",\n grants: authority.adminPolicy.grants,\n },\n {\n policy: input.members.policy,\n id: authority.memberGroupId,\n level: \"read\",\n grants: input.members.policy.grants,\n },\n ];\n const cited = (groupId: string) =>\n state.referencedPrincipalHeads.find(\n (head) => head.principalType === \"group\" && head.principalId === groupId,\n );\n const unbound = new KeyingVerificationError(\n \"object_mismatch\",\n \"Organization metadata root is not bound to the reserved group grants\",\n );\n if (\n state.organizationId !== input.organizationId ||\n state.parentContainerId !== null ||\n state.directGrants.length !== 2 ||\n state.referencedPrincipalHeads.length !== 2 ||\n expected.some(\n (role) =>\n !principalHeadMatchesReference(\n role.policy.state,\n requireOrganizationGroupHead(authority.descriptor, role.id),\n ) ||\n !role.grants.some(\n (grant) =>\n grant.containerId === state.containerId &&\n grant.accessLevel === role.level,\n ) ||\n !state.directGrants.some(\n (grant) =>\n grant.subjectType === \"group\" &&\n grant.subjectId === role.id &&\n grant.accessLevel === role.level,\n ) ||\n !cited(role.id),\n )\n )\n throw unbound;\n const superseded = expected.flatMap((role) => {\n const head = cited(role.id);\n return head &&\n !principalHeadMatchesReference(\n head,\n requireOrganizationGroupHead(authority.descriptor, role.id),\n )\n ? [{ policy: role.policy, head }]\n : [];\n });\n if (superseded.length === 0) return;\n // A root read before a reserved-group commit cites a verified predecessor\n // of the directory's head; any other head is not an honest race.\n if (\n superseded.every(({ policy, head }) =>\n principalPolicyEvidenceEntries(policy).some(({ state }) =>\n principalHeadMatchesReference(state, head),\n ),\n )\n )\n throw new MetadataRootBehindDirectoryError();\n throw unbound;\n}\n"]}
@@ -1,47 +0,0 @@
1
- import { ProjectionDependencyUnavailableError } from "../../data/keyingProjectionVerification/dependencyUnavailable.js";
2
- import { createProjectionUserKeyResolver } from "../../data/keyingProjectionVerification/userKeyResolver.js";
3
- import { createRuntimePrincipalPolicyCurrentResolver, } from "../principals/runtimePolicyRecovery.js";
4
- import { createRuntimePrincipalPolicyWarmer } from "../principals/runtimePolicyWarmer.js";
5
- import { createCurrentGroupMetadataContainerVerifier } from "./currentGroupMetadataAuthority.js";
6
- import { createGroupMetadataAccess, } from "./groupMetadataAccess.js";
7
- export function createRuntimeGroupMetadataAccess(runtime, organizationId, stillCurrent, verifyMetadataContainer, currentRecovery) {
8
- const targetSecretKey = runtime.crypto.encapsulationKeyPair?.secretKey;
9
- if (!targetSecretKey)
10
- throw new Error("Group metadata identity is locked");
11
- // The signed metadata projection selects exact citations. Reuse matching
12
- // private evidence with its dependencies and pins before bounded online reads.
13
- const warmer = createRuntimePrincipalPolicyWarmer(runtime, {
14
- preferLocalCurrent: true,
15
- });
16
- const resolveCurrentPolicy = currentRecovery?.resolveCurrentPolicy ??
17
- createRuntimePrincipalPolicyCurrentResolver(runtime);
18
- const authorityInput = {
19
- apiClient: runtime.apiClient,
20
- execSql: runtime.infra.execSql,
21
- organizationId,
22
- reportSecurityIncident: runtime.util.reportSecurityIncident,
23
- resolveTrustedUserIdentity: runtime.resolveTrustedUserIdentity,
24
- stillCurrent: stillCurrent ?? (() => true),
25
- };
26
- return createGroupMetadataAccess({
27
- verifyMetadataContainer: verifyMetadataContainer ??
28
- createCurrentGroupMetadataContainerVerifier({
29
- ...authorityInput,
30
- resolveCurrentPolicy: requireCurrentResolver(resolveCurrentPolicy),
31
- recoveryBatch: currentRecovery?.recoveryBatch,
32
- }),
33
- apiClient: runtime.apiClient,
34
- execSql: runtime.infra.execSql,
35
- organizationId,
36
- resolveProjectionUserKey: createProjectionUserKeyResolver(runtime),
37
- targetSecretKey,
38
- stillCurrent,
39
- warmReferencedPrincipalPolicies: warmer,
40
- });
41
- }
42
- function requireCurrentResolver(resolve) {
43
- if (!resolve)
44
- throw new ProjectionDependencyUnavailableError("Group metadata requires private paged recovery");
45
- return resolve;
46
- }
47
- //# sourceMappingURL=groupMetadataRuntime.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groupMetadataRuntime.js","sourceRoot":"","sources":["groupMetadataRuntime.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oCAAoC,EAAE,MAAM,+DAA+D,CAAC;AACrH,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAC;AAI1G,OAAO,EACL,2CAA2C,GAE5C,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,kCAAkC,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,2CAA2C,EAAE,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EACL,yBAAyB,GAE1B,MAAM,uBAAuB,CAAC;AAmB/B,MAAM,UAAU,gCAAgC,CAC9C,OAA6B,EAC7B,cAAsB,EACtB,YAA4B,EAC5B,uBAA6E,EAC7E,eAKC;IAED,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,SAAS,CAAC;IACvE,IAAI,CAAC,eAAe;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC3E,yEAAyE;IACzE,+EAA+E;IAC/E,MAAM,MAAM,GAAG,kCAAkC,CAAC,OAAO,EAAE;QACzD,kBAAkB,EAAE,IAAI;KACzB,CAAC,CAAC;IACH,MAAM,oBAAoB,GACxB,eAAe,EAAE,oBAAoB;QACrC,2CAA2C,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG;QACrB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;QAC9B,cAAc;QACd,sBAAsB,EAAE,OAAO,CAAC,IAAI,CAAC,sBAAsB;QAC3D,0BAA0B,EAAE,OAAO,CAAC,0BAA0B;QAC9D,YAAY,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;KAC3C,CAAC;IACF,OAAO,yBAAyB,CAAC;QAC/B,uBAAuB,EACrB,uBAAuB;YACvB,2CAA2C,CAAC;gBAC1C,GAAG,cAAc;gBACjB,oBAAoB,EAAE,sBAAsB,CAAC,oBAAoB,CAAC;gBAClE,aAAa,EAAE,eAAe,EAAE,aAAa;aAC9C,CAAC;QACJ,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;QAC9B,cAAc;QACd,wBAAwB,EAAE,+BAA+B,CAAC,OAAO,CAAC;QAClE,eAAe;QACf,YAAY;QACZ,+BAA+B,EAAE,MAAM;KACxC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAuE;IAEvE,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,oCAAoC,CAC5C,gDAAgD,CACjD,CAAC;IACJ,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import type { EncapsulationKeyPair } from \"@tearleads/crypto\";\nimport { ProjectionDependencyUnavailableError } from \"../../data/keyingProjectionVerification/dependencyUnavailable\";\nimport { createProjectionUserKeyResolver } from \"../../data/keyingProjectionVerification/userKeyResolver\";\nimport type { SecurityIncidentReporter } from \"../../data/shared/securityIncidents\";\nimport type { ExecSql } from \"../../data/sqlite/sqlSchema\";\nimport type { TrustedUserIdentityResolver } from \"../../data/trustedUserIdentity\";\nimport {\n createRuntimePrincipalPolicyCurrentResolver,\n type PrincipalPolicyRecoveryRuntime,\n} from \"../principals/runtimePolicyRecovery\";\nimport { createRuntimePrincipalPolicyWarmer } from \"../principals/runtimePolicyWarmer\";\nimport { createCurrentGroupMetadataContainerVerifier } from \"./currentGroupMetadataAuthority\";\nimport {\n createGroupMetadataAccess,\n type GroupMetadataAccessInput,\n} from \"./groupMetadataAccess\";\nimport type { PrincipalPolicyReadApi } from \"./groupPolicyMutationContext\";\n\ninterface GroupMetadataRuntime {\n readonly state?: PrincipalPolicyRecoveryRuntime[\"state\"];\n readonly apiClient: GroupMetadataAccessInput[\"apiClient\"] &\n PrincipalPolicyReadApi &\n PrincipalPolicyRecoveryRuntime[\"apiClient\"];\n readonly crypto: {\n readonly encapsulationKeyPair: EncapsulationKeyPair | null;\n };\n readonly infra: { readonly execSql: ExecSql };\n readonly resolveTrustedUserIdentity: TrustedUserIdentityResolver;\n readonly util: {\n readonly log: (message: string) => void;\n readonly reportSecurityIncident: SecurityIncidentReporter;\n };\n}\n\nexport function createRuntimeGroupMetadataAccess(\n runtime: GroupMetadataRuntime,\n organizationId: string,\n stillCurrent?: () => boolean,\n verifyMetadataContainer?: GroupMetadataAccessInput[\"verifyMetadataContainer\"],\n currentRecovery?: {\n readonly resolveCurrentPolicy: ReturnType<\n typeof createRuntimePrincipalPolicyCurrentResolver\n >;\n readonly recoveryBatch: object;\n },\n) {\n const targetSecretKey = runtime.crypto.encapsulationKeyPair?.secretKey;\n if (!targetSecretKey) throw new Error(\"Group metadata identity is locked\");\n // The signed metadata projection selects exact citations. Reuse matching\n // private evidence with its dependencies and pins before bounded online reads.\n const warmer = createRuntimePrincipalPolicyWarmer(runtime, {\n preferLocalCurrent: true,\n });\n const resolveCurrentPolicy =\n currentRecovery?.resolveCurrentPolicy ??\n createRuntimePrincipalPolicyCurrentResolver(runtime);\n const authorityInput = {\n apiClient: runtime.apiClient,\n execSql: runtime.infra.execSql,\n organizationId,\n reportSecurityIncident: runtime.util.reportSecurityIncident,\n resolveTrustedUserIdentity: runtime.resolveTrustedUserIdentity,\n stillCurrent: stillCurrent ?? (() => true),\n };\n return createGroupMetadataAccess({\n verifyMetadataContainer:\n verifyMetadataContainer ??\n createCurrentGroupMetadataContainerVerifier({\n ...authorityInput,\n resolveCurrentPolicy: requireCurrentResolver(resolveCurrentPolicy),\n recoveryBatch: currentRecovery?.recoveryBatch,\n }),\n apiClient: runtime.apiClient,\n execSql: runtime.infra.execSql,\n organizationId,\n resolveProjectionUserKey: createProjectionUserKeyResolver(runtime),\n targetSecretKey,\n stillCurrent,\n warmReferencedPrincipalPolicies: warmer,\n });\n}\n\nfunction requireCurrentResolver(\n resolve: ReturnType<typeof createRuntimePrincipalPolicyCurrentResolver>,\n) {\n if (!resolve)\n throw new ProjectionDependencyUnavailableError(\n \"Group metadata requires private paged recovery\",\n );\n return resolve;\n}\n"]}
@@ -1,151 +0,0 @@
1
- import { KeyingVerificationError, } from "../../internal/crypto/index.js";
2
- import { throwKeyingVerificationErrorWithContext } from "../../data/keyingProjectionVerification/error.js";
3
- import { loadPrincipalPolicyCheckpoint } from "../../data/persistence/keyingCheckpointPersistence.js";
4
- import { loadPrincipalPolicyBundleForReference } from "../../data/persistence/principalPolicyReferencePersistence.js";
5
- import { retainVerifiedPrincipalPolicyBundle } from "../../data/persistence/verifiedPrincipalPolicyRetentionPersistence.js";
6
- import { principalHeadMatchesReference, } from "../../data/principals/organizationAuthorityDescriptor.js";
7
- import { principalPolicyReferenceFromBundle, verifyPrincipalPolicyBundleWithExternalOrganizationAdmins, } from "../../data/principals/principalPolicyAdminSigners.js";
8
- import { collectPrincipalPolicySignerPublicKeys } from "../principals/policyVerification.js";
9
- import { GroupMetadataUnreadableError } from "./groupMetadataAccess.js";
10
- import { assertGroupMetadataBinding } from "./groupMetadataBinding.js";
11
- import { canonicalGroupNameKey, readGroupPolicyPayloadName, } from "./principalPolicyRequest.js";
12
- /**
13
- * Loads one directory group at its committed head: from the local retained
14
- * bundles when they already hold that head, and from the API otherwise.
15
- */
16
- async function loadDirectoryGroupBundle(input, head) {
17
- const localCheckpoint = await loadPrincipalPolicyCheckpoint(input.execSql, "group", head.principalId);
18
- const cached = await loadPrincipalPolicyBundleForReference(input.execSql, head, localCheckpoint);
19
- const bundle = cached ??
20
- (await input.apiClient.getCurrentPrincipalPolicy("group", head.principalId));
21
- if (!bundle) {
22
- throw new Error(`Organization directory group ${head.principalId} could not be loaded`);
23
- }
24
- if (!principalHeadMatchesReference(principalPolicyReferenceFromBundle(bundle), head)) {
25
- // Head drift is reachable by a concurrent admin mutation, so it is a
26
- // plain error to retry on, not an incident (as in the share path). The
27
- // typed errors stay for signature and projection failures.
28
- throw new Error("Organization directory group policy does not match the signed organization directory");
29
- }
30
- return { bundle, localCheckpoint };
31
- }
32
- /**
33
- * A bundle served from local retention was verified when it was retained, and
34
- * is verified again here on purpose: the re-check costs local CPU only, and it
35
- * keeps the name a group vouches for independent of what any earlier caller
36
- * trusted at retention time.
37
- */
38
- export async function verifyDirectoryGroup(input, head) {
39
- const { bundle, localCheckpoint } = await loadDirectoryGroupBundle(input, head);
40
- const signerPublicKeys = await collectPrincipalPolicySignerPublicKeys({
41
- bundle,
42
- resolveTrustedUserIdentity: input.resolveTrustedUserIdentity,
43
- });
44
- if ("error" in signerPublicKeys) {
45
- throw new Error(`Organization directory group signer key could not be loaded (${signerPublicKeys.error})`);
46
- }
47
- const verified = await verifyPrincipalPolicyBundleWithExternalOrganizationAdmins({
48
- bundle,
49
- expectedReference: head,
50
- loadExternalAuthority: async () => input.externalAuthority,
51
- localCheckpoint,
52
- signerPublicKeys: signerPublicKeys.signerPublicKeys,
53
- });
54
- if (!verified.ok) {
55
- throwKeyingVerificationErrorWithContext(verified.error, "Organization directory group verification failed");
56
- }
57
- assertGroupMetadataBinding(bundle, input.descriptor);
58
- const name = await readDirectoryGroupName(input, bundle);
59
- return {
60
- bundle,
61
- name,
62
- nameKey: name === null ? null : canonicalGroupNameKey(name),
63
- policy: verified.value,
64
- };
65
- }
66
- /**
67
- * A verified group whose name no member can open has no name to select by. The
68
- * walk isolates it rather than failing every name in the organization, but it
69
- * still records the incident: only a dishonest admin signs such a name.
70
- */
71
- export async function readDirectoryGroupName(input, bundle) {
72
- try {
73
- return await readGroupPolicyPayloadName(bundle, input.readEncryptedName);
74
- }
75
- catch (error) {
76
- if (!(error instanceof GroupMetadataUnreadableError))
77
- throw error;
78
- await input.reportSecurityIncident(new KeyingVerificationError("invalid_shape", "Signed group name does not open under the cited metadata key"), {
79
- evidenceHashes: { stateHash: bundle.currentState.stateHash },
80
- objectId: bundle.currentState.principalId,
81
- objectKind: "principal",
82
- operation: "organization.groupName",
83
- organizationId: input.organizationId,
84
- });
85
- return null;
86
- }
87
- }
88
- /**
89
- * Signed group names are the only authenticated label a member can choose a
90
- * group by, and the API does not make them unique within an organization. So
91
- * uniqueness is enforced here, where a name enters: before an admin signs a
92
- * new group, every group committed in the signed organization directory
93
- * (the reserved Admins and Members groups included) is loaded, verified
94
- * against its directory head, and its committed name compared by canonical
95
- * key. A share then needs only the target's verified name. A compromised
96
- * server cannot mint a signed group, so it cannot create the duplicate this
97
- * check refuses.
98
- *
99
- * The walk is fail-closed: one group that cannot be loaded or verified blocks
100
- * the creation, since an unverifiable group could carry any name. A verified
101
- * group whose name does not decrypt is skipped: no member can open that name,
102
- * so it cannot collide with one. It runs the
103
- * loads in parallel and retains every verified bundle, so a later creation
104
- * finds unchanged groups locally and fetches only those whose head moved.
105
- */
106
- const DIRECTORY_WALK_CONCURRENCY = 4;
107
- /** Runs `work` over `items` with at most `limit` in flight, keeping order. */
108
- async function mapWithConcurrency(items, limit, work) {
109
- const results = [];
110
- let next = 0;
111
- const worker = async () => {
112
- for (;;) {
113
- const index = next++;
114
- const item = items[index];
115
- if (index >= items.length || item === undefined)
116
- return;
117
- results[index] = await work(item);
118
- }
119
- };
120
- await Promise.all(Array.from({ length: Math.min(limit, items.length) }, worker));
121
- return results;
122
- }
123
- export async function assertGroupNameUniqueInDirectory(input) {
124
- const nameKey = canonicalGroupNameKey(input.name);
125
- // Each verified bundle is retained as soon as it verifies, so a failure
126
- // later in the walk (or a taken name) still leaves the cache warm for the
127
- // retry. Retention runs in a transaction on the shared connection, so the
128
- // writes are chained one after another while the loads stay concurrent.
129
- const retainedAt = new Date().toISOString();
130
- let retention = Promise.resolve();
131
- const verifyAndRetain = async (head) => {
132
- const group = await verifyDirectoryGroup(input, head);
133
- retention = retention.then(() => retainVerifiedPrincipalPolicyBundle({
134
- bundle: group.bundle,
135
- execSql: input.execSql,
136
- organizationId: input.organizationId,
137
- policy: group.policy,
138
- updatedAt: retainedAt,
139
- }));
140
- await retention;
141
- return group;
142
- };
143
- const groups = await mapWithConcurrency(input.descriptor.groupHeads, DIRECTORY_WALK_CONCURRENCY, verifyAndRetain);
144
- // A taken name is user input to correct, not evidence of tampering, so this
145
- // is a plain error: group creation runs under security-incident reporting,
146
- // which records every KeyingVerificationError.
147
- if (groups.some((group) => group.nameKey === nameKey)) {
148
- throw new Error("Another signed group in this organization already carries this name");
149
- }
150
- }
151
- //# sourceMappingURL=groupNameUniqueness.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groupNameUniqueness.js","sourceRoot":"","sources":["groupNameUniqueness.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n KeyingVerificationError,\n type PrincipalPolicyExternalAuthority,\n type VerifiedPrincipalPolicy,\n} from \"@tearleads/crypto\";\nimport type { PrincipalPolicyBundleResponse } from \"@tearleads/validators/response\";\nimport { throwKeyingVerificationErrorWithContext } from \"../../data/keyingProjectionVerification/error\";\nimport { loadPrincipalPolicyCheckpoint } from \"../../data/persistence/keyingCheckpointPersistence\";\nimport { loadPrincipalPolicyBundleForReference } from \"../../data/persistence/principalPolicyReferencePersistence\";\nimport { retainVerifiedPrincipalPolicyBundle } from \"../../data/persistence/verifiedPrincipalPolicyRetentionPersistence\";\nimport {\n type OrganizationAuthorityDescriptor,\n principalHeadMatchesReference,\n} from \"../../data/principals/organizationAuthorityDescriptor\";\nimport {\n principalPolicyReferenceFromBundle,\n verifyPrincipalPolicyBundleWithExternalOrganizationAdmins,\n} from \"../../data/principals/principalPolicyAdminSigners\";\nimport type { SecurityIncidentReporter } from \"../../data/shared/securityIncidents\";\nimport type { ExecSql } from \"../../data/sqlite/sqlSchema\";\nimport type { TrustedUserIdentityResolver } from \"../../data/trustedUserIdentity\";\nimport type { CurrentPrincipalPolicyReader } from \"../principals/currentPrincipalPolicyReader\";\nimport { collectPrincipalPolicySignerPublicKeys } from \"../principals/policyVerification\";\nimport { GroupMetadataUnreadableError } from \"./groupMetadataAccess\";\nimport { assertGroupMetadataBinding } from \"./groupMetadataBinding\";\nimport {\n canonicalGroupNameKey,\n type GroupPolicyNameReader,\n readGroupPolicyPayloadName,\n} from \"./principalPolicyRequest\";\n\nexport interface DirectoryGroupWalkInput {\n readonly readEncryptedName?: GroupPolicyNameReader | undefined;\n readonly apiClient: CurrentPrincipalPolicyReader;\n readonly descriptor: OrganizationAuthorityDescriptor;\n readonly execSql: ExecSql;\n readonly externalAuthority: PrincipalPolicyExternalAuthority;\n readonly organizationId: string;\n readonly reportSecurityIncident: SecurityIncidentReporter;\n readonly resolveTrustedUserIdentity: TrustedUserIdentityResolver;\n}\n\ntype DirectoryGroupHead = OrganizationAuthorityDescriptor[\"groupHeads\"][number];\n\ninterface VerifiedDirectoryGroup {\n readonly bundle: PrincipalPolicyBundleResponse;\n /** Null when the signed name does not decrypt for any member. */\n readonly name: string | null;\n readonly nameKey: string | null;\n readonly policy: VerifiedPrincipalPolicy;\n}\n\n/**\n * Loads one directory group at its committed head: from the local retained\n * bundles when they already hold that head, and from the API otherwise.\n */\nasync function loadDirectoryGroupBundle(\n input: DirectoryGroupWalkInput,\n head: DirectoryGroupHead,\n) {\n const localCheckpoint = await loadPrincipalPolicyCheckpoint(\n input.execSql,\n \"group\",\n head.principalId,\n );\n const cached = await loadPrincipalPolicyBundleForReference(\n input.execSql,\n head,\n localCheckpoint,\n );\n const bundle =\n cached ??\n (await input.apiClient.getCurrentPrincipalPolicy(\n \"group\",\n head.principalId,\n ));\n if (!bundle) {\n throw new Error(\n `Organization directory group ${head.principalId} could not be loaded`,\n );\n }\n if (\n !principalHeadMatchesReference(\n principalPolicyReferenceFromBundle(bundle),\n head,\n )\n ) {\n // Head drift is reachable by a concurrent admin mutation, so it is a\n // plain error to retry on, not an incident (as in the share path). The\n // typed errors stay for signature and projection failures.\n throw new Error(\n \"Organization directory group policy does not match the signed organization directory\",\n );\n }\n return { bundle, localCheckpoint };\n}\n\n/**\n * A bundle served from local retention was verified when it was retained, and\n * is verified again here on purpose: the re-check costs local CPU only, and it\n * keeps the name a group vouches for independent of what any earlier caller\n * trusted at retention time.\n */\nexport async function verifyDirectoryGroup(\n input: DirectoryGroupWalkInput,\n head: DirectoryGroupHead,\n): Promise<VerifiedDirectoryGroup> {\n const { bundle, localCheckpoint } = await loadDirectoryGroupBundle(\n input,\n head,\n );\n const signerPublicKeys = await collectPrincipalPolicySignerPublicKeys({\n bundle,\n resolveTrustedUserIdentity: input.resolveTrustedUserIdentity,\n });\n if (\"error\" in signerPublicKeys) {\n throw new Error(\n `Organization directory group signer key could not be loaded (${signerPublicKeys.error})`,\n );\n }\n const verified =\n await verifyPrincipalPolicyBundleWithExternalOrganizationAdmins({\n bundle,\n expectedReference: head,\n loadExternalAuthority: async () => input.externalAuthority,\n localCheckpoint,\n signerPublicKeys: signerPublicKeys.signerPublicKeys,\n });\n if (!verified.ok) {\n throwKeyingVerificationErrorWithContext(\n verified.error,\n \"Organization directory group verification failed\",\n );\n }\n assertGroupMetadataBinding(bundle, input.descriptor);\n const name = await readDirectoryGroupName(input, bundle);\n return {\n bundle,\n name,\n nameKey: name === null ? null : canonicalGroupNameKey(name),\n policy: verified.value,\n };\n}\n\n/**\n * A verified group whose name no member can open has no name to select by. The\n * walk isolates it rather than failing every name in the organization, but it\n * still records the incident: only a dishonest admin signs such a name.\n */\nexport async function readDirectoryGroupName(\n input: Pick<\n DirectoryGroupWalkInput,\n \"readEncryptedName\" | \"reportSecurityIncident\" | \"organizationId\"\n >,\n bundle: Parameters<typeof readGroupPolicyPayloadName>[0],\n): Promise<string | null> {\n try {\n return await readGroupPolicyPayloadName(bundle, input.readEncryptedName);\n } catch (error) {\n if (!(error instanceof GroupMetadataUnreadableError)) throw error;\n await input.reportSecurityIncident(\n new KeyingVerificationError(\n \"invalid_shape\",\n \"Signed group name does not open under the cited metadata key\",\n ),\n {\n evidenceHashes: { stateHash: bundle.currentState.stateHash },\n objectId: bundle.currentState.principalId,\n objectKind: \"principal\",\n operation: \"organization.groupName\",\n organizationId: input.organizationId,\n },\n );\n return null;\n }\n}\n\n/**\n * Signed group names are the only authenticated label a member can choose a\n * group by, and the API does not make them unique within an organization. So\n * uniqueness is enforced here, where a name enters: before an admin signs a\n * new group, every group committed in the signed organization directory\n * (the reserved Admins and Members groups included) is loaded, verified\n * against its directory head, and its committed name compared by canonical\n * key. A share then needs only the target's verified name. A compromised\n * server cannot mint a signed group, so it cannot create the duplicate this\n * check refuses.\n *\n * The walk is fail-closed: one group that cannot be loaded or verified blocks\n * the creation, since an unverifiable group could carry any name. A verified\n * group whose name does not decrypt is skipped: no member can open that name,\n * so it cannot collide with one. It runs the\n * loads in parallel and retains every verified bundle, so a later creation\n * finds unchanged groups locally and fetches only those whose head moved.\n */\nconst DIRECTORY_WALK_CONCURRENCY = 4;\n\n/** Runs `work` over `items` with at most `limit` in flight, keeping order. */\nasync function mapWithConcurrency<T, R>(\n items: ReadonlyArray<T>,\n limit: number,\n work: (item: T) => Promise<R>,\n): Promise<R[]> {\n const results: R[] = [];\n let next = 0;\n const worker = async () => {\n for (;;) {\n const index = next++;\n const item = items[index];\n if (index >= items.length || item === undefined) return;\n results[index] = await work(item);\n }\n };\n await Promise.all(\n Array.from({ length: Math.min(limit, items.length) }, worker),\n );\n return results;\n}\n\nexport async function assertGroupNameUniqueInDirectory(\n input: DirectoryGroupWalkInput & { readonly name: string },\n): Promise<void> {\n const nameKey = canonicalGroupNameKey(input.name);\n // Each verified bundle is retained as soon as it verifies, so a failure\n // later in the walk (or a taken name) still leaves the cache warm for the\n // retry. Retention runs in a transaction on the shared connection, so the\n // writes are chained one after another while the loads stay concurrent.\n const retainedAt = new Date().toISOString();\n let retention: Promise<void> = Promise.resolve();\n const verifyAndRetain = async (\n head: DirectoryGroupHead,\n ): Promise<VerifiedDirectoryGroup> => {\n const group = await verifyDirectoryGroup(input, head);\n retention = retention.then(() =>\n retainVerifiedPrincipalPolicyBundle({\n bundle: group.bundle,\n execSql: input.execSql,\n organizationId: input.organizationId,\n policy: group.policy,\n updatedAt: retainedAt,\n }),\n );\n await retention;\n return group;\n };\n const groups = await mapWithConcurrency(\n input.descriptor.groupHeads,\n DIRECTORY_WALK_CONCURRENCY,\n verifyAndRetain,\n );\n // A taken name is user input to correct, not evidence of tampering, so this\n // is a plain error: group creation runs under security-incident reporting,\n // which records every KeyingVerificationError.\n if (groups.some((group) => group.nameKey === nameKey)) {\n throw new Error(\n \"Another signed group in this organization already carries this name\",\n );\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"groupPolicyHistoryPage.js","sourceRoot":"","sources":["groupPolicyHistoryPage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAG1E,oFAAoF;AACpF,MAAM,UAAU,uCAAuC,CAAC,KAIvD;IACC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IACvB,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,WAAW,EAAE,KAAK,CAAC,OAAO;QAC1B,aAAa,EAAE,OAAO;QACtB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,OAAO,EAAE,IAAI,CAAC,OAAO;aAClB,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACtB,OAAO,EAAE,8BAA8B,CAAC;gBACtC,OAAO,EAAE,KAAK,CAAC,UAAU;gBACzB,QAAQ,EACN,CAAC,KAAK,KAAK,CAAC;oBACV,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU;oBAC9B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE;aACjD,CAAC;YACF,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS;YAChC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;YAC9B,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW;YACpC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;YAC9B,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY;YACtC,wBAAwB,EAAE,KAAK,CAAC,KAAK,CAAC,wBAAwB;YAC9D,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS;YAChC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;SAC7B,CAAC,CAAC;aACF,OAAO,EAAE;KACb,CAAC;AACJ,CAAC","sourcesContent":["import type { RecoveredPrincipalHistoryPage } from \"../principals/loadRecoveredPrincipalHistoryPage\";\nimport { diffPrincipalProjectionMembers } from \"./policyHistoryReadModel\";\nimport type { OrganizationGroupPolicyHistory } from \"./policyHistoryTypes\";\n\n/** Keep a page boundary's actual predecessor when describing membership changes. */\nexport function buildOrganizationGroupPolicyHistoryPage(input: {\n readonly groupId: string;\n readonly organizationId: string;\n readonly page: RecoveredPrincipalHistoryPage;\n}): OrganizationGroupPolicyHistory {\n const { page } = input;\n return {\n groupId: input.groupId,\n organizationId: input.organizationId,\n principalId: input.groupId,\n principalType: \"group\",\n nextBeforeVersion: page.nextBeforeVersion,\n entries: page.entries\n .map((entry, index) => ({\n changes: diffPrincipalProjectionMembers({\n current: entry.projection,\n previous:\n (index === 0\n ? page.predecessor?.projection\n : page.entries[index - 1]?.projection) ?? [],\n }),\n createdAt: entry.state.createdAt,\n keyEpoch: entry.state.keyEpoch,\n memberCount: entry.state.memberCount,\n signedAt: entry.state.signedAt,\n signerUserId: entry.state.signerUserId,\n signerUserKeyFingerprint: entry.state.signerUserKeyFingerprint,\n stateHash: entry.state.stateHash,\n version: entry.state.version,\n }))\n .reverse(),\n };\n}\n"]}