@signetai/connector-forge 0.206.0 → 0.206.2

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 (2) hide show
  1. package/dist/index.js +138 -14
  2. package/package.json +3 -3
package/dist/index.js CHANGED
@@ -11292,6 +11292,7 @@ var DAEMON_DERIVED_MEMORY_SOURCE_TYPES = [
11292
11292
  "dreaming"
11293
11293
  ];
11294
11294
  var MEMORIES_FTS_TOKENIZER = "unicode61";
11295
+ var FTS_STATE_TABLE = "memories_fts_state";
11295
11296
  function normalizeSql(sql) {
11296
11297
  return sql.replace(/\s+/g, " ").trim().toLowerCase();
11297
11298
  }
@@ -11304,18 +11305,67 @@ function createMemoriesFts(db) {
11304
11305
  tokenize='${MEMORIES_FTS_TOKENIZER}'
11305
11306
  );
11306
11307
  `);
11308
+ ensureMemoriesFtsState(db);
11309
+ createMemoriesFtsTriggers(db);
11310
+ }
11311
+ function ensureMemoriesFtsState(db) {
11307
11312
  db.exec(`
11308
- CREATE TRIGGER IF NOT EXISTS memories_ai AFTER INSERT ON memories BEGIN
11309
- INSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);
11310
- END;
11313
+ CREATE TABLE IF NOT EXISTS ${FTS_STATE_TABLE} (
11314
+ id INTEGER PRIMARY KEY CHECK (id = 1),
11315
+ memory_count INTEGER NOT NULL,
11316
+ indexed_count INTEGER NOT NULL,
11317
+ updated_at TEXT NOT NULL
11318
+ );
11319
+ INSERT OR IGNORE INTO ${FTS_STATE_TABLE} (id, memory_count, indexed_count, updated_at)
11320
+ VALUES (
11321
+ 1,
11322
+ -1,
11323
+ 0,
11324
+ datetime('now')
11325
+ );
11311
11326
  `);
11327
+ }
11328
+ function createMemoriesFtsTriggers(db) {
11312
11329
  db.exec(`
11313
- CREATE TRIGGER IF NOT EXISTS memories_ad AFTER DELETE ON memories BEGIN
11330
+ DROP TRIGGER IF EXISTS memories_ai;
11331
+ DROP TRIGGER IF EXISTS memories_ad;
11332
+ DROP TRIGGER IF EXISTS memories_au;
11333
+
11334
+ CREATE TRIGGER memories_ai AFTER INSERT ON memories BEGIN
11335
+ INSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);
11336
+ UPDATE ${FTS_STATE_TABLE}
11337
+ SET memory_count = CASE WHEN memory_count < 0 THEN -1 ELSE memory_count + 1 END,
11338
+ indexed_count = CASE WHEN indexed_count < 0 THEN 0 ELSE indexed_count + 1 END,
11339
+ updated_at = datetime('now')
11340
+ WHERE id = 1;
11341
+ END;
11342
+
11343
+ CREATE TRIGGER memories_ad AFTER DELETE ON memories BEGIN
11344
+ UPDATE ${FTS_STATE_TABLE}
11345
+ SET memory_count = CASE WHEN memory_count < 0 THEN -1 ELSE MAX(0, memory_count - 1) END,
11346
+ indexed_count = CASE
11347
+ WHEN indexed_count < 0 THEN 0
11348
+ ELSE MAX(0, indexed_count - CASE WHEN EXISTS(
11349
+ SELECT 1 FROM memories_fts_docsize WHERE id = old.rowid
11350
+ ) THEN 1 ELSE 0 END)
11351
+ END,
11352
+ updated_at = datetime('now')
11353
+ WHERE id = 1;
11314
11354
  INSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);
11315
11355
  END;
11316
- `);
11317
- db.exec(`
11318
- CREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content ON memories BEGIN
11356
+
11357
+ CREATE TRIGGER memories_au AFTER UPDATE OF content ON memories BEGIN
11358
+ UPDATE ${FTS_STATE_TABLE}
11359
+ SET indexed_count = CASE
11360
+ WHEN indexed_count < 0 THEN CASE WHEN EXISTS(
11361
+ SELECT 1 FROM memories_fts_docsize WHERE id = old.rowid
11362
+ ) THEN 0 ELSE 1 END
11363
+ ELSE indexed_count + CASE WHEN EXISTS(
11364
+ SELECT 1 FROM memories_fts_docsize WHERE id = old.rowid
11365
+ ) THEN 0 ELSE 1 END
11366
+ END,
11367
+ updated_at = datetime('now')
11368
+ WHERE id = 1;
11319
11369
  INSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);
