@tearleads/client-sdk 0.1.18 → 0.1.20

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 (214) hide show
  1. package/client/organizations/index.js +2 -2
  2. package/client/organizations/index.js.map +1 -1
  3. package/client/organizations/organizationHistory.js +66 -0
  4. package/client/organizations/organizationHistory.js.map +1 -0
  5. package/client/organizations/organizationReadModels.d.ts +1 -1
  6. package/client/organizations/organizationReadModels.js +7 -27
  7. package/client/organizations/organizationReadModels.js.map +1 -1
  8. package/client/organizations/organizationsTypes.d.ts +1 -1
  9. package/client/organizations/organizationsTypes.js.map +1 -1
  10. package/data/containers/shared/types.d.ts +2 -2
  11. package/data/containers/shared/types.js.map +1 -1
  12. package/data/documents/shared/syncSubmitFailure.d.ts +2 -2
  13. package/data/documents/shared/syncSubmitFailure.js.map +1 -1
  14. package/data/keyingProjectionVerification/documentPurgeCheckpointCurrency.js +34 -8
  15. package/data/keyingProjectionVerification/documentPurgeCheckpointCurrency.js.map +1 -1
  16. package/data/keyingProjectionVerification/documentPurgeDocumentChainVerification.js.map +1 -1
  17. package/data/keyingProjectionVerification/documentPurgePolicyCheckpoints.js +17 -0
  18. package/data/keyingProjectionVerification/documentPurgePolicyCheckpoints.js.map +1 -0
  19. package/data/keyingProjectionVerification/documentPurgePolicyCurrency.js +55 -0
  20. package/data/keyingProjectionVerification/documentPurgePolicyCurrency.js.map +1 -0
  21. package/data/keyingProjectionVerification/documentPurgePrincipalEvidence.js +25 -13
  22. package/data/keyingProjectionVerification/documentPurgePrincipalEvidence.js.map +1 -1
  23. package/data/keyingProjectionVerification/documentPurgeProofVerification.d.ts +5 -3
  24. package/data/keyingProjectionVerification/documentPurgeProofVerification.js +52 -8
  25. package/data/keyingProjectionVerification/documentPurgeProofVerification.js.map +1 -1
  26. package/data/keyingProjectionVerification/projectionPolicyEvidence.js.map +1 -1
  27. package/data/keyingProjectionVerification/types.d.ts +4 -0
  28. package/data/keyingProjectionVerification/types.js.map +1 -1
  29. package/data/persistence/container-contents/documentMoveIntentPersistence.js.map +1 -1
  30. package/data/persistence/principalAuthorizationCheckpoints.js +1 -1
  31. package/data/persistence/principalAuthorizationCheckpoints.js.map +1 -1
  32. package/data/persistence/principalCurrentAcknowledgementPersistence.d.ts +1 -0
  33. package/data/persistence/principalCurrentAcknowledgementPersistence.js +58 -12
  34. package/data/persistence/principalCurrentAcknowledgementPersistence.js.map +1 -1
  35. package/data/persistence/principalHistoryEvidencePersistence.d.ts +2 -0
  36. package/data/persistence/principalHistoryEvidencePersistence.js +2 -0
  37. package/data/persistence/principalHistoryEvidencePersistence.js.map +1 -1
  38. package/data/persistence/principalHistoryIncompleteRetention.js +32 -0
  39. package/data/persistence/principalHistoryIncompleteRetention.js.map +1 -0
  40. package/data/persistence/principalHistoryNodeRetention.js +76 -0
  41. package/data/persistence/principalHistoryNodeRetention.js.map +1 -0
  42. package/data/persistence/principalHistoryPrefixPersistence.d.ts +1 -0
  43. package/data/persistence/principalHistoryPrefixPersistence.js +30 -1
  44. package/data/persistence/principalHistoryPrefixPersistence.js.map +1 -1
  45. package/data/persistence/principalHistoryRootOwnership.js +71 -0
  46. package/data/persistence/principalHistoryRootOwnership.js.map +1 -0
  47. package/data/persistence/principalHistoryStagePersistence.js +45 -0
  48. package/data/persistence/principalHistoryStagePersistence.js.map +1 -1
  49. package/data/persistence/principalHistoryStageRetention.js +44 -0
  50. package/data/persistence/principalHistoryStageRetention.js.map +1 -0
  51. package/data/persistence/principalHistoryUnpublishedRetention.js +71 -0
  52. package/data/persistence/principalHistoryUnpublishedRetention.js.map +1 -0
  53. package/data/persistence/principalKeyEnvelopeArchivePersistence.js +63 -0
  54. package/data/persistence/principalKeyEnvelopeArchivePersistence.js.map +1 -0
  55. package/data/persistence/principalKeyEnvelopeCandidates.js +10 -1
  56. package/data/persistence/principalKeyEnvelopeCandidates.js.map +1 -1
  57. package/data/sqlite/principalHistoryEvidenceSchema.js +2 -0
  58. package/data/sqlite/principalHistoryEvidenceSchema.js.map +1 -1
  59. package/data/sqlite/principalHistoryNodeRetentionSchema.js +30 -0
  60. package/data/sqlite/principalHistoryNodeRetentionSchema.js.map +1 -0
  61. package/data/sqlite/principalHistoryRetentionSchema.js +40 -0
  62. package/data/sqlite/principalHistoryRetentionSchema.js.map +1 -0
  63. package/data/sqlite/principalHistoryStageSchema.js +2 -0
  64. package/data/sqlite/principalHistoryStageSchema.js.map +1 -1
  65. package/data/sqlite/schema.d.ts +453 -0
  66. package/data/sqlite/schema.js +6 -0
  67. package/data/sqlite/schema.js.map +1 -1
  68. package/data/sqlite/sqliteCommitGuards.js +49 -0
  69. package/data/sqlite/sqliteCommitGuards.js.map +1 -0
  70. package/data/sqlite/sqlitePersistenceRuntime.js +14 -2
  71. package/data/sqlite/sqlitePersistenceRuntime.js.map +1 -1
  72. package/index.d.ts +3 -1
  73. package/index.js.map +1 -1
  74. package/internal/api-client/ApiClient.d.ts +60 -137
  75. package/internal/api-client/ApiClient.js +7 -5
  76. package/internal/api-client/ApiClient.js.map +1 -1
  77. package/internal/api-client/apiRequestRuntime.js +7 -7
  78. package/internal/api-client/apiRequestRuntime.js.map +1 -1
  79. package/internal/api-client/documentPurge.js +25 -0
  80. package/internal/api-client/documentPurge.js.map +1 -0
  81. package/internal/api-client/organizationPolicyHistory.d.ts +53 -0
  82. package/internal/api-client/organizationPolicyHistory.js +15 -0
  83. package/internal/api-client/organizationPolicyHistory.js.map +1 -0
  84. package/internal/api-client/requestInternals.js +4 -4
  85. package/internal/api-client/requestInternals.js.map +1 -1
  86. package/internal/api-client/types.d.ts +2 -2
  87. package/internal/api-client/types.js.map +1 -1
  88. package/internal/crypto/keying/principalPolicyHistory.js +4 -0
  89. package/internal/crypto/keying/principalPolicyHistory.js.map +1 -1
  90. package/internal/crypto/keying/principalPolicyHistoryTypes.d.ts +2 -0
  91. package/internal/crypto/keying/principalPolicyHistoryTypes.js.map +1 -1
  92. package/internal/loro/document.js +8 -11
  93. package/internal/loro/document.js.map +1 -1
  94. package/internal/validators/operation/containerMutations.d.ts +448 -6528
  95. package/internal/validators/operation/documentMutations.d.ts +323 -579
  96. package/internal/validators/operation/documentMutations.js +22 -4
  97. package/internal/validators/operation/documentMutations.js.map +1 -1
  98. package/internal/validators/operation/documentSync.d.ts +26 -406
  99. package/internal/validators/operation/organizationPolicyHistory.d.ts +188 -310
  100. package/internal/validators/operation/organizationPolicyHistory.js +17 -3
  101. package/internal/validators/operation/organizationPolicyHistory.js.map +1 -1
  102. package/internal/validators/response/containerMutationError.d.ts +28 -408
  103. package/internal/validators/response/documentMutation.d.ts +232 -544
  104. package/internal/validators/response/documentMutation.js +1 -2
  105. package/internal/validators/response/documentMutation.js.map +1 -1
  106. package/internal/validators/response/documentSyncError.d.ts +26 -406
  107. package/internal/validators/response/documentSyncError.js +4 -3
  108. package/internal/validators/response/documentSyncError.js.map +1 -1
  109. package/internal/validators/response/index.d.ts +1 -1
  110. package/internal/validators/response/index.js +1 -1
  111. package/internal/validators/response/index.js.map +1 -1
  112. package/internal/validators/response/organizationPolicyHistory.d.ts +127 -309
  113. package/internal/validators/response/organizationPolicyHistory.js +10 -4
  114. package/internal/validators/response/organizationPolicyHistory.js.map +1 -1
  115. package/internal/validators/response/principal.d.ts +28 -408
  116. package/internal/validators/response/principal.js +3 -1
  117. package/internal/validators/response/principal.js.map +1 -1
  118. package/internal/validators/util/index.d.ts +1 -1
  119. package/internal/validators/util/index.js +1 -1
  120. package/internal/validators/util/index.js.map +1 -1
  121. package/internal/validators/util/principalHistoryWire.d.ts +2 -0
  122. package/internal/validators/util/principalHistoryWire.js +2 -0
  123. package/internal/validators/util/principalHistoryWire.js.map +1 -1
  124. package/package.json +4 -4
  125. package/workflows/container-contents/container-state/createWithMetadata.js +19 -49
  126. package/workflows/container-contents/container-state/createWithMetadata.js.map +1 -1
  127. package/workflows/container-contents/container-state/groupGrantVerification.js +29 -0
  128. package/workflows/container-contents/container-state/groupGrantVerification.js.map +1 -1
  129. package/workflows/container-contents/container-state/groupShareEpoch.js +33 -0
  130. package/workflows/container-contents/container-state/groupShareEpoch.js.map +1 -0
  131. package/workflows/container-contents/container-state/remote.js +4 -1
  132. package/workflows/container-contents/container-state/remote.js.map +1 -1
  133. package/workflows/container-contents/container-state/share.js +2 -24
  134. package/workflows/container-contents/container-state/share.js.map +1 -1
  135. package/workflows/container-contents/documentTombstoneEvidence.js +23 -12
  136. package/workflows/container-contents/documentTombstoneEvidence.js.map +1 -1
  137. package/workflows/containers/child/create.js +1 -3
  138. package/workflows/containers/child/create.js.map +1 -1
  139. package/workflows/containers/child/createSubmission.d.ts +1 -3
  140. package/workflows/containers/child/createSubmission.js +13 -15
  141. package/workflows/containers/child/createSubmission.js.map +1 -1
  142. package/workflows/containers/child/currentShareGrantMutation.js +82 -0
  143. package/workflows/containers/child/currentShareGrantMutation.js.map +1 -0
  144. package/workflows/containers/child/currentSharePrincipalPolicy.js +83 -0
  145. package/workflows/containers/child/currentSharePrincipalPolicy.js.map +1 -0
  146. package/workflows/containers/child/mutationSubmit.js +1 -1
  147. package/workflows/containers/child/mutationSubmit.js.map +1 -1
  148. package/workflows/containers/child/runtimeCurrentGroupShare.js +82 -0
  149. package/workflows/containers/child/runtimeCurrentGroupShare.js.map +1 -0
  150. package/workflows/containers/child/share.js +1 -14
  151. package/workflows/containers/child/share.js.map +1 -1
  152. package/workflows/containers/child/shareProjection.js +15 -0
  153. package/workflows/containers/child/shareProjection.js.map +1 -0
  154. package/workflows/documents/purge.d.ts +3 -0
  155. package/workflows/documents/purge.js +13 -0
  156. package/workflows/documents/purge.js.map +1 -1
  157. package/workflows/documents/sync.js +2 -0
  158. package/workflows/documents/sync.js.map +1 -1
  159. package/workflows/documents/syncFailures.js +2 -2
  160. package/workflows/documents/syncFailures.js.map +1 -1
  161. package/workflows/documents/syncPolicyRepair.js +15 -13
  162. package/workflows/documents/syncPolicyRepair.js.map +1 -1
  163. package/workflows/organizations/initialPrincipalCurrentPublication.js +2 -0
  164. package/workflows/organizations/initialPrincipalCurrentPublication.js.map +1 -1
  165. package/workflows/organizations/loadPolicyHistoryDetails.js +31 -32
  166. package/workflows/organizations/loadPolicyHistoryDetails.js.map +1 -1
  167. package/workflows/organizations/organizationPolicyHistoryDetails.js +37 -15
  168. package/workflows/organizations/organizationPolicyHistoryDetails.js.map +1 -1
  169. package/workflows/organizations/organizationPolicyHistoryVerification.js +56 -69
  170. package/workflows/organizations/organizationPolicyHistoryVerification.js.map +1 -1
  171. package/workflows/organizations/policyHistoryCache.js +5 -2
  172. package/workflows/organizations/policyHistoryCache.js.map +1 -1
  173. package/workflows/organizations/policyHistoryTypes.d.ts +1 -0
  174. package/workflows/organizations/policyHistoryTypes.js.map +1 -1
  175. package/workflows/organizations/retainAcknowledgedPrincipalCurrents.js +4 -1
  176. package/workflows/organizations/retainAcknowledgedPrincipalCurrents.js.map +1 -1
  177. package/workflows/principals/loadRecoveredPrincipalHistoryPage.d.ts +0 -1
  178. package/workflows/principals/loadRecoveredPrincipalHistoryPage.js +1 -2
  179. package/workflows/principals/loadRecoveredPrincipalHistoryPage.js.map +1 -1
  180. package/workflows/principals/policyRepair.js +38 -0
  181. package/workflows/principals/policyRepair.js.map +1 -0
  182. package/workflows/principals/policyRepairBudget.d.ts +2 -2
  183. package/workflows/principals/policyRepairBudget.js +3 -3
  184. package/workflows/principals/policyRepairBudget.js.map +1 -1
  185. package/workflows/principals/principalHistoryRecoveryPrefix.js +4 -0
  186. package/workflows/principals/principalHistoryRecoveryPrefix.js.map +1 -1
  187. package/workflows/principals/principalRecoveryLocalPreference.js +3 -2
  188. package/workflows/principals/principalRecoveryLocalPreference.js.map +1 -1
  189. package/workflows/principals/publicPrincipalHistoryPage.js +1 -0
  190. package/workflows/principals/publicPrincipalHistoryPage.js.map +1 -1
  191. package/workflows/principals/publicPrincipalHistoryProgress.js +1 -0
  192. package/workflows/principals/publicPrincipalHistoryProgress.js.map +1 -1
  193. package/workflows/principals/publicPrincipalHistoryTypes.d.ts +2 -0
  194. package/workflows/principals/publicPrincipalHistoryTypes.js.map +1 -1
  195. package/workflows/principals/publicProjectionPrincipal.js +1 -0
  196. package/workflows/principals/publicProjectionPrincipal.js.map +1 -1
  197. package/workflows/principals/recoverPrincipalHistoryPage.js +2 -1
  198. package/workflows/principals/recoverPrincipalHistoryPage.js.map +1 -1
  199. package/workflows/principals/recoverPrincipalPolicyHistory.js +1 -0
  200. package/workflows/principals/recoverPrincipalPolicyHistory.js.map +1 -1
  201. package/workflows/principals/recoverPublicPrincipalHistory.js +2 -0
  202. package/workflows/principals/recoverPublicPrincipalHistory.js.map +1 -1
  203. package/workflows/principals/runtimePolicyRecovery.js +2 -1
  204. package/workflows/principals/runtimePolicyRecovery.js.map +1 -1
  205. package/workflows/principals/selectPublicPrincipalHistory.js +21 -15
  206. package/workflows/principals/selectPublicPrincipalHistory.js.map +1 -1
  207. package/workflows/sync/remoteResetPrincipalScope.js +6 -0
  208. package/workflows/sync/remoteResetPrincipalScope.js.map +1 -1
  209. package/data/keyingProjectionVerification/principalPolicySnapshotVerification.js +0 -208
  210. package/data/keyingProjectionVerification/principalPolicySnapshotVerification.js.map +0 -1
  211. package/data/keyingProjectionVerification/snapshotVerificationCache.js +0 -39
  212. package/data/keyingProjectionVerification/snapshotVerificationCache.js.map +0 -1
  213. package/workflows/containers/child/policyRepair.js +0 -23
  214. package/workflows/containers/child/policyRepair.js.map +0 -1
