@grafema/rfdb-client 0.2.12-beta → 0.3.0-beta

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.
package/dist/client.d.ts CHANGED
@@ -4,23 +4,20 @@
4
4
  * Provides the same API as GraphEngine NAPI binding but communicates
5
5
  * with a separate rfdb-server process over Unix socket + MessagePack.
6
6
  */
7
- import { EventEmitter } from 'events';
8
- import type { WireNode, WireEdge, RFDBResponse, IRFDBClient, AttrQuery, FieldDeclaration, DatalogResult, NodeType, EdgeType, HelloResponse, CreateDatabaseResponse, OpenDatabaseResponse, ListDatabasesResponse, CurrentDatabaseResponse, SnapshotRef, SnapshotDiff, SnapshotInfo, CommitDelta } from '@grafema/types';
9
- export declare class RFDBClient extends EventEmitter implements IRFDBClient {
7
+ import { BaseRFDBClient } from './base-client.js';
8
+ import type { RFDBCommand, WireNode, RFDBResponse, AttrQuery, HelloResponse, CommitDelta } from '@grafema/types';
9
+ export declare class RFDBClient extends BaseRFDBClient {
10
10
  readonly socketPath: string;
11
+ readonly clientName: string;
11
12
  private socket;
12
13
  connected: boolean;
13
14
  private pending;
14
15
  private reqId;
15
16
  private buffer;
16
- private _batching;
17
- private _batchNodes;
18
- private _batchEdges;
19
- private _batchFiles;
20
17
  private _supportsStreaming;
21
18
  private _pendingStreams;
22
19
  private _streamTimers;
23
- constructor(socketPath?: string);
20
+ constructor(socketPath?: string, clientName?: string);
24
21
  /**
25
22
  * Whether the connected server supports streaming responses.
26
23
  * Set after calling hello(). Defaults to false.
@@ -39,354 +36,52 @@ export declare class RFDBClient extends EventEmitter implements IRFDBClient {
39
36
  */
40
37
  private _handleData;
41
38
  /**
42
- * Handle decoded response match by requestId, route streaming chunks
39
+ * Handle decoded response -- match by requestId, route streaming chunks
43
40
  * to StreamQueue or resolve single-response Promise.
44
41
  */
45
42
  private _handleResponse;
46
43
  /**
47
44
  * Handle a response for a streaming request.
48
- * Routes chunk data to StreamQueue and manages stream lifecycle.
49
- * Resets per-chunk timeout on each successful chunk arrival.
50
45
  */
51
46
  private _handleStreamingResponse;
52
- /**
53
- * Reset the per-chunk timeout for a streaming request.
54
- */
55
47
  private _resetStreamTimer;
56
- /**
57
- * Clean up all state for a completed/failed streaming request.
58
- */
59
48
  private _cleanupStream;
60
49
  private _parseRequestId;
61
- /**
62
- * Default timeout for operations (60 seconds)
63
- * Flush/compact may take time for large graphs, but should not hang indefinitely
64
- */
65
50
  private static readonly DEFAULT_TIMEOUT_MS;
66
51
  /**
67
52
  * Send a request and wait for response with timeout
68
53
  */
69
- private _send;
70
- /**
71
- * Add nodes to the graph
72
- * Extra properties beyond id/type/name/file/exported/metadata are merged into metadata
73
- */
74
- addNodes(nodes: Array<Partial<WireNode> & {
75
- id: string;
76
- type?: string;
77
- node_type?: string;
78
- nodeType?: string;
79
- }>): Promise<RFDBResponse>;
80
- /**
81
- * Add edges to the graph
82
- * Extra properties beyond src/dst/type are merged into metadata
83
- */
84
- addEdges(edges: WireEdge[], skipValidation?: boolean): Promise<RFDBResponse>;
85
- /**
86
- * Delete a node
87
- */
88
- deleteNode(id: string): Promise<RFDBResponse>;
89
- /**
90
- * Delete an edge
91
- */
92
- deleteEdge(src: string, dst: string, edgeType: EdgeType): Promise<RFDBResponse>;
93
- /**
94
- * Get a node by ID
95
- */
96
- getNode(id: string): Promise<WireNode | null>;
97
- /**
98
- * Check if node exists
99
- */
100
- nodeExists(id: string): Promise<boolean>;
101
- /**
102
- * Find nodes by type
103
- */
104
- findByType(nodeType: NodeType): Promise<string[]>;
105
- /**
106
- * Find nodes by attributes
107
- */
108
- findByAttr(query: Record<string, unknown>): Promise<string[]>;
109
- /**
110
- * Get neighbors of a node
111
- */
112
- neighbors(id: string, edgeTypes?: EdgeType[]): Promise<string[]>;
113
- /**
114
- * Breadth-first search
115
- */
116
- bfs(startIds: string[], maxDepth: number, edgeTypes?: EdgeType[]): Promise<string[]>;
117
- /**
118
- * Depth-first search
119
- */
120
- dfs(startIds: string[], maxDepth: number, edgeTypes?: EdgeType[]): Promise<string[]>;
121
- /**
122
- * Reachability query - find all nodes reachable from start nodes
123
- */
124
- reachability(startIds: string[], maxDepth: number, edgeTypes?: EdgeType[], backward?: boolean): Promise<string[]>;
54
+ protected _send(cmd: RFDBCommand, payload?: Record<string, unknown>, timeoutMs?: number): Promise<RFDBResponse>;
125
55
  /**
126
- * Get outgoing edges from a node
127
- * Parses metadata JSON and spreads it onto the edge object for convenience
56
+ * Negotiate protocol version with server.
57
+ * Overrides base to set streaming flag.
128
58
  */
129
- getOutgoingEdges(id: string, edgeTypes?: EdgeType[] | null): Promise<(WireEdge & Record<string, unknown>)[]>;
130
- /**
131
- * Get incoming edges to a node
132
- * Parses metadata JSON and spreads it onto the edge object for convenience
133
- */
134
- getIncomingEdges(id: string, edgeTypes?: EdgeType[] | null): Promise<(WireEdge & Record<string, unknown>)[]>;
135
- /**
136
- * Get node count
137
- */
138
- nodeCount(): Promise<number>;
139
- /**
140
- * Get edge count
141
- */
142
- edgeCount(): Promise<number>;
143
- /**
144
- * Count nodes by type
145
- */
146
- countNodesByType(types?: NodeType[] | null): Promise<Record<string, number>>;
147
- /**
148
- * Count edges by type
149
- */
150
- countEdgesByType(edgeTypes?: EdgeType[] | null): Promise<Record<string, number>>;
151
- /**
152
- * Flush data to disk
153
- */
154
- flush(): Promise<RFDBResponse>;
155
- /**
156
- * Compact the database
157
- */
158
- compact(): Promise<RFDBResponse>;
159
- /**
160
- * Clear the database
161
- */
162
- clear(): Promise<RFDBResponse>;
59
+ hello(protocolVersion?: number): Promise<HelloResponse>;
163
60
  /**
164
- * Query nodes (async generator)
61
+ * Query nodes (async generator).
62
+ * Overrides base to support streaming for protocol v3+.
165
63
  */
166
64
  queryNodes(query: AttrQuery): AsyncGenerator<WireNode, void, unknown>;
167
- /**
168
- * Build a server query object from an AttrQuery.
169
- */
170
- private _buildServerQuery;
171
65
  /**
172
66
  * Stream nodes matching query with true streaming support.
173
- *
174
- * Behavior depends on server capabilities:
175
- * - Server supports streaming (protocol v3): receives chunked NodesChunk
176
- * responses via StreamQueue. Nodes are yielded as they arrive.
177
- * - Server does NOT support streaming (fallback): delegates to queryNodes()
178
- * which yields nodes one by one from bulk response.
179
- *
180
- * The generator can be aborted by breaking out of the loop or calling .return().
67
+ * Overrides base to use StreamQueue for protocol v3+.
181
68
  */
182
69
  queryNodesStream(query: AttrQuery): AsyncGenerator<WireNode, void, unknown>;
183
- /**
184
- * Get all nodes matching query
185
- */
186
- getAllNodes(query?: AttrQuery): Promise<WireNode[]>;
187
- /**
188
- * Get all edges
189
- * Parses metadata JSON and spreads it onto the edge object for convenience
190
- */
191
- getAllEdges(): Promise<(WireEdge & Record<string, unknown>)[]>;
192
- /**
193
- * Check if node is an endpoint (has no outgoing edges)
194
- */
195
- isEndpoint(id: string): Promise<boolean>;
196
- /**
197
- * Get node identifier string
198
- */
199
- getNodeIdentifier(id: string): Promise<string | null>;
200
- /**
201
- * Update node version
202
- */
203
- updateNodeVersion(id: string, version: string): Promise<RFDBResponse>;
204
- /**
205
- * Declare metadata fields for server-side indexing.
206
- * Call before adding nodes so the server builds indexes on flush.
207
- * Returns the number of declared fields.
208
- */
209
- declareFields(fields: FieldDeclaration[]): Promise<number>;
210
- /**
211
- * Load Datalog rules
212
- */
213
- datalogLoadRules(source: string): Promise<number>;
214
- /**
215
- * Clear Datalog rules
216
- */
217
- datalogClearRules(): Promise<RFDBResponse>;
218
- /**
219
- * Execute Datalog query
220
- */
221
- datalogQuery(query: string): Promise<DatalogResult[]>;
222
- /**
223
- * Check a guarantee (Datalog rule) and return violations
224
- */
225
- checkGuarantee(ruleSource: string): Promise<DatalogResult[]>;
226
- /**
227
- * Execute unified Datalog — handles both direct queries and rule-based programs.
228
- * Auto-detects the head predicate instead of hardcoding violation(X).
229
- */
230
- executeDatalog(source: string): Promise<DatalogResult[]>;
231
- /**
232
- * Ping the server
233
- */
234
- ping(): Promise<string | false>;
235
- /**
236
- * Negotiate protocol version with server
237
- * @param protocolVersion - Protocol version to negotiate (default: 2)
238
- * @returns Server capabilities including protocolVersion, serverVersion, features
239
- */
240
- hello(protocolVersion?: number): Promise<HelloResponse>;
241
- /**
242
- * Create a new database
243
- * @param name - Database name (alphanumeric, _, -)
244
- * @param ephemeral - If true, database is in-memory and auto-cleaned on disconnect
245
- */
246
- createDatabase(name: string, ephemeral?: boolean): Promise<CreateDatabaseResponse>;
247
- /**
248
- * Open a database and set as current for this session
249
- * @param name - Database name
250
- * @param mode - 'rw' (read-write) or 'ro' (read-only)
251
- */
252
- openDatabase(name: string, mode?: 'rw' | 'ro'): Promise<OpenDatabaseResponse>;
253
- /**
254
- * Close current database
255
- */
256
- closeDatabase(): Promise<RFDBResponse>;
257
- /**
258
- * Drop (delete) a database - must not be in use
259
- * @param name - Database name
260
- */
261
- dropDatabase(name: string): Promise<RFDBResponse>;
262
- /**
263
- * List all databases
264
- */
265
- listDatabases(): Promise<ListDatabasesResponse>;
266
- /**
267
- * Get current database for this session
268
- */
269
- currentDatabase(): Promise<CurrentDatabaseResponse>;
270
- /**
271
- * Convert a SnapshotRef to wire format payload fields.
272
- *
273
- * - number -> { version: N }
274
- * - { tag, value } -> { tagKey, tagValue }
275
- */
276
- private _resolveSnapshotRef;
277
- /**
278
- * Compute diff between two snapshots.
279
- * @param from - Source snapshot (version number or tag reference)
280
- * @param to - Target snapshot (version number or tag reference)
281
- * @returns SnapshotDiff with added/removed segments and stats
282
- */
283
- diffSnapshots(from: SnapshotRef, to: SnapshotRef): Promise<SnapshotDiff>;
284
- /**
285
- * Tag a snapshot with key-value metadata.
286
- * @param version - Snapshot version to tag
287
- * @param tags - Key-value pairs to apply (e.g. { "release": "v1.0" })
288
- */
289
- tagSnapshot(version: number, tags: Record<string, string>): Promise<void>;
290
- /**
291
- * Find a snapshot by tag key/value pair.
292
- * @param tagKey - Tag key to search for
293
- * @param tagValue - Tag value to match
294
- * @returns Snapshot version number, or null if not found
295
- */
296
- findSnapshot(tagKey: string, tagValue: string): Promise<number | null>;
297
- /**
298
- * List snapshots, optionally filtered by tag key.
299
- * @param filterTag - Optional tag key to filter by (only snapshots with this tag)
300
- * @returns Array of SnapshotInfo objects
301
- */
302
- listSnapshots(filterTag?: string): Promise<SnapshotInfo[]>;
303
- /**
304
- * Begin a batch operation.
305
- * While batching, addNodes/addEdges buffer locally instead of sending to server.
306
- * Call commitBatch() to send all buffered data atomically.
307
- */
308
- beginBatch(): void;
309
- /**
310
- * Synchronously batch a single node. Must be inside beginBatch/commitBatch.
311
- * Skips async wrapper — pushes directly to batch array.
312
- */
313
- batchNode(node: Partial<WireNode> & {
314
- id: string;
315
- type?: string;
316
- node_type?: string;
317
- nodeType?: string;
318
- }): void;
319
- /**
320
- * Synchronously batch a single edge. Must be inside beginBatch/commitBatch.
321
- */
322
- batchEdge(edge: WireEdge | Record<string, unknown>): void;
323
- /**
324
- * Commit the current batch to the server.
325
- * Sends all buffered nodes/edges with the list of changed files.
326
- * Server atomically replaces old data for changed files with new data.
327
- *
328
- * @param tags - Optional tags for the commit (e.g., plugin name, phase)
329
- * @param deferIndex - When true, server writes data but skips index rebuild.
330
- * Caller must send rebuildIndexes() after all deferred commits complete.
331
- */
332
- commitBatch(tags?: string[], deferIndex?: boolean, protectedTypes?: string[]): Promise<CommitDelta>;
333
- /**
334
- * Internal helper: send a commitBatch with chunking for large payloads.
335
- * Used by both commitBatch() and BatchHandle.commit().
336
- * @internal
337
- */
338
- _sendCommitBatch(changedFiles: string[], allNodes: WireNode[], allEdges: WireEdge[], tags?: string[], deferIndex?: boolean, protectedTypes?: string[]): Promise<CommitDelta>;
339
- /**
340
- * Rebuild all secondary indexes after a series of deferred-index commits.
341
- * Call this once after bulk loading data with commitBatch(tags, true).
342
- */
343
- rebuildIndexes(): Promise<void>;
344
70
  /**
345
71
  * Create an isolated batch handle for concurrent-safe batching.
346
- * Each BatchHandle has its own node/edge buffers, avoiding the shared
347
- * instance-level _batching state race condition with multiple workers.
348
72
  */
349
73
  createBatch(): BatchHandle;
350
- /**
351
- * Abort the current batch, discarding all buffered data.
352
- */
353
- abortBatch(): void;
354
- /**
355
- * Check if a batch is currently in progress.
356
- */
357
- isBatching(): boolean;
358
- /**
359
- * Find files that depend on the given changed files.
360
- * Uses backward reachability to find dependent modules.
361
- *
362
- * Note: For large result sets, each reachable node requires a separate
363
- * getNode RPC. A future server-side optimization could return file paths
364
- * directly from the reachability query.
365
- */
366
- findDependentFiles(changedFiles: string[]): Promise<string[]>;
367
74
  /**
368
75
  * Unref the socket so it doesn't keep the process alive.
369
- *
370
- * Call this in test environments to allow process to exit
371
- * even if connections remain open.
372
76
  */
373
77
  unref(): void;
374
78
  /**
375
79
  * Close connection
376
80
  */
377
81
  close(): Promise<void>;
378
- /**
379
- * Shutdown the server
380
- */
381
- shutdown(): Promise<void>;
382
82
  }
383
83
  /**
384
84
  * Isolated batch handle for concurrent-safe batching (REG-487).
385
- *
386
- * Each BatchHandle maintains its own node/edge/file buffers, completely
387
- * independent of the RFDBClient's instance-level _batching state.
388
- * Multiple workers can each create their own BatchHandle and commit
389
- * independently without race conditions.
390
85
  */
391
86
  export declare class BatchHandle {
392
87
  private client;
@@ -395,7 +90,7 @@ export declare class BatchHandle {
395
90
  private _files;
396
91
  constructor(client: RFDBClient);
397
92
  addNode(node: WireNode, file?: string): void;
398
- addEdge(edge: WireEdge): void;
93
+ addEdge(edge: import('@grafema/types').WireEdge): void;
399
94
  addFile(file: string): void;
400
95
  commit(tags?: string[], deferIndex?: boolean, protectedTypes?: string[]): Promise<CommitDelta>;
401
96
  abort(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../ts/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../ts/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,aAAa,EAEb,WAAW,EACZ,MAAM,gBAAgB,CAAC;AAOxB,qBAAa,UAAW,SAAQ,cAAc;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,MAAM,CAAgB;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IAGvB,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,OAAO,CAAC,eAAe,CAAiD;IACxE,OAAO,CAAC,aAAa,CAAyD;gBAElE,UAAU,GAAE,MAAyB,EAAE,UAAU,GAAE,MAAkB;IAWjF;;;OAGG;IACH,IAAa,iBAAiB,IAAI,OAAO,CAExC;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8C9B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA8B/B;;OAEG;IACH,OAAO,CAAC,WAAW;IA2BnB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgDvB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqChC,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAEpD;;OAEG;cACa,KAAK,CACnB,GAAG,EAAE,WAAW,EAChB,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACrC,SAAS,GAAE,MAAsC,GAChD,OAAO,CAAC,YAAY,CAAC;IA8CxB;;;OAGG;IACY,KAAK,CAAC,eAAe,GAAE,MAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAOzE;;;OAGG;IACa,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;IAerF;;;OAGG;IACa,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;IAwC3F;;OAEG;IACH,WAAW,IAAI,WAAW;IAI1B;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO7B;AAED;;GAEG;AACH,qBAAa,WAAW;IAKV,OAAO,CAAC,MAAM;IAJ1B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,MAAM,CAA0B;gBAEpB,MAAM,EAAE,UAAU;IAEtC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAM5C,OAAO,CAAC,IAAI,EAAE,OAAO,gBAAgB,EAAE,QAAQ,GAAG,IAAI;IAItD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIrB,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAUpG,KAAK,IAAI,IAAI;CAKd;AAED,eAAe,UAAU,CAAC"}