engrm 0.4.46 → 0.4.47

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/cli.js CHANGED
@@ -1005,6 +1005,20 @@ function ensureChatMessageColumns(db) {
1005
1005
  db.exec("PRAGMA user_version = 17");
1006
1006
  }
1007
1007
  }
1008
+ function ensureObservationVectorTable(db) {
1009
+ if (!isVecExtensionLoaded(db))
1010
+ return;
1011
+ db.exec(`
1012
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
1013
+ observation_id INTEGER PRIMARY KEY,
1014
+ embedding FLOAT[384]
1015
+ );
1016
+ `);
1017
+ const current = getSchemaVersion(db);
1018
+ if (current < 4) {
1019
+ db.exec("PRAGMA user_version = 4");
1020
+ }
1021
+ }
1008
1022
  function ensureChatVectorTable(db) {
1009
1023
  if (!isVecExtensionLoaded(db))
1010
1024
  return;
@@ -1233,6 +1247,7 @@ class MemDatabase {
1233
1247
  ensureObservationTypes(this.db);
1234
1248
  ensureSessionSummaryColumns(this.db);
1235
1249
  ensureChatMessageColumns(this.db);
1250
+ ensureObservationVectorTable(this.db);
1236
1251
  ensureChatVectorTable(this.db);
1237
1252
  ensureSyncOutboxSupportsChatMessages(this.db);
1238
1253
  }
@@ -1879,6 +1879,20 @@ function ensureChatMessageColumns(db) {
1879
1879
  db.exec("PRAGMA user_version = 17");
1880
1880
  }
1881
1881
  }
1882
+ function ensureObservationVectorTable(db) {
1883
+ if (!isVecExtensionLoaded(db))
1884
+ return;
1885
+ db.exec(`
1886
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
1887
+ observation_id INTEGER PRIMARY KEY,
1888
+ embedding FLOAT[384]
1889
+ );
1890
+ `);
1891
+ const current = getSchemaVersion(db);
1892
+ if (current < 4) {
1893
+ db.exec("PRAGMA user_version = 4");
1894
+ }
1895
+ }
1882
1896
  function ensureChatVectorTable(db) {
1883
1897
  if (!isVecExtensionLoaded(db))
1884
1898
  return;
@@ -2107,6 +2121,7 @@ class MemDatabase {
2107
2121
  ensureObservationTypes(this.db);
2108
2122
  ensureSessionSummaryColumns(this.db);
2109
2123
  ensureChatMessageColumns(this.db);
2124
+ ensureObservationVectorTable(this.db);
2110
2125
  ensureChatVectorTable(this.db);
2111
2126
  ensureSyncOutboxSupportsChatMessages(this.db);
2112
2127
  }
@@ -1183,6 +1183,20 @@ function ensureChatMessageColumns(db) {
1183
1183
  db.exec("PRAGMA user_version = 17");
1184
1184
  }
1185
1185
  }
1186
+ function ensureObservationVectorTable(db) {
1187
+ if (!isVecExtensionLoaded(db))
1188
+ return;
1189
+ db.exec(`
1190
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
1191
+ observation_id INTEGER PRIMARY KEY,
1192
+ embedding FLOAT[384]
1193
+ );
1194
+ `);
1195
+ const current = getSchemaVersion(db);
1196
+ if (current < 4) {
1197
+ db.exec("PRAGMA user_version = 4");
1198
+ }
1199
+ }
1186
1200
  function ensureChatVectorTable(db) {
1187
1201
  if (!isVecExtensionLoaded(db))
1188
1202
  return;
@@ -1411,6 +1425,7 @@ class MemDatabase {
1411
1425
  ensureObservationTypes(this.db);
1412
1426
  ensureSessionSummaryColumns(this.db);
1413
1427
  ensureChatMessageColumns(this.db);
1428
+ ensureObservationVectorTable(this.db);
1414
1429
  ensureChatVectorTable(this.db);
1415
1430
  ensureSyncOutboxSupportsChatMessages(this.db);
1416
1431
  }
@@ -977,6 +977,20 @@ function ensureChatMessageColumns(db) {
977
977
  db.exec("PRAGMA user_version = 17");
978
978
  }
979
979
  }
