@signetai/signet-memory-openclaw 0.227.1 → 0.228.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG7D,OAAO,KAAK,EAAE,iBAAiB,EAAsB,MAAM,qBAAqB,CAAC;AA4FjF,MAAM,WAAW,YAAY;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AA6FD,MAAM,WAAW,gBAAgB;IAChC,aAAa,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,YAAY;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACnB;AA0FD,wBAAsB,eAAe,CAAC,SAAS,SAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,CAStF;AAuBD,wBAAsB,cAAc,CACnC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACf,GACJ,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAmBpC;AAED,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,GACC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAexC;AAED,wBAAsB,eAAe,CACpC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,GACC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAYxC;AAED,wBAAsB,eAAe,CACpC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACf,GACJ,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAYrC;AAED,wBAAsB,oBAAoB,CACzC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CACZ,GACJ,OAAO,CAAC,OAAO,CAAC,CAkBlB;AAED,wBAAsB,YAAY,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACX,GACJ,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAkBlC;AAED,wBAAsB,YAAY,CACjC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC/C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;CACrB,GACJ,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAmB/B;AAED,wBAAsB,YAAY,CACjC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACb,GACJ,OAAO,CAAC,SAAS,EAAE,CAAC,CAGtB;AAED,wBAAsB,aAAa,CAClC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CACV,GACJ,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAczB;AAED,wBAAsB,WAAW,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CAChB,GACJ,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAcxB;AAED,wBAAsB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAG9G;AAED,wBAAsB,UAAU,CAC/B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAClF,OAAO,CAAC;IAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,CAgBtE;AAED,wBAAsB,YAAY,CACjC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE;IACN,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,EACD,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAClC,OAAO,CAAC,OAAO,CAAC,CAQlB;AAED,wBAAsB,YAAY,CACjC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,GACC,OAAO,CAAC,OAAO,CAAC,CAelB;AAED,wBAAsB,QAAQ,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CAChB,GACJ,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAExB;AAED,wBAAsB,MAAM,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACb,GACJ,OAAO,CAAC,SAAS,EAAE,CAAC,CAEtB;AAuBD,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,SAAwB,GAAG,IAAI,CAU1G;AAaD,iBAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAgBlE;AACD,iBAAS,eAAe,CAAC,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAW7D;AACD,iBAAS,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAelE;AAED,iBAAS,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAM/C;AACD,iBAAS,wBAAwB,IAAI,MAAM,GAAG,SAAS,CAkBtD;AACD,iBAAS,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAQlF;AAED,iBAAS,qBAAqB,IAAI,MAAM,IAAI,CA2C3C;AACD,iBAAS,oBAAoB,IAAI,CAAC,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,CA0BjF;AAED,iBAAS,mBAAmB,IAAI,MAAM,IAAI,CA6CzC;AAwMD,QAAA,MAAM,YAAY;;;;;;qBA1bJ,OAAO,GAAG,YAAY;;kBAicrB,iBAAiB,GAAG,IAAI;CA+8BtC,CAAC;AACF,wBAAgB,kBAAkB,IAAI,IAAI,CAIzC;AACD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;CAYhB,CAAC;AAEX,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -18,11 +18,11 @@ var __require = /* @__PURE__ */ createRequire(import.meta.url);
18
18
  // src/index.ts
19
19
  import { existsSync, readFileSync } from "node:fs";
20
20
  import { homedir } from "node:os";
21
- import { join as join3 } from "node:path";
21
+ import { join as join5 } from "node:path";
22
22
 
23
23
  // ../../../platform/core/dist/index.js
24
24
  import { createRequire as createRequire2 } from "node:module";
25
- import { dirname, join } from "node:path";
25
+ import { dirname, join, resolve } from "node:path";
26
26
  import { fileURLToPath } from "node:url";
