mindoodb 0.0.60 → 0.0.62

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 (53) hide show
  1. package/README-server.md +13 -3
  2. package/README.md +1 -0
  3. package/dist/core/appendonlystores/network/IrohNetworkTransport.d.ts +10 -0
  4. package/dist/core/appendonlystores/network/IrohNetworkTransport.d.ts.map +1 -1
  5. package/dist/core/appendonlystores/network/IrohNetworkTransport.js +186 -25
  6. package/dist/core/appendonlystores/network/IrohNetworkTransport.js.map +1 -1
  7. package/dist/core/appendonlystores/network/IrohStreamIO.d.ts +30 -1
  8. package/dist/core/appendonlystores/network/IrohStreamIO.d.ts.map +1 -1
  9. package/dist/core/appendonlystores/network/IrohStreamIO.js +43 -11
  10. package/dist/core/appendonlystores/network/IrohStreamIO.js.map +1 -1
  11. package/dist/iroh/index.d.ts +5 -1
  12. package/dist/iroh/index.d.ts.map +1 -1
  13. package/dist/iroh/index.js +4 -0
  14. package/dist/iroh/index.js.map +1 -1
  15. package/dist/iroh/node.d.ts +26 -0
  16. package/dist/iroh/node.d.ts.map +1 -0
  17. package/dist/iroh/node.js +27 -0
  18. package/dist/iroh/node.js.map +1 -0
  19. package/dist/node/server/IrohServerEndpoint.d.ts +5 -0
  20. package/dist/node/server/IrohServerEndpoint.d.ts.map +1 -1
  21. package/dist/node/server/IrohServerEndpoint.js +14 -104
  22. package/dist/node/server/IrohServerEndpoint.js.map +1 -1
  23. package/dist/node/server/IrohServerRpc.d.ts +38 -0
  24. package/dist/node/server/IrohServerRpc.d.ts.map +1 -1
  25. package/dist/node/server/IrohServerRpc.js +266 -5
  26. package/dist/node/server/IrohServerRpc.js.map +1 -1
  27. package/dist/node/server/MindooDBServer.d.ts +3 -0
  28. package/dist/node/server/MindooDBServer.d.ts.map +1 -1
  29. package/dist/node/server/MindooDBServer.js +29 -0
  30. package/dist/node/server/MindooDBServer.js.map +1 -1
  31. package/dist/node/server/nativeIrohStreamIO.d.ts +13 -0
  32. package/dist/node/server/nativeIrohStreamIO.d.ts.map +1 -0
  33. package/dist/node/server/nativeIrohStreamIO.js +259 -0
  34. package/dist/node/server/nativeIrohStreamIO.js.map +1 -0
  35. package/dist/node/server/peer/ClusterManager.d.ts +6 -0
  36. package/dist/node/server/peer/ClusterManager.d.ts.map +1 -1
  37. package/dist/node/server/peer/ClusterManager.js +1 -0
  38. package/dist/node/server/peer/ClusterManager.js.map +1 -1
  39. package/dist/node/server/peer/IrohPeerLink.d.ts +24 -0
  40. package/dist/node/server/peer/IrohPeerLink.d.ts.map +1 -0
  41. package/dist/node/server/peer/IrohPeerLink.js +115 -0
  42. package/dist/node/server/peer/IrohPeerLink.js.map +1 -0
  43. package/dist/node/server/peer/PeerReplicator.d.ts +9 -0
  44. package/dist/node/server/peer/PeerReplicator.d.ts.map +1 -1
  45. package/dist/node/server/peer/PeerReplicator.js +103 -6
  46. package/dist/node/server/peer/PeerReplicator.js.map +1 -1
  47. package/dist/node/server/types.d.ts +5 -3
  48. package/dist/node/server/types.d.ts.map +1 -1
  49. package/dist/node/server/types.js.map +1 -1
  50. package/package.json +7 -1
  51. package/scripts/iroh-live-test-server.mjs +30 -0
  52. package/scripts/iroh-live-test-server.ts +61 -0
  53. package/scripts/iroh-multistream-spike.mjs +113 -0
@@ -1,9 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IROH_PEER_UNAUTH_MAX = exports.IROH_PEER_UNAUTH_WINDOW_MS = exports.IROH_CHANGE_FEED_HEARTBEAT = exports.IROH_CHANGE_FEED_HEARTBEAT_MS = void 0;
3
4
  exports.createMindooDBServerIrohHandler = createMindooDBServerIrohHandler;