980
+ function ensureObservationVectorTable(db) {
981
+ if (!isVecExtensionLoaded(db))
982
+ return;
983
+ db.exec(`
984
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
985
+ observation_id INTEGER PRIMARY KEY,
986
+ embedding FLOAT[384]
987
+ );
988
+ `);
989
+ const current = getSchemaVersion(db);
990
+ if (current < 4) {
991
+ db.exec("PRAGMA user_version = 4");
992
+ }
993
+ }
980
994
  function ensureChatVectorTable(db) {
981
995
  if (!isVecExtensionLoaded(db))
982
996
  return;
@@ -1205,6 +1219,7 @@ class MemDatabase {
1205
1219
  ensureObservationTypes(this.db);
1206
1220
  ensureSessionSummaryColumns(this.db);
1207
1221
  ensureChatMessageColumns(this.db);
1222
+ ensureObservationVectorTable(this.db);
1208
1223
  ensureChatVectorTable(this.db);
1209
1224
  ensureSyncOutboxSupportsChatMessages(this.db);
1210
1225
  }
@@ -1053,6 +1053,20 @@ function ensureChatMessageColumns(db) {
1053
1053
  db.exec("PRAGMA user_version = 17");
1054
1054
  }
1055
1055
  }
1056
+ function ensureObservationVectorTable(db) {
1057
+ if (!isVecExtensionLoaded(db))
1058
+ return;
1059
+ db.exec(`
1060
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
1061
+ observation_id INTEGER PRIMARY KEY,
1062
+ embedding FLOAT[384]
1063
+ );
1064
+ `);
1065
+ const current = getSchemaVersion(db);
1066
+ if (current < 4) {
1067
+ db.exec("PRAGMA user_version = 4");
1068
+ }
1069
+ }
1056
1070
  function ensureChatVectorTable(db) {
1057
1071
  if (!isVecExtensionLoaded(db))
1058
1072
  return;
@@ -1281,6 +1295,7 @@ class MemDatabase {
1281
1295
  ensureObservationTypes(this.db);
1282
1296
  ensureSessionSummaryColumns(this.db);
1283
1297
  ensureChatMessageColumns(this.db);
1298
+ ensureObservationVectorTable(this.db);
1284
1299
  ensureChatVectorTable(this.db);
1285
1300
  ensureSyncOutboxSupportsChatMessages(this.db);
1286
1301
  }
@@ -3280,7 +3280,7 @@ import { existsSync as existsSync3, readFileSync as readFileSync2, writeFileSync
3280
3280
  import { join as join3 } from "node:path";
3281
3281
  import { homedir } from "node:os";
3282
3282
  var STATE_PATH = join3(homedir(), ".engrm", "config-fingerprint.json");
3283
- var CLIENT_VERSION = "0.4.46";
3283
+ var CLIENT_VERSION = "0.4.47";
3284
3284
  function hashFile(filePath) {
3285
3285
  try {
3286
3286
  if (!existsSync3(filePath))
@@ -4920,6 +4920,20 @@ function ensureChatMessageColumns(db) {
4920
4920
  db.exec("PRAGMA user_version = 17");
4921
4921
  }
4922
4922
  }
4923
+ function ensureObservationVectorTable(db) {
4924
+ if (!isVecExtensionLoaded(db))
4925
+ return;
4926
+ db.exec(`
4927
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
4928
+ observation_id INTEGER PRIMARY KEY,
4929
+ embedding FLOAT[384]
4930
+ );
4931
+ `);
4932
+ const current = getSchemaVersion(db);
4933
+ if (current < 4) {
4934
+ db.exec("PRAGMA user_version = 4");
4935
+ }
4936
+ }
4923
4937
  function ensureChatVectorTable(db) {
4924
4938
  if (!isVecExtensionLoaded(db))
4925
4939
  return;
@@ -5068,6 +5082,7 @@ class MemDatabase {
5068
5082
  ensureObservationTypes(this.db);
5069
5083
  ensureSessionSummaryColumns(this.db);
5070
5084
  ensureChatMessageColumns(this.db);
5085
+ ensureObservationVectorTable(this.db);
5071
5086
  ensureChatVectorTable(this.db);
5072
5087
  ensureSyncOutboxSupportsChatMessages(this.db);
5073
5088
  }
@@ -1290,6 +1290,20 @@ function ensureChatMessageColumns(db) {
1290
1290
  db.exec("PRAGMA user_version = 17");
1291
1291
  }
1292
1292
  }
1293
+ function ensureObservationVectorTable(db) {
1294
+ if (!isVecExtensionLoaded(db))
1295
+ return;
1296
+ db.exec(`
1297
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
1298
+ observation_id INTEGER PRIMARY KEY,
1299
+ embedding FLOAT[384]
1300
+ );
1301
+ `);
1302
+ const current = getSchemaVersion(db);
1303
+ if (current < 4) {
1304
+ db.exec("PRAGMA user_version = 4");
1305
+ }
1306
+ }
1293
1307
  function ensureChatVectorTable(db) {
1294
1308
  if (!isVecExtensionLoaded(db))
1295
1309
  return;
@@ -1438,6 +1452,7 @@ class MemDatabase {
1438
1452
  ensureObservationTypes(this.db);
1439
1453
  ensureSessionSummaryColumns(this.db);
1440
1454
  ensureChatMessageColumns(this.db);
1455
+ ensureObservationVectorTable(this.db);
1441
1456
  ensureChatVectorTable(this.db);
1442
1457
  ensureSyncOutboxSupportsChatMessages(this.db);
1443
1458
  }
@@ -3492,7 +3507,7 @@ function buildBeacon(db, config, sessionId, metrics) {
3492
3507
  sentinel_used: valueSignals.security_findings_count > 0,
3493
3508
  risk_score: riskScore,
3494
3509
  stacks_detected: stacks,
3495
- client_version: "0.4.46",
3510
+ client_version: "0.4.47",
3496
3511
  context_observations_injected: metrics?.contextObsInjected ?? 0,
3497
3512
  context_total_available: metrics?.contextTotalAvailable ?? 0,
3498
3513
  recall_attempts: metrics?.recallAttempts ?? 0,
@@ -1123,6 +1123,20 @@ function ensureChatMessageColumns(db) {
1123
1123
  db.exec("PRAGMA user_version = 17");
1124
1124
  }
1125
1125
  }
1126
+ function ensureObservationVectorTable(db) {
1127
+ if (!isVecExtensionLoaded(db))
1128
+ return;
1129
+ db.exec(`
1130
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
1131
+ observation_id INTEGER PRIMARY KEY,
1132
+ embedding FLOAT[384]
1133
+ );
1134
+ `);
1135
+ const current = getSchemaVersion(db);
1136
+ if (current < 4) {
1137
+ db.exec("PRAGMA user_version = 4");
1138
+ }
1139
+ }
1126
1140
  function ensureChatVectorTable(db) {
1127
1141
  if (!isVecExtensionLoaded(db))
1128
1142
  return;
@@ -1351,6 +1365,7 @@ class MemDatabase {
1351
1365
  ensureObservationTypes(this.db);
1352
1366
  ensureSessionSummaryColumns(this.db);
1353
1367
  ensureChatMessageColumns(this.db);
1368
+ ensureObservationVectorTable(this.db);
1354
1369
  ensureChatVectorTable(this.db);
1355
1370
  ensureSyncOutboxSupportsChatMessages(this.db);
1356
1371
  }
package/dist/server.js CHANGED
@@ -14534,6 +14534,20 @@ function ensureChatMessageColumns(db) {
14534
14534
  db.exec("PRAGMA user_version = 17");
14535
14535
  }
14536
14536
  }
14537
+ function ensureObservationVectorTable(db) {
14538
+ if (!isVecExtensionLoaded(db))
14539
+ return;
14540
+ db.exec(`
14541
+ CREATE VIRTUAL TABLE IF NOT EXISTS vec_observations USING vec0(
14542
+ observation_id INTEGER PRIMARY KEY,
14543
+ embedding FLOAT[384]
14544
+ );
14545
+ `);
14546
+ const current = getSchemaVersion(db);
14547
+ if (current < 4) {
14548
+ db.exec("PRAGMA user_version = 4");
14549
+ }
14550
+ }
14537
14551
  function ensureChatVectorTable(db) {
14538
14552
  if (!isVecExtensionLoaded(db))
14539
14553
  return;
@@ -14762,6 +14776,7 @@ class MemDatabase {
14762
14776
  ensureObservationTypes(this.db);
14763
14777
  ensureSessionSummaryColumns(this.db);
14764
14778
  ensureChatMessageColumns(this.db);
14779
+ ensureObservationVectorTable(this.db);
14765
14780
  ensureChatVectorTable(this.db);
14766
14781
  ensureSyncOutboxSupportsChatMessages(this.db);
14767
14782
  }
@@ -23449,7 +23464,7 @@ function installStdioLivenessGuards() {
23449
23464
  function buildServer() {
23450
23465
  const server = new McpServer({
23451
23466
  name: "engrm",
23452
- version: "0.4.46"
23467
+ version: "0.4.47"
23453
23468
  });
23454
23469
  const enabledToolNames = getEnabledToolNames(config2.tool_profile);
23455
23470
  const originalTool = server.tool.bind(server);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "engrm",
3
- "version": "0.4.46",
3
+ "version": "0.4.47",
4
4
  "description": "Shared memory across devices, sessions, and agents, with thin MCP tools for durable capture, live continuity, and Hermes-ready remote MCP support",
5
5
  "mcpName": "io.github.dr12hes/engrm",
6
6
  "type": "module",