@the-ai-company/cbio-node-runtime 1.45.2 → 1.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/dist/clients/owner/client.d.ts +4 -10
  2. package/dist/clients/owner/client.js +39 -182
  3. package/dist/clients/owner/client.js.map +1 -1
  4. package/dist/protocol/crypto.d.ts +8 -0
  5. package/dist/protocol/crypto.js +14 -0
  6. package/dist/protocol/crypto.js.map +1 -1
  7. package/dist/runtime/bootstrap.d.ts +7 -20
  8. package/dist/runtime/bootstrap.js +15 -61
  9. package/dist/runtime/bootstrap.js.map +1 -1
  10. package/dist/runtime/identity.d.ts +1 -23
  11. package/dist/runtime/identity.js +2 -74
  12. package/dist/runtime/identity.js.map +1 -1
  13. package/dist/runtime/index.d.ts +8 -22
  14. package/dist/runtime/index.js +6 -10
  15. package/dist/runtime/index.js.map +1 -1
  16. package/dist/runtime/vault-metadata.d.ts +4 -16
  17. package/dist/runtime/vault-metadata.js +8 -43
  18. package/dist/runtime/vault-metadata.js.map +1 -1
  19. package/dist/storage/fs.d.ts +3 -0
  20. package/dist/storage/fs.js +3 -0
  21. package/dist/storage/fs.js.map +1 -1
  22. package/dist/storage/memory.d.ts +3 -0
  23. package/dist/storage/memory.js +3 -0
  24. package/dist/storage/memory.js.map +1 -1
  25. package/dist/vault-core/contracts.d.ts +0 -23
  26. package/dist/vault-core/contracts.js +0 -1
  27. package/dist/vault-core/contracts.js.map +1 -1
  28. package/dist/vault-core/core.d.ts +6 -3
  29. package/dist/vault-core/core.js +12 -75
  30. package/dist/vault-core/core.js.map +1 -1
  31. package/dist/vault-core/defaults.d.ts +43 -46
  32. package/dist/vault-core/defaults.js +41 -294
  33. package/dist/vault-core/defaults.js.map +1 -1
  34. package/dist/vault-core/index.d.ts +5 -5
  35. package/dist/vault-core/index.js +3 -3
  36. package/dist/vault-core/index.js.map +1 -1
  37. package/dist/vault-core/persistence.d.ts +32 -31
  38. package/dist/vault-core/persistence.js +35 -35
  39. package/dist/vault-core/persistence.js.map +1 -1
  40. package/dist/vault-core/ports.d.ts +2 -51
  41. package/dist/vault-ingress/defaults.d.ts +3 -0
  42. package/dist/vault-ingress/defaults.js +3 -0
  43. package/dist/vault-ingress/defaults.js.map +1 -1
  44. package/dist/vault-ingress/index.d.ts +1 -2
  45. package/dist/vault-ingress/index.js +0 -5
  46. package/dist/vault-ingress/index.js.map +1 -1
  47. package/dist/vault-ingress/remote-transport.d.ts +3 -0
  48. package/dist/vault-ingress/remote-transport.js +3 -0
  49. package/dist/vault-ingress/remote-transport.js.map +1 -1
  50. package/docs/api/README.md +6 -122
  51. package/docs/api/classes/IdentityError.md +1 -1
  52. package/docs/api/classes/VaultCore.md +320 -0
  53. package/docs/api/classes/VaultCoreError.md +1 -1
  54. package/docs/api/enumerations/IdentityErrorCode.md +1 -1
  55. package/docs/api/functions/createAgentClient.md +1 -1
  56. package/docs/api/functions/createIdentity.md +2 -2
  57. package/docs/api/functions/createOwnerHttpFlowBoundary.md +4 -4
  58. package/docs/api/functions/createPersistentVaultCoreDependencies.md +3 -67
  59. package/docs/api/functions/createStandardAcquireBoundary.md +3 -3
  60. package/docs/api/functions/createStandardDispatchBoundary.md +3 -3
  61. package/docs/api/functions/createVault.md +1 -1
  62. package/docs/api/functions/createVaultClient.md +2 -2
  63. package/docs/api/functions/createVaultCore.md +4 -4
  64. package/docs/api/functions/createVaultCoreDependencies.md +17 -0
  65. package/docs/api/functions/createVaultService.md +6 -6
  66. package/docs/api/functions/createWorkspaceStorage.md +3 -3
  67. package/docs/api/functions/deriveIdentityId.md +1 -1
  68. package/docs/api/functions/deriveVaultWorkingKeyFromPassword.md +24 -0
  69. package/docs/api/functions/getDefaultWorkspaceDir.md +1 -1
  70. package/docs/api/functions/handleVaultHttpDispatch.md +4 -4
  71. package/docs/api/functions/initializeVaultCustody.md +1 -1
  72. package/docs/api/functions/listVaults.md +3 -3
  73. package/docs/api/functions/readVaultProfile.md +3 -3
  74. package/docs/api/functions/recoverVault.md +1 -1
  75. package/docs/api/functions/recoverVaultWorkingKey.md +1 -1
  76. package/docs/api/functions/restoreIdentity.md +1 -1
  77. package/docs/api/functions/updateVaultMetadata.md +7 -7
  78. package/docs/api/functions/wrapVaultCoreAsVaultService.md +6 -6
  79. package/docs/api/functions/writeVaultProfile.md +3 -3
  80. package/docs/api/interfaces/AgentClient.md +3 -3
  81. package/docs/api/interfaces/AgentDispatchIntent.md +1 -1
  82. package/docs/api/interfaces/AgentDispatchTransport.md +4 -4
  83. package/docs/api/interfaces/AgentIdentity.md +1 -1
  84. package/docs/api/interfaces/AgentSigner.md +1 -1
  85. package/docs/api/interfaces/CbioRuntime.md +55 -396
  86. package/docs/api/interfaces/CreateAgentClientOptions.md +4 -4
  87. package/docs/api/interfaces/CreateIdentityOptions.md +1 -5
  88. package/docs/api/interfaces/CreatePersistentVaultCoreDependenciesOptions.md +9 -9
  89. package/docs/api/interfaces/CreateVaultClientOptions.md +5 -5
  90. package/docs/api/interfaces/CreateVaultOptions.md +16 -16
  91. package/docs/api/interfaces/CreatedVault.md +3 -3
  92. package/docs/api/interfaces/DefaultPolicyEngineOptions.md +3 -3
  93. package/docs/api/interfaces/IStorageProvider.md +1 -1
  94. package/docs/api/interfaces/InitializeVaultCustodyOptions.md +1 -1
  95. package/docs/api/interfaces/InitializedVaultCustody.md +1 -1
  96. package/docs/api/interfaces/OwnerDefineSecretTargetsInput.md +1 -1
  97. package/docs/api/interfaces/OwnerSecretTargetBinding.md +1 -1
  98. package/docs/api/interfaces/OwnerStoreSecretInput.md +1 -1
  99. package/docs/api/interfaces/OwnerWriteSecretInput.md +1 -1
  100. package/docs/api/interfaces/RecoverVaultOptions.md +10 -10
  101. package/docs/api/interfaces/RecoveredVault.md +3 -3
  102. package/docs/api/interfaces/RestoreIdentityOptions.md +1 -1
  103. package/docs/api/interfaces/Signer.md +1 -1
  104. package/docs/api/interfaces/VaultAuditQueryInput.md +1 -1
  105. package/docs/api/interfaces/VaultClient.md +17 -27
  106. package/docs/api/interfaces/{CreateDefaultVaultCoreDependenciesOptions.md → VaultCoreDependenciesOptions.md} +3 -3
  107. package/docs/api/interfaces/VaultDeleteSecretInput.md +1 -1
  108. package/docs/api/interfaces/VaultExportSecretInput.md +1 -1
  109. package/docs/api/interfaces/VaultGrantCapabilityInput.md +2 -2
  110. package/docs/api/interfaces/VaultIdentity.md +1 -1
  111. package/docs/api/interfaces/VaultListAgentsInput.md +1 -1
  112. package/docs/api/interfaces/VaultListCapabilitiesInput.md +1 -1
  113. package/docs/api/interfaces/VaultObject.md +3 -3
  114. package/docs/api/interfaces/VaultProfile.md +7 -11
  115. package/docs/api/interfaces/VaultPublicMetadata.md +1 -1
  116. package/docs/api/interfaces/VaultRegisterAgentInput.md +1 -1
  117. package/docs/api/interfaces/VaultRegisterFlowInput.md +7 -7
  118. package/docs/api/interfaces/VaultRevokeCapabilityInput.md +1 -1
  119. package/docs/api/interfaces/VaultSigner.md +1 -1
  120. package/docs/api/type-aliases/AgentCapabilityEnvelope.md +2 -2
  121. package/docs/api/type-aliases/CbioRuntimeModule.md +1 -1
  122. package/docs/api/variables/DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY.md +1 -1
  123. package/package.json +1 -1
  124. package/docs/api/classes/AgentDispatchHttpTransport.md +0 -52
  125. package/docs/api/classes/DefaultPolicyEngine.md +0 -117
  126. package/docs/api/classes/DefaultVaultCore.md +0 -405
  127. package/docs/api/classes/FsStorageProvider.md +0 -192
  128. package/docs/api/classes/HttpDispatchExecutor.md +0 -63
  129. package/docs/api/classes/InMemoryAgentIdentityRegistry.md +0 -83
  130. package/docs/api/classes/InMemoryAuditLog.md +0 -59
  131. package/docs/api/classes/InMemoryCapabilityRegistry.md +0 -91
  132. package/docs/api/classes/InMemoryCapabilityRevocationRegistry.md +0 -75
  133. package/docs/api/classes/InMemoryCustomHttpFlowRegistry.md +0 -63
  134. package/docs/api/classes/InMemoryOwnerIdentityRegistry.md +0 -83
  135. package/docs/api/classes/InMemoryRateLimitStore.md +0 -51
  136. package/docs/api/classes/InMemoryReplayGuard.md +0 -45
  137. package/docs/api/classes/InMemorySecretCustody.md +0 -83
  138. package/docs/api/classes/InMemorySecretRepository.md +0 -99
  139. package/docs/api/classes/LocalSigner.md +0 -59
  140. package/docs/api/classes/LocalVaultTransport.md +0 -45
  141. package/docs/api/classes/MemoryStorageProvider.md +0 -160
  142. package/docs/api/classes/PersistentVaultAgentIdentityRegistry.md +0 -101
  143. package/docs/api/classes/PersistentVaultAuditLog.md +0 -73
  144. package/docs/api/classes/PersistentVaultCapabilityRegistry.md +0 -109
  145. package/docs/api/classes/PersistentVaultCapabilityRevocationRegistry.md +0 -93
  146. package/docs/api/classes/PersistentVaultCustomHttpFlowRegistry.md +0 -81
  147. package/docs/api/classes/PersistentVaultOwnerIdentityRegistry.md +0 -101
  148. package/docs/api/classes/PersistentVaultRateLimitStore.md +0 -69
  149. package/docs/api/classes/PersistentVaultReplayGuard.md +0 -61
  150. package/docs/api/classes/PersistentVaultSecretCustody.md +0 -97
  151. package/docs/api/classes/PersistentVaultSecretRepository.md +0 -117
  152. package/docs/api/classes/RandomIdGenerator.md +0 -65
  153. package/docs/api/classes/SignatureAgentProofVerifier.md +0 -49
  154. package/docs/api/classes/SignatureOwnerProofVerifier.md +0 -249
  155. package/docs/api/classes/SystemClock.md +0 -33
  156. package/docs/api/enumerations/AuditAction.md +0 -95
  157. package/docs/api/enumerations/AuditOutcome.md +0 -29
  158. package/docs/api/enumerations/DispatchStatus.md +0 -23
  159. package/docs/api/functions/createChildIdentity.md +0 -25
  160. package/docs/api/functions/createDefaultVaultCoreDependencies.md +0 -77
  161. package/docs/api/functions/deriveChildIdentity.md +0 -41
  162. package/docs/api/functions/ensureIdentityPrivateVault.md +0 -21
  163. package/docs/api/functions/identityPrivateVaultChildrenKey.md +0 -17
  164. package/docs/api/functions/identityPrivateVaultPrefix.md +0 -17
  165. package/docs/api/functions/identityPrivateVaultProfileKey.md +0 -17
  166. package/docs/api/functions/identityPrivateVaultPublicSealedKey.md +0 -17
  167. package/docs/api/functions/listIdentities.md +0 -19
  168. package/docs/api/functions/readIdentityMetadata.md +0 -29
  169. package/docs/api/functions/readIdentityPrivateVaultChildrenState.md +0 -21
  170. package/docs/api/functions/readIdentityPrivateVaultProfile.md +0 -21
  171. package/docs/api/functions/readVaultPublicMetadata.md +0 -23
  172. package/docs/api/functions/toOwnerHttpFlowBoundary.md +0 -17
  173. package/docs/api/interfaces/AgentCapability.md +0 -103
  174. package/docs/api/interfaces/AgentIdentityRecord.md +0 -23
  175. package/docs/api/interfaces/AgentIdentityRegistry.md +0 -57
  176. package/docs/api/interfaces/AgentProof.md +0 -29
  177. package/docs/api/interfaces/AgentProofVerifier.md +0 -21
  178. package/docs/api/interfaces/AuditEntry.md +0 -89
  179. package/docs/api/interfaces/AuditLog.md +0 -37
  180. package/docs/api/interfaces/AuditQuery.md +0 -29
  181. package/docs/api/interfaces/CapabilityRegistry.md +0 -65
  182. package/docs/api/interfaces/CapabilityRevocationRegistry.md +0 -53
  183. package/docs/api/interfaces/ChildIdentity.md +0 -77
  184. package/docs/api/interfaces/Clock.md +0 -15
  185. package/docs/api/interfaces/CreateChildIdentityOptions.md +0 -19
  186. package/docs/api/interfaces/CustomHttpFlowDefinition.md +0 -71
  187. package/docs/api/interfaces/CustomHttpFlowRegistry.md +0 -41
  188. package/docs/api/interfaces/DeriveIdentityOptions.md +0 -11
  189. package/docs/api/interfaces/DispatchAuthorization.md +0 -35
  190. package/docs/api/interfaces/DispatchInstruction.md +0 -47
  191. package/docs/api/interfaces/DispatchRequest.md +0 -77
  192. package/docs/api/interfaces/DispatchResult.md +0 -53
  193. package/docs/api/interfaces/IdGenerator.md +0 -39
  194. package/docs/api/interfaces/IdentityPrivateVaultChildRecord.md +0 -35
  195. package/docs/api/interfaces/IdentityPrivateVaultChildrenState.md +0 -17
  196. package/docs/api/interfaces/IdentityPrivateVaultProfile.md +0 -35
  197. package/docs/api/interfaces/IssuerWriteSecretCommand.md +0 -59
  198. package/docs/api/interfaces/OwnerAuditRequest.md +0 -47
  199. package/docs/api/interfaces/OwnerDefineSecretTargetsCommand.md +0 -53
  200. package/docs/api/interfaces/OwnerDeleteSecretCommand.md +0 -47
  201. package/docs/api/interfaces/OwnerExportSecretRequest.md +0 -47
  202. package/docs/api/interfaces/OwnerHttpFlowBoundary.md +0 -51
  203. package/docs/api/interfaces/OwnerIdentityRecord.md +0 -23
  204. package/docs/api/interfaces/OwnerIdentityRegistry.md +0 -57
  205. package/docs/api/interfaces/OwnerListAgentsRequest.md +0 -41
  206. package/docs/api/interfaces/OwnerListCapabilitiesRequest.md +0 -47
  207. package/docs/api/interfaces/OwnerProof.md +0 -29
  208. package/docs/api/interfaces/OwnerProofVerifier.md +0 -181
  209. package/docs/api/interfaces/OwnerRegisterAgentIdentityCommand.md +0 -47
  210. package/docs/api/interfaces/OwnerRegisterCapabilityCommand.md +0 -47
  211. package/docs/api/interfaces/OwnerRegisterCustomHttpFlowCommand.md +0 -83
  212. package/docs/api/interfaces/OwnerRevokeCapabilityCommand.md +0 -53
  213. package/docs/api/interfaces/OwnerSecretExport.md +0 -35
  214. package/docs/api/interfaces/OwnerWriteSecretCommand.md +0 -65
  215. package/docs/api/interfaces/PolicyEngine.md +0 -81
  216. package/docs/api/interfaces/RateLimitStore.md +0 -33
  217. package/docs/api/interfaces/ReplayGuard.md +0 -21
  218. package/docs/api/interfaces/SecretAlias.md +0 -11
  219. package/docs/api/interfaces/SecretCustody.md +0 -57
  220. package/docs/api/interfaces/SecretId.md +0 -11
  221. package/docs/api/interfaces/SecretRecord.md +0 -53
  222. package/docs/api/interfaces/SecretRepository.md +0 -69
  223. package/docs/api/interfaces/SecretVersion.md +0 -11
  224. package/docs/api/interfaces/SignatureAgentProofVerifierOptions.md +0 -21
  225. package/docs/api/interfaces/TrustedExecutor.md +0 -31
  226. package/docs/api/interfaces/VaultAcquireSecretInput.md +0 -53
  227. package/docs/api/interfaces/VaultAcquireSecretResult.md +0 -41
  228. package/docs/api/interfaces/VaultAgentDispatchErrorResponse.md +0 -25
  229. package/docs/api/interfaces/VaultAgentDispatchRequest.md +0 -75
  230. package/docs/api/interfaces/VaultAgentDispatchResponse.md +0 -17
  231. package/docs/api/interfaces/VaultCore.md +0 -311
  232. package/docs/api/interfaces/VaultCoreDependencies.md +0 -95
  233. package/docs/api/interfaces/VaultCustomFlowResolver.md +0 -25
  234. package/docs/api/interfaces/VaultId.md +0 -11
  235. package/docs/api/interfaces/VaultPrincipal.md +0 -17
  236. package/docs/api/interfaces/VaultService.md +0 -251
  237. package/docs/api/interfaces/VaultTargetBinding.md +0 -35
  238. package/docs/api/type-aliases/IdentityPrivateVaultAccess.md +0 -7
  239. package/docs/api/type-aliases/RedactedResponseShape.md +0 -7
  240. package/docs/api/type-aliases/VaultAcquireSecretFlow.md +0 -7
  241. package/docs/api/type-aliases/VaultPrincipalKind.md +0 -7
  242. package/docs/api/type-aliases/VaultWriteSecretCommand.md +0 -7
