@framers/agentos 0.1.252 → 0.1.254
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/memory/core/types.d.ts +1 -1
- package/dist/memory/core/types.d.ts.map +1 -1
- package/dist/memory/pipeline/observation/MemoryReflector.d.ts.map +1 -1
- package/dist/memory/pipeline/observation/MemoryReflector.js +9 -3
- package/dist/memory/pipeline/observation/MemoryReflector.js.map +1 -1
- package/dist/memory/retrieval/hybrid/HybridRetriever.d.ts +54 -0
- package/dist/memory/retrieval/hybrid/HybridRetriever.d.ts.map +1 -1
- package/dist/memory/retrieval/hybrid/HybridRetriever.js +145 -3
- package/dist/memory/retrieval/hybrid/HybridRetriever.js.map +1 -1
- package/package.json +1 -1
|
@@ -17,7 +17,7 @@ export type MemoryType = 'episodic' | 'semantic' | 'procedural' | 'prospective'
|
|
|
17
17
|
/** Visibility / ownership scope for a memory trace. */
|
|
18
18
|
export type MemoryScope = 'thread' | 'user' | 'persona' | 'organization';
|
|
19
19
|
/** How the content of this memory was originally produced. */
|
|
20
|
-
export type MemorySourceType = 'user_statement' | 'agent_inference' | 'tool_result' | 'observation' | 'reflection' | 'external';
|
|
20
|
+
export type MemorySourceType = 'user_statement' | 'agent_inference' | 'tool_result' | 'observation' | 'reflection' | 'external' | 'fact_graph';
|
|
21
21
|
export interface MemoryProvenance {
|
|
22
22
|
sourceType: MemorySourceType;
|
|
23
23
|
/** Back-reference to originating conversation, tool call, etc. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/memory/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;;;GAWG;AAMH,mEAAmE;AACnE,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,YAAY,CAAC;AAE/F,uDAAuD;AACvD,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,CAAC;AAEzE,8DAA8D;AAC9D,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,iBAAiB,GACjB,aAAa,GACb,aAAa,GACb,YAAY,GACZ,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/memory/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryReflector.d.ts","sourceRoot":"","sources":["../../../../src/memory/pipeline/observation/MemoryReflector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,WAAW,EAA2B,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAY,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAM3D;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,4CAA4C;IAC5C,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,kBAAkB,GAAG,WAAW,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,aAAa,GAAG,uBAAuB,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG;QAChL;;;;WAIG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,EAAE,CAAC;IACL,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,mDAAmD;IACnD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,kCAAkC;IAClC,gBAAgB,EAAE,MAAM,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"MemoryReflector.d.ts","sourceRoot":"","sources":["../../../../src/memory/pipeline/observation/MemoryReflector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,WAAW,EAA2B,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAY,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAM3D;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,4CAA4C;IAC5C,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,kBAAkB,GAAG,WAAW,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,aAAa,GAAG,uBAAuB,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG;QAChL;;;;WAIG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,EAAE,CAAC;IACL,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,mDAAmD;IACnD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,kCAAkC;IAClC,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAyGD,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAgE;IACnF,OAAO,CAAC,MAAM,CAAkB;gBAG9B,MAAM,EAAE,YAAY,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAWnC;;;OAGG;IACG,QAAQ,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAShF,iEAAiE;IACjE,cAAc,IAAI,OAAO;IAQzB;;OAEG;IACG,OAAO,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAkC9E,8BAA8B;IAC9B,mBAAmB,IAAI,MAAM;IAI7B,+BAA+B;IAC/B,KAAK,IAAI,IAAI;IAMb;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,eAAe;CA4ExB"}
|
|
@@ -71,8 +71,9 @@ Before producing traces, reason step by step inside <thinking> tags:
|
|
|
71
71
|
3. What PATTERNS or PREFERENCES emerged? (procedural)
|
|
72
72
|
4. What FUTURE INTENTIONS were expressed? (prospective)
|
|
73
73
|
5. What RELATIONSHIP SIGNALS appeared — vulnerability, trust, conflict, warmth? (relational)
|
|
74
|
-
6.
|
|
75
|
-
7.
|
|
74
|
+
6. What SPECIFIC TOKENS must be preserved verbatim? (names, dates, numeric amounts, addresses, phone numbers, product/model names, proper nouns, organization names, URLs)
|
|
75
|
+
7. Do any of these CONTRADICT existing memories? If so, which is more reliable?
|
|
76
|
+
8. What can be MERGED from multiple notes into a single trace?
|
|
76
77
|
|
|
77
78
|
Rules:
|
|
78
79
|
1. Merge redundant or overlapping observations into single traces
|
|
@@ -80,7 +81,12 @@ Rules:
|
|
|
80
81
|
3. Assign a scope: "user" (about the user), "thread" (conversation-specific), "persona" (about the agent), or "organization" (shared)
|
|
81
82
|
4. ${conflictStrategy}
|
|
82
83
|
5. ${memoryStyle}
|
|
83
|
-
6. Target 5-40x compression: many notes → few high-quality traces
|
|
84
|
+
6. Target 5-40x compression: many notes → few high-quality traces
|
|
85
|
+
7. PRESERVE LITERAL TOKENS. When a note contains specific values — names ("Alice", "Wells Fargo"), dates ("March 15, 2024"), numeric amounts ("$350,000", "3 days"), addresses, phone numbers, product or model names ("iPhone 15 Pro"), organization names, URLs — copy them VERBATIM into the consolidated trace's \`content\` field. Do NOT paraphrase, generalize, round, or abbreviate. Example:
|
|
86
|
+
❌ "The user mentioned a recent residence change."
|
|
87
|
+
✓ "User moved to Berlin on March 15, 2024."
|
|
88
|
+
❌ "User was pre-approved for a mortgage."
|
|
89
|
+
✓ "User pre-approved by Wells Fargo for \$350,000 mortgage."${relationalBlock}
|
|
84
90
|
|
|
85
91
|
After your <thinking> block, output JSON objects, one per line:
|
|
86
92
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryReflector.js","sourceRoot":"","sources":["../../../../src/memory/pipeline/observation/MemoryReflector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAmCH,8EAA8E;AAC9E,kCAAkC;AAClC,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,0BAA0B,CAAC,MAAoB;IACtD,MAAM,KAAK,GAAG,CAAC,CAAqB,EAAU,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE/F,oFAAoF;IACpF,wFAAwF;IACxF,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG;QAClD,CAAC,CAAC,iIAAiI;QACnI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,GAAG;YACjC,CAAC,CAAC,+EAA+E;YACjF,CAAC,CAAC,2EAA2E,CAAC;IAElF,sEAAsE;IACtE,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,GAAG;QACvD,CAAC,CAAC,yEAAyE;QAC3E,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG;YAC5B,CAAC,CAAC,+EAA+E;YACjF,CAAC,CAAC,oEAAoE,CAAC;IAE3E,mEAAmE;IACnE,gEAAgE;IAChE,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,GAAG,EAAE,CAAC;QACrC,kBAAkB,CAAC,IAAI,CAAC,+IAA+I,CAAC,CAAC;IAC3K,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,GAAG,EAAE,CAAC;QACtC,kBAAkB,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;IACxG,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,GAAG,EAAE,CAAC;QACrC,kBAAkB,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;IAC3G,CAAC;IACD,MAAM,eAAe,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC;QACnD,CAAC,CAAC,gCAAgC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACtF,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO
|
|
1
|
+
{"version":3,"file":"MemoryReflector.js","sourceRoot":"","sources":["../../../../src/memory/pipeline/observation/MemoryReflector.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,7 @@ import type { RerankerService } from '../../../rag/reranking/RerankerService.js'
|
|
|
47
47
|
import type { HydeRetriever } from '../../../rag/HydeRetriever.js';
|
|
48
48
|
import type { CognitiveRetrievalResult, MemoryScope } from '../../core/types.js';
|
|
49
49
|
import type { PADState } from '../../core/config.js';
|
|
50
|
+
import type { FactStore } from '../fact-graph/FactStore.js';
|
|
50
51
|
/**
|
|
51
52
|
* Options for constructing a {@link HybridRetriever}.
|
|
52
53
|
*/
|
|
@@ -86,7 +87,35 @@ export interface HybridRetrieverOptions {
|
|
|
86
87
|
defaultSparseWeight?: number;
|
|
87
88
|
/** Default RRF constant. @default 60 */
|
|
88
89
|
defaultRrfK?: number;
|
|
90
|
+
/**
|
|
91
|
+
* Step-9: optional {@link FactStore} of `(subject, predicate) → Fact[]`
|
|
92
|
+
* tuples extracted at session-ingest time. When present AND the query
|
|
93
|
+
* classifier extracts at least one `(subject, predicate)` pair from
|
|
94
|
+
* the query, the latest fact per pair is prepended as a synthetic
|
|
95
|
+
* {@link ScoredMemoryTrace} (retrievalScore: 1.0, sourceType:
|
|
96
|
+
* 'fact_graph') to the merged pool BEFORE rerank. Preserves literal
|
|
97
|
+
* `object` tokens where summary-based approaches (Steps 5/7/8)
|
|
98
|
+
* paraphrased them away.
|
|
99
|
+
*/
|
|
100
|
+
factStore?: FactStore;
|
|
101
|
+
/**
|
|
102
|
+
* Step-9: optional query classifier. Given the user's query, returns
|
|
103
|
+
* `(subject, predicate)` pairs to look up in the {@link factStore},
|
|
104
|
+
* plus whether the query is temporal (in which case ALL facts for a
|
|
105
|
+
* subject are prepended, not just the latest). When absent and
|
|
106
|
+
* `factStore` is set, a keyword-based default is used.
|
|
107
|
+
*/
|
|
108
|
+
factGraphQueryClassifier?: FactGraphQueryClassifier;
|
|
109
|
+
}
|
|
110
|
+
/** Return type of a fact-graph query classifier. */
|
|
111
|
+
export interface FactGraphClassification {
|
|
112
|
+
isTemporalQuestion: boolean;
|
|
113
|
+
extractedSubjectPredicates: Array<{
|
|
114
|
+
subject: string;
|
|
115
|
+
predicate: string;
|
|
116
|
+
}>;
|
|
89
117
|
}
|
|
118
|
+
export type FactGraphQueryClassifier = (query: string) => FactGraphClassification;
|
|
90
119
|
/**
|
|
91
120
|
* Per-call options for {@link HybridRetriever.retrieve}.
|
|
92
121
|
*/
|
|
@@ -125,6 +154,8 @@ export declare class HybridRetriever {
|
|
|
125
154
|
private readonly defaultDenseWeight;
|
|
126
155
|
private readonly defaultSparseWeight;
|
|
127
156
|
private readonly defaultRrfK;
|
|
157
|
+
private readonly factStore?;
|
|
158
|
+
private readonly factGraphQueryClassifier;
|
|
128
159
|
constructor(opts: HybridRetrieverOptions);
|
|
129
160
|
retrieve(query: string, mood: PADState, scope: {
|
|
130
161
|
scope: MemoryScope;
|
|
@@ -141,6 +172,17 @@ export declare class HybridRetriever {
|
|
|
141
172
|
* are updated for replaced traces. Returns a diagnostic summary.
|
|
142
173
|
*/
|
|
143
174
|
private refineAmbiguous;
|
|
175
|
+
/**
|
|
176
|
+
* Step-9: build synthetic `ScoredMemoryTrace[]` from the fact-graph.
|
|
177
|
+
* Uses the configured classifier to extract (subject, predicate)
|
|
178
|
+
* pairs from the query. For temporal questions, returns ALL facts
|
|
179
|
+
* for each extracted subject (time-ordered ascending). For non-
|
|
180
|
+
* temporal questions, returns only the LATEST fact per (subject,
|
|
181
|
+
* predicate) pair.
|
|
182
|
+
*/
|
|
183
|
+
private buildFactGraphTraces;
|
|
184
|
+
private factTraceId;
|
|
185
|
+
private factToScoredTrace;
|
|
144
186
|
/**
|
|
145
187
|
* Split a string at the sentence boundary nearest its midpoint.
|
|
146
188
|
* Returns [firstHalf, secondHalf] or null if the string is too short
|
|
@@ -148,4 +190,16 @@ export declare class HybridRetriever {
|
|
|
148
190
|
*/
|
|
149
191
|
private splitAtMidpointSentence;
|
|
150
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Default keyword-based classifier for fact-graph query expansion.
|
|
195
|
+
* Recognizes:
|
|
196
|
+
* - Temporal markers ("first", "last", "when", "before", "after", ...)
|
|
197
|
+
* - First-person references ("I", "my", "me", "user") → subject "user"
|
|
198
|
+
* - Predicate stems present in the query
|
|
199
|
+
*
|
|
200
|
+
* MVP-scoped: LLM-based classification is a follow-up experiment if this
|
|
201
|
+
* keyword path misses on Tier A. The priority is keeping query-time zero
|
|
202
|
+
* LLM overhead on queries the classifier skips.
|
|
203
|
+
*/
|
|
204
|
+
export declare function defaultKeywordFactGraphClassifier(query: string): FactGraphClassification;
|
|
151
205
|
//# sourceMappingURL=HybridRetriever.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HybridRetriever.d.ts","sourceRoot":"","sources":["../../../../src/memory/retrieval/hybrid/HybridRetriever.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EACV,wBAAwB,EACxB,WAAW,EAEZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"HybridRetriever.d.ts","sourceRoot":"","sources":["../../../../src/memory/retrieval/hybrid/HybridRetriever.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
*/
|
|
44
44
|
import { BM25Index } from '../../../rag/search/BM25Index.js';
|
|
45
45
|
import { reciprocalRankFusion } from './reciprocalRankFusion.js';
|
|
46
|
+
import { PREDICATE_SCHEMA, hashPredicate, hashSubject } from '../fact-graph/canonicalization.js';
|
|
46
47
|
/**
|
|
47
48
|
* Hybrid BM25 + dense retriever.
|
|
48
49
|
*
|
|
@@ -70,6 +71,9 @@ export class HybridRetriever {
|
|
|
70
71
|
this.defaultDenseWeight = opts.defaultDenseWeight ?? 0.7;
|
|
71
72
|
this.defaultSparseWeight = opts.defaultSparseWeight ?? 0.3;
|
|
72
73
|
this.defaultRrfK = opts.defaultRrfK ?? 60;
|
|
74
|
+
this.factStore = opts.factStore;
|
|
75
|
+
this.factGraphQueryClassifier =
|
|
76
|
+
opts.factGraphQueryClassifier ?? defaultKeywordFactGraphClassifier;
|
|
73
77
|
}
|
|
74
78
|
async retrieve(query, mood, scope, options = {}) {
|
|
75
79
|
const startTime = Date.now();
|
|
@@ -83,6 +87,12 @@ export class HybridRetriever {
|
|
|
83
87
|
// the final diagnostics carry a full trace of where each candidate
|
|
84
88
|
// lived at every step of the pipeline.
|
|
85
89
|
const stageIds = { dense: [], sparse: [], merged: [], reranked: [], final: [] };
|
|
90
|
+
// Step-9: build synthetic fact-graph traces to prepend before
|
|
91
|
+
// rerank. Empty array when factStore is unset or the classifier
|
|
92
|
+
// extracts no (subject, predicate) pairs from the query.
|
|
93
|
+
const factGraphTraces = this.factStore
|
|
94
|
+
? this.buildFactGraphTraces(query, scope)
|
|
95
|
+
: [];
|
|
86
96
|
// HyDE expansion (Step 4): when a hydeRetriever is attached,
|
|
87
97
|
// generate a hypothetical answer and use it as the query for BOTH
|
|
88
98
|
// dense and sparse sides. The reranker (below) keeps the ORIGINAL
|
|
@@ -110,13 +120,16 @@ export class HybridRetriever {
|
|
|
110
120
|
const sparseResults = this.bm25.search(effectiveQuery, overFetchTopK);
|
|
111
121
|
stageIds.sparse = sparseResults.map((r) => r.id);
|
|
112
122
|
// Fallback: empty BM25 index or zero sparse hits => dense-only
|
|
113
|
-
// with explicit escalation diagnostic.
|
|
123
|
+
// with explicit escalation diagnostic. Fact-graph synthetic traces
|
|
124
|
+
// still prepend (Step 9) since they're an additive signal independent
|
|
125
|
+
// of BM25.
|
|
114
126
|
if (sparseResults.length === 0) {
|
|
115
|
-
const
|
|
127
|
+
const combined = [...factGraphTraces, ...denseScored];
|
|
128
|
+
const denseFinal = combined.slice(0, recallTopK);
|
|
116
129
|
stageIds.final = denseFinal.map((t) => t.id);
|
|
117
130
|
return this.buildResult(denseFinal, {
|
|
118
131
|
escalations: ['hybrid-retriever:sparse-empty'],
|
|
119
|
-
candidatesScanned:
|
|
132
|
+
candidatesScanned: combined.length,
|
|
120
133
|
vectorSearchMs: denseTimings.vectorSearchMs,
|
|
121
134
|
scoringMs: denseTimings.scoringMs,
|
|
122
135
|
totalMs: Date.now() - startTime,
|
|
@@ -137,6 +150,15 @@ export class HybridRetriever {
|
|
|
137
150
|
// the dense side. Skip sparse-only docs (see file docstring).
|
|
138
151
|
const denseById = new Map(denseScored.map((t) => [t.id, t]));
|
|
139
152
|
const hydrated = [];
|
|
153
|
+
// Step-9: prepend synthetic fact-graph traces BEFORE the rerank
|
|
154
|
+
// pass. Each synthetic trace carries retrievalScore: 1.0 so it
|
|
155
|
+
// enters the rerank input at the top; rerank can still downrank it
|
|
156
|
+
// if it genuinely misses the query, in which case the blend
|
|
157
|
+
// reflects that. This is the composition discipline that let Step 3
|
|
158
|
+
// Hybrid ship — additive signal, not destructive replacement.
|
|
159
|
+
for (const synthetic of factGraphTraces) {
|
|
160
|
+
hydrated.push(synthetic);
|
|
161
|
+
}
|
|
140
162
|
for (const m of merged) {
|
|
141
163
|
const trace = denseById.get(m.id);
|
|
142
164
|
if (trace) {
|
|
@@ -267,6 +289,93 @@ export class HybridRetriever {
|
|
|
267
289
|
}
|
|
268
290
|
return { threshold, candidateCount, replacedIds };
|
|
269
291
|
}
|
|
292
|
+
/**
|
|
293
|
+
* Step-9: build synthetic `ScoredMemoryTrace[]` from the fact-graph.
|
|
294
|
+
* Uses the configured classifier to extract (subject, predicate)
|
|
295
|
+
* pairs from the query. For temporal questions, returns ALL facts
|
|
296
|
+
* for each extracted subject (time-ordered ascending). For non-
|
|
297
|
+
* temporal questions, returns only the LATEST fact per (subject,
|
|
298
|
+
* predicate) pair.
|
|
299
|
+
*/
|
|
300
|
+
buildFactGraphTraces(query, scope) {
|
|
301
|
+
if (!this.factStore)
|
|
302
|
+
return [];
|
|
303
|
+
const classification = this.factGraphQueryClassifier(query);
|
|
304
|
+
const out = [];
|
|
305
|
+
const seenFactIds = new Set();
|
|
306
|
+
for (const { subject, predicate } of classification.extractedSubjectPredicates) {
|
|
307
|
+
if (classification.isTemporalQuestion) {
|
|
308
|
+
// Temporal: include all facts for the subject across all predicates
|
|
309
|
+
// in the schema — temporal reasoning often spans multiple facts.
|
|
310
|
+
const all = this.factStore.getAllTimeOrdered(scope.scope, scope.scopeId, subject);
|
|
311
|
+
for (const fact of all) {
|
|
312
|
+
const id = this.factTraceId(fact);
|
|
313
|
+
if (seenFactIds.has(id))
|
|
314
|
+
continue;
|
|
315
|
+
seenFactIds.add(id);
|
|
316
|
+
out.push(this.factToScoredTrace(fact, scope));
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
else {
|
|
320
|
+
const latest = this.factStore.getLatest(scope.scope, scope.scopeId, subject, predicate);
|
|
321
|
+
if (!latest)
|
|
322
|
+
continue;
|
|
323
|
+
const id = this.factTraceId(latest);
|
|
324
|
+
if (seenFactIds.has(id))
|
|
325
|
+
continue;
|
|
326
|
+
seenFactIds.add(id);
|
|
327
|
+
out.push(this.factToScoredTrace(latest, scope));
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
return out;
|
|
331
|
+
}
|
|
332
|
+
factTraceId(fact) {
|
|
333
|
+
return `fact-graph:${hashSubject(fact.subject)}:${hashPredicate(fact.predicate)}:${fact.timestamp}`;
|
|
334
|
+
}
|
|
335
|
+
factToScoredTrace(fact, scope) {
|
|
336
|
+
const id = this.factTraceId(fact);
|
|
337
|
+
return {
|
|
338
|
+
id,
|
|
339
|
+
type: 'semantic',
|
|
340
|
+
scope: scope.scope,
|
|
341
|
+
scopeId: scope.scopeId,
|
|
342
|
+
content: `${fact.subject} ${fact.predicate} ${fact.object} (as of ${new Date(fact.timestamp).toISOString()}).`,
|
|
343
|
+
entities: [fact.subject],
|
|
344
|
+
tags: ['fact-graph', `predicate:${fact.predicate}`],
|
|
345
|
+
provenance: {
|
|
346
|
+
sourceType: 'fact_graph',
|
|
347
|
+
sourceTimestamp: fact.timestamp,
|
|
348
|
+
confidence: 1,
|
|
349
|
+
verificationCount: 0,
|
|
350
|
+
},
|
|
351
|
+
emotionalContext: {
|
|
352
|
+
valence: 0,
|
|
353
|
+
arousal: 0,
|
|
354
|
+
dominance: 0,
|
|
355
|
+
intensity: 0,
|
|
356
|
+
gmiMood: '',
|
|
357
|
+
},
|
|
358
|
+
encodingStrength: 1,
|
|
359
|
+
stability: 1,
|
|
360
|
+
retrievalCount: 0,
|
|
361
|
+
lastAccessedAt: fact.timestamp,
|
|
362
|
+
accessCount: 0,
|
|
363
|
+
reinforcementInterval: 0,
|
|
364
|
+
associatedTraceIds: [],
|
|
365
|
+
createdAt: fact.timestamp,
|
|
366
|
+
updatedAt: fact.timestamp,
|
|
367
|
+
isActive: true,
|
|
368
|
+
retrievalScore: 1,
|
|
369
|
+
scoreBreakdown: {
|
|
370
|
+
strengthScore: 1,
|
|
371
|
+
similarityScore: 1,
|
|
372
|
+
recencyScore: 1,
|
|
373
|
+
emotionalCongruenceScore: 0,
|
|
374
|
+
graphActivationScore: 0,
|
|
375
|
+
importanceScore: 1,
|
|
376
|
+
},
|
|
377
|
+
};
|
|
378
|
+
}
|
|
270
379
|
/**
|
|
271
380
|
* Split a string at the sentence boundary nearest its midpoint.
|
|
272
381
|
* Returns [firstHalf, secondHalf] or null if the string is too short
|
|
@@ -298,4 +407,37 @@ export class HybridRetriever {
|
|
|
298
407
|
return [text.slice(0, spaceIdx).trim(), text.slice(spaceIdx + 1).trim()];
|
|
299
408
|
}
|
|
300
409
|
}
|
|
410
|
+
// ---------------------------------------------------------------------------
|
|
411
|
+
// Default fact-graph query classifier (keyword-based, zero-LLM MVP)
|
|
412
|
+
// ---------------------------------------------------------------------------
|
|
413
|
+
const TEMPORAL_MARKERS = /\b(first|last|when|before|after|most recent|originally|initially|latest)\b/i;
|
|
414
|
+
const FIRST_PERSON_IN_QUERY = /\b(i|my|me|user)\b/i;
|
|
415
|
+
/**
|
|
416
|
+
* Default keyword-based classifier for fact-graph query expansion.
|
|
417
|
+
* Recognizes:
|
|
418
|
+
* - Temporal markers ("first", "last", "when", "before", "after", ...)
|
|
419
|
+
* - First-person references ("I", "my", "me", "user") → subject "user"
|
|
420
|
+
* - Predicate stems present in the query
|
|
421
|
+
*
|
|
422
|
+
* MVP-scoped: LLM-based classification is a follow-up experiment if this
|
|
423
|
+
* keyword path misses on Tier A. The priority is keeping query-time zero
|
|
424
|
+
* LLM overhead on queries the classifier skips.
|
|
425
|
+
*/
|
|
426
|
+
export function defaultKeywordFactGraphClassifier(query) {
|
|
427
|
+
const isTemporalQuestion = TEMPORAL_MARKERS.test(query);
|
|
428
|
+
const extractedSubjectPredicates = [];
|
|
429
|
+
if (!FIRST_PERSON_IN_QUERY.test(query)) {
|
|
430
|
+
return { isTemporalQuestion, extractedSubjectPredicates };
|
|
431
|
+
}
|
|
432
|
+
const lowerQuery = query.toLowerCase();
|
|
433
|
+
for (const predicate of PREDICATE_SCHEMA) {
|
|
434
|
+
// Match the predicate stem OR its common inflections. A cheap
|
|
435
|
+
// substring check beats regex compilation per query.
|
|
436
|
+
const stem = predicate.toLowerCase();
|
|
437
|
+
if (lowerQuery.includes(stem)) {
|
|
438
|
+
extractedSubjectPredicates.push({ subject: 'user', predicate });
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
return { isTemporalQuestion, extractedSubjectPredicates };
|
|
442
|
+
}
|
|
301
443
|
//# sourceMappingURL=HybridRetriever.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HybridRetriever.js","sourceRoot":"","sources":["../../../../src/memory/retrieval/hybrid/HybridRetriever.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HybridRetriever.js","sourceRoot":"","sources":["../../../../src/memory/retrieval/hybrid/HybridRetriever.ts"],"names":[],"mappings":"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"}
|