11320
11370
  INSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);
11321
11371
  END;
@@ -11326,11 +11376,23 @@ function recreateMemoriesFtsSchema(db) {
11326
11376
  db.exec("DROP TRIGGER IF EXISTS memories_ad");
11327
11377
  db.exec("DROP TRIGGER IF EXISTS memories_au");
11328
11378
  db.exec("DROP TABLE IF EXISTS memories_fts");
11379
+ db.exec(`DROP TABLE IF EXISTS ${FTS_STATE_TABLE}`);
11329
11380
  createMemoriesFts(db);
11330
11381
  }
11331
11382
  function recreateMemoriesFts(db) {
11332
11383
  recreateMemoriesFtsSchema(db);
11333
11384
  db.exec("INSERT INTO memories_fts(rowid, content) SELECT rowid, content FROM memories");
11385
+ refreshMemoriesFtsState(db);
11386
+ }
11387
+ function refreshMemoriesFtsState(db) {
11388
+ ensureMemoriesFtsState(db);
11389
+ db.exec(`
11390
+ UPDATE ${FTS_STATE_TABLE}
11391
+ SET memory_count = (SELECT COUNT(*) FROM memories),
11392
+ indexed_count = (SELECT COUNT(*) FROM memories_fts_docsize),
11393
+ updated_at = datetime('now')
11394
+ WHERE id = 1;
11395
+ `);
11334
11396
  }
11335
11397
  function readMemoriesFtsSql(db) {
11336
11398
  const row = db.prepare("SELECT sql FROM sqlite_master WHERE name = 'memories_fts' AND type = 'table'").get();
@@ -28595,6 +28657,7 @@ var DAEMON_DERIVED_MEMORY_SOURCE_TYPES2 = [
28595
28657
  "dreaming"
28596
28658
  ];
28597
28659
  var MEMORIES_FTS_TOKENIZER2 = "unicode61";
28660
+ var FTS_STATE_TABLE2 = "memories_fts_state";
28598
28661
  function normalizeSql2(sql) {
28599
28662
  return sql.replace(/\s+/g, " ").trim().toLowerCase();
28600
28663
  }
@@ -28607,18 +28670,67 @@ function createMemoriesFts2(db) {
28607
28670
  tokenize='${MEMORIES_FTS_TOKENIZER2}'
28608
28671
  );
28609
28672
  `);
28673
+ ensureMemoriesFtsState2(db);
28674
+ createMemoriesFtsTriggers2(db);
28675
+ }
28676
+ function ensureMemoriesFtsState2(db) {
28610
28677
  db.exec(`
28611
- CREATE TRIGGER IF NOT EXISTS memories_ai AFTER INSERT ON memories BEGIN
28612
- INSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);
28613
- END;
28678
+ CREATE TABLE IF NOT EXISTS ${FTS_STATE_TABLE2} (
28679
+ id INTEGER PRIMARY KEY CHECK (id = 1),
28680
+ memory_count INTEGER NOT NULL,
28681
+ indexed_count INTEGER NOT NULL,
28682
+ updated_at TEXT NOT NULL
28683
+ );
28684
+ INSERT OR IGNORE INTO ${FTS_STATE_TABLE2} (id, memory_count, indexed_count, updated_at)
28685
+ VALUES (
28686
+ 1,
28687
+ -1,
28688
+ 0,
28689
+ datetime('now')
28690
+ );
28614
28691
  `);
28692
+ }
28693
+ function createMemoriesFtsTriggers2(db) {
28615
28694
  db.exec(`
