@geodedb/client 1.0.2 → 1.3.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geodedb/client",
3
- "version": "1.0.2",
3
+ "version": "1.3.1",
4
4
  "description": "Node.js client library for Geode graph database (QUIC/gRPC + TLS 1.3)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -25,6 +25,7 @@
25
25
  "test:watch": "vitest",
26
26
  "test:coverage": "vitest run --coverage",
27
27
  "test:integration": "vitest run --config vitest.integration.config.ts",
28
+ "test:property": "vitest run --config vitest.property.config.ts",
28
29
  "lint": "eslint src tests",
29
30
  "lint:fix": "eslint src tests --fix",
30
31
  "format": "prettier --write \"src/**/*.ts\" \"tests/**/*.ts\"",
@@ -32,6 +33,8 @@
32
33
  "typecheck": "tsc --noEmit",
33
34
  "prepublishOnly": "npm run build",
34
35
  "bench": "vitest bench",
36
+ "proto": "bash scripts/generate-proto.sh",
37
+ "proto:check": "bash scripts/check-proto.sh",
35
38
  "clean": "rm -rf dist coverage"
36
39
  },
37
40
  "keywords": [
@@ -61,24 +64,27 @@
61
64
  "registry": "https://registry.npmjs.org/"
62
65
  },
63
66
  "dependencies": {
67
+ "@bufbuild/protobuf": "^2.12.0",
64
68
  "@grpc/grpc-js": "^1.12.0",
65
- "@grpc/proto-loader": "^0.7.15",
69
+ "@grpc/proto-loader": "^0.8.0",
66
70
  "@matrixai/quic": "^2.0.9",
67
71
  "decimal.js-light": "^2.5.1",
68
- "protobufjs": "^7.4.0"
72
+ "protobufjs": "^8.0.0"
69
73
  },
70
74
  "devDependencies": {
71
- "@types/node": "^20.11.0",
75
+ "@eslint/js": "^10.0.1",
76
+ "@types/node": "^26.0.0",
72
77
  "@typescript-eslint/eslint-plugin": "^8.54.0",
73
78
  "@typescript-eslint/parser": "^8.54.0",
74
79
  "@vitest/coverage-v8": "^4.0.18",
75
- "eslint": "^9.39.2",
76
- "eslint-config-prettier": "^9.1.0",
80
+ "eslint": "^10.0.0",
81
+ "eslint-config-prettier": "^10.0.0",
77
82
  "fast-check": "^4.5.3",
78
83
  "prettier": "^3.2.0",
79
- "testcontainers": "^11.11.0",
84
+ "testcontainers": "^12.0.0",
85
+ "ts-proto": "^2.11.8",
80
86
  "tsup": "^8.0.0",
81
- "typescript": "^5.3.0",
87
+ "typescript": "^5.9.3",
82
88
  "typescript-eslint": "^8.54.0",
83
89
  "vitest": "^4.0.18"
84
90
  }
package/proto/geode.proto CHANGED
@@ -82,6 +82,7 @@ message HelloRequest {
82
82
  string client_version = 5;
83
83
  string wanted_conformance = 6;
84
84
  optional string graph = 7;
85
+ optional string role = 8; // FLE role for field-level access control
85
86
  }
86
87
 
87
88
  message HelloResponse {
@@ -100,6 +101,9 @@ message ExecuteRequest {
100
101
  string session_id = 1;
101
102
  string query = 2;
102
103
  repeated Param params = 3;
104
+ bytes principal_envelope_bytes = 4; // GPS wire principal (federation-trusted only)
105
+ string idempotency_key = 5; // RC-3 write dedup
106
+ bool read_only = 6; // reject mutating statements when set
103
107
  }
104
108
 
105
109
  message Param {
@@ -482,7 +486,9 @@ message RollbackToResponse {
482
486
  // ============================================================================
483
487
  // CDC
484
488
  // ============================================================================
485
- message CdcDiagnosticsRequest {}
489
+ message CdcDiagnosticsRequest {
490
+ string session_id = 1;
491
+ }
486
492
  message CdcDiagnosticsConfig {
487
493
  bool enabled = 1;
488
494
  uint64 malformed_snapshot_interval = 2;
@@ -535,6 +541,7 @@ message CdcDiagnosticsResponse {
535
541
  }
536
542
  message CdcControlRequest {
537
543
  string action = 1;
544
+ string session_id = 2;
538
545
  }
539
546
  message CdcControlResponse {
540
547
  bool success = 1;
@@ -547,6 +554,7 @@ message CdcControlResponse {
547
554
  // ============================================================================
548
555
  message BackupRequest {
549
556
  string backup_type = 1; // "full"
557
+ string session_id = 2;
550
558
  bool compress = 3;
551
559
  }
552
560
  message BackupResponse {
@@ -561,6 +569,7 @@ message BackupResponse {
561
569
  message RestoreRequest {
562
570
  string target_time = 1;
563
571
  bool confirm = 2;
572
+ string session_id = 3;
564
573
  }
565
574
  message RestoreResponse {
566
575
  bool success = 1;
@@ -572,6 +581,10 @@ message RestoreResponse {
572
581
  message UploadBackupRequest {
573
582
  uint64 size_bytes = 1;
574
583
  string checksum = 2;
584
+ string session_id = 3;
585
+ // GAP-0880: full backup artifact bytes (GEOB header + payload). Required;
586
+ // metadata-only uploads are rejected by the server.
587
+ bytes payload = 4;
575
588
  }
576
589
  message UploadBackupResponse {
577
590
  bool success = 1;