@@ -1,29 +1,12 @@
1
1
  import crypto from "node:crypto";
2
2
  import { createVaultCore } from "../vault-core/core.js";
3
3
  import { createPersistentVaultCoreDependencies, } from "../vault-core/index.js";
4
+ import { deriveVaultWorkingKeyFromPassword } from "../protocol/crypto.js";
4
5
  import { wrapVaultCoreAsVaultService, } from "../vault-ingress/index.js";
5
6
  import { createPrefixedStorage } from "../storage/prefix.js";
6
7
  import { FsStorageProvider } from "../storage/fs.js";
7
- import { readVaultProfile, writeVaultProfile, readVaultPublicMetadata } from "./vault-metadata.js";
8
+ import { readVaultProfile, writeVaultProfile } from "./vault-metadata.js";
8
9
  import { createWorkspaceStorage } from "./workspace-storage.js";
9
- /**
10
- * Derives the deterministic working key for a vault.
11
- *
12
- * @param privateKey - The owner's private key.
13
- * @param vaultId - The unique ID of the vault.
14
- * @returns A base64url-encoded 256-bit key.
15
- * @internal Used by `createVault` and `recoverVault`.
16
- */
17
- export function deriveVaultWorkingKey(privateKey, vaultId) {
18
- return crypto
19
- .createHash("sha256")
20
- .update("cbio:vault-working-key:v1")
21
- .update("\n")
22
- .update(vaultId)
23
- .update("\n")
24
- .update(privateKey)
25
- .digest("base64url");
26
- }
27
10
  function vaultStoragePrefix(vaultId) {
28
11
  return `vaults/${vaultId}`;
29
12
  }