28616
- CREATE TRIGGER IF NOT EXISTS memories_ad AFTER DELETE ON memories BEGIN
28695
+ DROP TRIGGER IF EXISTS memories_ai;
28696
+ DROP TRIGGER IF EXISTS memories_ad;
28697
+ DROP TRIGGER IF EXISTS memories_au;
28698
+
28699
+ CREATE TRIGGER memories_ai AFTER INSERT ON memories BEGIN
28700
+ INSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);
28701
+ UPDATE ${FTS_STATE_TABLE2}
28702
+ SET memory_count = CASE WHEN memory_count < 0 THEN -1 ELSE memory_count + 1 END,
28703
+ indexed_count = CASE WHEN indexed_count < 0 THEN 0 ELSE indexed_count + 1 END,
28704
+ updated_at = datetime('now')
28705
+ WHERE id = 1;
28706
+ END;
28707
+
28708
+ CREATE TRIGGER memories_ad AFTER DELETE ON memories BEGIN
28709
+ UPDATE ${FTS_STATE_TABLE2}
28710
+ SET memory_count = CASE WHEN memory_count < 0 THEN -1 ELSE MAX(0, memory_count - 1) END,
28711
+ indexed_count = CASE
28712
+ WHEN indexed_count < 0 THEN 0
28713
+ ELSE MAX(0, indexed_count - CASE WHEN EXISTS(
28714
+ SELECT 1 FROM memories_fts_docsize WHERE id = old.rowid
28715
+ ) THEN 1 ELSE 0 END)
28716
+ END,
28717
+ updated_at = datetime('now')
28718
+ WHERE id = 1;
28617
28719
  INSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);
28618
28720
  END;
28619
- `);
28620
- db.exec(`
28621
- CREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content ON memories BEGIN
28721
+
28722
+ CREATE TRIGGER memories_au AFTER UPDATE OF content ON memories BEGIN
28723
+ UPDATE ${FTS_STATE_TABLE2}
28724
+ SET indexed_count = CASE
28725
+ WHEN indexed_count < 0 THEN CASE WHEN EXISTS(
28726
+ SELECT 1 FROM memories_fts_docsize WHERE id = old.rowid
28727
+ ) THEN 0 ELSE 1 END
28728
+ ELSE indexed_count + CASE WHEN EXISTS(
28729
+ SELECT 1 FROM memories_fts_docsize WHERE id = old.rowid
28730
+ ) THEN 0 ELSE 1 END
28731
+ END,
28732
+ updated_at = datetime('now')
28733
+ WHERE id = 1;
28622
28734
  INSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);
28623
28735
  INSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);
28624
28736
  END;
@@ -28629,11 +28741,23 @@ function recreateMemoriesFtsSchema2(db) {
28629
28741
  db.exec("DROP TRIGGER IF EXISTS memories_ad");
28630
28742
  db.exec("DROP TRIGGER IF EXISTS memories_au");
28631
28743
  db.exec("DROP TABLE IF EXISTS memories_fts");
28744
+ db.exec(`DROP TABLE IF EXISTS ${FTS_STATE_TABLE2}`);
28632
28745
  createMemoriesFts2(db);
28633
28746
  }
28634
28747
  function recreateMemoriesFts2(db) {
28635
28748
  recreateMemoriesFtsSchema2(db);
28636
28749
  db.exec("INSERT INTO memories_fts(rowid, content) SELECT rowid, content FROM memories");
28750
+ refreshMemoriesFtsState2(db);
28751
+ }
28752
+ function refreshMemoriesFtsState2(db) {
28753
+ ensureMemoriesFtsState2(db);
28754
+ db.exec(`
28755
+ UPDATE ${FTS_STATE_TABLE2}
28756
+ SET memory_count = (SELECT COUNT(*) FROM memories),
28757
+ indexed_count = (SELECT COUNT(*) FROM memories_fts_docsize),
28758
+ updated_at = datetime('now')
28759
+ WHERE id = 1;
28760
+ `);
28637
28761
  }
28638
28762
  function readMemoriesFtsSql2(db) {
28639
28763
  const row = db.prepare("SELECT sql FROM sqlite_master WHERE name = 'memories_fts' AND type = 'table'").get();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signetai/connector-forge",
3
- "version": "0.206.0",
3
+ "version": "0.206.2",
4
4
  "description": "Signet connector for ForgeCode - installs MCP, identity, and skills integration",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -24,8 +24,8 @@
24
24
  "typecheck": "tsc --noEmit"
25
25
  },
26
26
  "dependencies": {
27
- "@signetai/connector-base": "0.206.0",
28
- "@signetai/core": "0.206.0"
27
+ "@signetai/connector-base": "0.206.2",
28
+ "@signetai/core": "0.206.2"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/node": "^22.0.0",