@signetai/connector-claude-code 0.206.8 → 0.207.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 +270 -10
  2. package/package.json +3 -3
package/dist/index.js CHANGED
@@ -15619,6 +15619,92 @@ function up132(db) {
15619
15619
  ON epistemic_assertions(agent_id, subject_entity_id, status, asserted_at DESC, created_at DESC);
15620
15620
  `);
15621
15621
  }
15622
+ function up133(db) {
15623
+ db.exec(`
15624
+ CREATE TABLE IF NOT EXISTS memory_head_revisions (
15625
+ id TEXT PRIMARY KEY,
15626
+ agent_id TEXT NOT NULL,
15627
+ revision INTEGER NOT NULL,
15628
+ content TEXT NOT NULL,
15629
+ content_hash TEXT NOT NULL,
15630
+ rendered_token_count INTEGER NOT NULL,
15631
+ pass_id TEXT NOT NULL,
15632
+ base_revision INTEGER NOT NULL,
15633
+ base_hash TEXT NOT NULL,
15634
+ created_at TEXT NOT NULL,
15635
+ UNIQUE(agent_id, revision)
15636
+ );
15637
+ CREATE INDEX IF NOT EXISTS idx_memory_head_revisions_agent
15638
+ ON memory_head_revisions(agent_id, revision DESC);
15639
+ CREATE TABLE IF NOT EXISTS memory_head_entries (
15640
+ entry_id TEXT PRIMARY KEY,
15641
+ agent_id TEXT NOT NULL,
15642
+ canonical_text TEXT NOT NULL,
15643
+ entry_hash TEXT NOT NULL,
15644
+ status TEXT NOT NULL CHECK(status IN ('active','removed','superseded')),
15645
+ first_revision INTEGER NOT NULL,
15646
+ last_revision INTEGER NOT NULL,
15647
+ created_at TEXT NOT NULL,
15648
+ updated_at TEXT NOT NULL
15649
+ );
15650
+ CREATE INDEX IF NOT EXISTS idx_memory_head_entries_agent
15651
+ ON memory_head_entries(agent_id, entry_id, last_revision DESC);
15652
+ CREATE TABLE IF NOT EXISTS memory_head_revision_entries (
15653
+ agent_id TEXT NOT NULL,
15654
+ revision INTEGER NOT NULL,
15655
+ entry_id TEXT NOT NULL,
15656
+ ordinal INTEGER NOT NULL,
15657
+ operation TEXT NOT NULL CHECK(operation IN ('add','update','remove','retain')),
15658
+ provenance_json TEXT NOT NULL,
15659
+ PRIMARY KEY(agent_id, revision, entry_id),
15660
+ UNIQUE(agent_id, revision, ordinal)
15661
+ );
15662
+ CREATE INDEX IF NOT EXISTS idx_memory_head_revision_entries_entry
15663
+ ON memory_head_revision_entries(agent_id, entry_id, revision DESC);
15664
+ `);
15665
+ const columns = db.prepare("PRAGMA table_info(memory_md_heads)").all();
15666
+ const names = new Set(columns.map((column) => String(column.name)));
15667
+ if (!names.has("revision_id"))
15668
+ db.exec("ALTER TABLE memory_md_heads ADD COLUMN revision_id TEXT");
15669
+ if (!names.has("pass_id"))
15670
+ db.exec("ALTER TABLE memory_md_heads ADD COLUMN pass_id TEXT");
15671
+ if (!names.has("format_version"))
15672
+ db.exec("ALTER TABLE memory_md_heads ADD COLUMN format_version INTEGER NOT NULL DEFAULT 1");
15673
+ }
15674
+ function up134(db) {
15675
+ db.exec(`
15676
+ CREATE TABLE memory_head_entries_v134 (
15677
+ entry_id TEXT NOT NULL, agent_id TEXT NOT NULL, canonical_text TEXT NOT NULL,
15678
+ entry_hash TEXT NOT NULL, status TEXT NOT NULL CHECK(status IN ('active','removed','superseded')),
15679
+ first_revision INTEGER NOT NULL, last_revision INTEGER NOT NULL,
15680
+ created_at TEXT NOT NULL, updated_at TEXT NOT NULL,
15681
+ PRIMARY KEY(agent_id, entry_id)
15682
+ );
15683
+ INSERT INTO memory_head_entries_v134
15684
+ SELECT entry_id, agent_id, canonical_text, entry_hash, status, first_revision, last_revision, created_at, updated_at
15685
+ FROM memory_head_entries;
15686
+ DROP TABLE memory_head_entries;
15687
+ ALTER TABLE memory_head_entries_v134 RENAME TO memory_head_entries;
15688
+ CREATE INDEX idx_memory_head_entries_agent
15689
+ ON memory_head_entries(agent_id, entry_id, last_revision DESC);
15690
+ `);
15691
+ }
15692
+ function up135(db) {
15693
+ db.exec(`
15694
+ CREATE TABLE IF NOT EXISTS memory_head_publications (
15695
+ agent_id TEXT NOT NULL,
15696
+ revision INTEGER NOT NULL,
15697
+ revision_id TEXT NOT NULL,
15698
+ status TEXT NOT NULL CHECK(status IN ('pending', 'completed')),
15699
+ created_at TEXT NOT NULL,
15700
+ completed_at TEXT,
15701
+ PRIMARY KEY(agent_id, revision),
15702
+ UNIQUE(agent_id, revision_id)
15703
+ );
15704
+ CREATE INDEX IF NOT EXISTS idx_memory_head_publications_pending
15705
+ ON memory_head_publications(agent_id, status, revision DESC);
15706
+ `);
15707
+ }
15622
15708
  var MIGRATIONS = [
15623
15709
  {
15624
15710
  version: 1,
@@ -16673,6 +16759,24 @@ var MIGRATIONS = [
16673
16759
  name: "observer-scoped-epistemic-assertions",
16674
16760
  up: up132,
16675
16761
  artifacts: { tables: ["epistemic_assertions"] }
16762
+ },
16763
+ {
16764
+ version: 133,
16765
+ name: "dreaming-memory-head",
16766
+ up: up133,
16767
+ artifacts: { tables: ["memory_head_revisions", "memory_head_entries", "memory_head_revision_entries"] }
16768
+ },
16769
+ {
16770
+ version: 134,
16771
+ name: "scope-memory-head-entries",
16772
+ up: up134,
16773
+ artifacts: { tables: ["memory_head_entries"] }
16774
+ },
16775
+ {
16776
+ version: 135,
16777
+ name: "memory-head-publication",
16778
+ up: up135,
16779
+ artifacts: { tables: ["memory_head_publications"] }
16676
16780
  }
16677
16781
  ];
16678
16782
  var LATEST_SCHEMA_VERSION = MIGRATIONS[MIGRATIONS.length - 1]?.version ?? 0;
@@ -16708,16 +16812,42 @@ function classifyError(error) {
16708
16812
  }
16709
16813
  return { state: "corrupt", message };
16710
16814
  }
16815
+ function tryRequireOverride() {
16816
+ const override = process.env.SIGNET_KEYRING_NATIVE_MODULE_PATH?.trim();
16817
+ if (!override)
16818
+ return null;
16819
+ const isAbsolute2 = override.startsWith("/") || /^\\\\[^\\]+\\[^\\]+/.test(override) || /^[A-Za-z]:[\\/]/.test(override);
16820
+ if (!isAbsolute2)
16821
+ return null;
16822
+ try {
16823
+ return require2(override);
16824
+ } catch {
16825
+ return null;
16826
+ }
16827
+ }
16711
16828
  async function loadModule() {
16712
- modulePromise ??= Promise.resolve().then(() => __toESM2(require_keyring(), 1)).catch(() => null);
16829
+ modulePromise ??= (async () => {
16830
+ const override = process.env.SIGNET_KEYRING_NATIVE_MODULE_PATH?.trim();
16831
+ if (override)
16832
+ return tryRequireOverride();
16833
+ return await Promise.resolve().then(() => __toESM2(require_keyring(), 1)).catch(() => null);
16834
+ })();
16713
16835
  return modulePromise;
16714
16836
  }
16715
16837
  function loadModuleSync() {
16716
16838
  if (syncModule !== undefined)
16717
16839
  return syncModule;
16840
+ if (process.env.SIGNET_KEYRING_NATIVE_MODULE_PATH?.trim()) {
16841
+ syncModule = tryRequireOverride();
16842
+ return syncModule;
16843
+ }
16844
+ const override = tryRequireOverride();
16845
+ if (override) {
16846
+ syncModule = override;
16847
+ return syncModule;
16848
+ }
16718
16849
  try {
16719
- const mod = require2("@napi-rs/keyring");
16720
- syncModule = mod;
16850
+ syncModule = require2("@napi-rs/keyring");
16721
16851
  } catch {
16722
16852
  syncModule = null;
16723
16853
  }
@@ -28510,7 +28640,7 @@ function memoriesFtsNeedsTokenizerRepair2(sql) {
28510
28640
  return true;
28511
28641
  return !normalized.includes(`tokenize='${MEMORIES_FTS_TOKENIZER2}'`);
28512
28642
  }
28513
- function up133(db) {
28643
+ function up136(db) {
28514
28644
  db.exec(`
28515
28645
  CREATE TABLE IF NOT EXISTS schema_migrations (
28516
28646
  version INTEGER PRIMARY KEY,
@@ -28994,7 +29124,7 @@ function addColumnIfMissing52(db, table, column, definition) {
28994
29124
  db.exec(`ALTER TABLE ${table} ADD COLUMN ${column} ${definition}`);
28995
29125
  }
28996
29126
  }
28997
- function up134(db) {
29127
+ function up137(db) {
28998
29128
  db.exec(`
28999
29129
  CREATE TABLE IF NOT EXISTS ingestion_jobs (
29000
29130
  id TEXT PRIMARY KEY,
@@ -32749,11 +32879,97 @@ function up1322(db) {
32749
32879
  ON epistemic_assertions(agent_id, subject_entity_id, status, asserted_at DESC, created_at DESC);
32750
32880
  `);
32751
32881
  }
32882
+ function up1332(db) {
32883
+ db.exec(`
32884
+ CREATE TABLE IF NOT EXISTS memory_head_revisions (
32885
+ id TEXT PRIMARY KEY,
32886
+ agent_id TEXT NOT NULL,
32887
+ revision INTEGER NOT NULL,
32888
+ content TEXT NOT NULL,
32889
+ content_hash TEXT NOT NULL,
32890
+ rendered_token_count INTEGER NOT NULL,
32891
+ pass_id TEXT NOT NULL,
32892
+ base_revision INTEGER NOT NULL,
32893
+ base_hash TEXT NOT NULL,
32894
+ created_at TEXT NOT NULL,
32895
+ UNIQUE(agent_id, revision)
32896
+ );
32897
+ CREATE INDEX IF NOT EXISTS idx_memory_head_revisions_agent
32898
+ ON memory_head_revisions(agent_id, revision DESC);
32899
+ CREATE TABLE IF NOT EXISTS memory_head_entries (
32900
+ entry_id TEXT PRIMARY KEY,
32901
+ agent_id TEXT NOT NULL,
32902
+ canonical_text TEXT NOT NULL,
32903
+ entry_hash TEXT NOT NULL,
32904
+ status TEXT NOT NULL CHECK(status IN ('active','removed','superseded')),
32905
+ first_revision INTEGER NOT NULL,
32906
+ last_revision INTEGER NOT NULL,
32907
+ created_at TEXT NOT NULL,
32908
+ updated_at TEXT NOT NULL
32909
+ );
32910
+ CREATE INDEX IF NOT EXISTS idx_memory_head_entries_agent
32911
+ ON memory_head_entries(agent_id, entry_id, last_revision DESC);
32912
+ CREATE TABLE IF NOT EXISTS memory_head_revision_entries (
32913
+ agent_id TEXT NOT NULL,
32914
+ revision INTEGER NOT NULL,
32915
+ entry_id TEXT NOT NULL,
32916
+ ordinal INTEGER NOT NULL,
32917
+ operation TEXT NOT NULL CHECK(operation IN ('add','update','remove','retain')),
32918
+ provenance_json TEXT NOT NULL,
32919
+ PRIMARY KEY(agent_id, revision, entry_id),
32920
+ UNIQUE(agent_id, revision, ordinal)
32921
+ );
32922
+ CREATE INDEX IF NOT EXISTS idx_memory_head_revision_entries_entry
32923
+ ON memory_head_revision_entries(agent_id, entry_id, revision DESC);
32924
+ `);
32925
+ const columns = db.prepare("PRAGMA table_info(memory_md_heads)").all();
32926
+ const names = new Set(columns.map((column) => String(column.name)));
32927
+ if (!names.has("revision_id"))
32928
+ db.exec("ALTER TABLE memory_md_heads ADD COLUMN revision_id TEXT");
32929
+ if (!names.has("pass_id"))
32930
+ db.exec("ALTER TABLE memory_md_heads ADD COLUMN pass_id TEXT");
32931
+ if (!names.has("format_version"))
32932
+ db.exec("ALTER TABLE memory_md_heads ADD COLUMN format_version INTEGER NOT NULL DEFAULT 1");
32933
+ }
32934
+ function up1342(db) {
32935
+ db.exec(`
32936
+ CREATE TABLE memory_head_entries_v134 (
32937
+ entry_id TEXT NOT NULL, agent_id TEXT NOT NULL, canonical_text TEXT NOT NULL,
32938
+ entry_hash TEXT NOT NULL, status TEXT NOT NULL CHECK(status IN ('active','removed','superseded')),
32939
+ first_revision INTEGER NOT NULL, last_revision INTEGER NOT NULL,
32940
+ created_at TEXT NOT NULL, updated_at TEXT NOT NULL,
32941
+ PRIMARY KEY(agent_id, entry_id)
32942
+ );
32943
+ INSERT INTO memory_head_entries_v134
32944
+ SELECT entry_id, agent_id, canonical_text, entry_hash, status, first_revision, last_revision, created_at, updated_at
32945
+ FROM memory_head_entries;
32946
+ DROP TABLE memory_head_entries;
32947
+ ALTER TABLE memory_head_entries_v134 RENAME TO memory_head_entries;
32948
+ CREATE INDEX idx_memory_head_entries_agent
32949
+ ON memory_head_entries(agent_id, entry_id, last_revision DESC);
32950
+ `);
32951
+ }
32952
+ function up1352(db) {
32953
+ db.exec(`
32954
+ CREATE TABLE IF NOT EXISTS memory_head_publications (
32955
+ agent_id TEXT NOT NULL,
32956
+ revision INTEGER NOT NULL,
32957
+ revision_id TEXT NOT NULL,
32958
+ status TEXT NOT NULL CHECK(status IN ('pending', 'completed')),
32959
+ created_at TEXT NOT NULL,
32960
+ completed_at TEXT,
32961
+ PRIMARY KEY(agent_id, revision),
32962
+ UNIQUE(agent_id, revision_id)
32963
+ );
32964
+ CREATE INDEX IF NOT EXISTS idx_memory_head_publications_pending
32965
+ ON memory_head_publications(agent_id, status, revision DESC);
32966
+ `);
32967
+ }
32752
32968
  var MIGRATIONS2 = [
32753
32969
  {
32754
32970
  version: 1,
32755
32971
  name: "baseline",
32756
- up: up133,
32972
+ up: up136,
32757
32973
  artifacts: { tables: ["memories", "conversations", "embeddings"] }
32758
32974
  },
32759
32975
  {
@@ -32831,7 +33047,7 @@ var MIGRATIONS2 = [
32831
33047
  {
32832
33048
  version: 13,
32833
33049
  name: "ingestion-tracking",
32834
- up: up134,
33050
+ up: up137,
32835
33051
  artifacts: {
32836
33052
  columns: [
32837
33053
  { table: "memories", column: "source_path" },
@@ -33803,6 +34019,24 @@ var MIGRATIONS2 = [
33803
34019
  name: "observer-scoped-epistemic-assertions",
33804
34020
  up: up1322,
33805
34021
  artifacts: { tables: ["epistemic_assertions"] }
34022
+ },
34023
+ {
34024
+ version: 133,
34025
+ name: "dreaming-memory-head",
34026
+ up: up1332,
34027
+ artifacts: { tables: ["memory_head_revisions", "memory_head_entries", "memory_head_revision_entries"] }
34028
+ },
34029
+ {
34030
+ version: 134,
34031
+ name: "scope-memory-head-entries",
34032
+ up: up1342,
34033
+ artifacts: { tables: ["memory_head_entries"] }
34034
+ },
34035
+ {
34036
+ version: 135,
34037
+ name: "memory-head-publication",
34038
+ up: up1352,
34039
+ artifacts: { tables: ["memory_head_publications"] }
33806
34040
  }
33807
34041
  ];
33808
34042
  var LATEST_SCHEMA_VERSION2 = MIGRATIONS2[MIGRATIONS2.length - 1]?.version ?? 0;
@@ -33845,16 +34079,42 @@ function classifyError2(error) {
33845
34079
  }
33846
34080
  return { state: "corrupt", message };
33847
34081
  }
34082
+ function tryRequireOverride2() {
34083
+ const override = process.env.SIGNET_KEYRING_NATIVE_MODULE_PATH?.trim();
34084
+ if (!override)
34085
+ return null;
34086
+ const isAbsolute2 = override.startsWith("/") || /^\\\\[^\\]+\\[^\\]+/.test(override) || /^[A-Za-z]:[\\/]/.test(override);
34087
+ if (!isAbsolute2)
34088
+ return null;
34089
+ try {
34090
+ return require22(override);
34091
+ } catch {
34092
+ return null;
34093
+ }
34094
+ }
33848
34095
  async function loadModule2() {
33849
- modulePromise2 ??= Promise.resolve().then(() => __toESM(require_keyring2(), 1)).catch(() => null);
34096
+ modulePromise2 ??= (async () => {
34097
+ const override = process.env.SIGNET_KEYRING_NATIVE_MODULE_PATH?.trim();
34098
+ if (override)
34099
+ return tryRequireOverride2();
34100
+ return await Promise.resolve().then(() => __toESM(require_keyring2(), 1)).catch(() => null);
34101
+ })();
33850
34102
  return modulePromise2;
33851
34103
  }
33852
34104
  function loadModuleSync2() {
33853
34105
  if (syncModule2 !== undefined)
33854
34106
  return syncModule2;
34107
+ if (process.env.SIGNET_KEYRING_NATIVE_MODULE_PATH?.trim()) {
34108
+ syncModule2 = tryRequireOverride2();
34109
+ return syncModule2;
34110
+ }
34111
+ const override = tryRequireOverride2();
34112
+ if (override) {
34113
+ syncModule2 = override;
34114
+ return syncModule2;
34115
+ }
33855
34116
  try {
33856
- const mod = require22("@napi-rs/keyring");
33857
- syncModule2 = mod;
34117
+ syncModule2 = require22("@napi-rs/keyring");
33858
34118
  } catch {
33859
34119
  syncModule2 = null;
33860
34120
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signetai/connector-claude-code",
3
- "version": "0.206.8",
3
+ "version": "0.207.2",
4
4
  "description": "Signet connector for Claude Code (Anthropic CLI)",
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.8",
28
- "@signetai/core": "0.206.8"
27
+ "@signetai/connector-base": "0.207.2",
28
+ "@signetai/core": "0.207.2"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/node": "^22.0.0",