@mce-bt/microagents-memory 0.7.0 → 0.8.1
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.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/knowledge-graph.d.ts +13 -1
- package/dist/knowledge-graph.d.ts.map +1 -1
- package/dist/knowledge-graph.js +95 -47
- package/dist/knowledge-graph.js.map +1 -1
- package/dist/ltm.d.ts +10 -1
- package/dist/ltm.d.ts.map +1 -1
- package/dist/ltm.js +40 -21
- package/dist/ltm.js.map +1 -1
- package/dist/manager.d.ts +40 -0
- package/dist/manager.d.ts.map +1 -1
- package/dist/manager.js +79 -4
- package/dist/manager.js.map +1 -1
- package/dist/memory-tools.js +38 -13
- package/dist/memory-tools.js.map +1 -1
- package/dist/mtm.d.ts +8 -1
- package/dist/mtm.d.ts.map +1 -1
- package/dist/mtm.js +19 -6
- package/dist/mtm.js.map +1 -1
- package/dist/vector-index.d.ts +46 -0
- package/dist/vector-index.d.ts.map +1 -0
- package/dist/vector-index.js +83 -0
- package/dist/vector-index.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { ShortTermMemory, type STMConfig } from './stm.js';
|
|
2
2
|
export { MidTermMemory, type MTMConfig, type EpisodicMemory } from './mtm.js';
|
|
3
3
|
export { LongTermMemory, type LTMConfig, type KnowledgeFact } from './ltm.js';
|
|
4
|
-
export { MemoryManager, type MemoryManagerConfig, type ContextBlock } from './manager.js';
|
|
4
|
+
export { MemoryManager, type MemoryManagerConfig, type ContextBlock, type SemanticStatus, } from './manager.js';
|
|
5
|
+
export { DEFAULT_SIMILARITY_THRESHOLD, IVFFLAT_MIN_ROWS, ensureVectorIndex, listsForRowCount, } from './vector-index.js';
|
|
5
6
|
export { KnowledgeGraph, type KGConfig, type Entity, type Relation, type SearchEntitiesOptions, type GraphSnapshot, } from './knowledge-graph.js';
|
|
6
7
|
export { MemoryExtractor, createExtractionAdapter, type ExtractionLLMAdapter, type ExtractionResult, type ExtractionStats, type ExtractedEntity, type ExtractedRelation, } from './memory-extractor.js';
|
|
7
8
|
export { createMemoryTools } from './memory-tools.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,EACd,KAAK,QAAQ,EACb,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,qBAAqB,EAC1B,KAAK,aAAa,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EACL,qBAAqB,EACrB,KAAK,2BAA2B,EAChC,KAAK,cAAc,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { ShortTermMemory } from './stm.js';
|
|
2
2
|
export { MidTermMemory } from './mtm.js';
|
|
3
3
|
export { LongTermMemory } from './ltm.js';
|
|
4
|
-
export { MemoryManager } from './manager.js';
|
|
4
|
+
export { MemoryManager, } from './manager.js';
|
|
5
|
+
export { DEFAULT_SIMILARITY_THRESHOLD, IVFFLAT_MIN_ROWS, ensureVectorIndex, listsForRowCount, } from './vector-index.js';
|
|
5
6
|
export { KnowledgeGraph, } from './knowledge-graph.js';
|
|
6
7
|
export { MemoryExtractor, createExtractionAdapter, } from './memory-extractor.js';
|
|
7
8
|
export { createMemoryTools } from './memory-tools.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkB,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAuC,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAsC,MAAM,UAAU,CAAC;AAC9E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkB,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAuC,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAsC,MAAM,UAAU,CAAC;AAC9E,OAAO,EACL,aAAa,GAId,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,GAMf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,eAAe,EACf,uBAAuB,GAMxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EACL,qBAAqB,GAGtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,GAGvB,MAAM,kBAAkB,CAAC"}
|
|
@@ -2,6 +2,13 @@ export interface KGConfig {
|
|
|
2
2
|
connectionString: string;
|
|
3
3
|
/** Embedding dimensions (default: 1536) */
|
|
4
4
|
embeddingDimensions?: number;
|
|
5
|
+
/**
|
|
6
|
+
* Isolation boundary for every row this instance reads or writes. Hosts that
|
|
7
|
+
* run agents for more than one owner MUST set it (Colmena passes the tenant
|
|
8
|
+
* id): the tables are shared, so without it separation rests on `agentId`
|
|
9
|
+
* strings never colliding, which is a convention rather than a constraint.
|
|
10
|
+
*/
|
|
11
|
+
namespace?: string;
|
|
5
12
|
}
|
|
6
13
|
export interface Entity {
|
|
7
14
|
id: string;
|
|
@@ -52,7 +59,10 @@ export declare class KnowledgeGraph {
|
|
|
52
59
|
private config;
|
|
53
60
|
private agentId;
|
|
54
61
|
private embeddingDimensions;
|
|
62
|
+
private namespace;
|
|
55
63
|
constructor(config: KGConfig);
|
|
64
|
+
/** The dimension this instance's vector column was created with. */
|
|
65
|
+
get dimensions(): number;
|
|
56
66
|
start(agentId: string): Promise<void>;
|
|
57
67
|
stop(): Promise<void>;
|
|
58
68
|
private ensureSchema;
|
|
@@ -72,7 +82,9 @@ export declare class KnowledgeGraph {
|
|
|
72
82
|
*/
|
|
73
83
|
getEntityByName(name: string): Promise<Entity | null>;
|
|
74
84
|
/**
|
|
75
|
-
* Get an entity by ID.
|
|
85
|
+
* Get an entity by ID, within this instance's scope. An id from another
|
|
86
|
+
* namespace or agent reads as "not found" rather than as data — ids are not
|
|
87
|
+
* capability tokens.
|
|
76
88
|
*/
|
|
77
89
|
getEntityById(id: string): Promise<Entity | null>;
|
|
78
90
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-graph.d.ts","sourceRoot":"","sources":["../src/knowledge-graph.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"knowledge-graph.d.ts","sourceRoot":"","sources":["../src/knowledge-graph.ts"],"names":[],"mappings":"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"}
|
package/dist/knowledge-graph.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import pg from 'pg';
|
|
2
|
+
import { DEFAULT_SIMILARITY_THRESHOLD, ensureVectorIndex } from './vector-index.js';
|
|
2
3
|
const { Pool } = pg;
|
|
3
4
|
/**
|
|
4
5
|
* Knowledge Graph — Postgres-backed entity-relation graph with temporal validity.
|
|
@@ -15,9 +16,15 @@ export class KnowledgeGraph {
|
|
|
15
16
|
config;
|
|
16
17
|
agentId = '';
|
|
17
18
|
embeddingDimensions;
|
|
19
|
+
namespace;
|
|
18
20
|
constructor(config) {
|
|
19
21
|
this.config = config;
|
|
20
22
|
this.embeddingDimensions = config.embeddingDimensions ?? 1536;
|
|
23
|
+
this.namespace = config.namespace ?? 'default';
|
|
24
|
+
}
|
|
25
|
+
/** The dimension this instance's vector column was created with. */
|
|
26
|
+
get dimensions() {
|
|
27
|
+
return this.embeddingDimensions;
|
|
21
28
|
}
|
|
22
29
|
async start(agentId) {
|
|
23
30
|
this.agentId = agentId;
|
|
@@ -39,6 +46,7 @@ export class KnowledgeGraph {
|
|
|
39
46
|
CREATE TABLE IF NOT EXISTS kg_entities (
|
|
40
47
|
id TEXT PRIMARY KEY,
|
|
41
48
|
agent_id TEXT NOT NULL,
|
|
49
|
+
namespace TEXT NOT NULL DEFAULT 'default',
|
|
42
50
|
name TEXT NOT NULL,
|
|
43
51
|
entity_type TEXT NOT NULL DEFAULT 'general',
|
|
44
52
|
observations TEXT[] DEFAULT '{}',
|
|
@@ -48,10 +56,19 @@ export class KnowledgeGraph {
|
|
|
48
56
|
updated_at TIMESTAMPTZ DEFAULT NOW()
|
|
49
57
|
);
|
|
50
58
|
|
|
51
|
-
|
|
52
|
-
|
|
59
|
+
-- Pre-namespace deployments: add the column before any index references
|
|
60
|
+
-- it. Existing rows collapse into 'default', which is exactly what they
|
|
61
|
+
-- were — one undifferentiated pool.
|
|
62
|
+
ALTER TABLE kg_entities
|
|
63
|
+
ADD COLUMN IF NOT EXISTS namespace TEXT NOT NULL DEFAULT 'default';
|
|
64
|
+
|
|
65
|
+
-- Uniqueness is per namespace: two owners may both know an entity
|
|
66
|
+
-- called "user" without colliding.
|
|
67
|
+
DROP INDEX IF EXISTS idx_kg_entity_name_agent;
|
|
68
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_kg_entity_ns_agent_name
|
|
69
|
+
ON kg_entities(namespace, agent_id, name);
|
|
53
70
|
CREATE INDEX IF NOT EXISTS idx_kg_entity_type
|
|
54
|
-
ON kg_entities(agent_id, entity_type);
|
|
71
|
+
ON kg_entities(namespace, agent_id, entity_type);
|
|
55
72
|
CREATE INDEX IF NOT EXISTS idx_kg_entity_observations
|
|
56
73
|
ON kg_entities USING GIN(observations);
|
|
57
74
|
`);
|
|
@@ -59,6 +76,7 @@ export class KnowledgeGraph {
|
|
|
59
76
|
CREATE TABLE IF NOT EXISTS kg_relations (
|
|
60
77
|
id TEXT PRIMARY KEY,
|
|
61
78
|
agent_id TEXT NOT NULL,
|
|
79
|
+
namespace TEXT NOT NULL DEFAULT 'default',
|
|
62
80
|
from_entity TEXT NOT NULL,
|
|
63
81
|
to_entity TEXT NOT NULL,
|
|
64
82
|
relation_type TEXT NOT NULL,
|
|
@@ -73,23 +91,17 @@ export class KnowledgeGraph {
|
|
|
73
91
|
REFERENCES kg_entities(id) ON DELETE CASCADE
|
|
74
92
|
);
|
|
75
93
|
|
|
94
|
+
ALTER TABLE kg_relations
|
|
95
|
+
ADD COLUMN IF NOT EXISTS namespace TEXT NOT NULL DEFAULT 'default';
|
|
96
|
+
|
|
76
97
|
CREATE INDEX IF NOT EXISTS idx_kg_rel_from ON kg_relations(from_entity);
|
|
77
98
|
CREATE INDEX IF NOT EXISTS idx_kg_rel_to ON kg_relations(to_entity);
|
|
99
|
+
CREATE INDEX IF NOT EXISTS idx_kg_rel_scope ON kg_relations(namespace, agent_id);
|
|
78
100
|
CREATE INDEX IF NOT EXISTS idx_kg_rel_type ON kg_relations(relation_type);
|
|
79
101
|
CREATE INDEX IF NOT EXISTS idx_kg_rel_valid
|
|
80
102
|
ON kg_relations(valid_from, valid_until);
|
|
81
103
|
`);
|
|
82
|
-
|
|
83
|
-
try {
|
|
84
|
-
await this.pool.query(`
|
|
85
|
-
CREATE INDEX IF NOT EXISTS idx_kg_entity_embedding
|
|
86
|
-
ON kg_entities USING ivfflat (embedding vector_cosine_ops)
|
|
87
|
-
WITH (lists = 100)
|
|
88
|
-
`);
|
|
89
|
-
}
|
|
90
|
-
catch {
|
|
91
|
-
// IVFFlat needs data to build; will be created later
|
|
92
|
-
}
|
|
104
|
+
await ensureVectorIndex(this.pool, 'kg_entities', 'idx_kg_entity_embedding');
|
|
93
105
|
}
|
|
94
106
|
// ─── Entity CRUD ───
|
|
95
107
|
/**
|
|
@@ -112,12 +124,27 @@ export class KnowledgeGraph {
|
|
|
112
124
|
await this.pool.query(`UPDATE kg_entities
|
|
113
125
|
SET observations = $1, metadata = $2, entity_type = $3,
|
|
114
126
|
embedding = $4::vector, updated_at = NOW()
|
|
115
|
-
WHERE id = $5
|
|
127
|
+
WHERE id = $5 AND namespace = $6 AND agent_id = $7`, [
|
|
128
|
+
mergedObs,
|
|
129
|
+
JSON.stringify(mergedMeta),
|
|
130
|
+
input.entityType,
|
|
131
|
+
embeddingStr,
|
|
132
|
+
existing.id,
|
|
133
|
+
this.namespace,
|
|
134
|
+
this.agentId,
|
|
135
|
+
]);
|
|
116
136
|
}
|
|
117
137
|
else {
|
|
118
138
|
await this.pool.query(`UPDATE kg_entities
|
|
119
139
|
SET observations = $1, metadata = $2, entity_type = $3, updated_at = NOW()
|
|
120
|
-
WHERE id = $4
|
|
140
|
+
WHERE id = $4 AND namespace = $5 AND agent_id = $6`, [
|
|
141
|
+
mergedObs,
|
|
142
|
+
JSON.stringify(mergedMeta),
|
|
143
|
+
input.entityType,
|
|
144
|
+
existing.id,
|
|
145
|
+
this.namespace,
|
|
146
|
+
this.agentId,
|
|
147
|
+
]);
|
|
121
148
|
}
|
|
122
149
|
return {
|
|
123
150
|
...existing,
|
|
@@ -132,10 +159,11 @@ export class KnowledgeGraph {
|
|
|
132
159
|
const embeddingStr = input.embedding
|
|
133
160
|
? `[${input.embedding.join(',')}]`
|
|
134
161
|
: null;
|
|
135
|
-
await this.pool.query(`INSERT INTO kg_entities (id, agent_id, name, entity_type, observations, embedding, metadata)
|
|
136
|
-
VALUES ($1, $2, $3, $4, $5, $6::vector, $
|
|
162
|
+
await this.pool.query(`INSERT INTO kg_entities (id, agent_id, namespace, name, entity_type, observations, embedding, metadata)
|
|
163
|
+
VALUES ($1, $2, $3, $4, $5, $6, $7::vector, $8)`, [
|
|
137
164
|
id,
|
|
138
165
|
this.agentId,
|
|
166
|
+
this.namespace,
|
|
139
167
|
input.name,
|
|
140
168
|
input.entityType,
|
|
141
169
|
input.observations ?? [],
|
|
@@ -159,18 +187,20 @@ export class KnowledgeGraph {
|
|
|
159
187
|
async getEntityByName(name) {
|
|
160
188
|
if (!this.pool)
|
|
161
189
|
throw new Error('KnowledgeGraph not started');
|
|
162
|
-
const result = await this.pool.query('SELECT * FROM kg_entities WHERE
|
|
190
|
+
const result = await this.pool.query('SELECT * FROM kg_entities WHERE namespace = $1 AND agent_id = $2 AND name = $3', [this.namespace, this.agentId, name]);
|
|
163
191
|
if (result.rows.length === 0)
|
|
164
192
|
return null;
|
|
165
193
|
return this.rowToEntity(result.rows[0]);
|
|
166
194
|
}
|
|
167
195
|
/**
|
|
168
|
-
* Get an entity by ID.
|
|
196
|
+
* Get an entity by ID, within this instance's scope. An id from another
|
|
197
|
+
* namespace or agent reads as "not found" rather than as data — ids are not
|
|
198
|
+
* capability tokens.
|
|
169
199
|
*/
|
|
170
200
|
async getEntityById(id) {
|
|
171
201
|
if (!this.pool)
|
|
172
202
|
throw new Error('KnowledgeGraph not started');
|
|
173
|
-
const result = await this.pool.query('SELECT * FROM kg_entities WHERE id = $1', [id]);
|
|
203
|
+
const result = await this.pool.query('SELECT * FROM kg_entities WHERE id = $1 AND namespace = $2 AND agent_id = $3', [id, this.namespace, this.agentId]);
|
|
174
204
|
if (result.rows.length === 0)
|
|
175
205
|
return null;
|
|
176
206
|
return this.rowToEntity(result.rows[0]);
|
|
@@ -188,7 +218,8 @@ export class KnowledgeGraph {
|
|
|
188
218
|
if (newObs.length === 0)
|
|
189
219
|
return [];
|
|
190
220
|
const merged = [...entity.observations, ...newObs];
|
|
191
|
-
await this.pool.query(
|
|
221
|
+
await this.pool.query(`UPDATE kg_entities SET observations = $1, updated_at = NOW()
|
|
222
|
+
WHERE id = $2 AND namespace = $3 AND agent_id = $4`, [merged, entity.id, this.namespace, this.agentId]);
|
|
192
223
|
return newObs;
|
|
193
224
|
}
|
|
194
225
|
/**
|
|
@@ -201,7 +232,8 @@ export class KnowledgeGraph {
|
|
|
201
232
|
if (!entity)
|
|
202
233
|
return;
|
|
203
234
|
const filtered = entity.observations.filter((o) => !observations.includes(o));
|
|
204
|
-
await this.pool.query(
|
|
235
|
+
await this.pool.query(`UPDATE kg_entities SET observations = $1, updated_at = NOW()
|
|
236
|
+
WHERE id = $2 AND namespace = $3 AND agent_id = $4`, [filtered, entity.id, this.namespace, this.agentId]);
|
|
205
237
|
}
|
|
206
238
|
/**
|
|
207
239
|
* Delete an entity and all its relations (cascading).
|
|
@@ -209,7 +241,7 @@ export class KnowledgeGraph {
|
|
|
209
241
|
async deleteEntity(name) {
|
|
210
242
|
if (!this.pool)
|
|
211
243
|
throw new Error('KnowledgeGraph not started');
|
|
212
|
-
await this.pool.query('DELETE FROM kg_entities WHERE
|
|
244
|
+
await this.pool.query('DELETE FROM kg_entities WHERE namespace = $1 AND agent_id = $2 AND name = $3', [this.namespace, this.agentId, name]);
|
|
213
245
|
}
|
|
214
246
|
// ─── Relation CRUD ───
|
|
215
247
|
/**
|
|
@@ -229,17 +261,19 @@ export class KnowledgeGraph {
|
|
|
229
261
|
// Check for existing active relation of same type
|
|
230
262
|
const existing = await this.pool.query(`SELECT id FROM kg_relations
|
|
231
263
|
WHERE from_entity = $1 AND to_entity = $2
|
|
232
|
-
AND relation_type = $3 AND valid_until IS NULL
|
|
264
|
+
AND relation_type = $3 AND valid_until IS NULL
|
|
265
|
+
AND namespace = $4 AND agent_id = $5`, [fromEntity.id, toEntity.id, input.relationType, this.namespace, this.agentId]);
|
|
233
266
|
if (existing.rows.length > 0) {
|
|
234
267
|
// Identical active relation exists — skip
|
|
235
268
|
return null;
|
|
236
269
|
}
|
|
237
270
|
const id = `rel-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
|
|
238
271
|
const validFrom = input.validFrom ?? new Date();
|
|
239
|
-
await this.pool.query(`INSERT INTO kg_relations (id, agent_id, from_entity, to_entity, relation_type, weight, valid_from, metadata)
|
|
240
|
-
VALUES ($1, $2, $3, $4, $5, $6, $7, $8)`, [
|
|
272
|
+
await this.pool.query(`INSERT INTO kg_relations (id, agent_id, namespace, from_entity, to_entity, relation_type, weight, valid_from, metadata)
|
|
273
|
+
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9)`, [
|
|
241
274
|
id,
|
|
242
275
|
this.agentId,
|
|
276
|
+
this.namespace,
|
|
243
277
|
fromEntity.id,
|
|
244
278
|
toEntity.id,
|
|
245
279
|
input.relationType,
|
|
@@ -267,7 +301,8 @@ export class KnowledgeGraph {
|
|
|
267
301
|
async invalidateRelation(id) {
|
|
268
302
|
if (!this.pool)
|
|
269
303
|
throw new Error('KnowledgeGraph not started');
|
|
270
|
-
await this.pool.query(
|
|
304
|
+
await this.pool.query(`UPDATE kg_relations SET valid_until = NOW()
|
|
305
|
+
WHERE id = $1 AND namespace = $2 AND agent_id = $3`, [id, this.namespace, this.agentId]);
|
|
271
306
|
}
|
|
272
307
|
/**
|
|
273
308
|
* Delete a relation permanently (use invalidate for temporal preservation).
|
|
@@ -280,7 +315,8 @@ export class KnowledgeGraph {
|
|
|
280
315
|
if (!fromEntity || !toEntity)
|
|
281
316
|
return;
|
|
282
317
|
await this.pool.query(`DELETE FROM kg_relations
|
|
283
|
-
WHERE from_entity = $1 AND to_entity = $2 AND relation_type = $3
|
|
318
|
+
WHERE from_entity = $1 AND to_entity = $2 AND relation_type = $3
|
|
319
|
+
AND namespace = $4 AND agent_id = $5`, [fromEntity.id, toEntity.id, input.relationType, this.namespace, this.agentId]);
|
|
284
320
|
}
|
|
285
321
|
/**
|
|
286
322
|
* Get all active relations for an entity (as source or target).
|
|
@@ -302,8 +338,9 @@ export class KnowledgeGraph {
|
|
|
302
338
|
JOIN kg_entities fe ON r.from_entity = fe.id
|
|
303
339
|
JOIN kg_entities te ON r.to_entity = te.id
|
|
304
340
|
WHERE (r.from_entity = $1 OR r.to_entity = $1)
|
|
341
|
+
AND r.namespace = $2 AND r.agent_id = $3
|
|
305
342
|
${validClause}
|
|
306
|
-
ORDER BY r.valid_from DESC`, [entity.id]);
|
|
343
|
+
ORDER BY r.valid_from DESC`, [entity.id, this.namespace, this.agentId]);
|
|
307
344
|
return result.rows.map((row) => ({
|
|
308
345
|
...this.rowToRelation(row),
|
|
309
346
|
fromName: row.from_name,
|
|
@@ -317,9 +354,9 @@ export class KnowledgeGraph {
|
|
|
317
354
|
async searchEntities(options = {}) {
|
|
318
355
|
if (!this.pool)
|
|
319
356
|
throw new Error('KnowledgeGraph not started');
|
|
320
|
-
const conditions = ['
|
|
321
|
-
const params = [this.agentId];
|
|
322
|
-
let idx =
|
|
357
|
+
const conditions = ['namespace = $1', 'agent_id = $2'];
|
|
358
|
+
const params = [this.namespace, this.agentId];
|
|
359
|
+
let idx = 3;
|
|
323
360
|
if (options.entityType) {
|
|
324
361
|
conditions.push(`entity_type = $${idx}`);
|
|
325
362
|
params.push(options.entityType);
|
|
@@ -344,9 +381,9 @@ export class KnowledgeGraph {
|
|
|
344
381
|
async searchEntitiesByEmbedding(queryEmbedding, options = {}) {
|
|
345
382
|
if (!this.pool)
|
|
346
383
|
throw new Error('KnowledgeGraph not started');
|
|
347
|
-
const conditions = ['
|
|
348
|
-
const params = [this.agentId];
|
|
349
|
-
let idx =
|
|
384
|
+
const conditions = ['namespace = $1', 'agent_id = $2', 'embedding IS NOT NULL'];
|
|
385
|
+
const params = [this.namespace, this.agentId];
|
|
386
|
+
let idx = 3;
|
|
350
387
|
if (options.entityType) {
|
|
351
388
|
conditions.push(`entity_type = $${idx}`);
|
|
352
389
|
params.push(options.entityType);
|
|
@@ -354,7 +391,13 @@ export class KnowledgeGraph {
|
|
|
354
391
|
}
|
|
355
392
|
const embeddingStr = `[${queryEmbedding.join(',')}]`;
|
|
356
393
|
const limit = options.limit ?? 10;
|
|
357
|
-
|
|
394
|
+
// 0.7 was aspirational. Measured with text-embedding-3-small against a
|
|
395
|
+
// stored fact ("strongly prefers espresso over filter coffee"), genuinely
|
|
396
|
+
// relevant queries scored 0.31-0.55 — short asymmetric text simply does not
|
|
397
|
+
// reach 0.7, so that default returned nothing for every real question.
|
|
398
|
+
// DEFAULT_SIMILARITY_THRESHOLD admits those; `limit` still caps how much
|
|
399
|
+
// reaches the prompt, and the model judges what is actually relevant.
|
|
400
|
+
const threshold = options.threshold ?? DEFAULT_SIMILARITY_THRESHOLD;
|
|
358
401
|
const result = await this.pool.query(`SELECT *,
|
|
359
402
|
1 - (embedding <=> $${idx}::vector) as similarity
|
|
360
403
|
FROM kg_entities
|
|
@@ -378,7 +421,7 @@ export class KnowledgeGraph {
|
|
|
378
421
|
return { entities: [], relations: [] };
|
|
379
422
|
// Get entities
|
|
380
423
|
const entityResult = await this.pool.query(`SELECT * FROM kg_entities
|
|
381
|
-
WHERE
|
|
424
|
+
WHERE namespace = $1 AND agent_id = $2 AND name = ANY($3)`, [this.namespace, this.agentId, names]);
|
|
382
425
|
const entities = entityResult.rows.map(this.rowToEntity);
|
|
383
426
|
const entityIds = entities.map((e) => e.id);
|
|
384
427
|
if (entityIds.length === 0)
|
|
@@ -387,7 +430,8 @@ export class KnowledgeGraph {
|
|
|
387
430
|
const relResult = await this.pool.query(`SELECT * FROM kg_relations
|
|
388
431
|
WHERE (from_entity = ANY($1) OR to_entity = ANY($1))
|
|
389
432
|
AND valid_until IS NULL
|
|
390
|
-
|
|
433
|
+
AND namespace = $2 AND agent_id = $3
|
|
434
|
+
ORDER BY valid_from DESC`, [entityIds, this.namespace, this.agentId]);
|
|
391
435
|
const relations = relResult.rows.map(this.rowToRelation);
|
|
392
436
|
return { entities, relations };
|
|
393
437
|
}
|
|
@@ -397,11 +441,12 @@ export class KnowledgeGraph {
|
|
|
397
441
|
async readGraph(options = {}) {
|
|
398
442
|
if (!this.pool)
|
|
399
443
|
throw new Error('KnowledgeGraph not started');
|
|
400
|
-
const entityResult = await this.pool.query('SELECT * FROM kg_entities WHERE
|
|
444
|
+
const entityResult = await this.pool.query('SELECT * FROM kg_entities WHERE namespace = $1 AND agent_id = $2 ORDER BY name', [this.namespace, this.agentId]);
|
|
401
445
|
const validClause = options.includeExpired
|
|
402
446
|
? ''
|
|
403
447
|
: 'AND valid_until IS NULL';
|
|
404
|
-
const relResult = await this.pool.query(`SELECT * FROM kg_relations WHERE
|
|
448
|
+
const relResult = await this.pool.query(`SELECT * FROM kg_relations WHERE namespace = $1 AND agent_id = $2 ${validClause}
|
|
449
|
+
ORDER BY valid_from DESC`, [this.namespace, this.agentId]);
|
|
405
450
|
return {
|
|
406
451
|
entities: entityResult.rows.map(this.rowToEntity),
|
|
407
452
|
relations: relResult.rows.map(this.rowToRelation),
|
|
@@ -418,9 +463,10 @@ export class KnowledgeGraph {
|
|
|
418
463
|
'agent_id = $1',
|
|
419
464
|
'valid_from <= $2',
|
|
420
465
|
'(valid_until IS NULL OR valid_until > $2)',
|
|
466
|
+
'namespace = $3',
|
|
421
467
|
];
|
|
422
|
-
const params = [this.agentId, date];
|
|
423
|
-
const idx =
|
|
468
|
+
const params = [this.agentId, date, this.namespace];
|
|
469
|
+
const idx = 4;
|
|
424
470
|
if (options.entityName) {
|
|
425
471
|
const entity = await this.getEntityByName(options.entityName);
|
|
426
472
|
if (!entity)
|
|
@@ -443,7 +489,8 @@ export class KnowledgeGraph {
|
|
|
443
489
|
return [];
|
|
444
490
|
const result = await this.pool.query(`SELECT * FROM kg_relations
|
|
445
491
|
WHERE from_entity = $1 AND to_entity = $2 AND relation_type = $3
|
|
446
|
-
|
|
492
|
+
AND namespace = $4 AND agent_id = $5
|
|
493
|
+
ORDER BY valid_from DESC`, [fromEntity.id, toEntity.id, relationType, this.namespace, this.agentId]);
|
|
447
494
|
return result.rows.map(this.rowToRelation);
|
|
448
495
|
}
|
|
449
496
|
// ─── Contradiction Detection ───
|
|
@@ -461,7 +508,8 @@ export class KnowledgeGraph {
|
|
|
461
508
|
// Invalidate existing active relation
|
|
462
509
|
await this.pool.query(`UPDATE kg_relations SET valid_until = NOW()
|
|
463
510
|
WHERE from_entity = $1 AND to_entity = $2
|
|
464
|
-
AND relation_type = $3 AND valid_until IS NULL
|
|
511
|
+
AND relation_type = $3 AND valid_until IS NULL
|
|
512
|
+
AND namespace = $4 AND agent_id = $5`, [fromEntity.id, toEntity.id, input.relationType, this.namespace, this.agentId]);
|
|
465
513
|
// Create the new one
|
|
466
514
|
return this.createRelation(input);
|
|
467
515
|
}
|
|
@@ -473,8 +521,8 @@ export class KnowledgeGraph {
|
|
|
473
521
|
if (!this.pool)
|
|
474
522
|
throw new Error('KnowledgeGraph not started');
|
|
475
523
|
const result = await this.pool.query(`SELECT entity_type, COUNT(*)::int as count
|
|
476
|
-
FROM kg_entities WHERE agent_id = $
|
|
477
|
-
GROUP BY entity_type ORDER BY count DESC`, [this.agentId]);
|
|
524
|
+
FROM kg_entities WHERE namespace = $1 AND agent_id = $2
|
|
525
|
+
GROUP BY entity_type ORDER BY count DESC`, [this.namespace, this.agentId]);
|
|
478
526
|
const counts = {};
|
|
479
527
|
for (const row of result.rows) {
|
|
480
528
|
counts[row.entity_type] = row.count;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-graph.js","sourceRoot":"","sources":["../src/knowledge-graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AAgDpB;;;;;;;;;GASG;AACH,MAAM,OAAO,cAAc;IACjB,IAAI,GAAmB,IAAI,CAAC;IAC5B,MAAM,CAAW;IACjB,OAAO,GAAW,EAAE,CAAC;IACrB,mBAAmB,CAAS;IAEpC,YAAY,MAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,IAAI,IAAI,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAe;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACzE,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC;IAED,iBAAiB;IAET,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO;QAEvB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAE/D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;;;;;;;2BAOC,IAAI,CAAC,mBAAmB;;;;;;;;;;;;KAY9C,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;KAuBrB,CAAC,CAAC;QAEH,6CAA6C;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;;;;OAIrB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,qDAAqD;QACvD,CAAC;IACH,CAAC;IAED,sBAAsB;IAEtB;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,KAMlB;QACC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAExD,IAAI,QAAQ,EAAE,CAAC;YACb,mCAAmC;YACnC,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC1C,CAAC;YACF,MAAM,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAC,YAAY,EAAE,GAAG,MAAM,CAAC,CAAC;YACxD,MAAM,UAAU,GAAG,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;YAEvE,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS;gBAClC,CAAC,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBAClC,CAAC,CAAC,IAAI,CAAC;YAET,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB;;;yBAGe,EACf,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC,CACrF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB;;yBAEe,EACf,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CACvE,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,GAAG,QAAQ;gBACX,YAAY,EAAE,SAAS;gBACvB,QAAQ,EAAE,UAAU;gBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;QACJ,CAAC;QAED,aAAa;QACb,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS;YAClC,CAAC,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;YAClC,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB;mDAC6C,EAC7C;YACE,EAAE;YACF,IAAI,CAAC,OAAO;YACZ,KAAK,CAAC,IAAI;YACV,KAAK,CAAC,UAAU;YAChB,KAAK,CAAC,YAAY,IAAI,EAAE;YACxB,YAAY;YACZ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;SACrC,CACF,CAAC;QAEF,OAAO;YACL,EAAE;YACF,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,EAAE;YACtC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;YAC9B,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,IAAY;QAChC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC,6DAA6D,EAC7D,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CACrB,CAAC;QAEF,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,EAAU;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC,yCAAyC,EACzC,CAAC,EAAE,CAAC,CACL,CAAC;QAEF,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,UAAkB,EAAE,YAAsB;QAC9D,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,aAAa,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEnC,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,MAAM,CAAC,CAAC;QACnD,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB,4EAA4E,EAC5E,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CACpB,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,UAAkB,EAAE,YAAsB;QACjE,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB,4EAA4E,EAC5E,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CACtB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,IAAY;QAC7B,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB,2DAA2D,EAC3D,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CACrB,CAAC;IACJ,CAAC;IAED,wBAAwB;IAExB;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,KAOpB;QACC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,gCAAgC;QAChC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,mCAAmC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa,CACpF,CAAC;QACJ,CAAC;QAED,kDAAkD;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACpC;;wDAEkD,EAClD,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC,CACjD,CAAC;QAEF,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,0CAA0C;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;QAEhD,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB;+CACyC,EACzC;YACE,EAAE;YACF,IAAI,CAAC,OAAO;YACZ,UAAU,CAAC,EAAE;YACb,QAAQ,CAAC,EAAE;YACX,KAAK,CAAC,YAAY;YAClB,KAAK,CAAC,MAAM,IAAI,GAAG;YACnB,SAAS;YACT,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;SACrC,CACF,CAAC;QAEF,OAAO;YACL,EAAE;YACF,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,UAAU,CAAC,EAAE;YACzB,QAAQ,EAAE,QAAQ,CAAC,EAAE;YACrB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,GAAG;YAC3B,SAAS;YACT,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;YAC9B,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CAAC,EAAU;QACjC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB,2DAA2D,EAC3D,CAAC,EAAE,CAAC,CACL,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,KAIpB;QACC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;YAAE,OAAO;QAErC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB;wEACkE,EAClE,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC,CACjD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CACtB,UAAkB,EAClB,UAAwC,EAAE;QAE1C,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAEvB,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc;YACxC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,2BAA2B,CAAC;QAEhC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC;;;;;;;WAOK,WAAW;kCACY,EAC5B,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QAEF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;YAC1B,QAAQ,EAAE,GAAG,CAAC,SAAmB;YACjC,MAAM,EAAE,GAAG,CAAC,OAAiB;SAC9B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,iBAAiB;IAEjB;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,UAAiC,EAAE;QACtD,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAa,CAAC,eAAe,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,GAAG,GAAG,CAAC,CAAC;QAEZ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAChC,GAAG,EAAE,CAAC;QACR,CAAC;QAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACtC,UAAU,CAAC,IAAI,CACb,sBAAsB,GAAG;wCACO,GAAG;qFAC0C,GAAG,IAAI,CACrF,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,GAAG,EAAE,CAAC;QACR,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAElC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC,mCAAmC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;yCACxB,GAAG,EAAE,EACxC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,CACnB,CAAC;QAEF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAC7B,cAAwB,EACxB,UAII,EAAE;QAEN,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAa,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAAC;QACxE,MAAM,MAAM,GAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,GAAG,GAAG,CAAC,CAAC;QAEZ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAChC,GAAG,EAAE,CAAC;QACR,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;QACrD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC;QAE3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC;oCAC8B,GAAG;;eAExB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;mCACJ,GAAG,iBAAiB,GAAG,GAAG,CAAC;iCAC7B,GAAG;gBACpB,GAAG,GAAG,CAAC,EAAE,EACnB,CAAC,GAAG,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,CAC5C,CAAC;QAEF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;YACxB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,UAAoB,CAAC;SACjD,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,KAAe;QAChC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QAE/D,eAAe;QACf,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACxC;8CACwC,EACxC,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CACtB,CAAC;QAEF,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAE5C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QAEnE,iEAAiE;QACjE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACrC;;;gCAG0B,EAC1B,CAAC,SAAS,CAAC,CACZ,CAAC;QAEF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEzD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,UAAwC,EAAE;QACxD,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACxC,6DAA6D,EAC7D,CAAC,IAAI,CAAC,OAAO,CAAC,CACf,CAAC;QAEF,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc;YACxC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,yBAAyB,CAAC;QAE9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACrC,kDAAkD,WAAW,2BAA2B,EACxF,CAAC,IAAI,CAAC,OAAO,CAAC,CACf,CAAC;QAEF,OAAO;YACL,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;YACjD,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,2BAA2B;IAE3B;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,IAAU,EACV,UAAmC,EAAE;QAErC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAa;YAC3B,eAAe;YACf,kBAAkB;YAClB,2CAA2C;SAC5C,CAAC;QACF,MAAM,MAAM,GAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,CAAC,CAAC;QAEd,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC,mBAAmB,GAAG,oBAAoB,GAAG,GAAG,CAAC,CAAC;YAClE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC,oCAAoC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,2BAA2B,EACvF,MAAM,CACP,CAAC;QAEF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,IAAY,EAAE,EAAU,EAAE,YAAoB;QACrE,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAC;QAExC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC;;gCAE0B,EAC1B,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,CAC3C,CAAC;QAEF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7C,CAAC;IAED,kCAAkC;IAElC;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAMtB;QACC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE1C,sCAAsC;QACtC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB;;wDAEkD,EAClD,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC,CACjD,CAAC;QAEF,qBAAqB;QACrB,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,sBAAsB;IAEtB;;OAEG;IACH,KAAK,CAAC,mBAAmB;QACvB,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAClC;;gDAE0C,EAC1C,CAAC,IAAI,CAAC,OAAO,CAAC,CACf,CAAC;QAEF,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,WAAqB,CAAC,GAAG,GAAG,CAAC,KAAe,CAAC;QAC1D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,sBAAsB;IAEd,WAAW,CAAC,GAA4B;QAC9C,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAY;YACpB,OAAO,EAAE,GAAG,CAAC,QAAkB;YAC/B,IAAI,EAAE,GAAG,CAAC,IAAc;YACxB,UAAU,EAAE,GAAG,CAAC,WAAqB;YACrC,YAAY,EAAE,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAa;YAClD,QAAQ,EAAE,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAA4B;YACzD,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAoB,CAAC;YAC7C,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAoB,CAAC;SAC9C,CAAC;IACJ,CAAC;IAEO,aAAa,CAAC,GAA4B;QAChD,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAY;YACpB,OAAO,EAAE,GAAG,CAAC,QAAkB;YAC/B,UAAU,EAAE,GAAG,CAAC,WAAqB;YACrC,QAAQ,EAAE,GAAG,CAAC,SAAmB;YACjC,YAAY,EAAE,GAAG,CAAC,aAAuB;YACzC,MAAM,EAAE,GAAG,CAAC,MAAgB;YAC5B,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAoB,CAAC;YAC7C,UAAU,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,WAAqB,CAAC,CAAC,CAAC,CAAC,IAAI;YACxE,QAAQ,EAAE,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAA4B;YACzD,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAoB,CAAC;SAC9C,CAAC;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"knowledge-graph.js","sourceRoot":"","sources":["../src/knowledge-graph.ts"],"names":[],"mappings":"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"}
|
package/dist/ltm.d.ts
CHANGED
|
@@ -2,6 +2,11 @@ export interface LTMConfig {
|
|
|
2
2
|
connectionString: string;
|
|
3
3
|
/** Embedding dimensions (default: 1536 for OpenAI text-embedding-3-small) */
|
|
4
4
|
embeddingDimensions?: number;
|
|
5
|
+
/**
|
|
6
|
+
* Isolation boundary for every row this instance reads or writes. Hosts
|
|
7
|
+
* serving more than one owner MUST set it — the table is shared.
|
|
8
|
+
*/
|
|
9
|
+
namespace?: string;
|
|
5
10
|
}
|
|
6
11
|
export interface KnowledgeFact {
|
|
7
12
|
id: string;
|
|
@@ -25,7 +30,10 @@ export declare class LongTermMemory {
|
|
|
25
30
|
private config;
|
|
26
31
|
private agentId;
|
|
27
32
|
private embeddingDimensions;
|
|
33
|
+
private namespace;
|
|
28
34
|
constructor(config: LTMConfig);
|
|
35
|
+
/** The dimension this instance's vector column was created with. */
|
|
36
|
+
get dimensions(): number;
|
|
29
37
|
start(agentId: string): Promise<void>;
|
|
30
38
|
stop(): Promise<void>;
|
|
31
39
|
private ensureSchema;
|
|
@@ -60,7 +68,8 @@ export declare class LongTermMemory {
|
|
|
60
68
|
limit?: number;
|
|
61
69
|
}): Promise<KnowledgeFact[]>;
|
|
62
70
|
/**
|
|
63
|
-
* Get a fact by ID.
|
|
71
|
+
* Get a fact by ID, within this instance's scope. An id belonging to another
|
|
72
|
+
* namespace or agent reads as "not found" — ids are not capability tokens.
|
|
64
73
|
*/
|
|
65
74
|
getById(id: string): Promise<KnowledgeFact | null>;
|
|
66
75
|
/**
|
package/dist/ltm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ltm.d.ts","sourceRoot":"","sources":["../src/ltm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ltm.d.ts","sourceRoot":"","sources":["../src/ltm.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAwB;IACpC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,SAAS;IAM7B,oEAAoE;IACpE,IAAI,UAAU,IAAI,MAAM,CAEvB;IAEK,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAOb,YAAY;IAiC1B;;OAEG;IACG,KAAK,CAAC,IAAI,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BnB;;OAEG;IACG,MAAM,CACV,cAAc,EAAE,MAAM,EAAE,EACxB,OAAO,GAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;KACf,GACL,OAAO,CAAC,CAAC,aAAa,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC;IAyDtD;;OAEG;IACG,YAAY,CAChB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KACX,GACL,OAAO,CAAC,aAAa,EAAE,CAAC;IA0C3B;;;OAGG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAYxD;;OAEG;IACG,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GACA,OAAO,CAAC,IAAI,CAAC;IAyChB;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvC,OAAO,CAAC,SAAS;CAYlB"}
|