@the-ai-company/cbio-node-runtime 1.63.3 → 1.63.5

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 (234) hide show
  1. package/README.md +48 -209
  2. package/dist/clients/agent/client.d.ts +18 -40
  3. package/dist/clients/agent/client.js +22 -109
  4. package/dist/clients/agent/client.js.map +1 -1
  5. package/dist/clients/agent/contracts.d.ts +1 -8
  6. package/dist/clients/agent/index.d.ts +1 -1
  7. package/dist/clients/owner/client.d.ts +2 -102
  8. package/dist/clients/owner/client.js +119 -240
  9. package/dist/clients/owner/client.js.map +1 -1
  10. package/dist/clients/owner/contracts.d.ts +37 -70
  11. package/dist/clients/owner/index.d.ts +2 -4
  12. package/dist/clients/owner/index.js +1 -2
  13. package/dist/clients/owner/index.js.map +1 -1
  14. package/dist/internal/id-factory.d.ts +0 -2
  15. package/dist/internal/id-factory.js +0 -6
  16. package/dist/internal/id-factory.js.map +1 -1
  17. package/dist/protocol/identity.d.ts +1 -1
  18. package/dist/protocol/identity.js +3 -3
  19. package/dist/protocol/identity.js.map +1 -1
  20. package/dist/public-types.d.ts +5 -14
  21. package/dist/public-types.js +1 -8
  22. package/dist/public-types.js.map +1 -1
  23. package/dist/runtime/bootstrap.js.map +1 -1
  24. package/dist/runtime/identity.d.ts +2 -2
  25. package/dist/runtime/identity.js +3 -5
  26. package/dist/runtime/identity.js.map +1 -1
  27. package/dist/runtime/index.d.ts +10 -12
  28. package/dist/runtime/index.js +7 -8
  29. package/dist/runtime/index.js.map +1 -1
  30. package/dist/runtime/owner-session.d.ts +7 -6
  31. package/dist/runtime/owner-session.js +5 -6
  32. package/dist/runtime/owner-session.js.map +1 -1
  33. package/dist/storage/fs.d.ts +3 -2
  34. package/dist/storage/fs.js +8 -5
  35. package/dist/storage/fs.js.map +1 -1
  36. package/dist/storage/prefix.d.ts +1 -0
  37. package/dist/storage/prefix.js +7 -0
  38. package/dist/storage/prefix.js.map +1 -1
  39. package/dist/storage/provider.d.ts +2 -0
  40. package/dist/vault-core/contracts.d.ts +112 -193
  41. package/dist/vault-core/contracts.js +5 -8
  42. package/dist/vault-core/contracts.js.map +1 -1
  43. package/dist/vault-core/core.d.ts +127 -62
  44. package/dist/vault-core/core.js +500 -1182
  45. package/dist/vault-core/core.js.map +1 -1
  46. package/dist/vault-core/defaults.d.ts +26 -42
  47. package/dist/vault-core/defaults.js +73 -229
  48. package/dist/vault-core/defaults.js.map +1 -1
  49. package/dist/vault-core/errors.d.ts +3 -2
  50. package/dist/vault-core/errors.js.map +1 -1
  51. package/dist/vault-core/index.d.ts +5 -5
  52. package/dist/vault-core/index.js +2 -2
  53. package/dist/vault-core/index.js.map +1 -1
  54. package/dist/vault-core/persistence.d.ts +78 -118
  55. package/dist/vault-core/persistence.js +329 -421
  56. package/dist/vault-core/persistence.js.map +1 -1
  57. package/dist/vault-core/ports.d.ts +19 -24
  58. package/dist/vault-core/read-policy.d.ts +3 -2
  59. package/dist/vault-core/read-policy.js.map +1 -1
  60. package/dist/vault-core/tool-metadata.js +2 -2
  61. package/dist/vault-core/tool-metadata.js.map +1 -1
  62. package/dist/vault-ingress/defaults.d.ts +4 -2
  63. package/dist/vault-ingress/defaults.js +14 -8
  64. package/dist/vault-ingress/defaults.js.map +1 -1
  65. package/dist/vault-ingress/index.d.ts +43 -117
  66. package/dist/vault-ingress/index.js +98 -453
  67. package/dist/vault-ingress/index.js.map +1 -1
  68. package/dist/vault-ingress/remote-transport.d.ts +5 -3
  69. package/dist/vault-ingress/remote-transport.js +8 -28
  70. package/dist/vault-ingress/remote-transport.js.map +1 -1
  71. package/docs/ARCHITECTURE.md +39 -22
  72. package/docs/CUSTODY_MODEL.md +1 -1
  73. package/docs/IDENTITY_MODEL.md +5 -5
  74. package/docs/MIGRATION-1.51.md +19 -19
  75. package/docs/MIGRATION-1.65.md +61 -0
  76. package/docs/PROCESS_ISOLATION.md +2 -2
  77. package/docs/REFERENCE.md +42 -224
  78. package/docs/api/README.md +50 -29
  79. package/docs/api/classes/IdentityError.md +1 -1
  80. package/docs/api/classes/OwnerClientError.md +1 -1
  81. package/docs/api/classes/PersistentVaultAgentIdentityRegistry.md +89 -0
  82. package/docs/api/classes/PersistentVaultAgentSecretGrantRegistry.md +125 -0
  83. package/docs/api/classes/PersistentVaultAuditLog.md +65 -0
  84. package/docs/api/classes/PersistentVaultCustomHttpFlowRegistry.md +69 -0
  85. package/docs/api/classes/PersistentVaultSecretCustody.md +93 -0
  86. package/docs/api/classes/PersistentVaultSecretDestinationGrantRegistry.md +125 -0
  87. package/docs/api/classes/PersistentVaultSecretRepository.md +127 -0
  88. package/docs/api/classes/VaultCore.md +299 -214
  89. package/docs/api/classes/VaultCoreError.md +3 -3
  90. package/docs/api/enumerations/AuditAction.md +143 -0
  91. package/docs/api/enumerations/AuditOutcome.md +35 -0
  92. package/docs/api/enumerations/DispatchStatus.md +35 -0
  93. package/docs/api/enumerations/IdentityErrorCode.md +1 -1
  94. package/docs/api/enumerations/OwnerClientErrorCode.md +1 -1
  95. package/docs/api/functions/createAgentClient.md +1 -15
  96. package/docs/api/functions/createIdentity.md +2 -2
  97. package/docs/api/functions/createOwnerClient.md +17 -0
  98. package/docs/api/functions/createOwnerSession.md +1 -1
  99. package/docs/api/functions/createPersistentVaultCoreDependencies.md +4 -4
  100. package/docs/api/functions/createVault.md +1 -1
  101. package/docs/api/functions/createVaultCore.md +1 -1
  102. package/docs/api/functions/createVaultCoreDependencies.md +1 -1
  103. package/docs/api/functions/createVaultService.md +5 -9
  104. package/docs/api/functions/createWorkspaceStorage.md +1 -1
  105. package/docs/api/functions/deriveRootAgentId.md +17 -0
  106. package/docs/api/functions/deriveVaultWorkingKeyFromPassword.md +1 -1
  107. package/docs/api/functions/getDefaultWorkspaceDir.md +1 -1
  108. package/docs/api/functions/handleVaultAgentControlHttp.md +2 -2
  109. package/docs/api/functions/handleVaultHttpDispatch.md +2 -2
  110. package/docs/api/functions/initializeVaultCustody.md +7 -3
  111. package/docs/api/functions/listVaults.md +1 -1
  112. package/docs/api/functions/readVaultProfile.md +1 -1
  113. package/docs/api/functions/recoverVault.md +1 -1
  114. package/docs/api/functions/recoverVaultWorkingKey.md +4 -8
  115. package/docs/api/functions/restoreIdentity.md +1 -1
  116. package/docs/api/functions/updateVaultMetadata.md +1 -1
  117. package/docs/api/functions/writeVaultProfile.md +1 -1
  118. package/docs/api/interfaces/AgentClient.md +20 -59
  119. package/docs/api/interfaces/AgentDispatchIntent.md +1 -1
  120. package/docs/api/interfaces/AgentDispatchTransport.md +12 -44
  121. package/docs/api/interfaces/AgentIdentity.md +3 -3
  122. package/docs/api/interfaces/AgentIdentityRecord.md +47 -0
  123. package/docs/api/interfaces/AgentRequestResult.md +35 -0
  124. package/docs/api/interfaces/AgentRuntimeManifest.md +55 -0
  125. package/docs/api/interfaces/AgentSecretGrant.md +41 -0
  126. package/docs/api/interfaces/AgentSigner.md +1 -1
  127. package/docs/api/interfaces/AgentVisibleRequestRecord.md +53 -0
  128. package/docs/api/interfaces/AgentVisibleSecretRecord.md +65 -0
  129. package/docs/api/interfaces/AuditEntry.md +83 -0
  130. package/docs/api/interfaces/CbioRuntime.md +13 -150
  131. package/docs/api/interfaces/CreateAgentClientOptions.md +4 -10
  132. package/docs/api/interfaces/CreateIdentityOptions.md +1 -1
  133. package/docs/api/interfaces/{CreateVaultClientOptions.md → CreateOwnerClientOptions.md} +9 -11
  134. package/docs/api/interfaces/CreateOwnerSessionOptions.md +3 -117
  135. package/docs/api/interfaces/CreatePersistentVaultCoreDependenciesOptions.md +3 -131
  136. package/docs/api/interfaces/CreateVaultOptions.md +1 -121
  137. package/docs/api/interfaces/CreatedVault.md +2 -2
  138. package/docs/api/interfaces/CustomHttpFlowDefinition.md +71 -0
  139. package/docs/api/interfaces/DefaultPolicyEngineOptions.md +1 -13
  140. package/docs/api/interfaces/DispatchAuthorization.md +43 -0
  141. package/docs/api/interfaces/DispatchInstruction.md +47 -0
  142. package/docs/api/interfaces/DispatchRequest.md +83 -0
  143. package/docs/api/interfaces/DispatchResult.md +53 -0
  144. package/docs/api/interfaces/IStorageProvider.md +13 -1
  145. package/docs/api/interfaces/InitializeVaultCustodyOptions.md +31 -11
  146. package/docs/api/interfaces/InitializedVaultCustody.md +1 -7
  147. package/docs/api/interfaces/OwnerAgentProvisionResult.md +2 -2
  148. package/docs/api/interfaces/OwnerClient.md +417 -0
  149. package/docs/api/interfaces/OwnerCreateSecretInput.md +1 -1
  150. package/docs/api/interfaces/OwnerRemoveSecretInput.md +1 -1
  151. package/docs/api/interfaces/OwnerRequestRecord.md +97 -0
  152. package/docs/api/interfaces/OwnerSensitiveActionConfirmation.md +1 -1
  153. package/docs/api/interfaces/OwnerSensitiveActionContext.md +1 -1
  154. package/docs/api/interfaces/OwnerSession.md +3 -3
  155. package/docs/api/interfaces/OwnerUpdateSecretInput.md +1 -1
  156. package/docs/api/interfaces/OwnerVisibleRequestRecord.md +73 -0
  157. package/docs/api/interfaces/RecoverVaultOptions.md +1 -121
  158. package/docs/api/interfaces/RecoveredVault.md +2 -2
  159. package/docs/api/interfaces/RequestRecord.md +107 -0
  160. package/docs/api/interfaces/RestoreIdentityOptions.md +1 -1
  161. package/docs/api/interfaces/SecretAlias.md +11 -0
  162. package/docs/api/interfaces/SecretDestinationGrant.md +41 -0
  163. package/docs/api/interfaces/SecretId.md +11 -0
  164. package/docs/api/interfaces/SecretRecord.md +89 -0
  165. package/docs/api/interfaces/Signer.md +1 -1
  166. package/docs/api/interfaces/VaultApproveDispatchInput.md +3 -9
  167. package/docs/api/interfaces/VaultAuditQueryInput.md +1 -1
  168. package/docs/api/interfaces/VaultCoreDependenciesOptions.md +1 -5
  169. package/docs/api/interfaces/VaultCreateAgentInput.md +1 -1
  170. package/docs/api/interfaces/VaultExportSecretInput.md +1 -1
  171. package/docs/api/interfaces/VaultGetRequestInput.md +17 -0
  172. package/docs/api/interfaces/VaultGrantAgentSecretInput.md +23 -0
  173. package/docs/api/interfaces/VaultGrantSecretDestinationInput.md +23 -0
  174. package/docs/api/interfaces/VaultId.md +11 -0
  175. package/docs/api/interfaces/VaultImportAgentInput.md +1 -1
  176. package/docs/api/interfaces/VaultIssueSessionTokenInput.md +5 -5
  177. package/docs/api/interfaces/VaultListAgentsInput.md +1 -1
  178. package/docs/api/interfaces/VaultListGrantsInput.md +23 -0
  179. package/docs/api/interfaces/VaultListRequestsInput.md +17 -0
  180. package/docs/api/interfaces/VaultListSecretsInput.md +1 -1
  181. package/docs/api/interfaces/VaultMetadata.md +1 -1
  182. package/docs/api/interfaces/VaultObject.md +2 -2
  183. package/docs/api/interfaces/VaultPrincipal.md +17 -0
  184. package/docs/api/interfaces/VaultProfile.md +1 -1
  185. package/docs/api/interfaces/VaultReadAgentPrivateKeyInput.md +7 -7
  186. package/docs/api/interfaces/VaultReadSecretPlaintextInput.md +1 -1
  187. package/docs/api/interfaces/VaultRegisterFlowInput.md +1 -1
  188. package/docs/api/interfaces/VaultRevokeAgentSecretInput.md +23 -0
  189. package/docs/api/interfaces/VaultRevokeSecretDestinationInput.md +23 -0
  190. package/docs/api/interfaces/VaultRevokeSessionTokenInput.md +1 -1
  191. package/docs/api/interfaces/VaultService.md +547 -0
  192. package/docs/api/interfaces/VaultUpdateAgentInput.md +7 -7
  193. package/docs/api/type-aliases/AgentId.md +7 -0
  194. package/docs/api/type-aliases/CbioRuntimeModule.md +1 -1
  195. package/docs/api/type-aliases/DispatchApprovalDecision.md +7 -0
  196. package/docs/api/type-aliases/GrantStatus.md +7 -0
  197. package/docs/api/type-aliases/SecretLifecycleStatus.md +7 -0
  198. package/docs/api/type-aliases/VaultPrincipalKind.md +7 -0
  199. package/docs/api/variables/DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY.md +2 -2
  200. package/docs/es/README.md +3 -3
  201. package/docs/fr/README.md +3 -3
  202. package/docs/ja/README.md +5 -5
  203. package/docs/ko/README.md +5 -5
  204. package/docs/pt/README.md +3 -3
  205. package/docs/zh/PROCESS_ISOLATION.md +2 -2
  206. package/docs/zh/README.md +23 -24
  207. package/examples/process-isolation.ts +26 -35
  208. package/package.json +1 -1
  209. package/docs/api/functions/createOwnerHttpFlowBoundary.md +0 -17
  210. package/docs/api/functions/createStandardAcquireBoundary.md +0 -31
  211. package/docs/api/functions/createStandardDispatchBoundary.md +0 -23
  212. package/docs/api/functions/createVaultClient.md +0 -32
  213. package/docs/api/functions/deriveIdentityId.md +0 -17
  214. package/docs/api/functions/wrapVaultCoreAsVaultService.md +0 -31
  215. package/docs/api/interfaces/AgentSubmitCapabilityRequestInput.md +0 -41
  216. package/docs/api/interfaces/VaultApproveCapabilityRequestInput.md +0 -23
  217. package/docs/api/interfaces/VaultClient.md +0 -473
  218. package/docs/api/interfaces/VaultGrantCapabilityInput.md +0 -79
  219. package/docs/api/interfaces/VaultGrantCapabilityRequest.md +0 -23
  220. package/docs/api/interfaces/VaultIdentity.md +0 -11
  221. package/docs/api/interfaces/VaultListCapabilitiesInput.md +0 -17
  222. package/docs/api/interfaces/VaultRevokeCapabilityInput.md +0 -23
  223. package/docs/api/interfaces/VaultSigner.md +0 -21
  224. package/docs/api/interfaces/VaultSubmitCapabilityRequestInput.md +0 -73
  225. package/docs/api/type-aliases/AgentCapabilityEnvelope.md +0 -7
  226. package/docs/api/type-aliases/AgentVisibleSecretRecord.md +0 -7
  227. package/docs/api/type-aliases/CreateOwnerClientOptions.md +0 -7
  228. package/docs/api/type-aliases/OwnerAgentView.md +0 -7
  229. package/docs/api/type-aliases/OwnerClient.md +0 -13
  230. package/docs/api/type-aliases/OwnerGrantCapabilityInput.md +0 -7
  231. package/docs/api/type-aliases/OwnerPendingApprovalView.md +0 -7
  232. package/docs/api/type-aliases/OwnerRequestDetailView.md +0 -7
  233. package/docs/api/type-aliases/OwnerRequestSummaryView.md +0 -7
  234. package/docs/api/type-aliases/OwnerSecretView.md +0 -7