5
+ exports.resetIrohPeerUnauthLimiter = resetIrohPeerUnauthLimiter;
4
6
  exports.isIrohValidationError = isIrohValidationError;
5
7
  const types_1 = require("../../core/appendonlystores/types");
8
+ const bloom_1 = require("../../core/appendonlystores/bloom");
6
9
  const validation_1 = require("./validation");
10
+ /** QUIC idle timeout is ~30s; keep the feed alive below that. */
11
+ exports.IROH_CHANGE_FEED_HEARTBEAT_MS = 20000;
12
+ exports.IROH_CHANGE_FEED_HEARTBEAT = { type: "heartbeat" };
13
+ /** Unauthenticated `peer.challenge` / `peer.authenticate` window. */
14
+ exports.IROH_PEER_UNAUTH_WINDOW_MS = 60000;
15
+ exports.IROH_PEER_UNAUTH_MAX = 30;
16
+ const MAX_BLOOM_BITS = 1 << 22;
7
17
  function requireTenant(ctx) {
8
18
  const tenantId = ctx?.tenantId?.trim().toLowerCase();
9
19
  if (!tenantId) {
@@ -62,18 +72,135 @@ function createMindooDBServerIrohHandler(host) {
62
72
  const signature = args[1];
63
73
  return auth.authenticate(challenge, signature);
64
74
  }
75
+ case "peer.challenge":
76
+ case "peer.authenticate":
77
+ case "peer.tenantBloom":
78
+ case "peer.listDatabases":
79
+ case "peer.subscribeEvents":
80
+ case "peer.sync":
81
+ return dispatchPeerMethod(host, method, args);
65
82
  default:
66
83
  return dispatchStoreMethod(host, method, args, ctx);
67
84
  }
68
85
  };
69
86
  }