27
27
  import {
28
28
  execFile as nodeExecFile,
@@ -33,13 +33,30 @@ import {
33
33
  } from "node:child_process";
34
34
  import { promisify } from "node:util";
35
35
  import { createHash } from "node:crypto";
36
+ import { homedir as homedir2 } from "node:os";
37
+ import { join as join2, resolve as resolve2 } from "node:path";
38
+ import { constants as fsConstants } from "node:fs";
39
+ import {
40
+ closeSync as closeSync3,
41
+ existsSync as existsSync12,
42
+ fsyncSync as fsyncSync2,
43
+ mkdirSync as mkdirSync6,
44
+ openSync as openSync3,
45
+ readFileSync as readFileSync9,
46
+ renameSync as renameSync3,
47
+ rmSync as rmSync3,
48
+ statSync as statSync5,
49
+ writeSync
50
+ } from "node:fs";
51
+ import { homedir as homedir4 } from "node:os";
52
+ import { dirname as dirname5, join as join13, resolve as resolve7 } from "node:path";
36
53
  import { createRequire as createRequire22 } from "node:module";
37
54
  import { homedir as homedir5 } from "node:os";
38
- import { dirname as dirname5, join as join9, resolve as resolve3 } from "node:path";
55
+ import { dirname as dirname6, join as join14, resolve as resolve8 } from "node:path";
39
56
  import { homedir as homedir6, platform as platform2 } from "node:os";
40
- import { basename, dirname as dirname6, resolve as resolve5 } from "node:path";
41
- import { existsSync as existsSync12, readFileSync as readFileSync9, realpathSync, statSync as statSync7 } from "node:fs";
42
- import { dirname as dirname7, join as join12 } from "node:path";
57
+ import { basename, dirname as dirname7, resolve as resolve9 } from "node:path";
58
+ import { existsSync as existsSync16, readFileSync as readFileSync13, realpathSync, statSync as statSync8 } from "node:fs";
59
+ import { dirname as dirname8, join as join16 } from "node:path";
43
60
  import { homedir as homedir8 } from "node:os";
44
61
  var __create = Object.create;
45
62
  var __getProtoOf = Object.getPrototypeOf;
@@ -16153,6 +16170,102 @@ function up159(db) {
16153
16170
  ON memories(agent_id, memory_kind);
16154
16171
  `);
16155
16172
  }
16173
+ var ledgerColumns = [
16174
+ "key",
16175
+ "agent_id",
16176
+ "workspace_id",
16177
+ "file_name",
16178
+ "status",
16179
+ "original_path",
16180
+ "sha256",
16181
+ "size_bytes",
16182
+ "request_fingerprint",
16183
+ "source_id",
16184
+ "lease_token",
16185
+ "lease_expires_at",
16186
+ "attempt_count",
16187
+ "error",
16188
+ "created_at",
16189
+ "updated_at"
16190
+ ];
16191
+ function columns(db, table) {
16192
+ return new Set(db.prepare(`PRAGMA table_info(${table})`).all().map((row) => String(row.name)));
16193
+ }
16194
+ function addMissingColumns(db, table, definitions) {
16195
+ const present = columns(db, table);
16196
+ for (const definition of definitions) {
16197
+ const name = definition.split(" ", 1)[0];
16198
+ if (!present.has(name))
16199
+ db.exec(`ALTER TABLE ${table} ADD COLUMN ${definition}`);
16200
+ }
16201
+ }
16202
+ function rebuildLedgerWithoutGlobalKeyPrimaryKey(db) {
16203
+ const keyInfo = db.prepare("PRAGMA table_info(import_admission_ledger)").all().find((row) => row.name === "key");
16204
+ if (!keyInfo || Number(keyInfo.pk) === 0)
16205
+ return;
16206
+ const savepoint = "migration_158_rebuild_ledger";
16207
+ db.exec(`SAVEPOINT ${savepoint}`);
16208
+ try {
16209
+ db.exec(`
16210
+ CREATE TABLE import_admission_ledger_v158 (
16211
+ key TEXT NOT NULL, agent_id TEXT NOT NULL DEFAULT '', workspace_id TEXT NOT NULL DEFAULT '',
16212
+ file_name TEXT NOT NULL, status TEXT NOT NULL CHECK (status IN ('pending','processing','imported','duplicate','failed','quarantined','original_unavailable')),
16213
+ original_path TEXT NOT NULL, sha256 TEXT NOT NULL, size_bytes INTEGER NOT NULL,
16214
+ request_fingerprint TEXT NOT NULL DEFAULT '', source_id TEXT, lease_token TEXT, lease_expires_at TEXT,
16215
+ attempt_count INTEGER NOT NULL DEFAULT 0, error TEXT, created_at TEXT NOT NULL, updated_at TEXT NOT NULL
16216
+ );
16217
+ INSERT INTO import_admission_ledger_v158 (${ledgerColumns.join(",")})
16218
+ SELECT ${ledgerColumns.join(",")} FROM import_admission_ledger;
16219
+ DROP TABLE import_admission_ledger;
16220
+ ALTER TABLE import_admission_ledger_v158 RENAME TO import_admission_ledger;
16221
+ `);
16222
+ db.exec(`RELEASE ${savepoint}`);
16223
+ } catch (error) {
16224
+ try {
16225
+ db.exec(`ROLLBACK TO SAVEPOINT ${savepoint}`);
16226
+ } finally {
16227
+ try {
16228
+ db.exec(`RELEASE ${savepoint}`);
16229
+ } catch {}
16230
+ }
16231
+ throw error;
16232
+ }
16233
+ }
16234
+ function up160(db) {
16235
+ db.exec(`
16236
+ CREATE TABLE IF NOT EXISTS import_admission_ledger (
16237
+ key TEXT NOT NULL, agent_id TEXT NOT NULL, workspace_id TEXT NOT NULL DEFAULT '', file_name TEXT NOT NULL,
16238
+ status TEXT NOT NULL CHECK (status IN ('pending','processing','imported','duplicate','failed','quarantined','original_unavailable')),
16239
+ original_path TEXT NOT NULL, sha256 TEXT NOT NULL, size_bytes INTEGER NOT NULL,
16240
+ request_fingerprint TEXT NOT NULL DEFAULT '', source_id TEXT, lease_token TEXT, lease_expires_at TEXT,
16241
+ attempt_count INTEGER NOT NULL DEFAULT 0, error TEXT, created_at TEXT NOT NULL, updated_at TEXT NOT NULL
16242
+ );
16243
+ CREATE TABLE IF NOT EXISTS import_admission_events (
16244
+ id INTEGER PRIMARY KEY AUTOINCREMENT, admission_key TEXT NOT NULL, agent_id TEXT NOT NULL DEFAULT '',
16245
+ workspace_id TEXT NOT NULL DEFAULT '', event TEXT NOT NULL, created_at TEXT NOT NULL
16246
+ );
16247
+ `);
16248
+ addMissingColumns(db, "import_admission_ledger", [
16249
+ "agent_id TEXT NOT NULL DEFAULT ''",
16250
+ "workspace_id TEXT NOT NULL DEFAULT ''",
16251
+ "request_fingerprint TEXT NOT NULL DEFAULT ''",
16252
+ "source_id TEXT",
16253
+ "lease_token TEXT",
16254
+ "lease_expires_at TEXT",
16255
+ "attempt_count INTEGER NOT NULL DEFAULT 0",
16256
+ "error TEXT"
16257
+ ]);
16258
+ addMissingColumns(db, "import_admission_events", [
16259
+ "agent_id TEXT NOT NULL DEFAULT ''",
16260
+ "workspace_id TEXT NOT NULL DEFAULT ''"
16261
+ ]);
16262
+ rebuildLedgerWithoutGlobalKeyPrimaryKey(db);
16263
+ db.exec(`
16264
+ CREATE UNIQUE INDEX IF NOT EXISTS uq_import_admission_scope_key ON import_admission_ledger(key, agent_id, workspace_id);
16265
+ CREATE INDEX IF NOT EXISTS idx_import_admission_status ON import_admission_ledger(agent_id, workspace_id, status, updated_at);
16266
+ CREATE INDEX IF NOT EXISTS idx_import_admission_events_key ON import_admission_events(admission_key, agent_id, workspace_id, id);
16267
+ `);
16268
+ }
16156
16269
  var MIGRATIONS = [
16157
16270
  {
16158
16271
  version: 1,
@@ -17441,6 +17554,18 @@ var MIGRATIONS = [
17441
17554
  version: 159,
17442
17555
  name: "retire-obsolete-invocation-ledger",
17443
17556
  up: up5
17557
+ },
17558
+ {
17559
+ version: 160,
17560
+ name: "import-admission-ledger",
17561
+ up: up160,
17562
+ artifacts: {
17563
+ tables: ["import_admission_ledger", "import_admission_events"],
17564
+ indexes: ["idx_import_admission_status", "idx_import_admission_events_key"],
17565
+ columns: [
17566
+ ...["workspace_id", "request_fingerprint", "source_id", "lease_token", "lease_expires_at", "attempt_count"].map((column) => ({ table: "import_admission_ledger", column }))
17567
+ ]
17568
+ }
17444
17569
  }
17445
17570
  ];
17446
17571
  var LATEST_SCHEMA_VERSION = MIGRATIONS[MIGRATIONS.length - 1]?.version ?? 0;
@@ -17448,6 +17573,105 @@ var NETWORK_FILESYSTEM_TYPES = new Set(["afpfs", "nfs", "smbfs", "webdav"]);
17448
17573
  var __filename2 = fileURLToPath(import.meta.url);
17449
17574
  var __dirname2 = dirname(__filename2);
17450
17575
  var import_yaml = __toESM(require_dist(), 1);
17576
+ function expandHome(p2, home = homedir2()) {
17577
+ if (p2 === "~")
17578
+ return home;
17579
+ if (p2.startsWith("~/") || p2.startsWith("~\\"))
17580
+ return join2(home, p2.slice(2));
17581
+ return p2;
17582
+ }
17583
+ var SIGNET_SOURCE_CHECKOUT_DIRNAME = "signetai";
17584
+ var SIGNET_GIT_ALLOWED_DIRECTORIES = ["skills", "tools", "dreaming"];
17585
+ var SIGNET_GIT_PROTECTED_PATHS = [
17586
+ ".daemon",
17587
+ ".secrets",
17588
+ ".shadow",
17589
+ "cache",
17590
+ "data",
17591
+ "files",
17592
+ "runtime",
17593
+ "workspace-layout.json",
17594
+ "node_modules",
17595
+ ":(glob)**/node_modules/**",
17596
+ `${SIGNET_SOURCE_CHECKOUT_DIRNAME}`,
17597
+ "memory/backups",
17598
+ "memory/memories.db",
17599
+ ":(glob)memory/memories.db*",
17600
+ ":(glob)memory/**/*.db",
17601
+ ":(glob)memory/**/*.db-*",
17602
+ ":(glob)memory/**/*.db-journal",
17603
+ ":(glob)memory/**/*.db-shm",
17604
+ ":(glob)memory/**/*.db-wal",
17605
+ ":(glob)memory/**/*.sqlite",
17606
+ ":(glob)memory/**/*.sqlite3",
17607
+ ":(glob)**/*.db",
17608
+ ":(glob)**/*.db-*",
17609
+ ":(glob)**/*.db-journal",
17610
+ ":(glob)**/*.db-shm",
17611
+ ":(glob)**/*.db-wal",
17612
+ ":(glob)**/*.sqlite",
17613
+ ":(glob)**/*.sqlite3"
17614
+ ];
17615
+ var SIGNET_GIT_TRACKED_PATHS = [
17616
+ "*.md",
17617
+ ":(glob)**/*.md",
17618
+ "*.json",
17619
+ ":(glob)**/*.json",
17620
+ "*.jsonl",
17621
+ ":(glob)**/*.jsonl",
17622
+ "*.html",
17623
+ ":(glob)**/*.html",
17624
+ "*.yaml",
17625
+ ":(glob)**/*.yaml",
17626
+ "*.yml",
17627
+ ":(glob)**/*.yml",
17628
+ ...SIGNET_GIT_ALLOWED_DIRECTORIES
17629
+ ];
17630
+ var SIGNET_GITIGNORE_PROTECTED_PATTERNS = [
17631
+ ".daemon/",
17632
+ ".secrets/",
17633
+ ".shadow/",
17634
+ "cache/",
17635
+ "data/",
17636
+ "files/",
17637
+ "runtime/",
17638
+ "workspace-layout.json",
17639
+ "node_modules/",
17640
+ `${SIGNET_SOURCE_CHECKOUT_DIRNAME}/`,
17641
+ "memory/memories.db*",
17642
+ "memory/**/*.db",
17643
+ "memory/**/*.db-*",
17644
+ "memory/**/*.db-journal",
17645
+ "memory/**/*.db-shm",
17646
+ "memory/**/*.db-wal",
17647
+ "memory/**/*.sqlite",
17648
+ "memory/**/*.sqlite3",
17649
+ "memory/backups/",
17650
+ "*.db",
17651
+ "*.db-*",
17652
+ "*.db-journal",
17653
+ "*.db-shm",
17654
+ "*.db-wal",
17655
+ "*.sqlite",
17656
+ "*.sqlite3"
17657
+ ];
17658
+ var DESCRIPTOR_ROOT = process.platform === "linux" ? "/proc/self/fd" : process.platform === "darwin" ? "/dev/fd" : undefined;
17659
+ var DIRECTORY_FLAGS = fsConstants.O_RDONLY | (fsConstants.O_DIRECTORY ?? 0) | (fsConstants.O_NOFOLLOW ?? 0);
17660
+ var FILE_FLAGS = fsConstants.O_RDONLY | (fsConstants.O_NOFOLLOW ?? 0) | (fsConstants.O_NONBLOCK ?? 0);
17661
+ var NOFOLLOW = fsConstants.O_NOFOLLOW ?? 0;
17662
+ var PROTECTION_COMPONENT_IDS = [
17663
+ "root-authored",
17664
+ "skills",
17665
+ "managed-originals",
17666
+ "sqlite",
17667
+ "transcripts",
17668
+ "external-sources",
17669
+ "runtime",
17670
+ "filesystem-cache",
17671
+ "secrets"
17672
+ ];
17673
+ var ORDER = new Map(PROTECTION_COMPONENT_IDS.map((id, index) => [id, index]));
17674
+ var BLOCKING = new Set(["missing", "stale", "degraded"]);
17451
17675
  var STATES = new Set([
17452
17676
  "found",
17453
17677
  "missing",
@@ -17584,86 +17808,125 @@ function wrapMemoryContext(context, source = "api-context") {
17584
17808
  ${clean}
17585
17809
  </signet-memory>`;
17586
17810
  }
17811
+ var WORKSPACE_ENV_KEYS = ["SIGNET_PATH", "SIGNET_WORKSPACE"];
17812
+ var DEFAULT_AGENTS_DIRNAME = ".agents";
17813
+ function normalizeWorkspacePath(pathValue, home = homedir4()) {
17814
+ return resolve7(expandHome(pathValue.trim(), home));
17815
+ }
17816
+ function readTrimmedEnv(env, name) {
17817
+ const value = env[name];
17818
+ if (typeof value !== "string")
17819
+ return;
17820
+ const trimmed = value.trim();
17821
+ return trimmed.length > 0 ? trimmed : undefined;
17822
+ }
17823
+ function readConfigHome(env, home) {
17824
+ const raw = env.XDG_CONFIG_HOME;
17825
+ if (typeof raw !== "string")
17826
+ return join13(home, ".config");
17827
+ const trimmed = raw.trim();
17828
+ return trimmed.length > 0 ? normalizeWorkspacePath(trimmed, home) : join13(home, ".config");
17829
+ }
17830
+ function isExistingDirectory(path) {
17831
+ try {
17832
+ return statSync5(path).isDirectory();
17833
+ } catch {
17834
+ return false;
17835
+ }
17836
+ }
17837
+ function isRecord5(value) {
17838
+ return typeof value === "object" && value !== null && !Array.isArray(value);
17839
+ }
17840
+ function getWorkspaceConfigPath(env = process.env, home = homedir4()) {
17841
+ return join13(readConfigHome(env, home), "signet", "workspace.json");
17842
+ }
17843
+ function readConfiguredWorkspacePath(env = process.env, home = homedir4(), options = {}) {
17844
+ const strict = options.strict ?? true;
17845
+ const configPath = getWorkspaceConfigPath(env, home);
17846
+ if (!existsSync12(configPath))
17847
+ return null;
17848
+ let raw;
17849
+ try {
17850
+ raw = JSON.parse(readFileSync9(configPath, "utf-8"));
17851
+ } catch (err) {
17852
+ if (!strict)
17853
+ return null;
17854
+ const detail = err instanceof Error ? err.message : String(err);
17855
+ throw new Error(`Invalid Signet workspace config at ${configPath}: ${detail}`);
17856
+ }
17857
+ if (!isRecord5(raw) || !("workspace" in raw)) {
17858
+ if (!strict)
17859
+ return null;
17860
+ throw new Error(`Invalid Signet workspace config at ${configPath}: missing workspace`);
17861
+ }
17862
+ const workspace = raw.workspace;
17863
+ if (typeof workspace !== "string" || workspace.trim().length === 0) {
17864
+ if (!strict)
17865
+ return null;
17866
+ throw new Error(`Invalid Signet workspace config at ${configPath}: workspace must be a non-empty string`);
17867
+ }
17868
+ return normalizeWorkspacePath(workspace, home);
17869
+ }
17870
+ function resolveWorkspacePath(options = {}) {
17871
+ const env = options.env ?? process.env;
17872
+ const home = options.home ?? homedir4();
17873
+ const strict = options.strict ?? true;
17874
+ const requireExistingEnvPath = options.requireExistingEnvPath ?? false;
17875
+ const configPath = getWorkspaceConfigPath(env, home);
17876
+ const envPath = resolveEnvWorkspace(env, home, requireExistingEnvPath);
17877
+ const configValue = readConfiguredWorkspacePath(env, home, { strict: envPath ? false : strict });
17878
+ if (envPath) {
17879
+ return {
17880
+ path: envPath,
17881
+ source: "env",
17882
+ configPath,
17883
+ configuredPath: configValue
17884
+ };
17885
+ }
17886
+ if (configValue) {
17887
+ return {
17888
+ path: configValue,
17889
+ source: "config",
17890
+ configPath,
17891
+ configuredPath: configValue
17892
+ };
17893
+ }
17894
+ return {
17895
+ path: join13(home, DEFAULT_AGENTS_DIRNAME),
17896
+ source: "default",
17897
+ configPath,
17898
+ configuredPath: configValue
17899
+ };
17900
+ }
17901
+ function resolveEnvWorkspace(env, home, requireExisting) {
17902
+ for (const key of WORKSPACE_ENV_KEYS) {
17903
+ const raw = readTrimmedEnv(env, key);
17904
+ if (!raw)
17905
+ continue;
17906
+ const normalized = normalizeWorkspacePath(raw, home);
17907
+ if (!requireExisting || isExistingDirectory(normalized))
17908
+ return normalized;
17909
+ console.warn(`[signet] ${key}="${raw}" does not point to an existing workspace directory; using the default workspace resolution instead.`);
17910
+ }
17911
+ return null;
17912
+ }
17587
17913
  var native = null;
17588
17914
  try {
17589
17915
  const esmRequire = createRequire22(import.meta.url);
17590
17916
  native = esmRequire("@signet/native");
17591
17917
  } catch {}
17592
- var GRAPHIQ_DEFAULT_INSTALL_DIR = join9(homedir5(), ".local", "bin");
17593
- var SIGNET_SOURCE_CHECKOUT_DIRNAME = "signetai";
17594
- var SIGNET_GIT_ALLOWED_DIRECTORIES = ["skills", "tools", "dreaming"];
17595
- var SIGNET_GIT_PROTECTED_PATHS = [
17596
- ".daemon",
17597
- ".shadow",
17598
- "node_modules",
17599
- ":(glob)**/node_modules/**",
17600
- `${SIGNET_SOURCE_CHECKOUT_DIRNAME}`,
17601
- "memory/backups",
17602
- "memory/memories.db",
17603
- ":(glob)memory/memories.db*",
17604
- ":(glob)memory/**/*.db",
17605
- ":(glob)memory/**/*.db-*",
17606
- ":(glob)memory/**/*.db-journal",
17607
- ":(glob)memory/**/*.db-shm",
17608
- ":(glob)memory/**/*.db-wal",
17609
- ":(glob)memory/**/*.sqlite",
17610
- ":(glob)memory/**/*.sqlite3",
17611
- ":(glob)**/*.db",
17612
- ":(glob)**/*.db-*",
17613
- ":(glob)**/*.db-journal",
17614
- ":(glob)**/*.db-shm",
17615
- ":(glob)**/*.db-wal",
17616
- ":(glob)**/*.sqlite",
17617
- ":(glob)**/*.sqlite3"
17618
- ];
17619
- var SIGNET_GIT_TRACKED_PATHS = [
17620
- "*.md",
17621
- ":(glob)**/*.md",
17622
- "*.json",
17623
- ":(glob)**/*.json",
17624
- "*.jsonl",
17625
- ":(glob)**/*.jsonl",
17626
- "*.html",
17627
- ":(glob)**/*.html",
17628
- "*.yaml",
17629
- ":(glob)**/*.yaml",
17630
- "*.yml",
17631
- ":(glob)**/*.yml",
17632
- ...SIGNET_GIT_ALLOWED_DIRECTORIES
17633
- ];
17634
- var SIGNET_GITIGNORE_PROTECTED_PATTERNS = [
17635
- ".daemon/",
17636
- ".shadow/",
17637
- "node_modules/",
17638
- `${SIGNET_SOURCE_CHECKOUT_DIRNAME}/`,
17639
- "memory/memories.db*",
17640
- "memory/**/*.db",
17641
- "memory/**/*.db-*",
17642
- "memory/**/*.db-journal",
17643
- "memory/**/*.db-shm",
17644
- "memory/**/*.db-wal",
17645
- "memory/**/*.sqlite",
17646
- "memory/**/*.sqlite3",
17647
- "memory/backups/",
17648
- "*.db",
17649
- "*.db-*",
17650
- "*.db-journal",
17651
- "*.db-shm",
17652
- "*.db-wal",
17653
- "*.sqlite",
17654
- "*.sqlite3"
17655
- ];
17918
+ var GRAPHIQ_DEFAULT_INSTALL_DIR = join14(homedir5(), ".local", "bin");
17656
17919
  var DEFAULT_DISCORD_DESKTOP_CACHE_PATH = defaultDiscordDesktopCachePath();
17657
17920
  var DEFAULT_GITHUB_RESOURCE_TYPES = ["issues", "pulls", "discussions", "docs"];
17658
17921
  var VALID_GITHUB_RESOURCE_TYPES = new Set(DEFAULT_GITHUB_RESOURCE_TYPES);
17659
17922
  function defaultDiscordDesktopCachePath() {
17660
17923
  switch (platform2()) {
17661
17924
  case "darwin":
17662
- return resolve5(homedir6(), "Library", "Application Support", "discord");
17925
+ return resolve9(homedir6(), "Library", "Application Support", "discord");
17663
17926
  case "win32":
17664
- return resolve5(process.env.APPDATA || resolve5(homedir6(), "AppData", "Roaming"), "discord");
17927
+ return resolve9(process.env.APPDATA || resolve9(homedir6(), "AppData", "Roaming"), "discord");
17665
17928
  default:
17666
- return resolve5(process.env.XDG_CONFIG_HOME || resolve5(homedir6(), ".config"), "discord");
17929
+ return resolve9(process.env.XDG_CONFIG_HOME || resolve9(homedir6(), ".config"), "discord");
17667
17930
  }
17668
17931
  }
17669
17932
  var IDENTITY_MODES = ["managed", "off"];
@@ -17806,11 +18069,11 @@ function resolveIdentityModeFromConfig(config) {
17806
18069
  return "managed";
17807
18070
  }
17808
18071
  function loadIdentityMode(agentsDir) {
17809
- const agentYaml = join12(agentsDir, "agent.yaml");
17810
- if (!existsSync12(agentYaml))
18072
+ const agentYaml = join16(agentsDir, "agent.yaml");
18073
+ if (!existsSync16(agentYaml))
17811
18074
  return "managed";
17812
18075
  try {
17813
- return resolveIdentityModeFromConfig(parseSimpleYaml(readFileSync9(agentYaml, "utf-8")));
18076
+ return resolveIdentityModeFromConfig(parseSimpleYaml(readFileSync13(agentYaml, "utf-8")));
17814
18077
  } catch {
17815
18078
  return "managed";
17816
18079
  }
@@ -17843,11 +18106,11 @@ function identityHeaderFor(path, role) {
17843
18106
  return STATIC_HEADER_BY_FILE[filename] ?? role ?? filename.replace(/\.md$/i, "");
17844
18107
  }
17845
18108
  function resolveStartupIdentityFiles(agentsDir) {
17846
- const agentYaml = join12(agentsDir, "agent.yaml");
17847
- if (!existsSync12(agentYaml))
18109
+ const agentYaml = join16(agentsDir, "agent.yaml");
18110
+ if (!existsSync16(agentYaml))
17848
18111
  return STATIC_BUDGETS.map(({ file, budget }) => ({ path: file, budget }));
17849
18112
  try {
17850
- const config = parseSimpleYaml(readFileSync9(agentYaml, "utf-8"));
18113
+ const config = parseSimpleYaml(readFileSync13(agentYaml, "utf-8"));
17851
18114
  if (!identityModeReadsFiles(resolveIdentityModeFromConfig(config)))
17852
18115
  return [];
17853
18116
  const identity = readRecord(config.identity);
@@ -17875,32 +18138,32 @@ function resolveSessionStartTimeoutMs(raw) {
17875
18138
  return ms;
17876
18139
  }
17877
18140
  function readStaticIdentity(agentsDir, status = STATIC_IDENTITY_OFFLINE_STATUS) {
17878
- if (!existsSync12(agentsDir))
18141
+ if (!existsSync16(agentsDir))
17879
18142
  return null;
17880
18143
  if (!identityModeReadsFiles(loadIdentityMode(agentsDir)))
17881
18144
  return null;
17882
- const parts = [];
18145
+ const parts2 = [];
17883
18146
  for (const entry of resolveStartupIdentityFiles(agentsDir)) {
17884
- const path = join12(agentsDir, entry.path);
17885
- if (!existsSync12(path))
18147
+ const path = join16(agentsDir, entry.path);
18148
+ if (!existsSync16(path))
17886
18149
  continue;
17887
18150
  try {
17888
- const raw = readFileSync9(path, "utf-8").trim();
18151
+ const raw = readFileSync13(path, "utf-8").trim();
17889
18152
  if (!raw)
17890
18153
  continue;
17891
18154
  const budget = entry.budget ?? STATIC_BUDGETS.find((candidate) => candidate.file === entry.path)?.budget ?? 4000;
17892
18155
  const content = raw.length <= budget ? raw : `${raw.slice(0, budget)}
17893
18156
  [truncated]`;
17894
- parts.push(`## ${identityHeaderFor(entry.path, entry.role)}
18157
+ parts2.push(`## ${identityHeaderFor(entry.path, entry.role)}
17895
18158
 
17896
18159
  ${content}`);
17897
18160
  } catch {}
17898
18161
  }
17899
- if (parts.length === 0)
18162
+ if (parts2.length === 0)
17900
18163
  return null;
17901
18164
  return `${status}
17902
18165
 
17903
- ${parts.join(`
18166
+ ${parts2.join(`
17904
18167
 
17905
18168
  `)}`;
17906
18169
  }
@@ -17908,7 +18171,7 @@ var home = homedir8();
17908
18171
 
17909
18172
  // ../../../libs/sdk/dist/index.js
17910
18173
  import { createRequire as createRequire23 } from "node:module";
17911
- import { dirname as dirname2, join as join2 } from "node:path";
18174
+ import { dirname as dirname2, join as join3, resolve as resolve3 } from "node:path";
17912
18175
  import { fileURLToPath as fileURLToPath2 } from "node:url";
17913
18176
  import {
17914
18177
  execFile as nodeExecFile2,
@@ -17919,11 +18182,12 @@ import {
17919
18182
  } from "node:child_process";
17920
18183
  import { promisify as promisify2 } from "node:util";
17921
18184
  import { createHash as createHash2 } from "node:crypto";
18185
+ import { constants as fsConstants2 } from "node:fs";
17922
18186
  import { createRequire as createRequire222 } from "node:module";
17923
18187
  import { homedir as homedir52 } from "node:os";
17924
- import { dirname as dirname52, join as join92, resolve as resolve32 } from "node:path";
18188
+ import { dirname as dirname62, join as join142, resolve as resolve82 } from "node:path";
17925
18189
  import { homedir as homedir62, platform as platform22 } from "node:os";
17926
- import { basename as basename2, dirname as dirname62, resolve as resolve52 } from "node:path";
18190
+ import { basename as basename2, dirname as dirname72, resolve as resolve92 } from "node:path";
17927
18191
  import { homedir as homedir82 } from "node:os";
17928
18192
  var __create2 = Object.create;
17929
18193
  var __getProtoOf2 = Object.getPrototypeOf;
@@ -28490,7 +28754,7 @@ var DAEMON_DERIVED_MEMORY_SOURCE_TYPES2 = [
28490
28754
  "checkpoint",
28491
28755
  "dreaming"
28492
28756
  ];
28493
- function up160(db) {
28757
+ function up161(db) {
28494
28758
  const hasColumn26 = (table, column) => {
28495
28759
  const statement = db.prepare(`SELECT 1 FROM pragma_table_info('${table}') WHERE name = ?`);
28496
28760
  try {
@@ -28557,8 +28821,8 @@ function up210(db) {
28557
28821
  `);
28558
28822
  }
28559
28823
  function addColumnIfMissing30(db, column, definition) {
28560
- const columns = db.prepare("PRAGMA table_info(transcript_capture_jobs)").all();
28561
- if (columns.some((row) => row.name === column))
28824
+ const columns2 = db.prepare("PRAGMA table_info(transcript_capture_jobs)").all();
28825
+ if (columns2.some((row) => row.name === column))
28562
28826
  return;
28563
28827
  db.exec(`ALTER TABLE transcript_capture_jobs ADD COLUMN ${column} ${definition}`);
28564
28828
  }
@@ -29439,8 +29703,8 @@ function up252(db) {
29439
29703
  addColumnIfMissing82(db, "session_memories", "structural_density", "INTEGER");
29440
29704
  }
29441
29705
  function up262(db) {
29442
- const columns = db.prepare("PRAGMA table_info(session_checkpoints)").all();
29443
- const columnNames = new Set(columns.flatMap((column) => typeof column.name === "string" ? [column.name] : []));
29706
+ const columns2 = db.prepare("PRAGMA table_info(session_checkpoints)").all();
29707
+ const columnNames = new Set(columns2.flatMap((column) => typeof column.name === "string" ? [column.name] : []));
29444
29708
  if (!columnNames.has("focal_entity_ids")) {
29445
29709
  db.exec("ALTER TABLE session_checkpoints ADD COLUMN focal_entity_ids TEXT");
29446
29710
  }
@@ -31752,8 +32016,8 @@ function up972(db) {
31752
32016
  `);
31753
32017
  }
31754
32018
  function up982(db) {
31755
- const columns = db.prepare("PRAGMA table_info(dreaming_state)").all();
31756
- if (!columns.some((column) => column.name === "evidence_cursor")) {
32019
+ const columns2 = db.prepare("PRAGMA table_info(dreaming_state)").all();
32020
+ if (!columns2.some((column) => column.name === "evidence_cursor")) {
31757
32021
  db.exec("ALTER TABLE dreaming_state ADD COLUMN evidence_cursor TEXT");
31758
32022
  }
31759
32023
  }
@@ -31797,8 +32061,8 @@ function up1012(db) {
31797
32061
  db.exec("DROP TABLE IF EXISTS ingestion_jobs");
31798
32062
  }
31799
32063
  function up1022(db) {
31800
- const columns = db.prepare("PRAGMA table_info(dreaming_state)").all();
31801
- if (!columns.some((column) => column.name === "last_failure_at")) {
32064
+ const columns2 = db.prepare("PRAGMA table_info(dreaming_state)").all();
32065
+ if (!columns2.some((column) => column.name === "last_failure_at")) {
31802
32066
  db.exec("ALTER TABLE dreaming_state ADD COLUMN last_failure_at TEXT");
31803
32067
  }
31804
32068
  db.exec("UPDATE dreaming_state SET last_failure_at = updated_at WHERE consecutive_failures > 0 AND last_failure_at IS NULL");
@@ -31841,11 +32105,11 @@ function up1042(db) {
31841
32105
  `);
31842
32106
  }
31843
32107
  function up1052(db) {
31844
- const columns = db.prepare("PRAGMA table_info(dreaming_passes)").all();
31845
- if (!columns.some((column) => column.name === "evidence_window_json")) {
32108
+ const columns2 = db.prepare("PRAGMA table_info(dreaming_passes)").all();
32109
+ if (!columns2.some((column) => column.name === "evidence_window_json")) {
31846
32110
  db.exec("ALTER TABLE dreaming_passes ADD COLUMN evidence_window_json TEXT");
31847
32111
  }
31848
- if (!columns.some((column) => column.name === "runbook_json")) {
32112
+ if (!columns2.some((column) => column.name === "runbook_json")) {
31849
32113
  db.exec("ALTER TABLE dreaming_passes ADD COLUMN runbook_json TEXT");
31850
32114
  }
31851
32115
  }
@@ -32284,8 +32548,8 @@ function hasTable42(db, table) {
32284
32548
  return db.prepare("SELECT 1 AS present FROM sqlite_master WHERE type = 'table' AND name = ?").get(table) != null;
32285
32549
  }
32286
32550
  function addColumnIfMissing262(db, table, column, definition) {
32287
- const columns = db.prepare(`PRAGMA table_info(${table})`).all();
32288
- if (columns.some((row) => row.name === column))
32551
+ const columns2 = db.prepare(`PRAGMA table_info(${table})`).all();
32552
+ if (columns2.some((row) => row.name === column))
32289
32553
  return;
32290
32554
  db.exec(`ALTER TABLE ${table} ADD COLUMN ${column} ${definition}`);
32291
32555
  }
@@ -32297,8 +32561,8 @@ function hashTranscript2(content) {
32297
32561
  return createHash2("sha256").update(content, "utf8").digest("hex");
32298
32562
  }
32299
32563
  function backfillTranscriptHashes2(db) {
32300
- const columns = tableColumns2(db, "session_transcripts");
32301
- if (!columns.has("content_hash") || !columns.has("content"))
32564
+ const columns2 = tableColumns2(db, "session_transcripts");
32565
+ if (!columns2.has("content_hash") || !columns2.has("content"))
32302
32566
  return;
32303
32567
  const rows = db.prepare("SELECT session_key, agent_id, content FROM session_transcripts WHERE content_hash IS NULL").all();
32304
32568
  const update = db.prepare("UPDATE session_transcripts SET content_hash = ? WHERE agent_id = ? AND session_key = ? AND content_hash IS NULL");
@@ -32324,8 +32588,8 @@ function laterTimestamp2(current, candidate) {
32324
32588
  }
32325
32589
  return candidate > current ? candidate : current;
32326
32590
  }
32327
- function isCompletionBoundary2(job, columns) {
32328
- return columns.has("trigger") && job.trigger === "session_end" || columns.has("boundary_reason") && COMPLETION_BOUNDARY_REASONS2.has(job.boundary_reason ?? "");
32591
+ function isCompletionBoundary2(job, columns2) {
32592
+ return columns2.has("trigger") && job.trigger === "session_end" || columns2.has("boundary_reason") && COMPLETION_BOUNDARY_REASONS2.has(job.boundary_reason ?? "");
32329
32593
  }
32330
32594
  function mergeTranscriptContent2(current, next) {
32331
32595
  if (current.length === 0)
@@ -32573,8 +32837,8 @@ function up1262(db) {
32573
32837
  `);
32574
32838
  }
32575
32839
  function up1272(db) {
32576
- const columns = db.prepare("PRAGMA table_info(dreaming_evidence_exclusions)").all();
32577
- const names = new Set(columns.map((column) => column.name));
32840
+ const columns2 = db.prepare("PRAGMA table_info(dreaming_evidence_exclusions)").all();
32841
+ const names = new Set(columns2.map((column) => column.name));
32578
32842
  if (!names.has("failure_class")) {
32579
32843
  db.exec("ALTER TABLE dreaming_evidence_exclusions ADD COLUMN failure_class TEXT NOT NULL DEFAULT 'unknown' CHECK (failure_class IN ('incomplete_transcript', 'source_projection', 'scope_mismatch', 'quote_mismatch', 'unknown'))");
32580
32844
  }
@@ -32986,8 +33250,8 @@ function up1382(db) {
32986
33250
  CREATE INDEX IF NOT EXISTS idx_memory_head_revision_entries_entry
32987
33251
  ON memory_head_revision_entries(agent_id, entry_id, revision DESC);
32988
33252
  `);
32989
- const columns = db.prepare("PRAGMA table_info(memory_md_heads)").all();
32990
- const names = new Set(columns.map((column) => String(column.name)));
33253
+ const columns2 = db.prepare("PRAGMA table_info(memory_md_heads)").all();
33254
+ const names = new Set(columns2.map((column) => String(column.name)));
32991
33255
  if (!names.has("revision_id"))
32992
33256
  db.exec("ALTER TABLE memory_md_heads ADD COLUMN revision_id TEXT");
32993
33257
  if (!names.has("pass_id"))
@@ -33413,13 +33677,13 @@ function up1462(db) {
33413
33677
  `);
33414
33678
  }
33415
33679
  function up1472(db) {
33416
- const columns = db.prepare("PRAGMA table_info(source_sync_checkpoints)").all();
33417
- if (!columns.some((column) => column.name === "frontier")) {
33680
+ const columns2 = db.prepare("PRAGMA table_info(source_sync_checkpoints)").all();
33681
+ if (!columns2.some((column) => column.name === "frontier")) {
33418
33682
  db.exec("ALTER TABLE source_sync_checkpoints ADD COLUMN frontier TEXT");
33419
33683
  }
33420
33684
  }
33421
33685
  function up1482(db) {
33422
- const columns = new Set(db.prepare("PRAGMA table_info(embedding_index_state)").all().map((row) => row.name).filter((name) => typeof name === "string"));
33686
+ const columns2 = new Set(db.prepare("PRAGMA table_info(embedding_index_state)").all().map((row) => row.name).filter((name) => typeof name === "string"));
33423
33687
  const additions = [
33424
33688
  ["migration_phase", "TEXT"],
33425
33689
  ["progress_staged", "INTEGER NOT NULL DEFAULT 0"],
@@ -33430,7 +33694,7 @@ function up1482(db) {
33430
33694
  ["provider_endpoint", "TEXT"]
33431
33695
  ];
33432
33696
  for (const [name, definition] of additions) {
33433
- if (!columns.has(name))
33697
+ if (!columns2.has(name))
33434
33698
  db.exec(`ALTER TABLE embedding_index_state ADD COLUMN ${name} ${definition}`);
33435
33699
  }
33436
33700
  db.exec(`
@@ -33454,8 +33718,8 @@ function up1482(db) {
33454
33718
  }
33455
33719
  }
33456
33720
  function up1492(db) {
33457
- const columns = new Set(db.prepare("PRAGMA table_info(memory_jobs)").all().map((row) => row.name).filter((name) => typeof name === "string"));
33458
- if (!columns.has("lease_token")) {
33721
+ const columns2 = new Set(db.prepare("PRAGMA table_info(memory_jobs)").all().map((row) => row.name).filter((name) => typeof name === "string"));
33722
+ if (!columns2.has("lease_token")) {
33459
33723
  db.exec("ALTER TABLE memory_jobs ADD COLUMN lease_token TEXT");
33460
33724
  }
33461
33725
  }
@@ -33548,8 +33812,8 @@ function up1522(db) {
33548
33812
  db.exec("CREATE INDEX IF NOT EXISTS idx_source_import_files_job_state ON source_import_files(job_id, state)");
33549
33813
  }
33550
33814
  function up1532(db) {
33551
- const columns = db.prepare("PRAGMA table_info(source_import_record_attempts)").all();
33552
- if (!columns.some((column) => column.name === "source_id")) {
33815
+ const columns2 = db.prepare("PRAGMA table_info(source_import_record_attempts)").all();
33816
+ if (!columns2.some((column) => column.name === "source_id")) {
33553
33817
  db.exec("ALTER TABLE source_import_record_attempts ADD COLUMN source_id TEXT");
33554
33818
  }
33555
33819
  }
@@ -33570,8 +33834,8 @@ function up1542(db) {
33570
33834
  addColumn("source_import_files", "error", "TEXT");
33571
33835
  }
33572
33836
  function addColumnIfMissing292(db, table, column, definition) {
33573
- const columns = db.prepare(`PRAGMA table_info(${table})`).all();
33574
- if (!columns.some((row) => row.name === column))
33837
+ const columns2 = db.prepare(`PRAGMA table_info(${table})`).all();
33838
+ if (!columns2.some((row) => row.name === column))
33575
33839
  db.exec(`ALTER TABLE ${table} ADD COLUMN ${column} ${definition}`);
33576
33840
  }
33577
33841
  function up1552(db) {
@@ -33771,8 +34035,8 @@ function up1572(db) {
33771
34035
  `);
33772
34036
  }
33773
34037
  function up1582(db) {
33774
- const columns = new Set(db.prepare("PRAGMA table_info(embedding_repair_checkpoints)").all().map((row) => row.name));
33775
- if (!columns.has("profile_fingerprint")) {
34038
+ const columns2 = new Set(db.prepare("PRAGMA table_info(embedding_repair_checkpoints)").all().map((row) => row.name));
34039
+ if (!columns2.has("profile_fingerprint")) {
33776
34040
  db.exec("ALTER TABLE embedding_repair_checkpoints ADD COLUMN profile_fingerprint TEXT");
33777
34041
  }
33778
34042
  db.exec(`
@@ -33791,6 +34055,102 @@ function up1592(db) {
33791
34055
  ON memories(agent_id, memory_kind);
33792
34056
  `);
33793
34057
  }
34058
+ var ledgerColumns2 = [
34059
+ "key",
34060
+ "agent_id",
34061
+ "workspace_id",
34062
+ "file_name",
34063
+ "status",
34064
+ "original_path",
34065
+ "sha256",
34066
+ "size_bytes",
34067
+ "request_fingerprint",
34068
+ "source_id",
34069
+ "lease_token",
34070
+ "lease_expires_at",
34071
+ "attempt_count",
34072
+ "error",
34073
+ "created_at",
34074
+ "updated_at"
34075
+ ];
34076
+ function columns2(db, table) {
34077
+ return new Set(db.prepare(`PRAGMA table_info(${table})`).all().map((row) => String(row.name)));
34078
+ }
34079
+ function addMissingColumns2(db, table, definitions) {
34080
+ const present = columns2(db, table);
34081
+ for (const definition of definitions) {
34082
+ const name = definition.split(" ", 1)[0];
34083
+ if (!present.has(name))
34084
+ db.exec(`ALTER TABLE ${table} ADD COLUMN ${definition}`);
34085
+ }
34086
+ }
34087
+ function rebuildLedgerWithoutGlobalKeyPrimaryKey2(db) {
34088
+ const keyInfo = db.prepare("PRAGMA table_info(import_admission_ledger)").all().find((row) => row.name === "key");
34089
+ if (!keyInfo || Number(keyInfo.pk) === 0)
34090
+ return;
34091
+ const savepoint = "migration_158_rebuild_ledger";
34092
+ db.exec(`SAVEPOINT ${savepoint}`);
34093
+ try {
34094
+ db.exec(`
34095
+ CREATE TABLE import_admission_ledger_v158 (
34096
+ key TEXT NOT NULL, agent_id TEXT NOT NULL DEFAULT '', workspace_id TEXT NOT NULL DEFAULT '',
34097
+ file_name TEXT NOT NULL, status TEXT NOT NULL CHECK (status IN ('pending','processing','imported','duplicate','failed','quarantined','original_unavailable')),
34098
+ original_path TEXT NOT NULL, sha256 TEXT NOT NULL, size_bytes INTEGER NOT NULL,
34099
+ request_fingerprint TEXT NOT NULL DEFAULT '', source_id TEXT, lease_token TEXT, lease_expires_at TEXT,
34100
+ attempt_count INTEGER NOT NULL DEFAULT 0, error TEXT, created_at TEXT NOT NULL, updated_at TEXT NOT NULL
34101
+ );
34102
+ INSERT INTO import_admission_ledger_v158 (${ledgerColumns2.join(",")})
34103
+ SELECT ${ledgerColumns2.join(",")} FROM import_admission_ledger;
34104
+ DROP TABLE import_admission_ledger;
34105
+ ALTER TABLE import_admission_ledger_v158 RENAME TO import_admission_ledger;
34106
+ `);
34107
+ db.exec(`RELEASE ${savepoint}`);
34108
+ } catch (error) {
34109
+ try {
34110
+ db.exec(`ROLLBACK TO SAVEPOINT ${savepoint}`);
34111
+ } finally {
34112
+ try {
34113
+ db.exec(`RELEASE ${savepoint}`);
34114
+ } catch {}
34115
+ }
34116
+ throw error;
34117
+ }
34118
+ }
34119
+ function up1602(db) {
34120
+ db.exec(`
34121
+ CREATE TABLE IF NOT EXISTS import_admission_ledger (
34122
+ key TEXT NOT NULL, agent_id TEXT NOT NULL, workspace_id TEXT NOT NULL DEFAULT '', file_name TEXT NOT NULL,
34123
+ status TEXT NOT NULL CHECK (status IN ('pending','processing','imported','duplicate','failed','quarantined','original_unavailable')),
34124
+ original_path TEXT NOT NULL, sha256 TEXT NOT NULL, size_bytes INTEGER NOT NULL,
34125
+ request_fingerprint TEXT NOT NULL DEFAULT '', source_id TEXT, lease_token TEXT, lease_expires_at TEXT,
34126
+ attempt_count INTEGER NOT NULL DEFAULT 0, error TEXT, created_at TEXT NOT NULL, updated_at TEXT NOT NULL
34127
+ );
34128
+ CREATE TABLE IF NOT EXISTS import_admission_events (
34129
+ id INTEGER PRIMARY KEY AUTOINCREMENT, admission_key TEXT NOT NULL, agent_id TEXT NOT NULL DEFAULT '',
34130
+ workspace_id TEXT NOT NULL DEFAULT '', event TEXT NOT NULL, created_at TEXT NOT NULL
34131
+ );
34132
+ `);
34133
+ addMissingColumns2(db, "import_admission_ledger", [
34134
+ "agent_id TEXT NOT NULL DEFAULT ''",
34135
+ "workspace_id TEXT NOT NULL DEFAULT ''",
34136
+ "request_fingerprint TEXT NOT NULL DEFAULT ''",
34137
+ "source_id TEXT",
34138
+ "lease_token TEXT",
34139
+ "lease_expires_at TEXT",
34140
+ "attempt_count INTEGER NOT NULL DEFAULT 0",
34141
+ "error TEXT"
34142
+ ]);
34143
+ addMissingColumns2(db, "import_admission_events", [
34144
+ "agent_id TEXT NOT NULL DEFAULT ''",
34145
+ "workspace_id TEXT NOT NULL DEFAULT ''"
34146
+ ]);
34147
+ rebuildLedgerWithoutGlobalKeyPrimaryKey2(db);
34148
+ db.exec(`
34149
+ CREATE UNIQUE INDEX IF NOT EXISTS uq_import_admission_scope_key ON import_admission_ledger(key, agent_id, workspace_id);
34150
+ CREATE INDEX IF NOT EXISTS idx_import_admission_status ON import_admission_ledger(agent_id, workspace_id, status, updated_at);
34151
+ CREATE INDEX IF NOT EXISTS idx_import_admission_events_key ON import_admission_events(admission_key, agent_id, workspace_id, id);
34152
+ `);
34153
+ }
33794
34154
  var MIGRATIONS2 = [
33795
34155
  {
33796
34156
  version: 1,
@@ -34995,7 +35355,7 @@ var MIGRATIONS2 = [
34995
35355
  {
34996
35356
  version: 151,
34997
35357
  name: "transcript-import-bytes",
34998
- up: up160,
35358
+ up: up161,
34999
35359
  artifacts: {
35000
35360
  tables: [
35001
35361
  "source_import_chunks",
@@ -35079,6 +35439,18 @@ var MIGRATIONS2 = [
35079
35439
  version: 159,
35080
35440
  name: "retire-obsolete-invocation-ledger",
35081
35441
  up: up510
35442
+ },
35443
+ {
35444
+ version: 160,
35445
+ name: "import-admission-ledger",
35446
+ up: up1602,
35447
+ artifacts: {
35448
+ tables: ["import_admission_ledger", "import_admission_events"],
35449
+ indexes: ["idx_import_admission_status", "idx_import_admission_events_key"],
35450
+ columns: [
35451
+ ...["workspace_id", "request_fingerprint", "source_id", "lease_token", "lease_expires_at", "attempt_count"].map((column) => ({ table: "import_admission_ledger", column }))
35452
+ ]
35453
+ }
35082
35454
  }
35083
35455
  ];
35084
35456
  var LATEST_SCHEMA_VERSION2 = MIGRATIONS2[MIGRATIONS2.length - 1]?.version ?? 0;
@@ -35086,6 +35458,98 @@ var NETWORK_FILESYSTEM_TYPES2 = new Set(["afpfs", "nfs", "smbfs", "webdav"]);
35086
35458
  var __filename22 = fileURLToPath2(import.meta.url);
35087
35459
  var __dirname22 = dirname2(__filename22);
35088
35460
  var import_yaml3 = __toESM2(require_dist2(), 1);
35461
+ var SIGNET_SOURCE_CHECKOUT_DIRNAME2 = "signetai";
35462
+ var SIGNET_GIT_ALLOWED_DIRECTORIES2 = ["skills", "tools", "dreaming"];
35463
+ var SIGNET_GIT_PROTECTED_PATHS2 = [
35464
+ ".daemon",
35465
+ ".secrets",
35466
+ ".shadow",
35467
+ "cache",
35468
+ "data",
35469
+ "files",
35470
+ "runtime",
35471
+ "workspace-layout.json",
35472
+ "node_modules",
35473
+ ":(glob)**/node_modules/**",
35474
+ `${SIGNET_SOURCE_CHECKOUT_DIRNAME2}`,
35475
+ "memory/backups",
35476
+ "memory/memories.db",
35477
+ ":(glob)memory/memories.db*",
35478
+ ":(glob)memory/**/*.db",
35479
+ ":(glob)memory/**/*.db-*",
35480
+ ":(glob)memory/**/*.db-journal",
35481
+ ":(glob)memory/**/*.db-shm",
35482
+ ":(glob)memory/**/*.db-wal",
35483
+ ":(glob)memory/**/*.sqlite",
35484
+ ":(glob)memory/**/*.sqlite3",
35485
+ ":(glob)**/*.db",
35486
+ ":(glob)**/*.db-*",
35487
+ ":(glob)**/*.db-journal",
35488
+ ":(glob)**/*.db-shm",
35489
+ ":(glob)**/*.db-wal",
35490
+ ":(glob)**/*.sqlite",
35491
+ ":(glob)**/*.sqlite3"
35492
+ ];
35493
+ var SIGNET_GIT_TRACKED_PATHS2 = [
35494
+ "*.md",
35495
+ ":(glob)**/*.md",
35496
+ "*.json",
35497
+ ":(glob)**/*.json",
35498
+ "*.jsonl",
35499
+ ":(glob)**/*.jsonl",
35500
+ "*.html",
35501
+ ":(glob)**/*.html",
35502
+ "*.yaml",
35503
+ ":(glob)**/*.yaml",
35504
+ "*.yml",
35505
+ ":(glob)**/*.yml",
35506
+ ...SIGNET_GIT_ALLOWED_DIRECTORIES2
35507
+ ];
35508
+ var SIGNET_GITIGNORE_PROTECTED_PATTERNS2 = [
35509
+ ".daemon/",
35510
+ ".secrets/",
35511
+ ".shadow/",
35512
+ "cache/",
35513
+ "data/",
35514
+ "files/",
35515
+ "runtime/",
35516
+ "workspace-layout.json",
35517
+ "node_modules/",
35518
+ `${SIGNET_SOURCE_CHECKOUT_DIRNAME2}/`,
35519
+ "memory/memories.db*",
35520
+ "memory/**/*.db",
35521
+ "memory/**/*.db-*",
35522
+ "memory/**/*.db-journal",
35523
+ "memory/**/*.db-shm",
35524
+ "memory/**/*.db-wal",
35525
+ "memory/**/*.sqlite",
35526
+ "memory/**/*.sqlite3",
35527
+ "memory/backups/",
35528
+ "*.db",
35529
+ "*.db-*",
35530
+ "*.db-journal",
35531
+ "*.db-shm",
35532
+ "*.db-wal",
35533
+ "*.sqlite",
35534
+ "*.sqlite3"
35535
+ ];
35536
+ var DESCRIPTOR_ROOT2 = process.platform === "linux" ? "/proc/self/fd" : process.platform === "darwin" ? "/dev/fd" : undefined;
35537
+ var DIRECTORY_FLAGS2 = fsConstants2.O_RDONLY | (fsConstants2.O_DIRECTORY ?? 0) | (fsConstants2.O_NOFOLLOW ?? 0);
35538
+ var FILE_FLAGS2 = fsConstants2.O_RDONLY | (fsConstants2.O_NOFOLLOW ?? 0) | (fsConstants2.O_NONBLOCK ?? 0);
35539
+ var NOFOLLOW2 = fsConstants2.O_NOFOLLOW ?? 0;
35540
+ var PROTECTION_COMPONENT_IDS2 = [
35541
+ "root-authored",
35542
+ "skills",
35543
+ "managed-originals",
35544
+ "sqlite",
35545
+ "transcripts",
35546
+ "external-sources",
35547
+ "runtime",
35548
+ "filesystem-cache",
35549
+ "secrets"
35550
+ ];
35551
+ var ORDER2 = new Map(PROTECTION_COMPONENT_IDS2.map((id, index) => [id, index]));
35552
+ var BLOCKING2 = new Set(["missing", "stale", "degraded"]);
35089
35553
  var STATES2 = new Set([
35090
35554
  "found",
35091
35555
  "missing",
@@ -35184,81 +35648,18 @@ try {
35184
35648
  const esmRequire = createRequire222(import.meta.url);
35185
35649
  native2 = esmRequire("@signet/native");
35186
35650
  } catch {}
35187
- var GRAPHIQ_DEFAULT_INSTALL_DIR2 = join92(homedir52(), ".local", "bin");
35188
- var SIGNET_SOURCE_CHECKOUT_DIRNAME2 = "signetai";
35189
- var SIGNET_GIT_ALLOWED_DIRECTORIES2 = ["skills", "tools", "dreaming"];
35190
- var SIGNET_GIT_PROTECTED_PATHS2 = [
35191
- ".daemon",
35192
- ".shadow",
35193
- "node_modules",
35194
- ":(glob)**/node_modules/**",
35195
- `${SIGNET_SOURCE_CHECKOUT_DIRNAME2}`,
35196
- "memory/backups",
35197
- "memory/memories.db",
35198
- ":(glob)memory/memories.db*",
35199
- ":(glob)memory/**/*.db",
35200
- ":(glob)memory/**/*.db-*",
35201
- ":(glob)memory/**/*.db-journal",
35202
- ":(glob)memory/**/*.db-shm",
35203
- ":(glob)memory/**/*.db-wal",
35204
- ":(glob)memory/**/*.sqlite",
35205
- ":(glob)memory/**/*.sqlite3",
35206
- ":(glob)**/*.db",
35207
- ":(glob)**/*.db-*",
35208
- ":(glob)**/*.db-journal",
35209
- ":(glob)**/*.db-shm",
35210
- ":(glob)**/*.db-wal",
35211
- ":(glob)**/*.sqlite",
35212
- ":(glob)**/*.sqlite3"
35213
- ];
35214
- var SIGNET_GIT_TRACKED_PATHS2 = [
35215
- "*.md",
35216
- ":(glob)**/*.md",
35217
- "*.json",
35218
- ":(glob)**/*.json",
35219
- "*.jsonl",
35220
- ":(glob)**/*.jsonl",
35221
- "*.html",
35222
- ":(glob)**/*.html",
35223
- "*.yaml",
35224
- ":(glob)**/*.yaml",
35225
- "*.yml",
35226
- ":(glob)**/*.yml",
35227
- ...SIGNET_GIT_ALLOWED_DIRECTORIES2
35228
- ];
35229
- var SIGNET_GITIGNORE_PROTECTED_PATTERNS2 = [
35230
- ".daemon/",
35231
- ".shadow/",
35232
- "node_modules/",
35233
- `${SIGNET_SOURCE_CHECKOUT_DIRNAME2}/`,
35234
- "memory/memories.db*",
35235
- "memory/**/*.db",
35236
- "memory/**/*.db-*",
35237
- "memory/**/*.db-journal",
35238
- "memory/**/*.db-shm",
35239
- "memory/**/*.db-wal",
35240
- "memory/**/*.sqlite",
35241
- "memory/**/*.sqlite3",
35242
- "memory/backups/",
35243
- "*.db",
35244
- "*.db-*",
35245
- "*.db-journal",
35246
- "*.db-shm",
35247
- "*.db-wal",
35248
- "*.sqlite",
35249
- "*.sqlite3"
35250
- ];
35651
+ var GRAPHIQ_DEFAULT_INSTALL_DIR2 = join142(homedir52(), ".local", "bin");
35251
35652
  var DEFAULT_DISCORD_DESKTOP_CACHE_PATH2 = defaultDiscordDesktopCachePath2();
35252
35653
  var DEFAULT_GITHUB_RESOURCE_TYPES2 = ["issues", "pulls", "discussions", "docs"];
35253
35654
  var VALID_GITHUB_RESOURCE_TYPES2 = new Set(DEFAULT_GITHUB_RESOURCE_TYPES2);
35254
35655
  function defaultDiscordDesktopCachePath2() {
35255
35656
  switch (platform22()) {
35256
35657
  case "darwin":
35257
- return resolve52(homedir62(), "Library", "Application Support", "discord");
35658
+ return resolve92(homedir62(), "Library", "Application Support", "discord");
35258
35659
  case "win32":
35259
- return resolve52(process.env.APPDATA || resolve52(homedir62(), "AppData", "Roaming"), "discord");
35660
+ return resolve92(process.env.APPDATA || resolve92(homedir62(), "AppData", "Roaming"), "discord");
35260
35661
  default:
35261
- return resolve52(process.env.XDG_CONFIG_HOME || resolve52(homedir62(), ".config"), "discord");
35662
+ return resolve92(process.env.XDG_CONFIG_HOME || resolve92(homedir62(), ".config"), "discord");
35262
35663
  }
35263
35664
  }
35264
35665
  var IDENTITY_FILES2 = {
@@ -35644,7 +36045,7 @@ class SignetClientHelpers {
35644
36045
  if (isTerminalJobStatus(job.status)) {
35645
36046
  return job;
35646
36047
  }
35647
- await new Promise((resolve) => setTimeout(resolve, interval));
36048
+ await new Promise((resolve22) => setTimeout(resolve22, interval));
35648
36049
  }
35649
36050
  throw new Error(`Job ${jobId} did not complete within ${timeout}ms`);
35650
36051
  }
@@ -35657,7 +36058,7 @@ class SignetClientHelpers {
35657
36058
  if (isTerminalDocumentStatus(doc.status)) {
35658
36059
  return doc;
35659
36060
  }
35660
- await new Promise((resolve) => setTimeout(resolve, interval));
36061
+ await new Promise((resolve22) => setTimeout(resolve22, interval));
35661
36062
  }
35662
36063
  throw new Error(`Document ${documentId} did not complete within ${timeout}ms`);
35663
36064
  }
@@ -35839,11 +36240,11 @@ function trimTrailingSlashes(s22) {
35839
36240
  }
35840
36241
  function sleep(ms, signal) {
35841
36242
  if (!signal)
35842
- return new Promise((resolve) => setTimeout(resolve, ms));
36243
+ return new Promise((resolve22) => setTimeout(resolve22, ms));
35843
36244
  if (signal.aborted) {
35844
36245
  return Promise.reject(signal.reason ?? new DOMException("Aborted", "AbortError"));
35845
36246
  }
35846
- return new Promise((resolve, reject) => {
36247
+ return new Promise((resolve22, reject) => {
35847
36248
  const abort = () => {
35848
36249
  clearTimeout(timer);
35849
36250
  signal.removeEventListener("abort", abort);
@@ -35851,7 +36252,7 @@ function sleep(ms, signal) {
35851
36252
  };
35852
36253
  const timer = setTimeout(() => {
35853
36254
  signal.removeEventListener("abort", abort);
35854
- resolve();
36255
+ resolve22();
35855
36256
  }, ms);
35856
36257
  signal.addEventListener("abort", abort, { once: true });
35857
36258
  if (signal.aborted)
@@ -39021,7 +39422,7 @@ async function getDaemonPid(daemonUrl) {
39021
39422
  }
39022
39423
  }
39023
39424
  function staticFallback(reason = "offline") {
39024
- const dir = process.env.SIGNET_PATH ?? join3(homedir(), ".agents");
39425
+ const dir = process.env.SIGNET_PATH ?? resolveWorkspacePath().path;
39025
39426
  const inject = reason === "timeout" ? readStaticIdentity(dir, STATIC_IDENTITY_SESSION_START_TIMEOUT_STATUS) : readStaticIdentity(dir);
39026
39427
  if (!inject)
39027
39428
  return null;
@@ -39317,8 +39718,8 @@ function isAnthropicApiUrl(url) {
39317
39718
  function readClaudeCodeOAuthToken() {
39318
39719
  try {
39319
39720
  const candidates = [
39320
- join3(homedir(), ".claude", ".credentials.json"),
39321
- join3(homedir(), ".claude", "credentials.json")
39721
+ join5(homedir(), ".claude", ".credentials.json"),
39722
+ join5(homedir(), ".claude", "credentials.json")
39322
39723
  ];
39323
39724
  for (const p3 of candidates) {
39324
39725
  if (!existsSync(p3))
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signetai/signet-memory-openclaw",
3
- "version": "0.227.1",
3
+ "version": "0.228.0",
4
4
  "description": "Signet adapter for OpenClaw — runtime plugin for AI agent memory",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",