@psiclawops/hypermem 0.9.2 → 0.9.4
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/CHANGELOG.md +16 -0
- package/INSTALL.md +73 -70
- package/README.md +33 -51
- package/assets/default-config.json +47 -0
- package/bin/hypermem-doctor.mjs +76 -2
- package/bin/hypermem-status.mjs +255 -7
- package/dist/adaptive-lifecycle.d.ts +39 -0
- package/dist/adaptive-lifecycle.d.ts.map +1 -1
- package/dist/adaptive-lifecycle.js +87 -9
- package/dist/background-indexer.d.ts.map +1 -1
- package/dist/background-indexer.js +7 -5
- package/dist/compositor.d.ts.map +1 -1
- package/dist/compositor.js +239 -20
- package/dist/hybrid-retrieval.d.ts +8 -0
- package/dist/hybrid-retrieval.d.ts.map +1 -1
- package/dist/hybrid-retrieval.js +112 -10
- package/dist/index.d.ts +15 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -0
- package/dist/message-store.d.ts +62 -1
- package/dist/message-store.d.ts.map +1 -1
- package/dist/message-store.js +355 -2
- package/dist/open-domain.d.ts.map +1 -1
- package/dist/open-domain.js +3 -2
- package/dist/proactive-pass.d.ts +42 -2
- package/dist/proactive-pass.d.ts.map +1 -1
- package/dist/proactive-pass.js +294 -39
- package/dist/topic-synthesizer.d.ts.map +1 -1
- package/dist/topic-synthesizer.js +9 -3
- package/dist/types.d.ts +99 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/vector-store.d.ts +10 -1
- package/dist/vector-store.d.ts.map +1 -1
- package/dist/vector-store.js +45 -9
- package/docs/DIAGNOSTICS.md +87 -0
- package/docs/INTEGRATION_VALIDATION.md +40 -1
- package/docs/ROADMAP.md +25 -12
- package/docs/TUNING.md +45 -4
- package/install.sh +5 -60
- package/memory-plugin/dist/index.d.ts +24 -0
- package/memory-plugin/dist/index.js +570 -0
- package/memory-plugin/openclaw.plugin.json +199 -2
- package/memory-plugin/package.json +3 -3
- package/package.json +24 -10
- package/plugin/dist/index.d.ts +210 -0
- package/plugin/dist/index.d.ts.map +1 -0
- package/plugin/dist/index.js +3641 -0
- package/plugin/dist/index.js.map +1 -0
- package/plugin/openclaw.plugin.json +199 -2
- package/plugin/package.json +4 -4
- package/scripts/install-packed-runtime.mjs +99 -0
- package/scripts/install-runtime.mjs +164 -4
|
@@ -6,6 +6,45 @@
|
|
|
6
6
|
* recall, trim, compaction, and eviction posture from the same pressure band
|
|
7
7
|
* so 0.9.0 does not grow another independent trim brain.
|
|
8
8
|
*/
|
|
9
|
+
import { stripMessageMetadata } from './topic-detector.js';
|
|
10
|
+
/**
|
|
11
|
+
* Determine whether a user turn is "topic-bearing" (substantive).
|
|
12
|
+
*
|
|
13
|
+
* Heartbeat, empty, and small-talk turns are NOT topic-bearing and do not
|
|
14
|
+
* extend the warmup window. This is intentionally a lightweight heuristic:
|
|
15
|
+
* no topic-detector architecture change, no model calls.
|
|
16
|
+
*
|
|
17
|
+
* Mirrors the plugin afterTurn gradient semantics so compose-path band
|
|
18
|
+
* decisions stay consistent with afterTurn-path band decisions.
|
|
19
|
+
*/
|
|
20
|
+
export function isTopicBearingTurn(msg) {
|
|
21
|
+
if (msg.isHeartbeat)
|
|
22
|
+
return false;
|
|
23
|
+
if (msg.role !== 'user')
|
|
24
|
+
return false;
|
|
25
|
+
const text = stripMessageMetadata(msg.textContent ?? '').trim();
|
|
26
|
+
// Empty turn
|
|
27
|
+
if (text.length === 0)
|
|
28
|
+
return false;
|
|
29
|
+
// Small-talk: very short generic acknowledgments
|
|
30
|
+
if (text.length < 15) {
|
|
31
|
+
if (/^(ok|okay|yes|no|thanks|thank\s+you|got\s+it|sure|yep|nah|nope|alright|cool|nice|great|good|k|kk|heartbeat[_\s-]*ok|👍|👎|hi|hello|hey)[.!]*$/iu.test(text)) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
// Pure punctuation or emoji
|
|
36
|
+
if (/^[\s\p{P}\p{Emoji}]+$/u.test(text))
|
|
37
|
+
return false;
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Count topic-bearing turns in a message array.
|
|
42
|
+
*
|
|
43
|
+
* Pure helper: no side effects, no store access. Returns 0 for empty arrays.
|
|
44
|
+
*/
|
|
45
|
+
export function countTopicBearingTurns(messages) {
|
|
46
|
+
return messages.filter(isTopicBearingTurn).length;
|
|
47
|
+
}
|
|
9
48
|
const BASELINE_EVICTION_STEPS = Object.freeze([
|
|
10
49
|
'tool-gradient',
|
|
11
50
|
'oversized-artifacts',
|
|
@@ -60,9 +99,9 @@ const PRESSURE_BANDS = Object.freeze({
|
|
|
60
99
|
highMax: 0.85,
|
|
61
100
|
});
|
|
62
101
|
const WARMING_BY_BAND = Object.freeze({
|
|
63
|
-
bootstrap: 0.
|
|
64
|
-
warmup: 0.
|
|
65
|
-
steady: 0.
|
|
102
|
+
bootstrap: 0.62,
|
|
103
|
+
warmup: 0.55,
|
|
104
|
+
steady: 0.45,
|
|
66
105
|
elevated: 0.34,
|
|
67
106
|
high: 0.28,
|
|
68
107
|
critical: 0.20,
|
|
@@ -103,6 +142,9 @@ function isTopicShift(input) {
|
|
|
103
142
|
}
|
|
104
143
|
function classifyBand(input, pressure) {
|
|
105
144
|
const userTurns = Math.max(0, Math.floor(input.userTurnCount ?? 0));
|
|
145
|
+
const topicBearingTurns = input.topicBearingTurnCount != null
|
|
146
|
+
? Math.max(0, Math.floor(input.topicBearingTurnCount))
|
|
147
|
+
: null;
|
|
106
148
|
if (input.explicitNewSession)
|
|
107
149
|
return 'bootstrap';
|
|
108
150
|
if (input.forkedContext) {
|
|
@@ -119,8 +161,19 @@ function classifyBand(input, pressure) {
|
|
|
119
161
|
}
|
|
120
162
|
if (userTurns === 0)
|
|
121
163
|
return 'bootstrap';
|
|
122
|
-
|
|
123
|
-
|
|
164
|
+
// Packet 2: topic-bearing warmup decay. When topicBearingTurnCount is
|
|
165
|
+
// provided, warmup extends to 8 substantive turns so heartbeat/empty/
|
|
166
|
+
// small-talk turns do not prematurely graduate the session. Falls back
|
|
167
|
+
// to the historical 4 raw-turn window when topic-bearing count is
|
|
168
|
+
// unavailable (backward compatibility).
|
|
169
|
+
if (topicBearingTurns != null) {
|
|
170
|
+
if (topicBearingTurns <= 8 && pressure < PRESSURE_BANDS.elevatedMax)
|
|
171
|
+
return 'warmup';
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
if (userTurns <= 4 && pressure < PRESSURE_BANDS.elevatedMax)
|
|
175
|
+
return 'warmup';
|
|
176
|
+
}
|
|
124
177
|
if (pressure < PRESSURE_BANDS.steadyMax)
|
|
125
178
|
return 'steady';
|
|
126
179
|
if (pressure < PRESSURE_BANDS.elevatedMax)
|
|
@@ -131,18 +184,36 @@ function classifyBand(input, pressure) {
|
|
|
131
184
|
}
|
|
132
185
|
function smartRecallMultiplier(input, band) {
|
|
133
186
|
if (input.explicitNewSession || isTopicShift(input))
|
|
134
|
-
return 1.
|
|
187
|
+
return 1.75;
|
|
135
188
|
if (band === 'bootstrap' || band === 'warmup')
|
|
136
|
-
return 1.
|
|
189
|
+
return 1.4;
|
|
137
190
|
if (band === 'high')
|
|
138
191
|
return 0.85;
|
|
139
192
|
if (band === 'critical')
|
|
140
193
|
return 0.65;
|
|
141
194
|
return 1.0;
|
|
142
195
|
}
|
|
196
|
+
function resolveProtectedWarmingMetadata(band) {
|
|
197
|
+
if (band === 'bootstrap') {
|
|
198
|
+
return Object.freeze({ isProtected: true, floor: 0.372, reason: 'bootstrap protected warming floor' });
|
|
199
|
+
}
|
|
200
|
+
if (band === 'warmup') {
|
|
201
|
+
return Object.freeze({ isProtected: true, floor: 0.34, reason: 'warmup protected warming floor' });
|
|
202
|
+
}
|
|
203
|
+
if (band === 'high') {
|
|
204
|
+
return Object.freeze({ isProtected: true, floor: 0.28, reason: 'high-pressure warming floor' });
|
|
205
|
+
}
|
|
206
|
+
if (band === 'critical') {
|
|
207
|
+
return Object.freeze({ isProtected: true, floor: 0.20, reason: 'critical-pressure warming floor' });
|
|
208
|
+
}
|
|
209
|
+
return Object.freeze({ isProtected: false, floor: 0, reason: 'normal warming range' });
|
|
210
|
+
}
|
|
143
211
|
function reasonsFor(input, band, pressure) {
|
|
144
212
|
const reasons = [`band:${band}`, `pressure:${Math.round(pressure * 100)}%`];
|
|
145
213
|
const turns = Math.max(0, Math.floor(input.userTurnCount ?? 0));
|
|
214
|
+
const topicBearingTurns = input.topicBearingTurnCount != null
|
|
215
|
+
? Math.max(0, Math.floor(input.topicBearingTurnCount))
|
|
216
|
+
: null;
|
|
146
217
|
if (input.explicitNewSession)
|
|
147
218
|
reasons.push('explicit-new-session');
|
|
148
219
|
if (input.forkedContext) {
|
|
@@ -156,8 +227,14 @@ function reasonsFor(input, band, pressure) {
|
|
|
156
227
|
}
|
|
157
228
|
if (turns === 0)
|
|
158
229
|
reasons.push('cold-start');
|
|
159
|
-
if (
|
|
160
|
-
|
|
230
|
+
if (topicBearingTurns != null) {
|
|
231
|
+
if (topicBearingTurns > 0 && topicBearingTurns <= 8)
|
|
232
|
+
reasons.push(`topic-bearing:${topicBearingTurns}`);
|
|
233
|
+
}
|
|
234
|
+
else {
|
|
235
|
+
if (turns > 0 && turns <= 4)
|
|
236
|
+
reasons.push(`early-session:${turns}`);
|
|
237
|
+
}
|
|
161
238
|
if (isTopicShift(input))
|
|
162
239
|
reasons.push(`topic-shift:${(input.topicShiftConfidence ?? 0).toFixed(2)}`);
|
|
163
240
|
if (band === 'high' || band === 'critical')
|
|
@@ -184,6 +261,7 @@ export function resolveAdaptiveLifecyclePolicy(input = {}) {
|
|
|
184
261
|
enableTopicCentroidEviction: band === 'elevated' || triggerProactiveCompaction,
|
|
185
262
|
triggerProactiveCompaction,
|
|
186
263
|
evictionPlan: resolveAdaptiveEvictionPlan(band),
|
|
264
|
+
protectedWarmingMetadata: resolveProtectedWarmingMetadata(band),
|
|
187
265
|
reasons: reasonsFor(input, band, pressureFraction),
|
|
188
266
|
});
|
|
189
267
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"background-indexer.d.ts","sourceRoot":"","sources":["../src/background-indexer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"background-indexer.d.ts","sourceRoot":"","sources":["../src/background-indexer.ts"],"names":[],"mappings":"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"}
|
|
@@ -726,7 +726,8 @@ export class BackgroundIndexer {
|
|
|
726
726
|
}
|
|
727
727
|
for (const conv of convRows) {
|
|
728
728
|
maintConsidered++;
|
|
729
|
-
const
|
|
729
|
+
const conversationKey = `${agentId}:${conv.id}`;
|
|
730
|
+
const lastProcessed = this._conversationLastProcessed.get(conversationKey) ?? 0;
|
|
730
731
|
if (now - lastProcessed < cooldownMs) {
|
|
731
732
|
maintSkipped++;
|
|
732
733
|
continue;
|
|
@@ -736,15 +737,16 @@ export class BackgroundIndexer {
|
|
|
736
737
|
// clear any stale 'no-conversations' marker from an earlier agent.
|
|
737
738
|
if (maintExitReason === 'no-conversations')
|
|
738
739
|
maintExitReason = 'complete';
|
|
739
|
-
const
|
|
740
|
-
const
|
|
740
|
+
const proactiveContext = { agentId };
|
|
741
|
+
const noiseSweepResult = runNoiseSweep(messageDb, conv.id, 20, maxCandidates, proactiveContext);
|
|
742
|
+
const toolDecayResult = runToolDecay(messageDb, conv.id, 40, maxCandidates, proactiveContext);
|
|
741
743
|
const changed = noiseSweepResult.messagesDeleted + toolDecayResult.messagesUpdated;
|
|
742
744
|
if (changed > 0) {
|
|
743
745
|
maintMutated += changed;
|
|
744
|
-
console.log(`[indexer] Proactive pass (conv ${conv.id}): swept ${noiseSweepResult.messagesDeleted} noise msgs, ` +
|
|
746
|
+
console.log(`[indexer] Proactive pass (agent ${agentId} conv ${conv.id}): swept ${noiseSweepResult.messagesDeleted} noise msgs, ` +
|
|
745
747
|
`decayed ${toolDecayResult.messagesUpdated} tool results (${toolDecayResult.bytesFreed} bytes freed)`);
|
|
746
748
|
}
|
|
747
|
-
this._conversationLastProcessed.set(
|
|
749
|
+
this._conversationLastProcessed.set(conversationKey, now);
|
|
748
750
|
if (maintMutated >= maxCandidates) {
|
|
749
751
|
maintExitReason = 'cap-reached';
|
|
750
752
|
break;
|
package/dist/compositor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compositor.d.ts","sourceRoot":"","sources":["../src/compositor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EAKb,cAAc,EAGd,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,iBAAiB,EAMlB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,KAAK,QAAQ,GAAG,UAAU,CAAC;AAI3B,OAAO,EAAE,WAAW,EAA2B,MAAM,mBAAmB,CAAC;AAMzE,OAAO,EAA8C,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAMhG,OAAO,
|
|
1
|
+
{"version":3,"file":"compositor.d.ts","sourceRoot":"","sources":["../src/compositor.ts"],"names":[],"mappings":"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"}
|