87
+ const unauthPeerHits = new Map();
88
+ function allowUnauthPeerCall(key, limit) {
89
+ const now = Date.now();
90
+ const recent = (unauthPeerHits.get(key) ?? []).filter((at) => now - at < limit.windowMs);
91
+ if (recent.length >= limit.max) {
92
+ unauthPeerHits.set(key, recent);
93
+ return false;
94
+ }
95
+ recent.push(now);
96
+ unauthPeerHits.set(key, recent);
97
+ return true;
98
+ }
99
+ /** Test hook: drop recorded unauthenticated peer hits. */
100
+ function resetIrohPeerUnauthLimiter() {
101
+ unauthPeerHits.clear();
102
+ }
103
+ async function requirePeerPayload(host, token) {
104
+ if (!host.peerAuth) {
105
+ throw new Error("Iroh peer mesh is not configured");
106
+ }
107
+ const payload = await host.peerAuth.validateToken(token);
108
+ if (!payload) {
109
+ throw new Error("Invalid or expired peer token");
110
+ }
111
+ return payload;
112
+ }
113
+ async function dispatchPeerMethod(host, method, args) {
114
+ if (!host.peerAuth || !host.peerCluster) {
115
+ throw new Error("Iroh peer mesh is not configured");
116
+ }
117
+ if (method === "peer.challenge" || method === "peer.authenticate") {
118
+ const limit = host.getPeerUnauthRateLimit?.() ?? {
119
+ windowMs: exports.IROH_PEER_UNAUTH_WINDOW_MS,
120
+ max: exports.IROH_PEER_UNAUTH_MAX,
121
+ };
122
+ const key = method === "peer.challenge" ? `challenge:${String(args[0] ?? "")}` : `auth:${String(args[0] ?? "")}`;
123
+ if (!allowUnauthPeerCall(key, limit)) {
124
+ throw new Error("Too many peer requests, please try again later");
125
+ }
126
+ }
127
+ switch (method) {
128
+ case "peer.challenge": {
129
+ const publicsignkey = String(args[0] ?? "");
130
+ if (!publicsignkey) {
131
+ throw new Error("publicsignkey is required");
132
+ }
133
+ try {
134
+ return { challenge: await host.peerAuth.generateChallenge(publicsignkey) };
135
+ }
136
+ catch {
137
+ throw new Error("Unknown peer");
138
+ }
139
+ }
140
+ case "peer.authenticate": {
141
+ const challenge = String(args[0] ?? "");
142
+ const signature = args[1];
143
+ if (!challenge || !(signature instanceof Uint8Array)) {
144
+ throw new Error("challenge and signature (Uint8Array) are required");
145
+ }
146
+ const result = await host.peerAuth.authenticate(challenge, signature);
147
+ if (!result.success || !result.token) {
148
+ throw new Error(result.error ?? "Authentication failed");
149
+ }
150
+ return { success: true, token: result.token };
151
+ }
152
+ case "peer.tenantBloom": {
153
+ const payload = await requirePeerPayload(host, String(args[0] ?? ""));
154
+ const bloom = args[1];
155
+ if (!bloom || typeof bloom !== "object") {
156
+ throw new Error("bloom summary is required");
157
+ }
158
+ if (typeof bloom.bitCount !== "number" || bloom.bitCount <= 0 || bloom.bitCount > MAX_BLOOM_BITS) {
159
+ throw new Error("Invalid bloom summary");
160
+ }
161
+ const candidates = host.peerCluster
162
+ .listTenants()
163
+ .filter((tenantId) => (0, bloom_1.bloomMightContainId)(bloom, tenantId));
164
+ host.peerCluster.recordPeerIntersection(payload.sub, candidates);
165
+ return { tenantIds: candidates };
166
+ }
167
+ case "peer.listDatabases": {
168
+ const payload = await requirePeerPayload(host, String(args[0] ?? ""));
169
+ const tenantId = String(args[1] ?? "").trim().toLowerCase();
170
+ if (!tenantId) {
171
+ throw new Error("tenantId is required");
172
+ }
173
+ if (!host.peerCluster.peerMaySeeTenant(payload.sub, tenantId)) {
174
+ throw new Error("Tenant not found");
175
+ }
176
+ return { databases: host.peerCluster.listDatabases(tenantId) };
177
+ }
178
+ case "peer.subscribeEvents": {
179
+ const payload = await requirePeerPayload(host, String(args[0] ?? ""));
180
+ if (!host.syncEventBus) {
181
+ throw new Error("Iroh peer event feed is not configured");
182
+ }
183
+ return createIrohPeerEventFeed(host.syncEventBus, host.peerCluster, payload.sub);
184
+ }
185
+ case "peer.sync": {
186
+ const payload = await requirePeerPayload(host, String(args[0] ?? ""));
187
+ const scope = (args[1] ?? {});
188
+ host.peerCluster.requestSync(payload.sub, scope);
189
+ return { accepted: true };
190
+ }
191
+ default:
192
+ throw new Error(`Unknown Iroh RPC method ${method}`);
193
+ }
194
+ }
70
195
  async function dispatchStoreMethod(host, method, args, ctx) {
71
196
  const scope = requireStoreScope(ctx);
72
197
  const store = await host.getServerStore(scope.tenantId, scope.dbId, scope.storeKind);
73
198
  const token = String(args[0] ?? "");
74
199
  switch (method) {
75
- case "getCapabilities":
76
- return store.handleGetCapabilities(token);
200
+ case "getCapabilities": {
201
+ const capabilities = (await store.handleGetCapabilities(token));
202
+ return { ...capabilities, supportsChangeEvents: true };
203
+ }
77
204
  case "findNewEntries":
78
205
  return store.handleFindNewEntries(token, args[1] ?? []);
79
206
  case "findNewEntriesForDoc":
@@ -100,8 +227,24 @@ async function dispatchStoreMethod(host, method, args, ctx) {
100
227
  return store.handleGetEntriesSessionWrapped(token, args[1] ?? []);
101
228
  case "getEntryMetadata":
102
229
  return store.handleGetEntryMetadata(token, String(args[1] ?? ""));
103
- case "putEntries":
104
- return store.handlePutEntries(token, args[1] ?? []);
230
+ case "putEntries": {
231
+ const ack = (await store.handlePutEntries(token, args[1] ?? []));
232
+ if ((ack.receipts?.length ?? 0) > 0 && host.syncEventBus) {
233
+ const head = (await store.handleGetStoreHead(token).catch(() => null));
234
+ const peerName = host.peerAuth
235
+ ? ((await host.peerAuth.validateToken(token).catch(() => null))?.sub ?? undefined)
236
+ : undefined;
237
+ host.syncEventBus.publish({
238
+ tenantId: scope.tenantId,
239
+ dbId: scope.dbId,
240
+ storeKind: scope.storeKind,
241
+ epoch: head?.epoch,
242
+ maxReceiptOrder: head?.maxReceiptOrder,
243
+ originPeer: peerName,
244
+ });
245
+ }
246
+ return ack;
247
+ }
105
248
  case "hasEntries":
106
249
  return store.handleHasEntries(token, args[1] ?? []);
107
250
  case "getAllIds":
@@ -109,7 +252,11 @@ async function dispatchStoreMethod(host, method, args, ctx) {
109
252
  case "resolveDependencies":
110
253
  return store.handleResolveDependencies(token, String(args[1] ?? ""), args[2]);
111
254
  case "subscribeToChanges":
112
- throw new Error("subscribeToChanges is not implemented on the Iroh server path yet");
255
+ await store.handleGetCapabilities(token);
256
+ if (!host.syncEventBus) {
257
+ throw new Error("Iroh change feed is not configured");
258
+ }
259
+ return createIrohChangeFeed(host.syncEventBus, scope);
113
260
  default:
114
261
  throw new Error(`Unknown Iroh RPC method ${method}`);
115
262
  }
@@ -117,4 +264,118 @@ async function dispatchStoreMethod(host, method, args, ctx) {
117
264
  function isIrohValidationError(error) {
118
265
  return error instanceof validation_1.ValidationError;
119
266
  }
267
+ function createIrohChangeFeed(bus, scope) {
268
+ return {
269
+ [Symbol.asyncIterator]() {
270
+ const queue = [];
271
+ let notify = null;
272
+ let closed = false;
273
+ const unsubscribe = bus.subscribe((event) => {
274
+ if (event.tenantId !== scope.tenantId || event.storeKind !== scope.storeKind) {
275
+ return;
276
+ }
277
+ queue.push({
278
+ dbId: event.dbId,
279
+ storeKind: event.storeKind,
280
+ epoch: event.epoch,
281
+ maxReceiptOrder: event.maxReceiptOrder,
282
+ });
283
+ notify?.();
284
+ });
285
+ const heartbeat = setInterval(() => {
286
+ if (closed) {
287
+ return;
288
+ }
289
+ queue.push(exports.IROH_CHANGE_FEED_HEARTBEAT);
290
+ notify?.();
291
+ }, exports.IROH_CHANGE_FEED_HEARTBEAT_MS);
292
+ heartbeat.unref?.();
293
+ const close = () => {
294
+ if (closed) {
295
+ return;
296
+ }
297
+ closed = true;
298
+ clearInterval(heartbeat);
299
+ unsubscribe();
300
+ notify?.();
301
+ };
302
+ return {
303
+ async next() {
304
+ while (queue.length === 0 && !closed) {
305
+ await new Promise((resolve) => {
306
+ notify = resolve;
307
+ });
308
+ }
309
+ if (queue.length === 0) {
310
+ return { done: true, value: undefined };
311
+ }
312
+ return { done: false, value: queue.shift() };
313
+ },
314
+ async return() {
315
+ close();
316
+ return { done: true, value: undefined };
317
+ },
318
+ };
319
+ },
320
+ };
321
+ }
322
+ function createIrohPeerEventFeed(bus, cluster, peerName) {
323
+ return {
324
+ [Symbol.asyncIterator]() {
325
+ const queue = [];
326
+ let notify = null;
327
+ let closed = false;
328
+ const unsubscribe = bus.subscribe((event) => {
329
+ if (event.originPeer === peerName) {
330
+ return;
331
+ }
332
+ if (!cluster.peerMaySeeTenant(peerName, event.tenantId)) {
333
+ return;
334
+ }
335
+ queue.push({
336
+ tenantId: event.tenantId,
337
+ dbId: event.dbId,
338
+ storeKind: event.storeKind,
339
+ epoch: event.epoch,
340
+ maxReceiptOrder: event.maxReceiptOrder,
341
+ });
342
+ notify?.();
343
+ });
344
+ const heartbeat = setInterval(() => {
345
+ if (closed) {
346
+ return;
347
+ }
348
+ queue.push(exports.IROH_CHANGE_FEED_HEARTBEAT);
349
+ notify?.();
350
+ }, exports.IROH_CHANGE_FEED_HEARTBEAT_MS);
351
+ heartbeat.unref?.();
352
+ const close = () => {
353
+ if (closed) {
354
+ return;
355
+ }
356
+ closed = true;
357
+ clearInterval(heartbeat);
358
+ unsubscribe();
359
+ notify?.();
360
+ };
361
+ return {
362
+ async next() {
363
+ while (queue.length === 0 && !closed) {
364
+ await new Promise((resolve) => {
365
+ notify = resolve;
366
+ });
367
+ }
368
+ if (queue.length === 0) {
369
+ return { done: true, value: undefined };
370
+ }
371
+ return { done: false, value: queue.shift() };
372
+ },
373
+ async return() {
374
+ close();
375
+ return { done: true, value: undefined };
376
+ },
377
+ };
378
+ },
379
+ };
380
+ }
120
381
  //# sourceMappingURL=IrohServerRpc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IrohServerRpc.js","sourceRoot":"","sources":["../../../src/node/server/IrohServerRpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IrohServerRpc.js","sourceRoot":"","sources":["../../../src/node/server/IrohServerRpc.ts"],"names":[],"mappings":"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"}
@@ -101,6 +101,9 @@ export declare class MindooDBServer {
101
101
  */
102
102
  listenTls(port: number, certPath: string, keyPath: string): void;
103
103
  getIrohStatus(): import("./IrohServerEndpoint").IrohServerEndpointStatus;
104
+ getIrohStreamIO(): import("./nativeIrohStreamIO").NativeIrohStreamIO | null;
105
+ stopIroh(): Promise<void>;
106
+ getSyncEventListenerCount(): number;
104
107
  startIrohIfEnabled(): Promise<void>;
105
108
  /**
106
109
  * Global middleware stack applied to every request, in order:
@@ -1 +1 @@
1
- {"version":3,"file":"MindooDBServer.d.ts","sourceRoot":"","sources":["../../../src/node/server/MindooDBServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MindooDBServer.d.ts","sourceRoot":"","sources":["../../../src/node/server/MindooDBServer.ts"],"names":[],"mappings":"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"}
@@ -201,6 +201,7 @@ class MindooDBServer {
201
201
  listDatabases: (tenantId) => this.tenantManager.listDatabases(tenantId),
202
202
  getLocalStore: (tenantId, dbId, storeKind) => this.tenantManager.getStore(tenantId, dbId, storeKind),
203
203
  localRole: this.serverConfig.cluster?.role,
204
+ getIrohStreamIO: () => this.irohEndpoint.getStreamIO(),
204
205
  });
205
206
  // Peer tokens are accepted by the tenant sync routes so a peer can mirror
206
207
  // the encrypted stores through the ordinary protocol; the store bypasses
@@ -304,6 +305,15 @@ class MindooDBServer {
304
305
  getIrohStatus() {
305
306
  return this.irohEndpoint.getStatus();
306
307
  }
308
+ getIrohStreamIO() {
309
+ return this.irohEndpoint.getStreamIO();
310
+ }
311
+ async stopIroh() {
312
+ await this.irohEndpoint.stopListening();
313
+ }
314
+ getSyncEventListenerCount() {
315
+ return this.syncEventBus.listenerCount;
316
+ }
307
317
  async startIrohIfEnabled() {
308
318
  const irohConfig = this.serverConfig.iroh;
309
319
  if (!irohConfig?.enabled) {
@@ -323,6 +333,25 @@ class MindooDBServer {
323
333
  listTenantPublicInfosFingerprints: (tenantId) => this.tenantManager.listTenantPublicInfosFingerprints(tenantId),
324
334
  getAuthService: (tenantId) => this.tenantManager.getAuthService(tenantId),
325
335
  getServerStore: (tenantId, dbId, storeKind) => this.tenantManager.getServerStore(tenantId, dbId, storeKind),
336
+ syncEventBus: this.syncEventBus,
337
+ peerAuth: {
338
+ generateChallenge: (publicsignkey) => this.cluster.auth.generateChallenge(publicsignkey),
339
+ authenticate: (challenge, signature) => this.cluster.auth.authenticate(challenge, signature),
340
+ validateToken: (token) => this.cluster.auth.validateToken(token),
341
+ },
342
+ peerCluster: {
343
+ recordPeerIntersection: (peerName, tenantIds) => this.cluster.recordPeerIntersection(peerName, tenantIds),
344
+ peerMaySeeTenant: (peerName, tenantId) => this.cluster.peerMaySeeTenant(peerName, tenantId),
345
+ listTenants: () => this.tenantManager.listTenants(),
346
+ listDatabases: (tenantId) => this.tenantManager.listDatabases(tenantId),
347
+ requestSync: (peerName, scope) => {
348
+ const replicator = this.cluster.getReplicator(peerName);
349
+ if (!replicator) {
350
+ throw new Error(`No outbound session configured for peer ${peerName} (missing url in trusted-servers.json)`);
351
+ }
352
+ void replicator.syncNow(scope).catch(() => undefined);
353
+ },
354
+ },
326
355
  }),
327
356
  });
328
357
  }