@@ -2144,426 +2144,46 @@ export declare const CommitOrganizationGroupPolicyConflictResponseSchema: z.ZodU
2144
2144
  export declare const PrincipalPolicyStaleErrorResponseSchema: z.ZodType<{
2145
2145
  code: "principal_policy_stale";
2146
2146
  error: string;
2147
- principalPolicies: {
2148
- previousStates: {
2149
- grants: {
2150
- accessLevel: "admin" | "read" | "write";
2151
- containerId: string;
2152
- }[];
2153
- projection: {
2154
- role: "member" | "admin";
2155
- userId: string;
2156
- }[];
2157
- state: {
2158
- createdAt: string;
2159
- encapsulationPublicKey: string;
2160
- externalAuthority: {
2161
- keyEpoch: number;
2162
- keyFingerprint: string;
2163
- principalId: string;
2164
- principalType: "group";
2165
- stateHash: string;
2166
- version: number;
2167
- } | null;
2168
- grantCount: number;
2169
- grantRoot: string;
2170
- keyEpoch: number;
2171
- keyFingerprint: string;
2172
- memberCount: number;
2173
- memberEnvelopesRoot: string;
2174
- membershipMode: "projection";
2175
- membershipRoot: string;
2176
- payloadCiphertextHash: string;
2177
- prevStateHash: string | null;
2178
- principalId: string;
2179
- principalType: "group" | "organization";
2180
- projectionRoot: string;
2181
- signature: string;
2182
- signedAt: string;
2183
- signerUserId: string;
2184
- signerUserKeyFingerprint: string;
2185
- stateHash: string;
2186
- version: number;
2187
- };
2188
- }[];
2189
- currentGrants: {
2190
- accessLevel: "admin" | "read" | "write";
2191
- containerId: string;
2192
- }[];
2193
- currentMemberEnvelopes: {
2194
- envelopes: {
2195
- kemCipherText: string;
2196
- memberKeyFingerprint: string;
2197
- userId: string;
2198
- wrappedKey: string;
2199
- }[];
2200
- epoch: number;
2201
- principalId: string;
2202
- principalType: "group" | "organization";
2203
- stateHash: string;
2204
- };
2205
- currentPayload: {
2206
- cipherSuite: "aes-256-gcm";
2207
- ciphertext: string;
2208
- ciphertextHash: string;
2209
- createdAt: string;
2210
- principalId: string;
2211
- principalType: "group" | "organization";
2212
- stateHash: string;
2213
- };
2214
- currentProjection: {
2215
- role: "member" | "admin";
2216
- userId: string;
2217
- }[];
2218
- currentState: {
2219
- createdAt: string;
2220
- encapsulationPublicKey: string;
2221
- externalAuthority: {
2222
- keyEpoch: number;
2223
- keyFingerprint: string;
2224
- principalId: string;
2225
- principalType: "group";
2226
- stateHash: string;
2227
- version: number;
2228
- } | null;
2229
- grantCount: number;
2230
- grantRoot: string;
2231
- keyEpoch: number;
2232
- keyFingerprint: string;
2233
- memberCount: number;
2234
- memberEnvelopesRoot: string;
2235
- membershipMode: "projection";
2236
- membershipRoot: string;
2237
- payloadCiphertextHash: string;
2238
- prevStateHash: string | null;
2239
- principalId: string;
2240
- principalType: "group" | "organization";
2241
- projectionRoot: string;
2242
- signature: string;
2243
- signedAt: string;
2244
- signerUserId: string;
2245
- signerUserKeyFingerprint: string;
2246
- stateHash: string;
2247
- version: number;
2248
- };
2147
+ principalHeads: {
2148
+ keyEpoch: number;
2149
+ keyFingerprint: string;
2150
+ principalId: string;
2151
+ principalType: "group" | "organization";
2152
+ stateHash: string;
2153
+ version: number;
2249
2154
  }[];
2250
2155
  }, {
2251
2156
  code: "principal_policy_stale";
2252
2157
  error: string;
2253
- principalPolicies: {
2254
- previousStates: {
2255
- grants: {
2256
- accessLevel: "admin" | "read" | "write";
2257
- containerId: string;
2258
- }[];
2259
- projection: {
2260
- role: "member" | "admin";
2261
- userId: string;
2262
- }[];
2263
- state: {
2264
- createdAt: string;
2265
- encapsulationPublicKey: string;
2266
- externalAuthority: {
2267
- keyEpoch: number;
2268
- keyFingerprint: string;
2269
- principalId: string;
2270
- principalType: "group";
2271
- stateHash: string;
2272
- version: number;
2273
- } | null;
2274
- grantCount: number;
2275
- grantRoot: string;
2276
- keyEpoch: number;
2277
- keyFingerprint: string;
2278
- memberCount: number;
2279
- memberEnvelopesRoot: string;
2280
- membershipMode: "projection";
2281
- membershipRoot: string;
2282
- payloadCiphertextHash: string;
2283
- prevStateHash: string | null;
2284
- principalId: string;
2285
- principalType: "group" | "organization";
2286
- projectionRoot: string;
2287
- signature: string;
2288
- signedAt: string;
2289
- signerUserId: string;
2290
- signerUserKeyFingerprint: string;
2291
- stateHash: string;
2292
- version: number;
2293
- };
2294
- }[];
2295
- currentGrants: {
2296
- accessLevel: "admin" | "read" | "write";
2297
- containerId: string;
2298
- }[];
2299
- currentMemberEnvelopes: {
2300
- envelopes: {
2301
- kemCipherText: string;
2302
- memberKeyFingerprint: string;
2303
- userId: string;
2304
- wrappedKey: string;
2305
- }[];
2306
- epoch: number;
2307
- principalId: string;
2308
- principalType: "group" | "organization";
2309
- stateHash: string;
2310
- };
2311
- currentPayload: {
2312
- cipherSuite: "aes-256-gcm";
2313
- ciphertext: string;
2314
- ciphertextHash: string;
2315
- createdAt: string;
2316
- principalId: string;
2317
- principalType: "group" | "organization";
2318
- stateHash: string;
2319
- };
2320
- currentProjection: {
2321
- role: "member" | "admin";
2322
- userId: string;
2323
- }[];
2324
- currentState: {
2325
- createdAt: string;
2326
- encapsulationPublicKey: string;
2327
- externalAuthority: {
2328
- keyEpoch: number;
2329
- keyFingerprint: string;
2330
- principalId: string;
2331
- principalType: "group";
2332
- stateHash: string;
2333
- version: number;
2334
- } | null;
2335
- grantCount: number;
2336
- grantRoot: string;
2337
- keyEpoch: number;
2338
- keyFingerprint: string;
2339
- memberCount: number;
2340
- memberEnvelopesRoot: string;
2341
- membershipMode: "projection";
2342
- membershipRoot: string;
2343
- payloadCiphertextHash: string;
2344
- prevStateHash: string | null;
2345
- principalId: string;
2346
- principalType: "group" | "organization";
2347
- projectionRoot: string;
2348
- signature: string;
2349
- signedAt: string;
2350
- signerUserId: string;
2351
- signerUserKeyFingerprint: string;
2352
- stateHash: string;
2353
- version: number;
2354
- };
2158
+ principalHeads: {
2159
+ keyEpoch: number;
2160
+ keyFingerprint: string;
2161
+ principalId: string;
2162
+ principalType: "group" | "organization";
2163
+ stateHash: string;
2164
+ version: number;
2355
2165
  }[];
2356
2166
  }, z.core.$ZodTypeInternals<{
2357
2167
  code: "principal_policy_stale";
2358
2168
  error: string;
2359
- principalPolicies: {
2360
- previousStates: {
2361
- grants: {
2362
- accessLevel: "admin" | "read" | "write";
2363
- containerId: string;
2364
- }[];
2365
- projection: {
2366
- role: "member" | "admin";
2367
- userId: string;
2368
- }[];
2369
- state: {
2370
- createdAt: string;
2371
- encapsulationPublicKey: string;
2372
- externalAuthority: {
2373
- keyEpoch: number;
2374
- keyFingerprint: string;
2375
- principalId: string;
2376
- principalType: "group";
2377
- stateHash: string;
2378
- version: number;
2379
- } | null;
2380
- grantCount: number;
2381
- grantRoot: string;
2382
- keyEpoch: number;
2383
- keyFingerprint: string;
2384
- memberCount: number;
2385
- memberEnvelopesRoot: string;
2386
- membershipMode: "projection";
2387
- membershipRoot: string;
2388
- payloadCiphertextHash: string;
2389
- prevStateHash: string | null;
2390
- principalId: string;
2391
- principalType: "group" | "organization";
2392
- projectionRoot: string;
2393
- signature: string;
2394
- signedAt: string;
2395
- signerUserId: string;
2396
- signerUserKeyFingerprint: string;
2397
- stateHash: string;
2398
- version: number;
2399
- };
2400
- }[];
2401
- currentGrants: {
2402
- accessLevel: "admin" | "read" | "write";
2403
- containerId: string;
2404
- }[];
2405
- currentMemberEnvelopes: {
2406
- envelopes: {
2407
- kemCipherText: string;
2408
- memberKeyFingerprint: string;
2409
- userId: string;
2410
- wrappedKey: string;
2411
- }[];
2412
- epoch: number;
2413
- principalId: string;
2414
- principalType: "group" | "organization";
2415
- stateHash: string;
2416
- };
2417
- currentPayload: {
2418
- cipherSuite: "aes-256-gcm";
2419
- ciphertext: string;
2420
- ciphertextHash: string;
2421
- createdAt: string;
2422
- principalId: string;
2423
- principalType: "group" | "organization";
2424
- stateHash: string;
2425
- };
2426
- currentProjection: {
2427
- role: "member" | "admin";
2428
- userId: string;
2429
- }[];
2430
- currentState: {
2431
- createdAt: string;
2432
- encapsulationPublicKey: string;
2433
- externalAuthority: {
2434
- keyEpoch: number;
2435
- keyFingerprint: string;
2436
- principalId: string;
2437
- principalType: "group";
2438
- stateHash: string;
2439
- version: number;
2440
- } | null;
2441
- grantCount: number;
2442
- grantRoot: string;
2443
- keyEpoch: number;
2444
- keyFingerprint: string;
2445
- memberCount: number;
2446
- memberEnvelopesRoot: string;
2447
- membershipMode: "projection";
2448
- membershipRoot: string;
2449
- payloadCiphertextHash: string;
2450
- prevStateHash: string | null;
2451
- principalId: string;
2452
- principalType: "group" | "organization";
2453
- projectionRoot: string;
2454
- signature: string;
2455
- signedAt: string;
2456
- signerUserId: string;
2457
- signerUserKeyFingerprint: string;
2458
- stateHash: string;
2459
- version: number;
2460
- };
2169
+ principalHeads: {
2170
+ keyEpoch: number;
2171
+ keyFingerprint: string;
2172
+ principalId: string;
2173
+ principalType: "group" | "organization";
2174
+ stateHash: string;
2175
+ version: number;
2461
2176
  }[];
2462
2177
  }, {
2463
2178
  code: "principal_policy_stale";
2464
2179
  error: string;
2465
- principalPolicies: {
2466
- previousStates: {
2467
- grants: {
2468
- accessLevel: "admin" | "read" | "write";
2469
- containerId: string;
2470
- }[];
2471
- projection: {
2472
- role: "member" | "admin";
2473
- userId: string;
2474
- }[];
2475
- state: {
2476
- createdAt: string;
2477
- encapsulationPublicKey: string;
2478
- externalAuthority: {
2479
- keyEpoch: number;
2480
- keyFingerprint: string;
2481
- principalId: string;
2482
- principalType: "group";
2483
- stateHash: string;
2484
- version: number;
2485
- } | null;
2486
- grantCount: number;
2487
- grantRoot: string;
2488
- keyEpoch: number;
2489
- keyFingerprint: string;
2490
- memberCount: number;
2491
- memberEnvelopesRoot: string;
2492
- membershipMode: "projection";
2493
- membershipRoot: string;
2494
- payloadCiphertextHash: string;
2495
- prevStateHash: string | null;
2496
- principalId: string;
2497
- principalType: "group" | "organization";
2498
- projectionRoot: string;
2499
- signature: string;
2500
- signedAt: string;
2501
- signerUserId: string;
2502
- signerUserKeyFingerprint: string;
2503
- stateHash: string;
2504
- version: number;
2505
- };
2506
- }[];
2507
- currentGrants: {
2508
- accessLevel: "admin" | "read" | "write";
2509
- containerId: string;
2510
- }[];
2511
- currentMemberEnvelopes: {
2512
- envelopes: {
2513
- kemCipherText: string;
2514
- memberKeyFingerprint: string;
2515
- userId: string;
2516
- wrappedKey: string;
2517
- }[];
2518
- epoch: number;
2519
- principalId: string;
2520
- principalType: "group" | "organization";
2521
- stateHash: string;
2522
- };
2523
- currentPayload: {
2524
- cipherSuite: "aes-256-gcm";
2525
- ciphertext: string;
2526
- ciphertextHash: string;
2527
- createdAt: string;
2528
- principalId: string;
2529
- principalType: "group" | "organization";
2530
- stateHash: string;
2531
- };
2532
- currentProjection: {
2533
- role: "member" | "admin";
2534
- userId: string;
2535
- }[];
2536
- currentState: {
2537
- createdAt: string;
2538
- encapsulationPublicKey: string;
2539
- externalAuthority: {
2540
- keyEpoch: number;
2541
- keyFingerprint: string;
2542
- principalId: string;
2543
- principalType: "group";
2544
- stateHash: string;
2545
- version: number;
2546
- } | null;
2547
- grantCount: number;
2548
- grantRoot: string;
2549
- keyEpoch: number;
2550
- keyFingerprint: string;
2551
- memberCount: number;
2552
- memberEnvelopesRoot: string;
2553
- membershipMode: "projection";
2554
- membershipRoot: string;
2555
- payloadCiphertextHash: string;
2556
- prevStateHash: string | null;
2557
- principalId: string;
2558
- principalType: "group" | "organization";
2559
- projectionRoot: string;
2560
- signature: string;
2561
- signedAt: string;
2562
- signerUserId: string;
2563
- signerUserKeyFingerprint: string;
2564
- stateHash: string;
2565
- version: number;
2566
- };
2180
+ principalHeads: {
2181
+ keyEpoch: number;
2182
+ keyFingerprint: string;
2183
+ principalId: string;
2184
+ principalType: "group" | "organization";
2185
+ stateHash: string;
2186
+ version: number;
2567
2187
  }[];
2568
2188
  }>>;
2569
2189
  export type PrincipalPolicyStaleErrorResponse = z.infer<typeof PrincipalPolicyStaleErrorResponseSchema>;
@@ -1,9 +1,11 @@
1
1
  import { z } from "zod";
2
2
  import { arraySchema, loosePlainObject, nonEmptyStringSchema } from "../schema.js";
3
3
  import { MAX_ROTATION_CONTAINER_REKEYS } from "../util/index.js";
4
+ import { PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT } from "../util/principalHistoryWire.js";
4
5
  import { ContainerMutationResponseSchema } from "./container.js";
5
6
  import { CONTAINER_DESCENDANT_REKEYS_REQUIRED_ERROR_CODE } from "./descendantRekeysRequiredError.js";
6
7
  import { BillingErrorResponseSchema } from "./organizationBilling.js";
8
+ import { ReferencedPrincipalStateResponseSchema } from "./principalReference.js";
7
9
  import { CurrentPrincipalMemberEnvelopesResponseSchema, PrincipalContainerGrantResponseSchema, PrincipalPolicyStateChainEntryResponseSchema, PrincipalProjectionMemberResponseSchema, PrincipalStatePayloadResponseSchema, PrincipalStateResponseSchema, } from "./principalSnapshot.js";
8
10
  export { CurrentPrincipalMemberEnvelopesResponseSchema, isCurrentPrincipalMemberEnvelopesResponse, isPrincipalPolicyStateChainEntryResponse, isPrincipalStatePayloadResponse, isPrincipalStateResponse, PrincipalContainerGrantResponseSchema, PrincipalMemberEnvelopeResponseSchema, PrincipalPolicySnapshotResponseSchema, PrincipalPolicyStateChainEntryResponseSchema, PrincipalProjectionMemberResponseSchema, PrincipalStateExternalAuthorityResponseSchema, PrincipalStatePayloadResponseSchema, PrincipalStateResponseSchema, } from "./principalSnapshot.js";
9
11
  export const principalPolicyCurrentResponseShape = {
@@ -49,7 +51,7 @@ export const CommitOrganizationGroupPolicyConflictResponseSchema = z.union([
49
51
  export const PrincipalPolicyStaleErrorResponseSchema = loosePlainObject({
50
52
  code: z.literal("principal_policy_stale"),
51
53
  error: z.string().min(1),
52
- principalPolicies: arraySchema(PrincipalPolicyBundleResponseSchema),
54
+ principalHeads: arraySchema(ReferencedPrincipalStateResponseSchema, PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT),
53
55
  });
54
56
  export function isPrincipalPolicyBundleResponse(value) {
55
57
  return PrincipalPolicyBundleResponseSchema.safeParse(value).success;
@@ -1 +1 @@
1
- {"version":3,"file":"principal.js","sourceRoot":"","sources":["principal.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from \"zod\";\nimport { arraySchema, loosePlainObject, nonEmptyStringSchema } from \"../schema\";\nimport { MAX_ROTATION_CONTAINER_REKEYS } from \"../util\";\nimport { ContainerMutationResponseSchema } from \"./container\";\nimport { CONTAINER_DESCENDANT_REKEYS_REQUIRED_ERROR_CODE } from \"./descendantRekeysRequiredError\";\nimport { BillingErrorResponseSchema } from \"./organizationBilling\";\n\nimport {\n CurrentPrincipalMemberEnvelopesResponseSchema,\n PrincipalContainerGrantResponseSchema,\n PrincipalPolicyStateChainEntryResponseSchema,\n PrincipalProjectionMemberResponseSchema,\n PrincipalStatePayloadResponseSchema,\n PrincipalStateResponseSchema,\n} from \"./principalSnapshot\";\n\nexport {\n type CurrentPrincipalMemberEnvelopesResponse,\n CurrentPrincipalMemberEnvelopesResponseSchema,\n isCurrentPrincipalMemberEnvelopesResponse,\n isPrincipalPolicyStateChainEntryResponse,\n isPrincipalStatePayloadResponse,\n isPrincipalStateResponse,\n type PrincipalContainerGrantResponse,\n PrincipalContainerGrantResponseSchema,\n type PrincipalMemberEnvelopeResponse,\n PrincipalMemberEnvelopeResponseSchema,\n type PrincipalPolicySnapshotResponse,\n PrincipalPolicySnapshotResponseSchema,\n type PrincipalPolicyStateChainEntryResponse,\n PrincipalPolicyStateChainEntryResponseSchema,\n type PrincipalProjectionMemberResponse,\n PrincipalProjectionMemberResponseSchema,\n type PrincipalStateExternalAuthorityResponse,\n PrincipalStateExternalAuthorityResponseSchema,\n type PrincipalStatePayloadResponse,\n PrincipalStatePayloadResponseSchema,\n type PrincipalStateResponse,\n PrincipalStateResponseSchema,\n} from \"./principalSnapshot\";\n\nexport const principalPolicyCurrentResponseShape = {\n currentGrants: arraySchema(PrincipalContainerGrantResponseSchema),\n currentMemberEnvelopes: CurrentPrincipalMemberEnvelopesResponseSchema,\n currentPayload: PrincipalStatePayloadResponseSchema,\n currentProjection: arraySchema(PrincipalProjectionMemberResponseSchema),\n currentState: PrincipalStateResponseSchema,\n};\n\nexport const PrincipalPolicyBundleResponseSchema = loosePlainObject({\n ...principalPolicyCurrentResponseShape,\n previousStates: arraySchema(PrincipalPolicyStateChainEntryResponseSchema),\n});\n\nexport type PrincipalPolicyBundleResponse = z.infer<\n typeof PrincipalPolicyBundleResponseSchema\n>;\n\nexport const PrincipalPolicyMutationResponseSchema = loosePlainObject({\n ...principalPolicyCurrentResponseShape,\n containerMutations: arraySchema(ContainerMutationResponseSchema),\n});\n\nexport type PrincipalPolicyMutationResponse = z.infer<\n typeof PrincipalPolicyMutationResponseSchema\n>;\n\nexport const CommitOrganizationGroupPolicyResponseSchema = loosePlainObject({\n groupPolicy: PrincipalPolicyMutationResponseSchema,\n organizationPolicy: PrincipalPolicyMutationResponseSchema,\n});\n\nexport type CommitOrganizationGroupPolicyResponse = z.infer<\n typeof CommitOrganizationGroupPolicyResponseSchema\n>;\n\nexport const PrincipalPolicyErrorResponseSchema = BillingErrorResponseSchema;\n\nexport type PrincipalPolicyErrorResponse = z.infer<\n typeof PrincipalPolicyErrorResponseSchema\n>;\n\n/**\n * A group policy change rematerializes its granted containers, and a rekey or\n * revoke among them is a rotation like any other: one that would leave a level\n * above a directly granted container pinned to a retired epoch is refused, and\n * this names the descendant rekeys the batch must carry, parent-first.\n */\nconst PrincipalPolicyDescendantRekeysRequiredResponseSchema = loosePlainObject({\n code: z.literal(CONTAINER_DESCENDANT_REKEYS_REQUIRED_ERROR_CODE),\n error: z.string().min(1),\n requiredContainerIds: arraySchema(\n nonEmptyStringSchema,\n MAX_ROTATION_CONTAINER_REKEYS,\n ),\n});\n\n/**\n * The commit's conflict envelope alone: only a group commit carries container\n * mutations, so only it can be refused for what they strand. The principal\n * policy read and the organization policy write keep the plain envelope.\n */\nexport const CommitOrganizationGroupPolicyConflictResponseSchema = z.union([\n PrincipalPolicyErrorResponseSchema,\n PrincipalPolicyDescendantRekeysRequiredResponseSchema,\n]);\n\nexport const PrincipalPolicyStaleErrorResponseSchema = loosePlainObject({\n code: z.literal(\"principal_policy_stale\"),\n error: z.string().min(1),\n principalPolicies: arraySchema(PrincipalPolicyBundleResponseSchema),\n});\n\nexport type PrincipalPolicyStaleErrorResponse = z.infer<\n typeof PrincipalPolicyStaleErrorResponseSchema\n>;\n\nexport function isPrincipalPolicyBundleResponse(\n value: unknown,\n): value is PrincipalPolicyBundleResponse {\n return PrincipalPolicyBundleResponseSchema.safeParse(value).success;\n}\n\nexport function isPrincipalPolicyMutationResponse(\n value: unknown,\n): value is PrincipalPolicyMutationResponse {\n return PrincipalPolicyMutationResponseSchema.safeParse(value).success;\n}\n\nexport function isCommitOrganizationGroupPolicyResponse(\n value: unknown,\n): value is CommitOrganizationGroupPolicyResponse {\n return CommitOrganizationGroupPolicyResponseSchema.safeParse(value).success;\n}\n\nexport function isPrincipalPolicyStaleErrorResponse(\n value: unknown,\n): value is PrincipalPolicyStaleErrorResponse {\n return PrincipalPolicyStaleErrorResponseSchema.safeParse(value).success;\n}\n"]}
1
+ {"version":3,"file":"principal.js","sourceRoot":"","sources":["principal.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from \"zod\";\nimport { arraySchema, loosePlainObject, nonEmptyStringSchema } from \"../schema\";\nimport { MAX_ROTATION_CONTAINER_REKEYS } from \"../util\";\nimport { PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT } from \"../util/principalHistoryWire\";\nimport { ContainerMutationResponseSchema } from \"./container\";\nimport { CONTAINER_DESCENDANT_REKEYS_REQUIRED_ERROR_CODE } from \"./descendantRekeysRequiredError\";\nimport { BillingErrorResponseSchema } from \"./organizationBilling\";\nimport { ReferencedPrincipalStateResponseSchema } from \"./principalReference\";\n\nimport {\n CurrentPrincipalMemberEnvelopesResponseSchema,\n PrincipalContainerGrantResponseSchema,\n PrincipalPolicyStateChainEntryResponseSchema,\n PrincipalProjectionMemberResponseSchema,\n PrincipalStatePayloadResponseSchema,\n PrincipalStateResponseSchema,\n} from \"./principalSnapshot\";\n\nexport {\n type CurrentPrincipalMemberEnvelopesResponse,\n CurrentPrincipalMemberEnvelopesResponseSchema,\n isCurrentPrincipalMemberEnvelopesResponse,\n isPrincipalPolicyStateChainEntryResponse,\n isPrincipalStatePayloadResponse,\n isPrincipalStateResponse,\n type PrincipalContainerGrantResponse,\n PrincipalContainerGrantResponseSchema,\n type PrincipalMemberEnvelopeResponse,\n PrincipalMemberEnvelopeResponseSchema,\n type PrincipalPolicySnapshotResponse,\n PrincipalPolicySnapshotResponseSchema,\n type PrincipalPolicyStateChainEntryResponse,\n PrincipalPolicyStateChainEntryResponseSchema,\n type PrincipalProjectionMemberResponse,\n PrincipalProjectionMemberResponseSchema,\n type PrincipalStateExternalAuthorityResponse,\n PrincipalStateExternalAuthorityResponseSchema,\n type PrincipalStatePayloadResponse,\n PrincipalStatePayloadResponseSchema,\n type PrincipalStateResponse,\n PrincipalStateResponseSchema,\n} from \"./principalSnapshot\";\n\nexport const principalPolicyCurrentResponseShape = {\n currentGrants: arraySchema(PrincipalContainerGrantResponseSchema),\n currentMemberEnvelopes: CurrentPrincipalMemberEnvelopesResponseSchema,\n currentPayload: PrincipalStatePayloadResponseSchema,\n currentProjection: arraySchema(PrincipalProjectionMemberResponseSchema),\n currentState: PrincipalStateResponseSchema,\n};\n\nexport const PrincipalPolicyBundleResponseSchema = loosePlainObject({\n ...principalPolicyCurrentResponseShape,\n previousStates: arraySchema(PrincipalPolicyStateChainEntryResponseSchema),\n});\n\nexport type PrincipalPolicyBundleResponse = z.infer<\n typeof PrincipalPolicyBundleResponseSchema\n>;\n\nexport const PrincipalPolicyMutationResponseSchema = loosePlainObject({\n ...principalPolicyCurrentResponseShape,\n containerMutations: arraySchema(ContainerMutationResponseSchema),\n});\n\nexport type PrincipalPolicyMutationResponse = z.infer<\n typeof PrincipalPolicyMutationResponseSchema\n>;\n\nexport const CommitOrganizationGroupPolicyResponseSchema = loosePlainObject({\n groupPolicy: PrincipalPolicyMutationResponseSchema,\n organizationPolicy: PrincipalPolicyMutationResponseSchema,\n});\n\nexport type CommitOrganizationGroupPolicyResponse = z.infer<\n typeof CommitOrganizationGroupPolicyResponseSchema\n>;\n\nexport const PrincipalPolicyErrorResponseSchema = BillingErrorResponseSchema;\n\nexport type PrincipalPolicyErrorResponse = z.infer<\n typeof PrincipalPolicyErrorResponseSchema\n>;\n\n/**\n * A group policy change rematerializes its granted containers, and a rekey or\n * revoke among them is a rotation like any other: one that would leave a level\n * above a directly granted container pinned to a retired epoch is refused, and\n * this names the descendant rekeys the batch must carry, parent-first.\n */\nconst PrincipalPolicyDescendantRekeysRequiredResponseSchema = loosePlainObject({\n code: z.literal(CONTAINER_DESCENDANT_REKEYS_REQUIRED_ERROR_CODE),\n error: z.string().min(1),\n requiredContainerIds: arraySchema(\n nonEmptyStringSchema,\n MAX_ROTATION_CONTAINER_REKEYS,\n ),\n});\n\n/**\n * The commit's conflict envelope alone: only a group commit carries container\n * mutations, so only it can be refused for what they strand. The principal\n * policy read and the organization policy write keep the plain envelope.\n */\nexport const CommitOrganizationGroupPolicyConflictResponseSchema = z.union([\n PrincipalPolicyErrorResponseSchema,\n PrincipalPolicyDescendantRekeysRequiredResponseSchema,\n]);\n\nexport const PrincipalPolicyStaleErrorResponseSchema = loosePlainObject({\n code: z.literal(\"principal_policy_stale\"),\n error: z.string().min(1),\n principalHeads: arraySchema(\n ReferencedPrincipalStateResponseSchema,\n PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT,\n ),\n});\n\nexport type PrincipalPolicyStaleErrorResponse = z.infer<\n typeof PrincipalPolicyStaleErrorResponseSchema\n>;\n\nexport function isPrincipalPolicyBundleResponse(\n value: unknown,\n): value is PrincipalPolicyBundleResponse {\n return PrincipalPolicyBundleResponseSchema.safeParse(value).success;\n}\n\nexport function isPrincipalPolicyMutationResponse(\n value: unknown,\n): value is PrincipalPolicyMutationResponse {\n return PrincipalPolicyMutationResponseSchema.safeParse(value).success;\n}\n\nexport function isCommitOrganizationGroupPolicyResponse(\n value: unknown,\n): value is CommitOrganizationGroupPolicyResponse {\n return CommitOrganizationGroupPolicyResponseSchema.safeParse(value).success;\n}\n\nexport function isPrincipalPolicyStaleErrorResponse(\n value: unknown,\n): value is PrincipalPolicyStaleErrorResponse {\n return PrincipalPolicyStaleErrorResponseSchema.safeParse(value).success;\n}\n"]}
@@ -5,7 +5,7 @@ export { MAX_CONTAINER_PATH_LENGTH } from "./containerLimits.js";
5
5
  export { MAX_DOCUMENT_SYNC_AUTHORIZATION_PATH_REFS, MAX_DOCUMENT_SYNC_AUTHORIZATION_PATHS, MAX_DOCUMENT_SYNC_CONTENT_KEY_TARGETS, MAX_DOCUMENT_SYNC_OUTGOING_UPDATES, MAX_DOCUMENT_SYNC_PULL_CURSOR_LENGTH, MAX_DOCUMENT_SYNC_REQUEST_BYTES, MAX_DOCUMENT_SYNC_RESPONSE_ENVELOPE_BYTES, MAX_DOCUMENT_SYNC_RESPONSE_PAGE_BYTES, MAX_DOCUMENT_SYNC_RESPONSE_PAGE_UPDATES, MAX_DOCUMENT_SYNC_RESPONSE_UPDATE_PAGE_BYTES, } from "./documentSyncLimits.js";
6
6
  export { isSerializedKeyEnvelope, isSerializedKeyEnvelopeArray, type SerializedKeyEnvelope, } from "./keyEnvelope.js";
7
7
  export { isOrganizationReplacementAuthorization, type OrganizationReplacementAuthorization, OrganizationReplacementAuthorizationSchema, } from "./organizationReplacement.js";
8
- export { PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT } from "./principalHistoryWire.js";
8
+ export { PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT, PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT, } from "./principalHistoryWire.js";
9
9
  export { PROJECTION_HISTORY_HINT_CHARACTERS, ProjectionHistoryHeadersSchema, type ProjectionHistoryPrefix, ProjectionHistoryPrefixesSchema, parseProjectionHistoryHints, } from "./projectionHistoryWire.js";
10
10
  export { hasArrayProperty, hasBooleanProperty, hasNonEmptyStringProperty, hasNullableNumberProperty, hasNullableStringProperty, hasNumberProperty, hasObjectProperty, hasOptionalStringProperty, hasPositiveIntegerProperty, hasPropertyValue, hasStringProperty, isNonEmptyStringArray, isOptionalRecordArray, isOptionalRecordArrayArray, isRecordArray, isRecordArrayArray, isStringArray, } from "./properties.js";
11
11
  export { AUTH_CHALLENGE_HEX_LENGTH, isAuthChallengeHexString, isByteArray, isByteArrayOfLength, isSha256HexString, ML_DSA87_PUBLIC_KEY_BYTES, ML_DSA87_SIGNATURE_BYTES, ML_KEM1024_PUBLIC_KEY_BYTES, SHA256_HEX_LENGTH, } from "./protocol.js";
@@ -5,7 +5,7 @@ export { MAX_CONTAINER_PATH_LENGTH } from "./containerLimits.js";
5
5
  export { MAX_DOCUMENT_SYNC_AUTHORIZATION_PATH_REFS, MAX_DOCUMENT_SYNC_AUTHORIZATION_PATHS, MAX_DOCUMENT_SYNC_CONTENT_KEY_TARGETS, MAX_DOCUMENT_SYNC_OUTGOING_UPDATES, MAX_DOCUMENT_SYNC_PULL_CURSOR_LENGTH, MAX_DOCUMENT_SYNC_REQUEST_BYTES, MAX_DOCUMENT_SYNC_RESPONSE_ENVELOPE_BYTES, MAX_DOCUMENT_SYNC_RESPONSE_PAGE_BYTES, MAX_DOCUMENT_SYNC_RESPONSE_PAGE_UPDATES, MAX_DOCUMENT_SYNC_RESPONSE_UPDATE_PAGE_BYTES, } from "./documentSyncLimits.js";
6
6
  export { isSerializedKeyEnvelope, isSerializedKeyEnvelopeArray, } from "./keyEnvelope.js";
7
7
  export { isOrganizationReplacementAuthorization, OrganizationReplacementAuthorizationSchema, } from "./organizationReplacement.js";
8
- export { PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT } from "./principalHistoryWire.js";
8
+ export { PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT, PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT, } from "./principalHistoryWire.js";
9
9
  export { PROJECTION_HISTORY_HINT_CHARACTERS, ProjectionHistoryHeadersSchema, ProjectionHistoryPrefixesSchema, parseProjectionHistoryHints, } from "./projectionHistoryWire.js";
10
10
  export { hasArrayProperty, hasBooleanProperty, hasNonEmptyStringProperty, hasNullableNumberProperty, hasNullableStringProperty, hasNumberProperty, hasObjectProperty, hasOptionalStringProperty, hasPositiveIntegerProperty, hasPropertyValue, hasStringProperty, isNonEmptyStringArray, isOptionalRecordArray, isOptionalRecordArrayArray, isRecordArray, isRecordArrayArray, isStringArray, } from "./properties.js";
11
11
  export { AUTH_CHALLENGE_HEX_LENGTH, isAuthChallengeHexString, isByteArray, isByteArrayOfLength, isSha256HexString, ML_DSA87_PUBLIC_KEY_BYTES, ML_DSA87_SIGNATURE_BYTES, ML_KEM1024_PUBLIC_KEY_BYTES, SHA256_HEX_LENGTH, } from "./protocol.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mCAAmC,EAGnC,sCAAsC,EACtC,8BAA8B,EAC9B,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,kCAAkC,EAClC,uCAAuC,GACxC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,6BAA6B,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EACL,4BAA4B,EAC5B,uCAAuC,EACvC,mCAAmC,EACnC,mCAAmC,EACnC,+BAA+B,EAC/B,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,8CAA8C,EAC9C,gDAAgD,EAChD,wCAAwC,EACxC,yCAAyC,EACzC,8BAA8B,GAC/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,yCAAyC,EACzC,qCAAqC,EACrC,qCAAqC,EACrC,kCAAkC,EAClC,oCAAoC,EACpC,+BAA+B,EAC/B,yCAAyC,EACzC,qCAAqC,EACrC,uCAAuC,EACvC,4CAA4C,GAC7C,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,uBAAuB,EACvB,4BAA4B,GAE7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sCAAsC,EAEtC,0CAA0C,GAC3C,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mCAAmC,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EACL,kCAAkC,EAClC,8BAA8B,EAE9B,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,0BAA0B,EAC1B,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC","sourcesContent":["export {\n type AccessEventBundleWireResponse,\n AccessEventBundleWireResponseSchema,\n type AccessManifestBundleWire,\n type AccessManifestBundleWireResponse,\n AccessManifestBundleWireResponseSchema,\n AccessManifestBundleWireSchema,\n isAccessEventBundleWireResponse,\n isAccessManifestBundleWire,\n isAccessManifestBundleWireArray,\n isAccessManifestBundleWireResponse,\n isOptionalAccessManifestBundleWireArray,\n} from \"./accessManifestBundle\";\nexport { MAX_MULTIPART_BLOB_PART_BYTES } from \"./blob\";\nexport {\n CONTAINER_KEK_LOG_PAGE_LIMIT,\n CONTAINER_KEK_LOG_PRINCIPAL_SCOPE_LIMIT,\n CONTAINER_KEK_WRAPS_PER_EPOCH_LIMIT,\n ContainerKekKeyringWireRecordSchema,\n isContainerKekKeyringWireRecord,\n MAX_CONTAINER_KEY_EPOCH,\n MAX_INLINE_CONTAINER_REKEYS,\n MAX_ROTATION_CONTAINER_REKEYS,\n MAX_SEALED_CONTAINER_KEK_KEYRING_BASE64_LENGTH,\n SEALED_CONTAINER_KEK_KEYRING_AEAD_OVERHEAD_BYTES,\n SEALED_CONTAINER_KEK_KEYRING_ENTRY_BYTES,\n SEALED_CONTAINER_KEK_KEYRING_HEADER_BYTES,\n sealedContainerKekKeyringBytes,\n} from \"./containerKekKeyringWire\";\nexport { MAX_CONTAINER_PATH_LENGTH } from \"./containerLimits\";\nexport {\n MAX_DOCUMENT_SYNC_AUTHORIZATION_PATH_REFS,\n MAX_DOCUMENT_SYNC_AUTHORIZATION_PATHS,\n MAX_DOCUMENT_SYNC_CONTENT_KEY_TARGETS,\n MAX_DOCUMENT_SYNC_OUTGOING_UPDATES,\n MAX_DOCUMENT_SYNC_PULL_CURSOR_LENGTH,\n MAX_DOCUMENT_SYNC_REQUEST_BYTES,\n MAX_DOCUMENT_SYNC_RESPONSE_ENVELOPE_BYTES,\n MAX_DOCUMENT_SYNC_RESPONSE_PAGE_BYTES,\n MAX_DOCUMENT_SYNC_RESPONSE_PAGE_UPDATES,\n MAX_DOCUMENT_SYNC_RESPONSE_UPDATE_PAGE_BYTES,\n} from \"./documentSyncLimits\";\nexport {\n isSerializedKeyEnvelope,\n isSerializedKeyEnvelopeArray,\n type SerializedKeyEnvelope,\n} from \"./keyEnvelope\";\nexport {\n isOrganizationReplacementAuthorization,\n type OrganizationReplacementAuthorization,\n OrganizationReplacementAuthorizationSchema,\n} from \"./organizationReplacement\";\nexport { PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT } from \"./principalHistoryWire\";\nexport {\n PROJECTION_HISTORY_HINT_CHARACTERS,\n ProjectionHistoryHeadersSchema,\n type ProjectionHistoryPrefix,\n ProjectionHistoryPrefixesSchema,\n parseProjectionHistoryHints,\n} from \"./projectionHistoryWire\";\nexport {\n hasArrayProperty,\n hasBooleanProperty,\n hasNonEmptyStringProperty,\n hasNullableNumberProperty,\n hasNullableStringProperty,\n hasNumberProperty,\n hasObjectProperty,\n hasOptionalStringProperty,\n hasPositiveIntegerProperty,\n hasPropertyValue,\n hasStringProperty,\n isNonEmptyStringArray,\n isOptionalRecordArray,\n isOptionalRecordArrayArray,\n isRecordArray,\n isRecordArrayArray,\n isStringArray,\n} from \"./properties\";\nexport {\n AUTH_CHALLENGE_HEX_LENGTH,\n isAuthChallengeHexString,\n isByteArray,\n isByteArrayOfLength,\n isSha256HexString,\n ML_DSA87_PUBLIC_KEY_BYTES,\n ML_DSA87_SIGNATURE_BYTES,\n ML_KEM1024_PUBLIC_KEY_BYTES,\n SHA256_HEX_LENGTH,\n} from \"./protocol\";\nexport {\n CANONICAL_SIGNED_AT_PATTERN,\n isCanonicalSignedAt,\n MAX_SIGNED_AT_YEAR,\n MIN_SIGNED_AT_YEAR,\n SIGNED_AT_CONTRACT,\n} from \"./signedAt\";\nexport { isUuidV4String } from \"./uuid\";\nexport { isWalLsnString, parseWalLsn } from \"./walLsn\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mCAAmC,EAGnC,sCAAsC,EACtC,8BAA8B,EAC9B,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,kCAAkC,EAClC,uCAAuC,GACxC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,6BAA6B,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EACL,4BAA4B,EAC5B,uCAAuC,EACvC,mCAAmC,EACnC,mCAAmC,EACnC,+BAA+B,EAC/B,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,8CAA8C,EAC9C,gDAAgD,EAChD,wCAAwC,EACxC,yCAAyC,EACzC,8BAA8B,GAC/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,yCAAyC,EACzC,qCAAqC,EACrC,qCAAqC,EACrC,kCAAkC,EAClC,oCAAoC,EACpC,+BAA+B,EAC/B,yCAAyC,EACzC,qCAAqC,EACrC,uCAAuC,EACvC,4CAA4C,GAC7C,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,uBAAuB,EACvB,4BAA4B,GAE7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sCAAsC,EAEtC,0CAA0C,GAC3C,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,mCAAmC,EACnC,kCAAkC,GACnC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kCAAkC,EAClC,8BAA8B,EAE9B,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,0BAA0B,EAC1B,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC","sourcesContent":["export {\n type AccessEventBundleWireResponse,\n AccessEventBundleWireResponseSchema,\n type AccessManifestBundleWire,\n type AccessManifestBundleWireResponse,\n AccessManifestBundleWireResponseSchema,\n AccessManifestBundleWireSchema,\n isAccessEventBundleWireResponse,\n isAccessManifestBundleWire,\n isAccessManifestBundleWireArray,\n isAccessManifestBundleWireResponse,\n isOptionalAccessManifestBundleWireArray,\n} from \"./accessManifestBundle\";\nexport { MAX_MULTIPART_BLOB_PART_BYTES } from \"./blob\";\nexport {\n CONTAINER_KEK_LOG_PAGE_LIMIT,\n CONTAINER_KEK_LOG_PRINCIPAL_SCOPE_LIMIT,\n CONTAINER_KEK_WRAPS_PER_EPOCH_LIMIT,\n ContainerKekKeyringWireRecordSchema,\n isContainerKekKeyringWireRecord,\n MAX_CONTAINER_KEY_EPOCH,\n MAX_INLINE_CONTAINER_REKEYS,\n MAX_ROTATION_CONTAINER_REKEYS,\n MAX_SEALED_CONTAINER_KEK_KEYRING_BASE64_LENGTH,\n SEALED_CONTAINER_KEK_KEYRING_AEAD_OVERHEAD_BYTES,\n SEALED_CONTAINER_KEK_KEYRING_ENTRY_BYTES,\n SEALED_CONTAINER_KEK_KEYRING_HEADER_BYTES,\n sealedContainerKekKeyringBytes,\n} from \"./containerKekKeyringWire\";\nexport { MAX_CONTAINER_PATH_LENGTH } from \"./containerLimits\";\nexport {\n MAX_DOCUMENT_SYNC_AUTHORIZATION_PATH_REFS,\n MAX_DOCUMENT_SYNC_AUTHORIZATION_PATHS,\n MAX_DOCUMENT_SYNC_CONTENT_KEY_TARGETS,\n MAX_DOCUMENT_SYNC_OUTGOING_UPDATES,\n MAX_DOCUMENT_SYNC_PULL_CURSOR_LENGTH,\n MAX_DOCUMENT_SYNC_REQUEST_BYTES,\n MAX_DOCUMENT_SYNC_RESPONSE_ENVELOPE_BYTES,\n MAX_DOCUMENT_SYNC_RESPONSE_PAGE_BYTES,\n MAX_DOCUMENT_SYNC_RESPONSE_PAGE_UPDATES,\n MAX_DOCUMENT_SYNC_RESPONSE_UPDATE_PAGE_BYTES,\n} from \"./documentSyncLimits\";\nexport {\n isSerializedKeyEnvelope,\n isSerializedKeyEnvelopeArray,\n type SerializedKeyEnvelope,\n} from \"./keyEnvelope\";\nexport {\n isOrganizationReplacementAuthorization,\n type OrganizationReplacementAuthorization,\n OrganizationReplacementAuthorizationSchema,\n} from \"./organizationReplacement\";\nexport {\n PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT,\n PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT,\n} from \"./principalHistoryWire\";\nexport {\n PROJECTION_HISTORY_HINT_CHARACTERS,\n ProjectionHistoryHeadersSchema,\n type ProjectionHistoryPrefix,\n ProjectionHistoryPrefixesSchema,\n parseProjectionHistoryHints,\n} from \"./projectionHistoryWire\";\nexport {\n hasArrayProperty,\n hasBooleanProperty,\n hasNonEmptyStringProperty,\n hasNullableNumberProperty,\n hasNullableStringProperty,\n hasNumberProperty,\n hasObjectProperty,\n hasOptionalStringProperty,\n hasPositiveIntegerProperty,\n hasPropertyValue,\n hasStringProperty,\n isNonEmptyStringArray,\n isOptionalRecordArray,\n isOptionalRecordArrayArray,\n isRecordArray,\n isRecordArrayArray,\n isStringArray,\n} from \"./properties\";\nexport {\n AUTH_CHALLENGE_HEX_LENGTH,\n isAuthChallengeHexString,\n isByteArray,\n isByteArrayOfLength,\n isSha256HexString,\n ML_DSA87_PUBLIC_KEY_BYTES,\n ML_DSA87_SIGNATURE_BYTES,\n ML_KEM1024_PUBLIC_KEY_BYTES,\n SHA256_HEX_LENGTH,\n} from \"./protocol\";\nexport {\n CANONICAL_SIGNED_AT_PATTERN,\n isCanonicalSignedAt,\n MAX_SIGNED_AT_YEAR,\n MIN_SIGNED_AT_YEAR,\n SIGNED_AT_CONTRACT,\n} from \"./signedAt\";\nexport { isUuidV4String } from \"./uuid\";\nexport { isWalLsnString, parseWalLsn } from \"./walLsn\";\n"]}
@@ -1,2 +1,4 @@
1
1
  /** Per-response history depth; never a limit on the lifetime of a policy. */
2
2
  export declare const PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT = 32;
3
+ /** Maximum advisory heads in one stale-policy repair response. */
4
+ export declare const PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT = 16;
@@ -1,3 +1,5 @@
1
1
  /** Per-response history depth; never a limit on the lifetime of a policy. */
2
2
  export const PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT = 32;
3
+ /** Maximum advisory heads in one stale-policy repair response. */
4
+ export const PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT = 16;
3
5
  //# sourceMappingURL=principalHistoryWire.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"principalHistoryWire.js","sourceRoot":"","sources":["principalHistoryWire.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,CAAC","sourcesContent":["/** Per-response history depth; never a limit on the lifetime of a policy. */\nexport const PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT = 32;\n"]}
1
+ {"version":3,"file":"principalHistoryWire.js","sourceRoot":"","sources":["principalHistoryWire.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,CAAC;AAEtD,kEAAkE;AAClE,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC","sourcesContent":["/** Per-response history depth; never a limit on the lifetime of a policy. */\nexport const PRINCIPAL_POLICY_HISTORY_PAGE_LIMIT = 32;\n\n/** Maximum advisory heads in one stale-policy repair response. */\nexport const PRINCIPAL_POLICY_REPAIR_HEAD_LIMIT = 16;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tearleads/client-sdk",
3
- "version": "0.1.18",
3
+ "version": "0.1.20",
4
4
  "description": "React-free Tearleads client runtime: local SQLite persistence, keys, sync, encrypted blobs, and domain workflows.",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {
@@ -33,8 +33,8 @@
33
33
  "@noble/hashes": "^2.4.0",
34
34
  "@noble/post-quantum": "^0.7.1",
35
35
  "@scure/bip39": "^2.4.0",
36
- "drizzle-orm": "^0.45.2",
37
- "loro-crdt": "^1.16.0",
38
- "zod": "^4.5.4"
36
+ "drizzle-orm": "^0.45.3",
37
+ "loro-crdt": "^1.16.4",
38
+ "zod": "^4.6.5"
39
39
  }
40
40
  }