@signetai/core 0.145.8 → 0.145.10

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/index.js CHANGED
@@ -9964,6 +9964,25 @@ function up80(db) {
9964
9964
  db.exec("CREATE INDEX IF NOT EXISTS idx_documents_source_scope ON documents(source_url, agent_id, project)");
9965
9965
  }
9966
9966
 
9967
+ // src/migrations/081-aggregate-evidence-sources.ts
9968
+ function up81(db) {
9969
+ db.exec(`
9970
+ CREATE TABLE IF NOT EXISTS aggregate_evidence_sources (
9971
+ aggregate_memory_id TEXT NOT NULL,
9972
+ source_kind TEXT NOT NULL,
9973
+ source_id TEXT NOT NULL,
9974
+ source_path TEXT,
9975
+ agent_id TEXT NOT NULL DEFAULT 'default',
9976
+ created_at TEXT NOT NULL,
9977
+ PRIMARY KEY (aggregate_memory_id, source_kind, source_id)
9978
+ );
9979
+ CREATE INDEX IF NOT EXISTS idx_aggregate_evidence_sources_agent
9980
+ ON aggregate_evidence_sources(agent_id, aggregate_memory_id);
9981
+ CREATE INDEX IF NOT EXISTS idx_aggregate_evidence_sources_source
9982
+ ON aggregate_evidence_sources(source_kind, source_id);
9983
+ `);
9984
+ }
9985
+
9967
9986
  // src/migrations/index.ts
9968
9987
  var MIGRATIONS = [
9969
9988
  {
@@ -10610,6 +10629,14 @@ var MIGRATIONS = [
10610
10629
  { table: "documents", column: "project" }
10611
10630
  ]
10612
10631
  }
10632
+ },
10633
+ {
10634
+ version: 81,
10635
+ name: "aggregate-evidence-sources",
10636
+ up: up81,
10637
+ artifacts: {
10638
+ tables: ["aggregate_evidence_sources"]
10639
+ }
10613
10640
  }
10614
10641
  ];
10615
10642
  function checksum(m) {
@@ -11820,13 +11847,19 @@ function vectorSearch(db, queryVector, options) {
11820
11847
  const results = [];
11821
11848
  try {
11822
11849
  const queryBlob = new Float32Array(queryVector);
11823
- const params = [queryBlob, limit];
11824
- let typeFilter = "";
11825
- if (options?.type) {
11826
- typeFilter = " AND m.type = ?";
11827
- params.push(options.type);
11828
- }
11829
- const rows = db.prepare(`
11850
+ const maxK = options?.excludeAggregateRecall ? Math.max(limit, Math.min(limit * 8, 1000)) : limit;
11851
+ let k = limit;
11852
+ while (true) {
11853
+ const params = [queryBlob, k];
11854
+ let typeFilter = "";
11855
+ if (options?.type) {
11856
+ typeFilter = " AND m.type = ?";
11857
+ params.push(options.type);
11858
+ }
11859
+ if (options?.excludeAggregateRecall) {
11860
+ typeFilter += " AND COALESCE(m.source_type, '') != 'aggregate-recall'";
11861
+ }
11862
+ const rows = db.prepare(`
11830
11863
  SELECT
11831
11864
  e.source_id,
11832
11865
  v.distance
@@ -11836,9 +11869,14 @@ function vectorSearch(db, queryVector, options) {
11836
11869
  WHERE v.embedding MATCH ? AND k = ?${typeFilter}
11837
11870
  ORDER BY v.distance
11838
11871
  `).all(...params);
11839
- for (const row of rows) {
11840
- const similarity = 1 - row.distance;
11841
- results.push({ id: row.source_id, score: Math.max(0, similarity) });
11872
+ results.length = 0;
11873
+ for (const row of rows.slice(0, limit)) {
11874
+ const similarity = 1 - row.distance;
11875
+ results.push({ id: row.source_id, score: Math.max(0, similarity) });
11876
+ }
11877
+ if (results.length >= limit || k >= maxK || !options?.excludeAggregateRecall && rows.length < k)
11878
+ break;
11879
+ k = Math.min(k * 2, maxK);
11842
11880
  }
11843
11881
  } catch (e) {
11844
11882
  console.warn("Vector search failed:", e);
@@ -0,0 +1,8 @@
1
+ import type { MigrationDb } from "./index";
2
+ /**
3
+ * Migration 081: typed provenance links from aggregate recall memories to every
4
+ * evidence row used during synthesis, including non-memory sources such as
5
+ * ontology claims.
6
+ */
7
+ export declare function up(db: MigrationDb): void;
8
+ //# sourceMappingURL=081-aggregate-evidence-sources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"081-aggregate-evidence-sources.d.ts","sourceRoot":"","sources":["../../src/migrations/081-aggregate-evidence-sources.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAgBxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqFH,MAAM,WAAW,WAAW;IAC3B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG;QACrB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAC9B,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;QAC7D,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;KACnD,CAAC;CACF;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS;QAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,6FAA6F;QAC7F,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;KAC5B,EAAE,CAAC;CACJ;AAED,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;CACxC;AAED,oEAAoE;AACpE,eAAO,MAAM,UAAU,EAAE,SAAS,SAAS,EAyoB1C,CAAC;AAqOF;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAiB7D;AAED,6CAA6C;AAC7C,eAAO,MAAM,qBAAqB,QAAkD,CAAC;AAsBrF;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAiDnD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsFH,MAAM,WAAW,WAAW;IAC3B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG;QACrB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAC9B,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;QAC7D,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;KACnD,CAAC;CACF;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS;QAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,6FAA6F;QAC7F,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;KAC5B,EAAE,CAAC;CACJ;AAED,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;CACxC;AAED,oEAAoE;AACpE,eAAO,MAAM,UAAU,EAAE,SAAS,SAAS,EAipB1C,CAAC;AAqOF;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAiB7D;AAED,6CAA6C;AAC7C,eAAO,MAAM,qBAAqB,QAAkD,CAAC;AAsBrF;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAiDnD"}
package/dist/search.d.ts CHANGED
@@ -10,6 +10,7 @@ export interface SearchOptions {
10
10
  export interface VectorSearchOptions {
11
11
  limit?: number;
12
12
  type?: "fact" | "preference" | "decision";
13
+ excludeAggregateRecall?: boolean;
13
14
  }
14
15
  export interface HybridSearchOptions {
15
16
  limit?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signetai/core",
3
- "version": "0.145.8",
3
+ "version": "0.145.10",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Core library for Signet - portable AI agent identity",
6
6
  "type": "module",