hippo-memory 1.15.0 → 1.17.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.
- package/README.md +862 -861
- package/dist/audit.d.ts +1 -1
- package/dist/audit.d.ts.map +1 -1
- package/dist/audit.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +1244 -3
- package/dist/cli.js.map +1 -1
- package/dist/customer-notes.d.ts +95 -0
- package/dist/customer-notes.d.ts.map +1 -0
- package/dist/customer-notes.js +296 -0
- package/dist/customer-notes.js.map +1 -0
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +731 -1
- package/dist/db.js.map +1 -1
- package/dist/graph-extract.d.ts +55 -0
- package/dist/graph-extract.d.ts.map +1 -0
- package/dist/graph-extract.js +259 -0
- package/dist/graph-extract.js.map +1 -0
- package/dist/graph-recall.d.ts +41 -0
- package/dist/graph-recall.d.ts.map +1 -0
- package/dist/graph-recall.js +246 -0
- package/dist/graph-recall.js.map +1 -0
- package/dist/graph.d.ts +137 -0
- package/dist/graph.d.ts.map +1 -0
- package/dist/graph.js +433 -0
- package/dist/graph.js.map +1 -0
- package/dist/incidents.d.ts +100 -0
- package/dist/incidents.d.ts.map +1 -0
- package/dist/incidents.js +322 -0
- package/dist/incidents.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/memory.d.ts +6 -0
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +6 -0
- package/dist/memory.js.map +1 -1
- package/dist/policies.d.ts +149 -0
- package/dist/policies.d.ts.map +1 -0
- package/dist/policies.js +380 -0
- package/dist/policies.js.map +1 -0
- package/dist/processes.d.ts +104 -0
- package/dist/processes.d.ts.map +1 -0
- package/dist/processes.js +330 -0
- package/dist/processes.js.map +1 -0
- package/dist/project-briefs.d.ts +126 -0
- package/dist/project-briefs.d.ts.map +1 -0
- package/dist/project-briefs.js +453 -0
- package/dist/project-briefs.js.map +1 -0
- package/dist/search.d.ts +7 -0
- package/dist/search.d.ts.map +1 -1
- package/dist/search.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +1028 -16
- package/dist/server.js.map +1 -1
- package/dist/skills.d.ts +98 -0
- package/dist/skills.d.ts.map +1 -0
- package/dist/skills.js +339 -0
- package/dist/skills.js.map +1 -0
- package/dist/src/audit.js.map +1 -1
- package/dist/src/cli.js +1244 -3
- package/dist/src/cli.js.map +1 -1
- package/dist/src/customer-notes.js +296 -0
- package/dist/src/customer-notes.js.map +1 -0
- package/dist/src/db.js +731 -1
- package/dist/src/db.js.map +1 -1
- package/dist/src/graph-extract.js +259 -0
- package/dist/src/graph-extract.js.map +1 -0
- package/dist/src/graph-recall.js +246 -0
- package/dist/src/graph-recall.js.map +1 -0
- package/dist/src/graph.js +433 -0
- package/dist/src/graph.js.map +1 -0
- package/dist/src/incidents.js +322 -0
- package/dist/src/incidents.js.map +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/memory.js +6 -0
- package/dist/src/memory.js.map +1 -1
- package/dist/src/policies.js +380 -0
- package/dist/src/policies.js.map +1 -0
- package/dist/src/processes.js +330 -0
- package/dist/src/processes.js.map +1 -0
- package/dist/src/project-briefs.js +453 -0
- package/dist/src/project-briefs.js.map +1 -0
- package/dist/src/search.js.map +1 -1
- package/dist/src/server.js +1028 -16
- package/dist/src/server.js.map +1 -1
- package/dist/src/skills.js +339 -0
- package/dist/src/skills.js.map +1 -0
- package/dist/src/version.js +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/extensions/openclaw-plugin/openclaw.plugin.json +1 -1
- package/extensions/openclaw-plugin/package.json +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +2 -2
package/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* E3.1 deterministic entity extraction (first slice)
|
|
3
|
+
* (docs/plans/2026-06-01-e3-deterministic-extraction.md).
|
|
4
|
+
*
|
|
5
|
+
* Populates the E3 graph from the already-structured consolidated E2-object tables -
|
|
6
|
+
* NO NLP, no precision gate for entities + supersedes. The graph is a pure derived
|
|
7
|
+
* function of the current E2 state, so `extractGraph` is an idempotent REBUILD: clear
|
|
8
|
+
* the tenant's graph, then re-derive entities + `supersedes` relations from decisions /
|
|
9
|
+
* policies / customer_notes / project_briefs (the four E2 types whose kind maps to the
|
|
10
|
+
* `entity_type` enum). All writes go through the src/graph.ts consolidated-source guard
|
|
11
|
+
* (insertEntity / insertRelation / clearGraph); this module issues no raw SQL.
|
|
12
|
+
*
|
|
13
|
+
* Pass 3 (E3 cross-object, docs/plans/2026-06-02-e3-cross-object-references.md) adds the
|
|
14
|
+
* first CROSS-OBJECT relations: a deterministic NAME-MATCH heuristic that emits a
|
|
15
|
+
* `references` edge when one consolidated object's text contains another entity's name.
|
|
16
|
+
* It is conservative (word-boundary, length-bounded, ambiguity-guarded, per-source
|
|
17
|
+
* capped); its precision is measured + reported, not assumed.
|
|
18
|
+
*
|
|
19
|
+
* Deferred (follow-ups): NLP prose-extraction (semantic depends-on / blocked-by / owns);
|
|
20
|
+
* skill/incident/process entities (not in the entity_type enum - needs a migration); the
|
|
21
|
+
* `hippo sleep` enqueue-hook.
|
|
22
|
+
*/
|
|
23
|
+
/** Per-type load cap (the loaders default to 100). A type whose active or superseded
|
|
24
|
+
* set exceeds this is truncated; `ExtractResult.truncated` records it so the
|
|
25
|
+
* incompleteness is observable rather than silent. */
|
|
26
|
+
export declare const MAX_EXTRACT_PER_TYPE = 10000;
|
|
27
|
+
/** A target entity name must be in [MIN, MAX] chars to be matched: MIN skips short /
|
|
28
|
+
* generic words; MAX skips prose (a decision's prose name is never a target, only a
|
|
29
|
+
* source). */
|
|
30
|
+
export declare const MIN_REF_NAME_LEN = 4;
|
|
31
|
+
export declare const MAX_REF_NAME_LEN = 80;
|
|
32
|
+
/** Per-source cap so one object cannot explode the graph with references edges. */
|
|
33
|
+
export declare const MAX_REFERENCES_PER_OBJECT = 25;
|
|
34
|
+
/** Regex-size bound: at most this many distinct target names enter the combined
|
|
35
|
+
* alternation, keeping the scan regex sane on a huge store. */
|
|
36
|
+
export declare const MAX_TARGET_NAMES = 5000;
|
|
37
|
+
export interface ExtractResult {
|
|
38
|
+
entities: number;
|
|
39
|
+
relations: number;
|
|
40
|
+
/** Of `relations`, how many are cross-object `references` edges (the rest are
|
|
41
|
+
* `supersedes`). Surfaced so the heuristic's output volume is observable. */
|
|
42
|
+
references: number;
|
|
43
|
+
/** Entity count per extracted type. */
|
|
44
|
+
byType: Record<string, number>;
|
|
45
|
+
/** Entity types whose active or superseded load hit MAX_EXTRACT_PER_TYPE (the graph
|
|
46
|
+
* is under-extracted for those). */
|
|
47
|
+
truncated: string[];
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Idempotent rebuild of the tenant's deterministic graph from its consolidated E2
|
|
51
|
+
* objects. Returns the entity/relation counts (+ which types were truncated at the
|
|
52
|
+
* per-type cap). Safe to re-run: output is a pure function of the current E2 state.
|
|
53
|
+
*/
|
|
54
|
+
export declare function extractGraph(hippoRoot: string, tenantId: string): ExtractResult;
|
|
55
|
+
//# sourceMappingURL=graph-extract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-extract.d.ts","sourceRoot":"","sources":["../src/graph-extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AASH;;uDAEuD;AACvD,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAG1C;;eAEe;AACf,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,mFAAmF;AACnF,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C;gEACgE;AAChE,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB;kFAC8E;IAC9E,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B;yCACqC;IACrC,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AA+ED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAiG/E"}
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* E3.1 deterministic entity extraction (first slice)
|
|
3
|
+
* (docs/plans/2026-06-01-e3-deterministic-extraction.md).
|
|
4
|
+
*
|
|
5
|
+
* Populates the E3 graph from the already-structured consolidated E2-object tables -
|
|
6
|
+
* NO NLP, no precision gate for entities + supersedes. The graph is a pure derived
|
|
7
|
+
* function of the current E2 state, so `extractGraph` is an idempotent REBUILD: clear
|
|
8
|
+
* the tenant's graph, then re-derive entities + `supersedes` relations from decisions /
|
|
9
|
+
* policies / customer_notes / project_briefs (the four E2 types whose kind maps to the
|
|
10
|
+
* `entity_type` enum). All writes go through the src/graph.ts consolidated-source guard
|
|
11
|
+
* (insertEntity / insertRelation / clearGraph); this module issues no raw SQL.
|
|
12
|
+
*
|
|
13
|
+
* Pass 3 (E3 cross-object, docs/plans/2026-06-02-e3-cross-object-references.md) adds the
|
|
14
|
+
* first CROSS-OBJECT relations: a deterministic NAME-MATCH heuristic that emits a
|
|
15
|
+
* `references` edge when one consolidated object's text contains another entity's name.
|
|
16
|
+
* It is conservative (word-boundary, length-bounded, ambiguity-guarded, per-source
|
|
17
|
+
* capped); its precision is measured + reported, not assumed.
|
|
18
|
+
*
|
|
19
|
+
* Deferred (follow-ups): NLP prose-extraction (semantic depends-on / blocked-by / owns);
|
|
20
|
+
* skill/incident/process entities (not in the entity_type enum - needs a migration); the
|
|
21
|
+
* `hippo sleep` enqueue-hook.
|
|
22
|
+
*/
|
|
23
|
+
import { clearGraph, insertEntity, insertRelation, MAX_ENTITY_NAME_LEN } from './graph.js';
|
|
24
|
+
import { loadDecisions } from './decisions.js';
|
|
25
|
+
import { loadPolicies } from './policies.js';
|
|
26
|
+
import { loadCustomerNotes } from './customer-notes.js';
|
|
27
|
+
import { loadProjectBriefs } from './project-briefs.js';
|
|
28
|
+
import { assertTenantId } from './store.js';
|
|
29
|
+
/** Per-type load cap (the loaders default to 100). A type whose active or superseded
|
|
30
|
+
* set exceeds this is truncated; `ExtractResult.truncated` records it so the
|
|
31
|
+
* incompleteness is observable rather than silent. */
|
|
32
|
+
export const MAX_EXTRACT_PER_TYPE = 10000;
|
|
33
|
+
// --- Pass 3 (cross-object references) tunables ------------------------------------
|
|
34
|
+
/** A target entity name must be in [MIN, MAX] chars to be matched: MIN skips short /
|
|
35
|
+
* generic words; MAX skips prose (a decision's prose name is never a target, only a
|
|
36
|
+
* source). */
|
|
37
|
+
export const MIN_REF_NAME_LEN = 4;
|
|
38
|
+
export const MAX_REF_NAME_LEN = 80;
|
|
39
|
+
/** Per-source cap so one object cannot explode the graph with references edges. */
|
|
40
|
+
export const MAX_REFERENCES_PER_OBJECT = 25;
|
|
41
|
+
/** Regex-size bound: at most this many distinct target names enter the combined
|
|
42
|
+
* alternation, keeping the scan regex sane on a huge store. */
|
|
43
|
+
export const MAX_TARGET_NAMES = 5000;
|
|
44
|
+
/** Stable map key: entity types share an id space across tables, so key by both. */
|
|
45
|
+
function keyOf(entityType, e2Id) {
|
|
46
|
+
return `${entityType}:${e2Id}`;
|
|
47
|
+
}
|
|
48
|
+
/** Escape a string for safe use as a literal inside a RegExp alternation. */
|
|
49
|
+
function escapeRegex(s) {
|
|
50
|
+
return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
51
|
+
}
|
|
52
|
+
/** Unordered entity-id pair key, so a relation between a,b is found in either direction. */
|
|
53
|
+
function pairKey(a, b) {
|
|
54
|
+
return a < b ? `${a}:${b}` : `${b}:${a}`;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Load a type's ACTIVE + SUPERSEDED rows (excluding `closed` = retired), normalised.
|
|
58
|
+
* Calls the loader once per status so MAX_EXTRACT_PER_TYPE is a per-status budget
|
|
59
|
+
* (closed rows never consume it). Sets `hitCap` when either status load is full.
|
|
60
|
+
*/
|
|
61
|
+
function loadType(hippoRoot, tenantId, entityType,
|
|
62
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
63
|
+
loadFn,
|
|
64
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
65
|
+
nameOf,
|
|
66
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
67
|
+
textOf) {
|
|
68
|
+
const rows = [];
|
|
69
|
+
let hitCap = false;
|
|
70
|
+
for (const status of ['active', 'superseded']) {
|
|
71
|
+
const loaded = loadFn(hippoRoot, tenantId, { status, limit: MAX_EXTRACT_PER_TYPE });
|
|
72
|
+
if (loaded.length === MAX_EXTRACT_PER_TYPE)
|
|
73
|
+
hitCap = true;
|
|
74
|
+
for (const r of loaded) {
|
|
75
|
+
rows.push({
|
|
76
|
+
entityType,
|
|
77
|
+
e2Id: r.id,
|
|
78
|
+
name: nameOf(r),
|
|
79
|
+
searchText: textOf(r),
|
|
80
|
+
memoryId: (r.memoryId ?? null),
|
|
81
|
+
supersededBy: (r.supersededBy ?? null),
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return { rows, hitCap };
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Idempotent rebuild of the tenant's deterministic graph from its consolidated E2
|
|
89
|
+
* objects. Returns the entity/relation counts (+ which types were truncated at the
|
|
90
|
+
* per-type cap). Safe to re-run: output is a pure function of the current E2 state.
|
|
91
|
+
*/
|
|
92
|
+
export function extractGraph(hippoRoot, tenantId) {
|
|
93
|
+
assertTenantId('extractGraph', tenantId);
|
|
94
|
+
const sources = [
|
|
95
|
+
{ entityType: 'decision', loadFn: loadDecisions, nameOf: (r) => r.decisionText, textOf: (r) => [r.decisionText, r.context].filter(Boolean).join(' ') },
|
|
96
|
+
{ entityType: 'policy', loadFn: loadPolicies, nameOf: (r) => r.policyName, textOf: (r) => [r.policyName, r.policyText].filter(Boolean).join(' ') },
|
|
97
|
+
{ entityType: 'customer', loadFn: loadCustomerNotes, nameOf: (r) => r.customer, textOf: (r) => [r.customer, r.note].filter(Boolean).join(' ') },
|
|
98
|
+
{ entityType: 'project', loadFn: loadProjectBriefs, nameOf: (r) => r.repo, textOf: (r) => [r.repo, r.summary].filter(Boolean).join(' ') },
|
|
99
|
+
];
|
|
100
|
+
// Rebuild from scratch: the graph is derived, so clear then re-derive.
|
|
101
|
+
clearGraph(hippoRoot, tenantId);
|
|
102
|
+
const byType = {};
|
|
103
|
+
const truncated = [];
|
|
104
|
+
const allRows = [];
|
|
105
|
+
const entityIdByKey = new Map();
|
|
106
|
+
const memoryIdByKey = new Map();
|
|
107
|
+
// Created entities ONLY (drives Pass 3 sources + targets), in stable insertion order.
|
|
108
|
+
const created = [];
|
|
109
|
+
// Pass 1: entities. Skip rows whose source memory was forgotten (NULL memory_id) -
|
|
110
|
+
// an entity must reference a consolidated memory (entities.memory_id is NOT NULL).
|
|
111
|
+
for (const src of sources) {
|
|
112
|
+
const { rows, hitCap } = loadType(hippoRoot, tenantId, src.entityType, src.loadFn, src.nameOf, src.textOf);
|
|
113
|
+
if (hitCap)
|
|
114
|
+
truncated.push(src.entityType);
|
|
115
|
+
byType[src.entityType] = 0;
|
|
116
|
+
for (const row of rows) {
|
|
117
|
+
allRows.push(row);
|
|
118
|
+
if (row.memoryId === null)
|
|
119
|
+
continue;
|
|
120
|
+
// Normalise the label so a long/odd-but-valid E2 name can never throw in
|
|
121
|
+
// insertEntity and (because clearGraph already ran) brick the rebuild
|
|
122
|
+
// unrebuildably. E2 name fields (decisionText / policyName) are UNCAPPED at
|
|
123
|
+
// source, and insertEntity REJECTS (not truncates) both an over-cap name AND an
|
|
124
|
+
// empty one. So: TRIM FIRST (codex 2026-06-01: >512 leading-whitespace chars
|
|
125
|
+
// would otherwise slice to a whitespace-only string -> trimmed to '' ->
|
|
126
|
+
// 'name is required' throw), THEN cap to MAX_ENTITY_NAME_LEN; if the normalised
|
|
127
|
+
// label is empty (the E2 save APIs forbid this, but be defensive) skip the row
|
|
128
|
+
// rather than throw. This closes the entire name-brick class.
|
|
129
|
+
const name = (row.name ?? '').trim().slice(0, MAX_ENTITY_NAME_LEN);
|
|
130
|
+
if (name.length === 0)
|
|
131
|
+
continue;
|
|
132
|
+
const entity = insertEntity(hippoRoot, tenantId, {
|
|
133
|
+
entityType: row.entityType,
|
|
134
|
+
name,
|
|
135
|
+
memoryId: row.memoryId,
|
|
136
|
+
});
|
|
137
|
+
const k = keyOf(row.entityType, row.e2Id);
|
|
138
|
+
entityIdByKey.set(k, entity.id);
|
|
139
|
+
memoryIdByKey.set(k, row.memoryId);
|
|
140
|
+
created.push({ entityId: entity.id, entityType: row.entityType, memoryId: row.memoryId, name, searchText: row.searchText ?? '', superseded: row.supersededBy !== null });
|
|
141
|
+
byType[src.entityType] += 1;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
// Pass 2: `supersedes` relations. For X superseded by Y (Y is the successor), emit
|
|
145
|
+
// "Y supersedes X" - but only when BOTH X and Y were extracted (e.g. Y may be closed
|
|
146
|
+
// and absent). The relation is sourced from Y's consolidated memory.
|
|
147
|
+
let relations = 0;
|
|
148
|
+
// Entity-id pairs already related by supersedes (unordered). Pass 3 skips a references
|
|
149
|
+
// edge for such a pair: a version-extends-its-predecessor's-name containment (e.g.
|
|
150
|
+
// "Adopt X (managed)" contains "Adopt X") is a name artifact, not a cross-reference,
|
|
151
|
+
// and supersedes already captures their relationship.
|
|
152
|
+
const supersededPairs = new Set();
|
|
153
|
+
for (const row of allRows) {
|
|
154
|
+
if (row.supersededBy === null)
|
|
155
|
+
continue;
|
|
156
|
+
const xKey = keyOf(row.entityType, row.e2Id);
|
|
157
|
+
const yKey = keyOf(row.entityType, row.supersededBy);
|
|
158
|
+
const fromId = entityIdByKey.get(yKey); // successor Y
|
|
159
|
+
const toId = entityIdByKey.get(xKey); // superseded X
|
|
160
|
+
const yMemoryId = memoryIdByKey.get(yKey);
|
|
161
|
+
if (fromId === undefined || toId === undefined || yMemoryId === undefined)
|
|
162
|
+
continue;
|
|
163
|
+
insertRelation(hippoRoot, tenantId, {
|
|
164
|
+
fromEntityId: fromId,
|
|
165
|
+
toEntityId: toId,
|
|
166
|
+
relType: 'supersedes',
|
|
167
|
+
memoryId: yMemoryId,
|
|
168
|
+
});
|
|
169
|
+
supersededPairs.add(pairKey(fromId, toId));
|
|
170
|
+
relations += 1;
|
|
171
|
+
}
|
|
172
|
+
// Pass 3: cross-object `references` edges via conservative name matching. A source's
|
|
173
|
+
// text containing a target entity's name -> "source references target". Sources +
|
|
174
|
+
// targets are CREATED entities only, so insertRelation never sees a null source memory.
|
|
175
|
+
const references = extractReferences(hippoRoot, tenantId, created, supersededPairs, truncated);
|
|
176
|
+
relations += references;
|
|
177
|
+
const entities = created.length;
|
|
178
|
+
return { entities, relations, references, byType, truncated };
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Pass 3. Build a target-name index from the created entities (names within the length
|
|
182
|
+
* bounds, ambiguous names dropped), scan each created entity's text once with one
|
|
183
|
+
* combined word-boundary regex, and emit `references` edges (self-skipped, deduped,
|
|
184
|
+
* per-source capped). Returns the number of references edges written.
|
|
185
|
+
*/
|
|
186
|
+
function extractReferences(hippoRoot, tenantId, created, supersededPairs, truncated) {
|
|
187
|
+
// Build the target index: normalised name -> single entity id. A name is a target only
|
|
188
|
+
// if its length is in bounds; a name shared by >1 entity is AMBIGUOUS and dropped.
|
|
189
|
+
const nameToId = new Map();
|
|
190
|
+
const ambiguous = new Set();
|
|
191
|
+
for (const e of created) {
|
|
192
|
+
// References are among ACTIVE entities only: a superseded (outdated) row is not a
|
|
193
|
+
// current cross-reference target (codex).
|
|
194
|
+
if (e.superseded)
|
|
195
|
+
continue;
|
|
196
|
+
// Decisions are SOURCE-only: their name is decision prose, referenced by supersedes,
|
|
197
|
+
// not by name-mention. Excluding them as targets also prevents a decision's own name
|
|
198
|
+
// (== its searchText) from whole-string self-matching and shadowing embedded targets.
|
|
199
|
+
if (e.entityType === 'decision')
|
|
200
|
+
continue;
|
|
201
|
+
const norm = e.name.trim().toLowerCase();
|
|
202
|
+
if (norm.length < MIN_REF_NAME_LEN || norm.length > MAX_REF_NAME_LEN)
|
|
203
|
+
continue;
|
|
204
|
+
if (ambiguous.has(norm))
|
|
205
|
+
continue;
|
|
206
|
+
if (nameToId.has(norm)) {
|
|
207
|
+
// Second distinct entity with this name (and not its own id repeated) -> ambiguous.
|
|
208
|
+
if (nameToId.get(norm) !== e.entityId) {
|
|
209
|
+
nameToId.delete(norm);
|
|
210
|
+
ambiguous.add(norm);
|
|
211
|
+
}
|
|
212
|
+
continue;
|
|
213
|
+
}
|
|
214
|
+
nameToId.set(norm, e.entityId);
|
|
215
|
+
}
|
|
216
|
+
if (nameToId.size === 0)
|
|
217
|
+
return 0;
|
|
218
|
+
// Record the truncation (observability, mirroring MAX_EXTRACT_PER_TYPE) so a >cap
|
|
219
|
+
// store's under-matched references are not silent.
|
|
220
|
+
if (nameToId.size > MAX_TARGET_NAMES)
|
|
221
|
+
truncated.push('references-targets');
|
|
222
|
+
// LONGEST name first, then alphabetical: JS regex alternation is leftmost-first, so
|
|
223
|
+
// ordering longer names before their prefixes makes the match longest-at-position
|
|
224
|
+
// (`postgres pro` wins over `postgres`; codex). Deterministic, so truncation is stable.
|
|
225
|
+
const targetNames = [...nameToId.keys()]
|
|
226
|
+
.sort((a, b) => b.length - a.length || (a < b ? -1 : a > b ? 1 : 0))
|
|
227
|
+
.slice(0, MAX_TARGET_NAMES);
|
|
228
|
+
const pattern = `\\b(?:${targetNames.map(escapeRegex).join('|')})\\b`;
|
|
229
|
+
const re = new RegExp(pattern, 'gi');
|
|
230
|
+
let references = 0;
|
|
231
|
+
for (const src of created) {
|
|
232
|
+
if (src.superseded)
|
|
233
|
+
continue; // superseded sources hold only stale references (codex)
|
|
234
|
+
if (!src.searchText)
|
|
235
|
+
continue;
|
|
236
|
+
const targets = new Set();
|
|
237
|
+
for (const m of src.searchText.matchAll(re)) {
|
|
238
|
+
const targetId = nameToId.get(m[0].toLowerCase());
|
|
239
|
+
if (targetId === undefined || targetId === src.entityId)
|
|
240
|
+
continue; // miss / self
|
|
241
|
+
if (supersededPairs.has(pairKey(src.entityId, targetId)))
|
|
242
|
+
continue; // already version-related
|
|
243
|
+
targets.add(targetId);
|
|
244
|
+
if (targets.size >= MAX_REFERENCES_PER_OBJECT)
|
|
245
|
+
break; // per-source cap
|
|
246
|
+
}
|
|
247
|
+
for (const targetId of targets) {
|
|
248
|
+
insertRelation(hippoRoot, tenantId, {
|
|
249
|
+
fromEntityId: src.entityId,
|
|
250
|
+
toEntityId: targetId,
|
|
251
|
+
relType: 'references',
|
|
252
|
+
memoryId: src.memoryId, // the source object's consolidated memory
|
|
253
|
+
});
|
|
254
|
+
references += 1;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
return references;
|
|
258
|
+
}
|
|
259
|
+
//# sourceMappingURL=graph-extract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-extract.js","sourceRoot":"","sources":["../src/graph-extract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { type SearchResult } from './search.js';
|
|
2
|
+
/** Hard cap on `--hops` (a higher value just walks more of a finite graph; this bounds
|
|
3
|
+
* worst-case work and keeps the flag honest). */
|
|
4
|
+
export declare const MAX_HOPS = 3;
|
|
5
|
+
/** Default per-hop fanout cap (bounds blow-up on a future dense graph). */
|
|
6
|
+
export declare const DEFAULT_MAX_NEIGHBORS = 25;
|
|
7
|
+
export interface GraphExpandOpts {
|
|
8
|
+
/** Hops to expand. <= 0 is a no-op (caller should not invoke, but guarded anyway). */
|
|
9
|
+
hops: number;
|
|
10
|
+
/** Per-hop fanout cap. Defaults to DEFAULT_MAX_NEIGHBORS. */
|
|
11
|
+
maxNeighbors?: number;
|
|
12
|
+
/** The local store root (where local seeds' graph lives). */
|
|
13
|
+
hippoRoot: string;
|
|
14
|
+
/** The global store root, when distinct + initialized (where global seeds' graph lives).
|
|
15
|
+
* A global seed is only expanded if this is provided. */
|
|
16
|
+
globalRoot?: string;
|
|
17
|
+
tenantId: string;
|
|
18
|
+
/** Mirror the recall handler's hard filters when re-loading graph-reached rows. */
|
|
19
|
+
includeSuperseded?: boolean;
|
|
20
|
+
/** ISO date; bi-temporal as-of filter applied to graph-reached rows (full rule, matching
|
|
21
|
+
* cmdRecall: a row is visible if valid_from <= asOf AND, when superseded, its successor
|
|
22
|
+
* was not yet valid at asOf). */
|
|
23
|
+
asOf?: string;
|
|
24
|
+
/** Token budget for the augmented set (defaults to 4000, matching recall's default). */
|
|
25
|
+
budget?: number;
|
|
26
|
+
/** The recall --min-results floor: this many top base rows are kept regardless of
|
|
27
|
+
* budget, so graph expansion never violates the floor. Defaults to 1. */
|
|
28
|
+
minResults?: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Augment `baseResults` with memories reached by walking the graph `hops` edges out from
|
|
32
|
+
* the seed results' entities (across the local AND global stores). Each graph hit is
|
|
33
|
+
* inserted directly after the base result it descends from, scored just below that seed;
|
|
34
|
+
* the base list's own order is preserved. Token-budget-bounded; deduped against the base
|
|
35
|
+
* set and across stores.
|
|
36
|
+
*
|
|
37
|
+
* No-op (returns `baseResults` unchanged) when `hops <= 0`, there are no base results, the
|
|
38
|
+
* graph is empty, no seed maps to an entity, or nothing new survives the filters/budget.
|
|
39
|
+
*/
|
|
40
|
+
export declare function graphExpandRecall(baseResults: SearchResult[], opts: GraphExpandOpts): SearchResult[];
|
|
41
|
+
//# sourceMappingURL=graph-recall.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-recall.d.ts","sourceRoot":"","sources":["../src/graph-recall.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,aAAa,CAAC;AAOhE;kDACkD;AAClD,eAAO,MAAM,QAAQ,IAAI,CAAC;AAC1B,2EAA2E;AAC3E,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAUxC,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB;8DAC0D;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;sCAEkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;8EAC0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAoHD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,YAAY,EAAE,EAC3B,IAAI,EAAE,eAAe,GACpB,YAAY,EAAE,CA4DhB"}
|