@@ -1,67 +1,14 @@
1
1
  import * as crypto from "node:crypto";
2
- import { createAgentIdValue, createAuditEntryIdValue, createCapabilityIdValue, createFlowIdValue, createRequestIdValue, createSecretIdValue, createVersionIdValue, } from "../internal/id-factory.js";
2
+ import { createAuditEntryIdValue, createFlowIdValue, createRequestIdValue, createSecretIdValue, createVersionIdValue, } from "../internal/id-factory.js";
3
3
  import { verifySignature } from "../protocol/crypto.js";
4
4
  import { VaultCoreError } from "./errors.js";
5
5
  import { DispatchStatus } from "./contracts.js";
6
- function canonicalizeHttpTarget(targetUrl, method) {
7
- let parsed;
8
- try {
9
- parsed = new URL(targetUrl);
10
- }
11
- catch {
12
- throw new VaultCoreError("target normalization failed", "VAULT_DISPATCH_DENIED");
13
- }
14
- if (parsed.username || parsed.password) {
15
- throw new VaultCoreError("target credentials not allowed", "VAULT_DISPATCH_DENIED");
16
- }
17
- if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
18
- throw new VaultCoreError("target scheme denied", "VAULT_DISPATCH_DENIED");
19
- }
20
- if (!parsed.hostname) {
21
- throw new VaultCoreError("target hostname missing", "VAULT_DISPATCH_DENIED");
22
- }
23
- parsed.protocol = parsed.protocol.toLowerCase();
24
- parsed.hostname = parsed.hostname.toLowerCase();
25
- parsed.hash = "";
26
- parsed.search = "";
27
- if ((parsed.protocol === "https:" && parsed.port === "443") || (parsed.protocol === "http:" && parsed.port === "80")) {
28
- parsed.port = "";
29
- }
30
- const path = parsed.pathname || "/";
31
- parsed.pathname = path;
32
- return {
33
- origin: parsed.origin,
34
- url: parsed.toString(),
35
- method: method.toUpperCase(),
36
- path,
37
- };
38
- }
39
- function matchesScope(scope, targetUrl) {
40
- if (scope.endsWith("*")) {
41
- return canonicalRequestPrefix(scope).startsWith("__INVALID__")
42
- ? false
43
- : canonicalizeHttpTarget(targetUrl, "GET").url.startsWith(canonicalRequestPrefix(scope));
44
- }
45
- return canonicalizeAllowedTarget(scope) === canonicalizeHttpTarget(targetUrl, "GET").url;
46
- }
47
- function canonicalizeAllowedTarget(targetUrl) {
48
- return canonicalizeHttpTarget(targetUrl, "GET").url;
49
- }
50
- function canonicalRequestPrefix(scope) {
51
- try {
52
- return canonicalizeAllowedTarget(scope.slice(0, -1));
53
- }
54
- catch {
55
- return "__INVALID__";
56
- }
57
- }
58
6
  function createDispatchBinding(request) {
59
7
  return JSON.stringify({
60
8
  requestId: request.requestId,
61
9
  requestedAt: request.requestedAt,
62
- agentId: request.agent.id,
63
- capabilityId: request.capability?.capabilityId ?? null,
64
- secretId: request.secretId ?? null,
10
+ rootAgentId: request.agent.id,
11
+ secretAlias: request.secretAlias ?? null,
65
12
  targetUrl: request.targetUrl,
66
13
  method: request.method,
67
14
  body: request.body ?? null,
@@ -88,12 +35,6 @@ export class RandomIdGenerator {
88
35
  newAuditEntryId() {
89
36
  return createAuditEntryIdValue();
90
37
  }
91
- newAgentId() {
92
- return createAgentIdValue();
93
- }
94
- newCapabilityId() {
95
- return createCapabilityIdValue();
96
- }
97
38
  newFlowId() {
98
39
  return createFlowIdValue();
99
40
  }
@@ -177,10 +118,10 @@ export class InMemorySecretCustody {
177
118
  export class InMemoryAgentIdentityRegistry {
178
119
  _identities = new Map();
179
120
  async register(identity) {
180
- this._identities.set(`${identity.vaultId.value}:${identity.agentId}`, identity);
121
+ this._identities.set(`${identity.vaultId.value}:${identity.rootAgentId}`, identity);
181
122
  }
182
- async get(vaultId, agentId) {
183
- return this._identities.get(`${vaultId.value}:${agentId}`) ?? null;
123
+ async get(vaultId, rootAgentId) {
124
+ return this._identities.get(`${vaultId.value}:${rootAgentId}`) ?? null;
184
125
  }
185
126
  async list(vaultId) {
186
127
  const prefix = `${vaultId.value}:`;
@@ -192,64 +133,67 @@ export class InMemoryAgentIdentityRegistry {
192
133
  /**
193
134
  * @internal
194
135
  */
195
- export class InMemoryCapabilityRevocationRegistry {
196
- _versions = new Map();
197
- revoke(vaultId, agentId, capabilityId) {
198
- const key = `${vaultId.value}:${agentId}:${capabilityId}`;
199
- const next = (this._versions.get(key) ?? 0) + 1;
200
- this._versions.set(key, next);
201
- return next;
136
+ export class InMemoryAgentSecretGrantRegistry {
137
+ _grants = new Map();
138
+ _key(vaultId, rootAgentId, secretAlias) {
139
+ return `${vaultId.value}:${rootAgentId}:${secretAlias}`;
140
+ }
141
+ async upsert(grant) {
142
+ this._grants.set(this._key(grant.vaultId, grant.rootAgentId, grant.secretAlias), grant);
143
+ }
144
+ async get(vaultId, rootAgentId, secretAlias) {
145
+ return this._grants.get(this._key(vaultId, rootAgentId, secretAlias)) ?? null;
146
+ }
147
+ async list(vaultId, rootAgentId) {
148
+ return Array.from(this._grants.values()).filter((grant) => {
149
+ if (grant.vaultId.value !== vaultId.value)
150
+ return false;
151
+ if (rootAgentId && grant.rootAgentId !== rootAgentId)
152
+ return false;
153
+ return true;
154
+ });
202
155
  }
203
- get(vaultId, agentId, capabilityId) {
204
- return this._versions.get(`${vaultId.value}:${agentId}:${capabilityId}`) ?? 0;
156
+ async delete(vaultId, rootAgentId, secretAlias) {
157
+ this._grants.delete(this._key(vaultId, rootAgentId, secretAlias));
205
158
  }
206
159
  }
207
160
  /**
208
161
  * @internal
209
162
  */
210
- export class InMemoryCustomHttpFlowRegistry {
211
- _flows = new Map();
212
- async register(flow) {
213
- this._flows.set(`${flow.vaultId.value}:${flow.flowId}`, flow);
163
+ export class InMemorySecretDestinationGrantRegistry {
164
+ _grants = new Map();
165
+ _key(vaultId, secretAlias, domain) {
166
+ return `${vaultId.value}:${secretAlias}:${domain}`;
214
167
  }
215
- async get(vaultId, flowId) {
216
- return this._flows.get(`${vaultId.value}:${flowId}`) ?? null;
168
+ async upsert(grant) {
169
+ this._grants.set(this._key(grant.vaultId, grant.secretAlias, grant.domain), grant);
170
+ }
171
+ async get(vaultId, secretAlias, domain) {
172
+ return this._grants.get(this._key(vaultId, secretAlias, domain)) ?? null;
173
+ }
174
+ async list(vaultId, secretAlias) {
175
+ return Array.from(this._grants.values()).filter((grant) => {
176
+ if (grant.vaultId.value !== vaultId.value)
177
+ return false;
178
+ if (secretAlias && grant.secretAlias !== secretAlias)
179
+ return false;
180
+ return true;
181
+ });
182
+ }
183
+ async delete(vaultId, secretAlias, domain) {
184
+ this._grants.delete(this._key(vaultId, secretAlias, domain));
217
185
  }
218
186
  }
219
187
  /**
220
188
  * @internal
221
189
  */
222
- export class InMemoryCapabilityRegistry {
223
- _capabilities = new Map();
224
- async upsert(capability) {
225
- for (const [key, candidate] of this._capabilities.entries()) {
226
- const sameRequest = capability.requestId && candidate.requestId === capability.requestId;
227
- const sameCapability = capability.capabilityId && candidate.capabilityId === capability.capabilityId;
228
- if (candidate.vaultId.value === capability.vaultId.value && candidate.agentId === capability.agentId && (sameRequest || sameCapability)) {
229
- this._capabilities.delete(key);
230
- }
231
- }
232
- this._capabilities.set(`${capability.vaultId.value}:${capability.agentId}:${capability.capabilityId ?? capability.requestId ?? "state"}`, capability);
233
- }
234
- async getByCapabilityId(vaultId, agentId, capabilityId) {
235
- return this._capabilities.get(`${vaultId.value}:${agentId}:${capabilityId}`) ?? null;
236
- }
237
- async getByRequestId(vaultId, requestId) {
238
- return Array.from(this._capabilities.values()).find((record) => record.vaultId.value === vaultId.value && record.requestId === requestId) ?? null;
239
- }
240
- async deleteByRequestId(vaultId, requestId) {
241
- for (const [key, record] of this._capabilities.entries()) {
242
- if (record.vaultId.value === vaultId.value && record.requestId === requestId) {
243
- this._capabilities.delete(key);
244
- }
245
- }
190
+ export class InMemoryCustomHttpFlowRegistry {
191
+ _flows = new Map();
192
+ async register(flow) {
193
+ this._flows.set(`${flow.vaultId.value}:${flow.flowId}`, flow);
246
194
  }
247
- async list(vaultId, agentId) {
248
- const prefix = `${vaultId.value}:`;
249
- const agentPrefix = agentId ? `${prefix}${agentId}:` : prefix;
250
- return Array.from(this._capabilities.entries())
251
- .filter(([key]) => key.startsWith(agentPrefix))
252
- .map(([, capability]) => capability);
195
+ async get(vaultId, flowId) {
196
+ return this._flows.get(`${vaultId.value}:${flowId}`) ?? null;
253
197
  }
254
198
  }
255
199
  export class InMemoryRequestRecordRegistry {
@@ -260,45 +204,23 @@ export class InMemoryRequestRecordRegistry {
260
204
  async get(vaultId, requestId) {
261
205
  return this._records.get(`${vaultId.value}:${requestId}`) ?? null;
262
206
  }
263
- async list(vaultId, agentId) {
207
+ async list(vaultId, rootAgentId) {
264
208
  return Array.from(this._records.values()).filter((record) => {
265
209
  if (record.vaultId.value !== vaultId.value)
266
210
  return false;
267
- if (agentId && record.agentId !== agentId)
211
+ if (rootAgentId && record.rootAgentId !== rootAgentId)
268
212
  return false;
269
213
  return true;
270
214
  });
271
215
  }
272
216
  }
273
- /**
274
- * @internal
275
- */
276
- export class InMemoryRateLimitStore {
277
- _buckets = new Map();
278
- async consume(key, maxRequests, windowMs, nowMs) {
279
- const current = this._buckets.get(key);
280
- if (!current || nowMs >= current.resetAt) {
281
- this._buckets.set(key, {
282
- count: 1,
283
- resetAt: nowMs + windowMs,
284
- });
285
- return;
286
- }
287
- if (current.count >= maxRequests) {
288
- throw new VaultCoreError("capability rate limit exceeded", "VAULT_DISPATCH_DENIED");
289
- }
290
- current.count += 1;
291
- }
292
- }
293
217
  /**
294
218
  * @internal
295
219
  */
296
220
  export class DefaultPolicyEngine {
297
221
  _options;
298
- _rateLimitStore;
299
222
  constructor(_options = {}) {
300
223
  this._options = _options;
301
- this._rateLimitStore = this._options.rateLimitStore ?? new InMemoryRateLimitStore();
302
224
  }
303
225
  validateRequestedAt(requestedAt, fieldName) {
304
226
  const parsed = Date.parse(requestedAt);
@@ -315,21 +237,6 @@ export class DefaultPolicyEngine {
315
237
  }
316
238
  return false;
317
239
  }
318
- async assertCapabilityRateLimit(request) {
319
- const rateLimit = request.capability?.rateLimit;
320
- if (!rateLimit) {
321
- return;
322
- }
323
- if (!Number.isInteger(rateLimit.maxRequests) || rateLimit.maxRequests <= 0) {
324
- throw new VaultCoreError("capability rate limit invalid", "VAULT_DISPATCH_DENIED");
325
- }
326
- if (!Number.isInteger(rateLimit.windowMs) || rateLimit.windowMs <= 0) {
327
- throw new VaultCoreError("capability rate limit invalid", "VAULT_DISPATCH_DENIED");
328
- }
329
- const now = this._options.now?.().getTime() ?? Date.now();
330
- const key = `${request.vaultId.value}:${request.agent.id}:${request.capability?.capabilityId}`;
331
- await this._rateLimitStore.consume(key, rateLimit.maxRequests, rateLimit.windowMs, now);
332
- }
333
240
  async authorizeWrite(command) {
334
241
  if (!command.alias.trim()) {
335
242
  throw new VaultCoreError("secret alias required", "VAULT_WRITE_DENIED");
@@ -347,94 +254,30 @@ export class DefaultPolicyEngine {
347
254
  throw new VaultCoreError("trusted issuer required", "VAULT_WRITE_DENIED");
348
255
  }
349
256
  }
350
- async authorizeDispatch(request, record) {
351
- const { capability } = request;
352
- if (!capability) {
353
- throw new VaultCoreError("capability required for authorization", "VAULT_DISPATCH_DENIED");
354
- }
355
- const now = this._options.now?.() ?? new Date();
356
- const canonicalRequestTarget = canonicalizeHttpTarget(request.targetUrl, request.method);
357
- if (capability.vaultId.value !== request.vaultId.value) {
358
- throw new VaultCoreError("capability vault mismatch", "VAULT_DISPATCH_DENIED");
359
- }
360
- if (record && record.vaultId.value !== request.vaultId.value) {
361
- throw new VaultCoreError("record vault mismatch", "VAULT_DISPATCH_DENIED");
362
- }
363
- if (capability.expiresAt) {
364
- const expiresAt = Date.parse(capability.expiresAt);
365
- if (Number.isNaN(expiresAt) || expiresAt < now.getTime()) {
366
- throw new VaultCoreError("capability expired", "VAULT_DISPATCH_DENIED");
367
- }
368
- }
369
- if (capability.agentId !== request.agent.id) {
370
- throw new VaultCoreError("capability agent mismatch", "VAULT_DISPATCH_DENIED");
371
- }
372
- if (capability.operation !== "dispatch_http" && capability.operation !== "custom_http") {
373
- throw new VaultCoreError("operation denied", "VAULT_DISPATCH_DENIED");
374
- }
375
- const issuedAt = Date.parse(capability.issuedAt);
376
- if (Number.isNaN(issuedAt) || issuedAt > now.getTime()) {
377
- throw new VaultCoreError("capability issuedAt invalid", "VAULT_DISPATCH_DENIED");
378
- }
379
- if (record) {
380
- if (capability.write.secretIds?.length) {
381
- if (!capability.write.secretIds.includes(record.secretId.value)) {
382
- throw new VaultCoreError("secret id denied", "VAULT_DISPATCH_DENIED");
383
- }
384
- }
385
- }
386
- else {
387
- if (capability.operation !== "custom_http") {
388
- throw new VaultCoreError("secret id required", "VAULT_DISPATCH_DENIED");
389
- }
390
- if (capability.write.secretIds?.length) {
391
- throw new VaultCoreError("secret scope denied", "VAULT_DISPATCH_DENIED");
392
- }
393
- }
394
- if (!matchesScope(capability.write.scope, request.targetUrl)) {
395
- throw new VaultCoreError("scope denied", "VAULT_DISPATCH_DENIED");
396
- }
397
- if (!capability.write.methods.includes(canonicalRequestTarget.method)) {
398
- throw new VaultCoreError("method denied", "VAULT_DISPATCH_DENIED");
399
- }
400
- const currentRevocationVersion = this._options.capabilityRevocationRegistry
401
- ? await this._options.capabilityRevocationRegistry.get(capability.vaultId, capability.agentId, capability.capabilityId)
402
- : 0;
403
- if ((capability.revocationVersion ?? 0) < currentRevocationVersion) {
404
- throw new VaultCoreError("capability revoked", "VAULT_DISPATCH_DENIED");
405
- }
406
- await this.assertCapabilityRateLimit(request);
407
- }
408
- async revokeCapability(vaultId, agentId, capabilityId) {
409
- if (!this._options.capabilityRevocationRegistry) {
410
- throw new VaultCoreError("revocation not supported", "VAULT_DISPATCH_DENIED");
411
- }
412
- return await this._options.capabilityRevocationRegistry.revoke(vaultId, agentId, capabilityId);
413
- }
414
257
  }
415
258
  export class InMemorySessionTokenRegistry {
416
259
  _tokens = new Map();
417
- async issue(agentId) {
260
+ async issue(rootAgentId) {
418
261
  const token = `sat_${crypto.randomBytes(16).toString("hex")}`;
419
262
  this._tokens.set(token, {
420
263
  token,
421
- agentId,
264
+ rootAgentId,
422
265
  issuedAt: new Date().toISOString(),
423
266
  });
424
267
  return token;
425
268
  }
426
- async verify(token, agentId) {
269
+ async verify(token, rootAgentId) {
427
270
  const stored = this._tokens.get(token);
428
271
  if (!stored)
429
272
  return false;
430
- return stored.agentId === agentId;
273
+ return stored.rootAgentId === rootAgentId;
431
274
  }
432
275
  async revoke(token) {
433
276
  this._tokens.delete(token);
434
277
  }
435
- async list(agentId) {
278
+ async list(rootAgentId) {
436
279
  const tokens = [...this._tokens.values()];
437
- return agentId ? tokens.filter((token) => token.agentId === agentId) : tokens;
280
+ return rootAgentId ? tokens.filter((token) => token.rootAgentId === rootAgentId) : tokens;
438
281
  }
439
282
  }
440
283
  /**
@@ -452,13 +295,13 @@ export class SignatureAgentProofVerifier {
452
295
  this._now = options.now ?? (() => new Date());
453
296
  }
454
297
  async verify(request) {
455
- const { vaultId, agent, capability, proof, requestId, requestedAt } = request;
456
- if (proof.agentId !== agent.id) {
457
- throw new VaultCoreError("agent identity mismatch", "VAULT_DISPATCH_DENIED");
298
+ const { vaultId, agent, proof, requestId, requestedAt } = request;
299
+ if (proof.rootAgentId !== agent.id) {
300
+ throw new VaultCoreError("agent.identity mismatch", "VAULT_DISPATCH_DENIED");
458
301
  }
459
302
  // Try token authentication first
460
303
  if (proof.token) {
461
- const valid = await this._sessionTokens.verify(proof.token, proof.agentId);
304
+ const valid = await this._sessionTokens.verify(proof.token, proof.rootAgentId);
462
305
  if (valid) {
463
306
  return; // Token is valid, skip signature check
464
307
  }
@@ -477,9 +320,9 @@ export class SignatureAgentProofVerifier {
477
320
  if (Number.isNaN(parsedRequestedAt) || Math.abs(now - parsedRequestedAt) > maxSkewMs) {
478
321
  throw new VaultCoreError("proof timestamp out of range", "VAULT_DISPATCH_DENIED");
479
322
  }
480
- const identity = await this._identities.get(vaultId, proof.agentId);
323
+ const identity = await this._identities.get(vaultId, proof.rootAgentId);
481
324
  if (!identity) {
482
- throw new VaultCoreError("agent identity not registered", "VAULT_DISPATCH_DENIED");
325
+ throw new VaultCoreError("agent.identity not registered", "VAULT_DISPATCH_DENIED");
483
326
  }
484
327
  const binding = createDispatchBinding(request);
485
328
  if (!verifySignature(identity.publicKey, proof.signature, binding)) {
@@ -555,7 +398,7 @@ export class HttpDispatchExecutor {
555
398
  }
556
399
  }
557
400
  export function createVaultCoreDependencies(options = {}) {
558
- const agentIdentities = new InMemoryAgentIdentityRegistry();
401
+ const agentRecords = new InMemoryAgentIdentityRegistry();
559
402
  const sessionTokens = options.sessionTokens ?? new InMemorySessionTokenRegistry();
560
403
  return {
561
404
  vaultId: { value: options.vaultId ?? `vault_${crypto.randomUUID()}` },
@@ -564,9 +407,10 @@ export function createVaultCoreDependencies(options = {}) {
564
407
  policy: new DefaultPolicyEngine(options.policy),
565
408
  audit: new InMemoryAuditLog(),
566
409
  executor: new HttpDispatchExecutor(options.fetchImpl, options.authHeaderName, options.authPrefix),
567
- agentIdentities,
568
- agentProofVerifier: new SignatureAgentProofVerifier(agentIdentities, sessionTokens, options.proofVerifier),
569
- capabilityStates: new InMemoryCapabilityRegistry(),
410
+ agentRecords,
411
+ agentProofVerifier: new SignatureAgentProofVerifier(agentRecords, sessionTokens, options.proofVerifier),
412
+ agentSecretGrants: new InMemoryAgentSecretGrantRegistry(),
413
+ secretDestinationGrants: new InMemorySecretDestinationGrantRegistry(),
570
414
  requests: new InMemoryRequestRecordRegistry(),
571
415
  customFlows: new InMemoryCustomHttpFlowRegistry(),
572
416
  replayGuard: options.replayGuard ?? new InMemoryReplayGuard(),
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/vault-core/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/vault-core/defaults.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
+ export type VaultCoreErrorCode = "VAULT_SECRET_NOT_FOUND" | "VAULT_WRITE_DENIED" | "VAULT_READ_DENIED" | "VAULT_IDENTITY_DENIED" | "VAULT_IDENTITY_NOT_FOUND" | "VAULT_DISPATCH_DENIED" | "VAULT_AUDIT_DENIED" | "VAULT_AUDIT_FAILED" | "VAULT_REQUEST_NOT_FOUND" | "VAULT_REQUEST_NOT_PENDING" | "VAULT_AGENT_NOT_FOUND" | "VAULT_CAPABILITY_NOT_FOUND" | "VAULT_ACCESS_DENIED" | "VAULT_INTERNAL_ERROR";
1
2
  export declare class VaultCoreError extends Error {
2
- readonly code: "VAULT_SECRET_NOT_FOUND" | "VAULT_WRITE_DENIED" | "VAULT_READ_DENIED" | "VAULT_IDENTITY_DENIED" | "VAULT_DISPATCH_DENIED" | "VAULT_AUDIT_DENIED" | "VAULT_AUDIT_FAILED" | "VAULT_REQUEST_NOT_FOUND" | "VAULT_AGENT_NOT_FOUND" | "VAULT_CAPABILITY_NOT_FOUND";
3
- constructor(message: string, code: "VAULT_SECRET_NOT_FOUND" | "VAULT_WRITE_DENIED" | "VAULT_READ_DENIED" | "VAULT_IDENTITY_DENIED" | "VAULT_DISPATCH_DENIED" | "VAULT_AUDIT_DENIED" | "VAULT_AUDIT_FAILED" | "VAULT_REQUEST_NOT_FOUND" | "VAULT_AGENT_NOT_FOUND" | "VAULT_CAPABILITY_NOT_FOUND");
3
+ readonly code: VaultCoreErrorCode;
4
+ constructor(message: string, code: VaultCoreErrorCode);
4
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/vault-core/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAe,SAAQ,KAAK;IAG5B;IAFX,YACE,OAAe,EACN,IAUuB;QAEhC,KAAK,CAAC,OAAO,CAAC,CAAC;QAZN,SAAI,GAAJ,IAAI,CAUmB;QAGhC,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/vault-core/errors.ts"],"names":[],"mappings":"AAgBA,MAAM,OAAO,cAAe,SAAQ,KAAK;IAG5B;IAFX,YACE,OAAe,EACN,IAAwB;QAEjC,KAAK,CAAC,OAAO,CAAC,CAAC;QAFN,SAAI,GAAJ,IAAI,CAAoB;QAGjC,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF"}
@@ -1,8 +1,8 @@
1
1
  export { createVaultCore, VaultCore } from "./core.js";
2
- export { VaultCoreError } from "./errors.js";
3
- export { createVaultCoreDependencies, type VaultCoreDependenciesOptions, type DefaultPolicyEngineOptions, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, type SignatureAgentProofVerifierOptions, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
4
- export { createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, FileAgentIdentityRegistry as PersistentVaultAgentIdentityRegistry, FileAuditLog as PersistentVaultAuditLog, FileCapabilityRegistry as PersistentVaultCapabilityRegistry, FileCapabilityRevocationRegistry as PersistentVaultCapabilityRevocationRegistry, FileCustomHttpFlowRegistry as PersistentVaultCustomHttpFlowRegistry, FileRateLimitStore as PersistentVaultRateLimitStore, FileReplayGuard as PersistentVaultReplayGuard, FileSecretCustody as PersistentVaultSecretCustody, FileSecretRepository as PersistentVaultSecretRepository, } from "./persistence.js";
2
+ export { VaultCoreError, type VaultCoreErrorCode } from "./errors.js";
3
+ export { createVaultCoreDependencies, type VaultCoreDependenciesOptions, type DefaultPolicyEngineOptions, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryAgentSecretGrantRegistry, InMemorySecretDestinationGrantRegistry, InMemoryCustomHttpFlowRegistry, InMemoryAuditLog, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, type SignatureAgentProofVerifierOptions, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
4
+ export { createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, FileAgentIdentityRegistry as PersistentVaultAgentIdentityRegistry, FileAuditLog as PersistentVaultAuditLog, FileAgentSecretGrantRegistry as PersistentVaultAgentSecretGrantRegistry, FileSecretDestinationGrantRegistry as PersistentVaultSecretDestinationGrantRegistry, FileCustomHttpFlowRegistry as PersistentVaultCustomHttpFlowRegistry, FileSecretCustody as PersistentVaultSecretCustody, FileSecretRepository as PersistentVaultSecretRepository, } from "./persistence.js";
5
5
  export type { InitializeVaultCustodyOptions, InitializedVaultCustody, CreatePersistentVaultCoreDependenciesOptions, } from "./persistence.js";
6
- export type { AgentCapability, AgentCapabilityState, AgentCapabilityStateSource, CapabilityStateRecord, AgentIdentityRecord, AgentSelfContext, AgentProof, AgentVisibleSecretRecord, AgentListCapabilitiesRequest, AgentListSecretsRequest, AgentGetRuntimeManifestRequest, AgentGetRuntimeManifestCommand, AgentRuntimeManifest, AgentListRequestsRequest, AgentGetRequestRequest, AgentVisibleRequestRecord, OwnerVisibleRequestRecord, OwnerRequestRecord, AgentRequestResult, AgentSubmitCapabilityRequestCommand, OwnerAuditRequest, OwnerDeleteSecretCommand, OwnerCreateSecretCommand, OwnerExportSecretRequest, OwnerRegisterCapabilityCommand, OwnerRevokeCapabilityCommand, OwnerListAgentsRequest, OwnerListCapabilitiesRequest, OwnerListRequestsRequest, OwnerGetRequestRequest, OwnerRegisterAgentIdentityCommand, OwnerUpdateAgentIdentityCommand, OwnerRegisterCustomHttpFlowCommand, OwnerIssueSessionTokenRequest, OwnerSessionToken, OwnerSecretExport, SubmitCapabilityRequestCommand, OwnerListCapabilityStatesRequest, OwnerApproveCapabilityReadCommand, OwnerAllowOnceCommand, OwnerAllowAlwaysCommand, OwnerDenyCommand, CapabilityWriteGrant, CapabilityWritePolicy, CapabilityReadPolicy, CapabilityRequestScope, CustomHttpFlowDefinition, AuditEntry, AuditQuery, DispatchAuthorization, DispatchInstruction, DispatchRequest, DispatchResult, RequestRecord, IssuerWriteSecretCommand, OwnerUpdateSecretCommand, SecretAlias, SecretId, SecretLifecycleStatus, SecretRecord, SecretSource, SecretSourceInput, SecretVersion, VaultPrincipal, VaultPrincipalKind, VaultWriteSecretCommand, VaultId, } from "./contracts.js";
6
+ export type { AgentId, AgentSecretGrant, SecretDestinationGrant, GrantStatus, AgentIdentityRecord, AgentSelfContext, AgentProof, AgentVisibleSecretRecord, AgentListGrantsRequest, AgentListSecretsRequest, AgentGetRuntimeManifestRequest, AgentGetRuntimeManifestCommand, AgentRuntimeManifest, AgentListRequestsRequest, AgentGetRequestRequest, AgentVisibleRequestRecord, OwnerVisibleRequestRecord, OwnerRequestRecord, AgentRequestResult, OwnerAuditRequest, OwnerDeleteSecretCommand, OwnerCreateSecretCommand, OwnerExportSecretRequest, OwnerListAgentsRequest, OwnerListRequestsRequest, OwnerGetRequestRequest, OwnerRegisterAgentIdentityCommand, OwnerUpdateAgentIdentityCommand, OwnerRegisterCustomHttpFlowCommand, OwnerIssueSessionTokenRequest, OwnerSessionToken, OwnerSecretExport, OwnerGrantAgentSecretCommand, OwnerGrantSecretDestinationCommand, OwnerRevokeAgentSecretCommand, OwnerRevokeSecretDestinationCommand, OwnerListGrantsRequest, OwnerApproveDispatchCommand, DispatchApprovalDecision, CustomHttpFlowDefinition, AuditEntry, AuditQuery, DispatchAuthorization, DispatchInstruction, DispatchRequest, DispatchResult, RequestRecord, IssuerWriteSecretCommand, OwnerUpdateSecretCommand, SecretAlias, SecretId, SecretLifecycleStatus, SecretRecord, SecretSource, SecretSourceInput, SecretVersion, VaultPrincipal, VaultPrincipalKind, VaultWriteSecretCommand, VaultId, } from "./contracts.js";
7
7
  export { DispatchStatus, AuditAction, AuditOutcome, } from "./contracts.js";
8
- export type { AgentIdentityRegistry, AgentProofVerifier, AuditLog, CapabilityStateRegistry, Clock, IdGenerator, PolicyEngine, RateLimitStore, ReplayGuard, CustomHttpFlowRegistry, SecretRepository, SecretCustody, TrustedExecutor, VaultCoreDependencies, CapabilityRevocationRegistry, } from "./ports.js";
8
+ export type { AgentIdentityRegistry, AgentProofVerifier, AuditLog, AgentSecretGrantRegistry, SecretDestinationGrantRegistry, Clock, IdGenerator, PolicyEngine, CustomHttpFlowRegistry, SecretRepository, SecretCustody, TrustedExecutor, VaultCoreDependencies, } from "./ports.js";
@@ -1,6 +1,6 @@
1
1
  export { createVaultCore, VaultCore } from "./core.js";
2
2
  export { VaultCoreError } from "./errors.js";
3
- export { createVaultCoreDependencies, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
4
- export { createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, FileAgentIdentityRegistry as PersistentVaultAgentIdentityRegistry, FileAuditLog as PersistentVaultAuditLog, FileCapabilityRegistry as PersistentVaultCapabilityRegistry, FileCapabilityRevocationRegistry as PersistentVaultCapabilityRevocationRegistry, FileCustomHttpFlowRegistry as PersistentVaultCustomHttpFlowRegistry, FileRateLimitStore as PersistentVaultRateLimitStore, FileReplayGuard as PersistentVaultReplayGuard, FileSecretCustody as PersistentVaultSecretCustody, FileSecretRepository as PersistentVaultSecretRepository, } from "./persistence.js";
3
+ export { createVaultCoreDependencies, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryAgentSecretGrantRegistry, InMemorySecretDestinationGrantRegistry, InMemoryCustomHttpFlowRegistry, InMemoryAuditLog, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
4
+ export { createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, FileAgentIdentityRegistry as PersistentVaultAgentIdentityRegistry, FileAuditLog as PersistentVaultAuditLog, FileAgentSecretGrantRegistry as PersistentVaultAgentSecretGrantRegistry, FileSecretDestinationGrantRegistry as PersistentVaultSecretDestinationGrantRegistry, FileCustomHttpFlowRegistry as PersistentVaultCustomHttpFlowRegistry, FileSecretCustody as PersistentVaultSecretCustody, FileSecretRepository as PersistentVaultSecretRepository, } from "./persistence.js";
5
5
  export { DispatchStatus, AuditAction, AuditOutcome, } from "./contracts.js";
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vault-core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,2BAA2B,EAG3B,mBAAmB,EACnB,oBAAoB,EACpB,6BAA6B,EAC7B,0BAA0B,EAC1B,oCAAoC,EACpC,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EAEjB,2BAA2B,EAC3B,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qCAAqC,EACrC,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,yBAAyB,IAAI,oCAAoC,EACjE,YAAY,IAAI,uBAAuB,EACvC,sBAAsB,IAAI,iCAAiC,EAC3D,gCAAgC,IAAI,2CAA2C,EAC/E,0BAA0B,IAAI,qCAAqC,EACnE,kBAAkB,IAAI,6BAA6B,EACnD,eAAe,IAAI,0BAA0B,EAC7C,iBAAiB,IAAI,4BAA4B,EACjD,oBAAoB,IAAI,+BAA+B,GACxD,MAAM,kBAAkB,CAAC;AA8E1B,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,GACb,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vault-core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,cAAc,EAA2B,MAAM,aAAa,CAAC;AACtE,OAAO,EACL,2BAA2B,EAG3B,mBAAmB,EACnB,oBAAoB,EACpB,6BAA6B,EAC7B,gCAAgC,EAChC,sCAAsC,EACtC,8BAA8B,EAC9B,gBAAgB,EAChB,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EAEjB,2BAA2B,EAC3B,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qCAAqC,EACrC,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,yBAAyB,IAAI,oCAAoC,EACjE,YAAY,IAAI,uBAAuB,EACvC,4BAA4B,IAAI,uCAAuC,EACvE,kCAAkC,IAAI,6CAA6C,EACnF,0BAA0B,IAAI,qCAAqC,EACnE,iBAAiB,IAAI,4BAA4B,EACjD,oBAAoB,IAAI,+BAA+B,GACxD,MAAM,kBAAkB,CAAC;AAuE1B,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,GACb,MAAM,gBAAgB,CAAC"}