@@ -47,33 +30,19 @@ export async function createVault(storageOrOptions, maybeOptions) {
47
30
  const { storage: workspaceStorage, options } = resolveStorage(storageOrOptions, maybeOptions);
48
31
  const vaultId = options.vaultId ?? `vault_${crypto.randomUUID()}`;
49
32
  const storage = createPrefixedStorage(workspaceStorage, vaultStoragePrefix(vaultId));
50
- const vaultWorkingKey = deriveVaultWorkingKey(options.ownerIdentity.privateKey, vaultId);
33
+ const vaultWorkingKey = deriveVaultWorkingKeyFromPassword(options.password, vaultId);
51
34
  const deps = createPersistentVaultCoreDependencies(storage, {
52
35
  ...options,
53
36
  vaultId,
54
37
  vaultWorkingKey,
55
38
  });
56
39
  const core = createVaultCore(deps);
57
- const bootstrapOwner = {
58
- vaultId: core.vaultId,
59
- ownerId: options.ownerIdentity.identityId,
60
- publicKey: options.ownerIdentity.publicKey,
61
- };
62
- await core.bootstrapOwnerIdentity(bootstrapOwner);
63
40
  const nickname = options.nickname?.trim() ? options.nickname.trim() : undefined;
64
- // 1. Critical configuration (e.g. key materials, sensitive bounds) remains in private
65
- // 2. Discovery metadata (ownerId, nickname, custom tags) is stored in the public sealed profile for easy UI retrieval
41
+ // Single encrypted profile block. Hold the password to see everything.
66
42
  await writeVaultProfile(storage, {
67
- sealedPrivate: {
68
- vaultId,
69
- ownerId: options.ownerIdentity.identityId,
70
- },
71
- sealedPublic: {
72
- vaultId,
73
- ownerId: options.ownerIdentity.identityId,
74
- ...options.publicMetadata,
75
- nickname, // Nickname override takes precedence
76
- }
43
+ vaultId,
44
+ nickname,
45
+ ...options.metadata,
77
46
  }, vaultWorkingKey, vaultId);
78
47
  return {
79
48
  core,
@@ -85,7 +54,7 @@ export async function createVault(storageOrOptions, maybeOptions) {
85
54
  export async function recoverVault(storageOrOptions, maybeOptions) {
86
55
  const { storage: workspaceStorage, options } = resolveStorage(storageOrOptions, maybeOptions);
87
56
  const storage = createPrefixedStorage(workspaceStorage, vaultStoragePrefix(options.vaultId));
88
- const vaultWorkingKey = deriveVaultWorkingKey(options.ownerIdentity.privateKey, options.vaultId);
57
+ const vaultWorkingKey = deriveVaultWorkingKeyFromPassword(options.password, options.vaultId);
89
58
  const deps = createPersistentVaultCoreDependencies(storage, {
90
59
  ...options,
91
60
  vaultId: options.vaultId,
@@ -99,7 +68,7 @@ export async function recoverVault(storageOrOptions, maybeOptions) {
99
68
  return {
100
69
  core,
101
70
  vault: wrapVaultCoreAsVaultService(core, options.vault),
102
- nickname: profile.sealedPublic.nickname,
71
+ nickname: profile.nickname,
103
72
  storage,
104
73
  };
105
74
  }
@@ -113,35 +82,20 @@ export async function listVaults(storage) {
113
82
  if (!storage.list) {
114
83
  return [];
115
84
  }
116
- const ids = await storage.list("vaults");
117
- const results = [];
118
- for (const id of ids) {
119
- const vaultStorage = createPrefixedStorage(storage, vaultStoragePrefix(id));
120
- const publicData = await readVaultPublicMetadata(vaultStorage, id);
121
- results.push({
122
- vaultId: id,
123
- public: publicData || {},
124
- });
125
- }
126
- return results;
85
+ return await storage.list("vaults");
127
86
  }
128
87
  /**
129
88
  * Updates the metadata (like nickname) of an existing vault.
130
89
  */
131
90
  export async function updateVaultMetadata(vault, options) {
132
91
  const vaultId = vault.core.vaultId.value;
133
- const vaultWorkingKey = deriveVaultWorkingKey(options.ownerIdentity.privateKey, vaultId);
134
- // Read current profile to preserve secret part
92
+ const vaultWorkingKey = deriveVaultWorkingKeyFromPassword(options.password, vaultId);
93
+ // Read current profile to preserve other fields
135
94
  const current = await readVaultProfile(vault.storage, vaultWorkingKey, vaultId);
136
95
  await writeVaultProfile(vault.storage, {
137
- sealedPrivate: current?.sealedPrivate || { vaultId, ownerId: options.ownerIdentity.identityId },
138
- sealedPublic: {
139
- ...current?.sealedPublic, // Preserve existing public metadata
140
- vaultId,
141
- ownerId: options.ownerIdentity.identityId, // Ensure ownerId is always populated for discovery
142
- ...(options.publicMetadata ?? {}), // Merge new custom fields if any
143
- nickname: options.nickname ?? current?.sealedPublic.nickname,
144
- }
96
+ ...(current || {}),
97
+ nickname: options.nickname ?? current?.nickname,
98
+ ...(options.metadata ?? {}),
145
99
  }, vaultWorkingKey, vaultId);
146
100
  }
147
101
  //# sourceMappingURL=bootstrap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/runtime/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,qCAAqC,GAItC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,2BAA2B,GAG5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,UAAkB,EAAE,OAAe;IACvE,OAAO,MAAM;SACV,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,2BAA2B,CAAC;SACnC,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,UAAU,CAAC;SAClB,MAAM,CAAC,WAAW,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAe;IACzC,OAAO,UAAU,OAAO,EAAE,CAAC;AAC7B,CAAC;AAkDD,SAAS,cAAc,CACrB,gBAAsF,EACtF,YAAuD;IAEvD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,OAAO,gBAAgB,KAAK,QAAQ;YAClD,CAAC,CAAC,IAAI,iBAAiB,CAAC,gBAAgB,CAAC;YACzC,CAAC,CAAC,gBAAoC,CAAC;QACzC,OAAO;YACL,OAAO;YACP,OAAO,EAAE,YAAY;SACtB,CAAC;IACJ,CAAC;IACD,gEAAgE;IAChE,OAAO;QACL,OAAO,EAAE,sBAAsB,EAAE;QACjC,OAAO,EAAE,gBAA4D;KACtE,CAAC;AACJ,CAAC;AAwBD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,gBAAgE,EAChE,YAAiC;IAEjC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,gBAAgB,EAAE,YAAY,CAG3F,CAAC;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;IAClE,MAAM,OAAO,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IACrF,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEzF,MAAM,IAAI,GAAG,qCAAqC,CAAC,OAAO,EAAE;QAC1D,GAAG,OAAO;QACV,OAAO;QACP,eAAe;KAChB,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,cAAc,GAAwB;QAC1C,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;QACzC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,SAAS;KAC3C,CAAC;IACF,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAEhF,sFAAsF;IACtF,sHAAsH;IACtH,MAAM,iBAAiB,CAAC,OAAO,EAAE;QAC/B,aAAa,EAAE;YACb,OAAO;YACP,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;SAC1C;QACD,YAAY,EAAE;YACZ,OAAO;YACP,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;YACzC,GAAG,OAAO,CAAC,cAAc;YACzB,QAAQ,EAAE,qCAAqC;SAChD;KACF,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAE7B,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,2BAA2B,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC;QACvD,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC;AAwBD,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,gBAAiE,EACjE,YAAkC;IAElC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,gBAAgB,EAAE,YAAY,CAG3F,CAAC;IACF,MAAM,OAAO,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7F,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACjG,MAAM,IAAI,GAAG,qCAAqC,CAAC,OAAO,EAAE;QAC1D,GAAG,OAAO;QACV,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,eAAe;KAChB,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAClF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,2BAA2B,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC;QACvD,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,QAAQ;QACvC,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAyB;IACxD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,OAAO,GAA4C,EAAE,CAAC;IAC5D,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,YAAY,GAAG,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAEnE,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,UAAU,IAAI,EAAE;SACzB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAoC,EACpC,OAAoG;IAEpG,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IACzC,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEzF,+CAA+C;IAC/C,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAEhF,MAAM,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE;QACrC,aAAa,EAAE,OAAO,EAAE,aAAa,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE;QAC/F,YAAY,EAAE;YACZ,GAAG,OAAO,EAAE,YAAY,EAAE,oCAAoC;YAC9D,OAAO;YACP,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,mDAAmD;YAC9F,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,iCAAiC;YACpE,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,OAAO,EAAE,YAAY,CAAC,QAAQ;SAC7D;KACF,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/runtime/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -7,19 +7,11 @@ export interface CreatedIdentity {
7
7
  identityId: string;
8
8
  /** A human-readable label (local only, not part of the crypto identity). */
9
9
  nickname?: string;
10
- /** The identity ID of the parent, if this is a child identity. */
11
- parentIdentityId?: string;
12
- /** The derivation index, if this is a child identity. */
13
- childIndex?: number;
14
10
  /** The base64url-encoded public key. */
15
11
  publicKey: string;
16
12
  /** The base64url-encoded Ed25519 PKCS#8 private key. */
17
13
  privateKey: string;
18
14
  }
19
- export interface ChildIdentity extends CreatedIdentity {
20
- parentIdentityId: string;
21
- childIndex: number;
22
- }
23
15
  export interface CreateIdentityOptions {
24
16
  nickname?: string;
25
17
  }
@@ -30,7 +22,7 @@ export interface DeriveIdentityOptions {
30
22
  nickname?: string;
31
23
  }
32
24
  /**
33
- * Creates a new root identity with a fresh Ed25519 keypair.
25
+ * Creates a new identity with a fresh Ed25519 keypair.
34
26
  *
35
27
  * @param options - Configuration for the new identity.
36
28
  * @returns A {@link CreatedIdentity} containing the ID and keys.
@@ -55,17 +47,3 @@ export declare function createIdentity(options?: CreateIdentityOptions): Created
55
47
  * ```
56
48
  */
57
49
  export declare function restoreIdentity(privateKey: string, options?: RestoreIdentityOptions): CreatedIdentity;
58
- /**
59
- * Deterministically derives a child identity from a parent's private key and an index.
60
- *
61
- * @param parent - The parent identity object or its private key string.
62
- * @param childIndex - A non-negative integer for derivation.
63
- * @param options - Optional nickname for the child.
64
- * @returns A {@link ChildIdentity} with derivation metadata.
65
- *
66
- * @example
67
- * ```ts
68
- * const child = deriveChildIdentity(parentIdentity, 0, { nickname: 'sub-agent-0' });
69
- * ```
70
- */
71
- export declare function deriveChildIdentity(parent: CreatedIdentity | string, childIndex: number, options?: DeriveIdentityOptions): ChildIdentity;
@@ -1,4 +1,3 @@
1
- import { createHmac, createPrivateKey, createPublicKey } from "node:crypto";
2
1
  import { derivePublicKey, generateIdentityKeys } from "../protocol/crypto.js";
3
2
  import { deriveIdentityId } from "../protocol/identity.js";
4
3
  const ED25519_PKCS8_PREFIX = Buffer.from("302e020100300506032b657004220420", "hex");
@@ -17,12 +16,6 @@ function decodeEd25519Seed(privateKey) {
17
16
  function encodeEd25519PrivateKey(seed) {
18
17
  return Buffer.concat([ED25519_PKCS8_PREFIX, seed]).toString("base64url");
19
18
  }
20
- function toParentPrivateKey(parent) {
21
- if (!parent) {
22
- return undefined;
23
- }
24
- return typeof parent === "string" ? parent.trim() : parent.privateKey.trim();
25
- }
26
19
  function createRootIdentity(options = {}) {
27
20
  const keyPair = generateIdentityKeys();
28
21
  if (!keyPair.publicKey || !keyPair.privateKey) {
@@ -36,15 +29,8 @@ function createRootIdentity(options = {}) {
36
29
  privateKey: keyPair.privateKey,
37
30
  };
38
31
  }
39
- export function createIdentity(parentOrOptions, childIndexOrOptions, maybeOptions = {}) {
40
- const hasParent = typeof parentOrOptions === "string" ||
41
- (typeof parentOrOptions === "object" &&
42
- parentOrOptions !== null &&
43
- "privateKey" in parentOrOptions);
44
- if (hasParent) {
45
- throw new Error("createIdentity() only creates root identities; use createChildIdentity() or deriveChildIdentity()");
46
- }
47
- return createRootIdentity(parentOrOptions ?? {});
32
+ export function createIdentity(optionsOrParams) {
33
+ return createRootIdentity(optionsOrParams ?? {});
48
34
  }
49
35
  /**
50
36
  * Restores an identity from an existing private key.
@@ -72,62 +58,4 @@ export function restoreIdentity(privateKey, options = {}) {
72
58
  privateKey: normalizedPrivateKey,
73
59
  };
74
60
  }
75
- function deriveIdentity(parentPrivateKey, childIndex, options = {}) {
76
- const normalizedParentPrivateKey = parentPrivateKey.trim();
77
- if (!normalizedParentPrivateKey) {
78
- throw new Error("parent private key is required");
79
- }
80
- if (!Number.isInteger(childIndex) || childIndex < 0) {
81
- throw new Error("childIndex must be a non-negative integer");
82
- }
83
- const parentSeed = decodeEd25519Seed(normalizedParentPrivateKey);
84
- const childSeed = createHmac("sha256", parentSeed)
85
- .update("cbio:identity:child:v1")
86
- .update("\0")
87
- .update(String(childIndex))
88
- .digest();
89
- const privateKey = encodeEd25519PrivateKey(childSeed);
90
- const privateKeyObject = createPrivateKey({
91
- key: Buffer.from(privateKey, "base64url"),
92
- format: "der",
93
- type: "pkcs8",
94
- });
95
- const publicKey = Buffer.from(createPublicKey(privateKeyObject).export({
96
- type: "spki",
97
- format: "der",
98
- })).toString("base64url");
99
- return {
100
- identityId: deriveIdentityId(publicKey),
101
- nickname: normalizeNickname(options.nickname),
102
- publicKey,
103
- privateKey,
104
- };
105
- }
106
- /**
107
- * Deterministically derives a child identity from a parent's private key and an index.
108
- *
109
- * @param parent - The parent identity object or its private key string.
110
- * @param childIndex - A non-negative integer for derivation.
111
- * @param options - Optional nickname for the child.
112
- * @returns A {@link ChildIdentity} with derivation metadata.
113
- *
114
- * @example
115
- * ```ts
116
- * const child = deriveChildIdentity(parentIdentity, 0, { nickname: 'sub-agent-0' });
117
- * ```
118
- */
119
- export function deriveChildIdentity(parent, childIndex, options = {}) {
120
- const parentPrivateKey = toParentPrivateKey(parent);
121
- if (!parentPrivateKey) {
122
- throw new Error("parent private key is required");
123
- }
124
- const parentIdentity = typeof parent === "string"
125
- ? restoreIdentity(parentPrivateKey)
126
- : parent;
127
- return {
128
- ...deriveIdentity(parentPrivateKey, childIndex, options),
129
- parentIdentityId: parentIdentity.identityId,
130
- childIndex,
131
- };
132
- }
133
61
  //# sourceMappingURL=identity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/runtime/identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/runtime/identity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AA6B3D,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;AACpF,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,SAAS,iBAAiB,CAAC,QAAiB;IAC1C,OAAO,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAkB;IAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACjD,IACE,GAAG,CAAC,MAAM,KAAK,oBAAoB,CAAC,MAAM,GAAG,mBAAmB;QAChE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAC1E,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY;IAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAiC,EAAE;IAC7D,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrD,OAAO;QACL,UAAU,EAAE,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC;QAC/C,QAAQ;QACR,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC;AACJ,CAAC;AAeD,MAAM,UAAU,cAAc,CAC5B,eAAuC;IAEvC,OAAO,kBAAkB,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,UAAkC,EAAE;IACtF,MAAM,oBAAoB,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAC/C,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,SAAS,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrD,OAAO;QACL,UAAU,EAAE,gBAAgB,CAAC,SAAS,CAAC;QACvC,QAAQ;QACR,SAAS;QACT,UAAU,EAAE,oBAAoB;KACjC,CAAC;AACJ,CAAC"}
@@ -3,24 +3,20 @@
3
3
  * Public surface: typed high-level runtime plus supported low-level building blocks.
4
4
  */
5
5
  export { IdentityError, IdentityErrorCode } from "../errors.js";
6
- export { derivePublicKey, LocalSigner, type Signer } from "../protocol/crypto.js";
6
+ export { derivePublicKey, LocalSigner, type Signer, deriveVaultWorkingKeyFromPassword } from "../protocol/crypto.js";
7
7
  export { deriveIdentityId } from "../protocol/identity.js";
8
8
  export type { IStorageProvider } from "../storage/provider.js";
9
9
  export { FsStorageProvider } from "../storage/fs.js";
10
10
  export { MemoryStorageProvider } from "../storage/memory.js";
11
- export { createIdentity, deriveChildIdentity, restoreIdentity, type CreateIdentityOptions, type RestoreIdentityOptions, type ChildIdentity, type CreatedIdentity, type DeriveIdentityOptions, } from "./identity.js";
12
- export { createChildIdentity, type CreateChildIdentityOptions, } from "./child-identity.js";
13
- export { readVaultProfile, writeVaultProfile, readVaultPublicMetadata, type VaultProfile, } from "./vault-metadata.js";
11
+ export { createIdentity, restoreIdentity, type CreateIdentityOptions, type RestoreIdentityOptions, type CreatedIdentity, } from "./identity.js";
12
+ export { readVaultProfile, writeVaultProfile, type VaultProfile, } from "./vault-metadata.js";
14
13
  export { createWorkspaceStorage, getDefaultWorkspaceDir, } from "./workspace-storage.js";
15
- export { ensureIdentityPrivateVault, readIdentityPrivateVaultProfile, readIdentityPrivateVaultChildrenState, readIdentityMetadata, listIdentities, type IdentityPrivateVaultAccess, identityPrivateVaultPrefix, identityPrivateVaultProfileKey, identityPrivateVaultPublicSealedKey, identityPrivateVaultChildrenKey, type IdentityPrivateVaultProfile, type IdentityPrivateVaultChildRecord, type IdentityPrivateVaultChildrenState, } from "./private-vault.js";
16
- export { createVault, recoverVault, deriveVaultWorkingKey, listVaults, updateVaultMetadata, type CreateVaultOptions, type CreatedVault, type RecoverVaultOptions, type RecoveredVault, type VaultObject, type VaultMetadata as VaultPublicMetadata, } from "./bootstrap.js";
17
- export { createVaultCore, DefaultVaultCore, VaultCoreError, createDefaultVaultCoreDependencies, type CreateDefaultVaultCoreDependenciesOptions, type DefaultPolicyEngineOptions, DefaultPolicyEngine, createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, type InitializeVaultCustodyOptions, type InitializedVaultCustody, type CreatePersistentVaultCoreDependenciesOptions, PersistentVaultAgentIdentityRegistry, PersistentVaultAuditLog, PersistentVaultOwnerIdentityRegistry, PersistentVaultCapabilityRegistry, PersistentVaultCapabilityRevocationRegistry, PersistentVaultCustomHttpFlowRegistry, PersistentVaultRateLimitStore, PersistentVaultReplayGuard, PersistentVaultSecretCustody, PersistentVaultSecretRepository, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemoryOwnerIdentityRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, SignatureOwnerProofVerifier, type SignatureAgentProofVerifierOptions, SignatureAgentProofVerifier, SystemClock, type AgentCapability, type AgentIdentityRecord, type AgentProof, type OwnerAuditRequest, type OwnerExportSecretRequest, type OwnerDefineSecretTargetsCommand, type OwnerRegisterCapabilityCommand, type OwnerRegisterAgentIdentityCommand, type OwnerRegisterCustomHttpFlowCommand, type OwnerSecretExport, type OwnerIdentityRecord, type CustomHttpFlowDefinition, type OwnerProof, type AuditEntry, type AuditLog, type AuditQuery, type Clock, type DispatchAuthorization, type DispatchInstruction, type DispatchRequest, type DispatchResult, type IdGenerator, type OwnerIdentityRegistry, type OwnerProofVerifier, type PolicyEngine, type RateLimitStore, type ReplayGuard, type CustomHttpFlowRegistry, type SecretAlias, type SecretCustody, type SecretId, type SecretRecord, type SecretRepository, type SecretVersion, type TrustedExecutor, type VaultCore, type VaultCoreDependencies, type VaultPrincipal, type VaultPrincipalKind, type VaultTargetBinding, type VaultWriteSecretCommand, type VaultId, type AgentIdentityRegistry, type AgentProofVerifier, type CapabilityRevocationRegistry, type CapabilityRegistry, type AuditAction, type AuditOutcome, type DispatchStatus, type OwnerWriteSecretCommand, type IssuerWriteSecretCommand, type OwnerDeleteSecretCommand, type OwnerListAgentsRequest, type OwnerListCapabilitiesRequest, type OwnerRevokeCapabilityCommand, } from "../vault-core/index.js";
14
+ export { createVault, recoverVault, listVaults, updateVaultMetadata, type CreateVaultOptions, type CreatedVault, type RecoverVaultOptions, type RecoveredVault, type VaultObject, type VaultMetadata as VaultPublicMetadata, } from "./bootstrap.js";
15
+ export { createVaultCore, VaultCore, VaultCoreError, createVaultCoreDependencies, type VaultCoreDependenciesOptions, type DefaultPolicyEngineOptions, DefaultPolicyEngine, createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, type InitializeVaultCustodyOptions, type InitializedVaultCustody, type CreatePersistentVaultCoreDependenciesOptions, PersistentVaultAgentIdentityRegistry, PersistentVaultAuditLog, PersistentVaultCapabilityRegistry, PersistentVaultCapabilityRevocationRegistry, PersistentVaultCustomHttpFlowRegistry, PersistentVaultRateLimitStore, PersistentVaultReplayGuard, PersistentVaultSecretCustody, PersistentVaultSecretRepository, } from "../vault-core/index.js";
18
16
  export { createVaultClient, type VaultClient, type CreateVaultClientOptions, type VaultIdentity, type VaultSigner, type VaultAuditQueryInput, type OwnerDefineSecretTargetsInput, type VaultExportSecretInput, type VaultGrantCapabilityInput, type VaultRegisterFlowInput, type VaultRegisterAgentInput, type OwnerSecretTargetBinding, type OwnerStoreSecretInput, type OwnerWriteSecretInput, type VaultDeleteSecretInput, type VaultListAgentsInput, type VaultListCapabilitiesInput, type VaultRevokeCapabilityInput, } from "../clients/owner/index.js";
19
17
  export { createAgentClient, type AgentClient, type CreateAgentClientOptions, type AgentIdentity, type AgentCapabilityEnvelope, type AgentDispatchIntent, type AgentDispatchTransport, type AgentSigner, } from "../clients/agent/index.js";
20
- export { createVaultService, wrapVaultCoreAsVaultService, createOwnerHttpFlowBoundary, createStandardAcquireBoundary, createStandardDispatchBoundary, toOwnerHttpFlowBoundary, type VaultService, type VaultAcquireSecretInput, type VaultAcquireSecretResult, type VaultAcquireSecretFlow, type VaultCustomFlowResolver, type VaultAgentDispatchRequest, type VaultAgentDispatchResponse, type VaultAgentDispatchErrorResponse, type RedactedResponseShape, type OwnerHttpFlowBoundary, } from "../vault-ingress/index.js";
18
+ export { createVaultService, wrapVaultCoreAsVaultService, createOwnerHttpFlowBoundary, createStandardAcquireBoundary, createStandardDispatchBoundary, AgentDispatchHttpTransport, handleVaultHttpDispatch, } from "../vault-ingress/index.js";
21
19
  export { LocalVaultTransport } from "../vault-ingress/defaults.js";
22
- export { AgentDispatchHttpTransport } from "../vault-ingress/remote-transport.js";
23
- export { handleVaultHttpDispatch } from "../vault-ingress/server-utils.js";
24
20
  /**
25
21
  * Main runtime interface.
26
22
  */
@@ -35,24 +31,14 @@ export interface CbioRuntime {
35
31
  PersistentVaultCapabilityRevocationRegistry: typeof import("../vault-core/index.js").PersistentVaultCapabilityRevocationRegistry;
36
32
  createIdentity: typeof import("./identity.js").createIdentity;
37
33
  restoreIdentity: typeof import("./identity.js").restoreIdentity;
38
- createChildIdentity: typeof import("./child-identity.js").createChildIdentity;
39
- deriveChildIdentity: typeof import("./identity.js").deriveChildIdentity;
40
- ensureIdentityPrivateVault: typeof import("./private-vault.js").ensureIdentityPrivateVault;
41
- readIdentityPrivateVaultProfile: typeof import("./private-vault.js").readIdentityPrivateVaultProfile;
42
- readIdentityPrivateVaultChildrenState: typeof import("./private-vault.js").readIdentityPrivateVaultChildrenState;
43
- readIdentityMetadata: typeof import("./private-vault.js").readIdentityMetadata;
44
- listIdentities: typeof import("./private-vault.js").listIdentities;
45
34
  listVaults: typeof import("./bootstrap.js").listVaults;
46
35
  createVault: typeof import("./bootstrap.js").createVault;
47
36
  recoverVault: typeof import("./bootstrap.js").recoverVault;
48
- deriveVaultWorkingKey: typeof import("./bootstrap.js").deriveVaultWorkingKey;
37
+ deriveVaultWorkingKeyFromPassword: typeof import("../protocol/crypto.js").deriveVaultWorkingKeyFromPassword;
49
38
  createVaultClient: typeof import("../clients/owner/index.js").createVaultClient;
50
39
  createAgentClient: typeof import("../clients/agent/index.js").createAgentClient;
51
40
  createVaultCore: typeof import("../vault-core/index.js").createVaultCore;
52
- createDefaultVaultCoreDependencies: typeof import("../vault-core/index.js").createDefaultVaultCoreDependencies;
53
- createPersistentVaultCoreDependencies: typeof import("../vault-core/index.js").createPersistentVaultCoreDependencies;
54
- initializeVaultCustody: typeof import("../vault-core/index.js").initializeVaultCustody;
55
- recoverVaultWorkingKey: typeof import("../vault-core/index.js").recoverVaultWorkingKey;
41
+ createVaultCoreDependencies: typeof import("../vault-core/index.js").createVaultCoreDependencies;
56
42
  createVaultService: typeof import("../vault-ingress/index.js").createVaultService;
57
43
  wrapVaultCoreAsVaultService: typeof import("../vault-ingress/index.js").wrapVaultCoreAsVaultService;
58
44
  createOwnerHttpFlowBoundary: typeof import("../vault-ingress/index.js").createOwnerHttpFlowBoundary;
@@ -3,21 +3,17 @@
3
3
  * Public surface: typed high-level runtime plus supported low-level building blocks.
4
4
  */
5
5
  export { IdentityError, IdentityErrorCode } from "../errors.js";
6
- export { derivePublicKey, LocalSigner } from "../protocol/crypto.js";
6
+ export { derivePublicKey, LocalSigner, deriveVaultWorkingKeyFromPassword } from "../protocol/crypto.js";
7
7
  export { deriveIdentityId } from "../protocol/identity.js";
8
8
  export { FsStorageProvider } from "../storage/fs.js";
9
9
  export { MemoryStorageProvider } from "../storage/memory.js";
10
- export { createIdentity, deriveChildIdentity, restoreIdentity, } from "./identity.js";
11
- export { createChildIdentity, } from "./child-identity.js";
12
- export { readVaultProfile, writeVaultProfile, readVaultPublicMetadata, } from "./vault-metadata.js";
10
+ export { createIdentity, restoreIdentity, } from "./identity.js";
11
+ export { readVaultProfile, writeVaultProfile, } from "./vault-metadata.js";
13
12
  export { createWorkspaceStorage, getDefaultWorkspaceDir, } from "./workspace-storage.js";
14
- export { ensureIdentityPrivateVault, readIdentityPrivateVaultProfile, readIdentityPrivateVaultChildrenState, readIdentityMetadata, listIdentities, identityPrivateVaultPrefix, identityPrivateVaultProfileKey, identityPrivateVaultPublicSealedKey, identityPrivateVaultChildrenKey, } from "./private-vault.js";
15
- export { createVault, recoverVault, deriveVaultWorkingKey, listVaults, updateVaultMetadata, } from "./bootstrap.js";
16
- export { createVaultCore, DefaultVaultCore, VaultCoreError, createDefaultVaultCoreDependencies, DefaultPolicyEngine, createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, PersistentVaultAgentIdentityRegistry, PersistentVaultAuditLog, PersistentVaultOwnerIdentityRegistry, PersistentVaultCapabilityRegistry, PersistentVaultCapabilityRevocationRegistry, PersistentVaultCustomHttpFlowRegistry, PersistentVaultRateLimitStore, PersistentVaultReplayGuard, PersistentVaultSecretCustody, PersistentVaultSecretRepository, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemoryOwnerIdentityRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, SignatureOwnerProofVerifier, SignatureAgentProofVerifier, SystemClock, } from "../vault-core/index.js";
13
+ export { createVault, recoverVault, listVaults, updateVaultMetadata, } from "./bootstrap.js";
14
+ export { createVaultCore, VaultCore, VaultCoreError, createVaultCoreDependencies, DefaultPolicyEngine, createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, PersistentVaultAgentIdentityRegistry, PersistentVaultAuditLog, PersistentVaultCapabilityRegistry, PersistentVaultCapabilityRevocationRegistry, PersistentVaultCustomHttpFlowRegistry, PersistentVaultRateLimitStore, PersistentVaultReplayGuard, PersistentVaultSecretCustody, PersistentVaultSecretRepository, } from "../vault-core/index.js";
17
15
  export { createVaultClient, } from "../clients/owner/index.js";
18
16
  export { createAgentClient, } from "../clients/agent/index.js";
19
- export { createVaultService, wrapVaultCoreAsVaultService, createOwnerHttpFlowBoundary, createStandardAcquireBoundary, createStandardDispatchBoundary, toOwnerHttpFlowBoundary, } from "../vault-ingress/index.js";
17
+ export { createVaultService, wrapVaultCoreAsVaultService, createOwnerHttpFlowBoundary, createStandardAcquireBoundary, createStandardDispatchBoundary, AgentDispatchHttpTransport, handleVaultHttpDispatch, } from "../vault-ingress/index.js";
20
18
  export { LocalVaultTransport } from "../vault-ingress/defaults.js";
21
- export { AgentDispatchHttpTransport } from "../vault-ingress/remote-transport.js";
22
- export { handleVaultHttpDispatch } from "../vault-ingress/server-utils.js";
23
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAe,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,GAMhB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,mBAAmB,GAEpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,GAExB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,qCAAqC,EACrC,oBAAoB,EACpB,cAAc,EAEd,0BAA0B,EAC1B,8BAA8B,EAC9B,mCAAmC,EACnC,+BAA+B,GAIhC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,mBAAmB,GAOpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,kCAAkC,EAGlC,mBAAmB,EACnB,qCAAqC,EACrC,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAIlC,oCAAoC,EACpC,uBAAuB,EACvB,oCAAoC,EACpC,iCAAiC,EACjC,2CAA2C,EAC3C,qCAAqC,EACrC,6BAA6B,EAC7B,0BAA0B,EAC1B,4BAA4B,EAC5B,+BAA+B,EAC/B,oBAAoB,EACpB,6BAA6B,EAC7B,0BAA0B,EAC1B,oCAAoC,EACpC,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,6BAA6B,EAC7B,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAE3B,2BAA2B,EAC3B,WAAW,GAwDZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,iBAAiB,GAkBlB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,iBAAiB,GAQlB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,GAWxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAe,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,cAAc,EACd,eAAe,GAIhB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,WAAW,EACX,YAAY,EACZ,UAAU,EACV,mBAAmB,GAOpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,eAAe,EACf,SAAS,EACT,cAAc,EACd,2BAA2B,EAG3B,mBAAmB,EACnB,qCAAqC,EACrC,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAIlC,oCAAoC,EACpC,uBAAuB,EACvB,iCAAiC,EACjC,2CAA2C,EAC3C,qCAAqC,EACrC,6BAA6B,EAC7B,0BAA0B,EAC1B,4BAA4B,EAC5B,+BAA+B,GAChC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,iBAAiB,GAkBlB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,iBAAiB,GAQlB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,EAC9B,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC"}
@@ -1,18 +1,6 @@
1
1
  import type { IStorageProvider } from "../storage/provider.js";
2
- export interface VaultProfile {
3
- sealedPublic: Record<string, any> & {
4
- nickname?: string;
5
- };
6
- sealedPrivate: Record<string, any>;
2
+ export interface VaultProfile extends Record<string, any> {
3
+ nickname?: string;
7
4
  }
8
- /**
9
- * Derives a key that is publicly available to anyone who knows the vaultId.
10
- * Used to encrypt 'public' metadata to prevent JSON tampering on disk.
11
- */
12
- export declare function deriveVaultPublicWorkingKey(vaultId: string): string;
13
- /**
14
- * Reads the 'public' metadata of a vault. Requires vaultId but no private key.
15
- */
16
- export declare function readVaultPublicMetadata(storage: IStorageProvider, vaultId: string): Promise<Record<string, any>>;
17
- export declare function writeVaultProfile(storage: IStorageProvider, profile: VaultProfile, vaultWorkingKey: string, vaultId: string): Promise<void>;
18
- export declare function readVaultProfile(storage: IStorageProvider, vaultWorkingKey: string, vaultId: string): Promise<VaultProfile | null>;
5
+ export declare function writeVaultProfile(storage: IStorageProvider, profile: VaultProfile, vaultWorkingKey: string, _vaultId: string): Promise<void>;
6
+ export declare function readVaultProfile(storage: IStorageProvider, vaultWorkingKey: string, _vaultId: string): Promise<VaultProfile | null>;
@@ -1,46 +1,11 @@
1
- import { createHash } from "node:crypto";
2
1
  import { SealedJsonRepository } from "../sealed/index.js";
3
- const VAULT_SEALED_PROFILE_KEY = "vault/sealed/profile.sealed";
4
- const VAULT_PUBLIC_SEALED_PROFILE_KEY = "vault/sealed/public.sealed";
5
- /**
6
- * Derives a key that is publicly available to anyone who knows the vaultId.
7
- * Used to encrypt 'public' metadata to prevent JSON tampering on disk.
8
- */
9
- export function deriveVaultPublicWorkingKey(vaultId) {
10
- return createHash("sha256")
11
- .update("cbio:vault-public-metadata:v1")
12
- .update("\n")
13
- .update(vaultId)
14
- .digest("base64url");
15
- }
16
- /**
17
- * Reads the 'public' metadata of a vault. Requires vaultId but no private key.
18
- */
19
- export async function readVaultPublicMetadata(storage, vaultId) {
20
- const publicWorkingKey = deriveVaultPublicWorkingKey(vaultId);
21
- const repo = new SealedJsonRepository(storage, VAULT_PUBLIC_SEALED_PROFILE_KEY, publicWorkingKey);
22
- const data = await repo.read(null).catch(() => null);
23
- return data || {};
24
- }
25
- export async function writeVaultProfile(storage, profile, vaultWorkingKey, vaultId) {
26
- // 1. Write Private Sealed Profile
27
- const privateRepo = new SealedJsonRepository(storage, VAULT_SEALED_PROFILE_KEY, vaultWorkingKey);
28
- await privateRepo.write(profile.sealedPrivate, "vault_profile_private");
29
- // 2. Write Public Sealed Profile (encrypted for format protection, but publicly-read via side-channel)
30
- const publicWorkingKey = deriveVaultPublicWorkingKey(vaultId);
31
- const publicRepo = new SealedJsonRepository(storage, VAULT_PUBLIC_SEALED_PROFILE_KEY, publicWorkingKey);
32
- await publicRepo.write(profile.sealedPublic, "vault_profile_public");
33
- }
34
- export async function readVaultProfile(storage, vaultWorkingKey, vaultId) {
35
- const privateRepo = new SealedJsonRepository(storage, VAULT_SEALED_PROFILE_KEY, vaultWorkingKey);
36
- const sealedPrivate = await privateRepo.read(null);
37
- if (!sealedPrivate) {
38
- return null;
39
- }
40
- const sealedPublic = await readVaultPublicMetadata(storage, vaultId);
41
- return {
42
- sealedPublic,
43
- sealedPrivate,
44
- };
2
+ const VAULT_SEALED_PROFILE_KEY = "vault/profile.sealed";
3
+ export async function writeVaultProfile(storage, profile, vaultWorkingKey, _vaultId) {
4
+ const repo = new SealedJsonRepository(storage, VAULT_SEALED_PROFILE_KEY, vaultWorkingKey);
5
+ await repo.write(profile, "vault_profile");
6
+ }
7
+ export async function readVaultProfile(storage, vaultWorkingKey, _vaultId) {
8
+ const repo = new SealedJsonRepository(storage, VAULT_SEALED_PROFILE_KEY, vaultWorkingKey);
9
+ return await repo.read(null);
45
10
  }
46
11
  //# sourceMappingURL=vault-metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vault-metadata.js","sourceRoot":"","sources":["../../src/runtime/vault-metadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAO1D,MAAM,wBAAwB,GAAG,6BAA6B,CAAC;AAC/D,MAAM,+BAA+B,GAAG,4BAA4B,CAAC;AAErE;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACzD,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,+BAA+B,CAAC;SACvC,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,WAAW,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAyB,EACzB,OAAe;IAEf,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,IAAI,oBAAoB,CAAsB,OAAO,EAAE,+BAA+B,EAAE,gBAAgB,CAAC,CAAC;IACvH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5D,OAAO,IAAI,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAyB,EACzB,OAAqB,EACrB,eAAuB,EACvB,OAAe;IAEf,kCAAkC;IAClC,MAAM,WAAW,GAAG,IAAI,oBAAoB,CAAsB,OAAO,EAAE,wBAAwB,EAAE,eAAe,CAAC,CAAC;IACtH,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;IAExE,uGAAuG;IACvG,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,oBAAoB,CAAsB,OAAO,EAAE,+BAA+B,EAAE,gBAAgB,CAAC,CAAC;IAC7H,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAyB,EACzB,eAAuB,EACvB,OAAe;IAEf,MAAM,WAAW,GAAG,IAAI,oBAAoB,CAAsB,OAAO,EAAE,wBAAwB,EAAE,eAAe,CAAC,CAAC;IACtH,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAW,CAAC,CAAC;IAC1D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAErE,OAAO;QACL,YAAY;QACZ,aAAa;KACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"vault-metadata.js","sourceRoot":"","sources":["../../src/runtime/vault-metadata.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAM1D,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAyB,EACzB,OAAqB,EACrB,eAAuB,EACvB,QAAgB;IAEhB,MAAM,IAAI,GAAG,IAAI,oBAAoB,CAAe,OAAO,EAAE,wBAAwB,EAAE,eAAe,CAAC,CAAC;IACxG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAyB,EACzB,eAAuB,EACvB,QAAgB;IAEhB,MAAM,IAAI,GAAG,IAAI,oBAAoB,CAAe,OAAO,EAAE,wBAAwB,EAAE,eAAe,CAAC,CAAC;IACxG,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAW,CAAC,CAAC;AACtC,CAAC"}
@@ -2,6 +2,9 @@
2
2
  * Default file-system storage provider. Uses node:fs with atomic write.
3
3
  */
4
4
  import type { IStorageProvider } from './provider.js';
5
+ /**
6
+ * @internal
7
+ */
5
8
  export declare class FsStorageProvider implements IStorageProvider {
6
9
  private baseDir?;
7
10
  constructor(baseDir?: string | undefined);
@@ -6,6 +6,9 @@ import * as path from 'node:path';
6
6
  function sleep(ms) {
7
7
  return new Promise((resolve) => setTimeout(resolve, ms));
8
8
  }
9
+ /**
10
+ * @internal
11
+ */
9
12
  export class FsStorageProvider {
10
13
  baseDir;
11
14
  constructor(baseDir) {
@@ -1 +1 @@
1
- {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/storage/fs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/storage/fs.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,9 @@
2
2
  * In-memory storage provider. For testing and environments without persistent storage.
3
3
  */
4
4
  import type { IStorageProvider } from './provider.js';
5
+ /**
6
+ * @internal
7
+ */
5
8
  export declare class MemoryStorageProvider implements IStorageProvider {
6
9
  #private;
7
10
  read(key: string): Promise<Buffer | null>;
@@ -1,6 +1,9 @@
1
1
  /**
2
2
  * In-memory storage provider. For testing and environments without persistent storage.
3
3
  */
4
+ /**
5
+ * @internal
6
+ */
4
7
  export class MemoryStorageProvider {
5
8
  #store = new Map();
6
9
  #locks = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/storage/memory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,OAAO,qBAAqB;IAC9B,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnC,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE1C,KAAK,CAAC,IAAI,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,IAAY;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACpB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAI,GAAW,EAAE,IAAsB;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3D,IAAI,OAAoB,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAC1C,OAAO,GAAG,OAAO,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,QAAQ,CAAC;QACf,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,EAAE,CAAC;QACxB,CAAC;gBAAS,CAAC;YACP,OAAO,EAAE,CAAC;YACV,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,EAAE,CAAC;gBACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc;QACrB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC;QAClE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnC,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBACrD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,OAAO;oBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;CACJ"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/storage/memory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAC9B,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnC,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE1C,KAAK,CAAC,IAAI,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,IAAY;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACpB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAI,GAAW,EAAE,IAAsB;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3D,IAAI,OAAoB,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAC1C,OAAO,GAAG,OAAO,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,QAAQ,CAAC;QACf,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,EAAE,CAAC;QACxB,CAAC;gBAAS,CAAC;YACP,OAAO,EAAE,CAAC;YACV,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,EAAE,CAAC;gBACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc;QACrB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC;QAClE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnC,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBACrD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,OAAO;oBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;CACJ"}