feat: add proactive memory extraction and daily logs

This commit is contained in:
William Valentin
2026-02-18 10:10:47 -08:00
parent 9cbd66cdcc
commit f38fc063d2
8 changed files with 250 additions and 5 deletions
+28
View File
@@ -1277,6 +1277,11 @@ describe('configSchema — memory injection strategy', () => {
const result = configSchema.parse(minimalConfig);
expect(result.memory.injection_strategy).toBe('all');
expect(result.memory.max_injection_tokens).toBe(2000);
expect(result.memory.proactive_extract.enabled).toBe(false);
expect(result.memory.proactive_extract.min_tool_calls).toBe(1);
expect(result.memory.proactive_extract.namespace).toBe('global');
expect(result.memory.daily_log.enabled).toBe(false);
expect(result.memory.daily_log.namespace_prefix).toBe('daily');
expect(result.memory.qmd.enabled).toBe(false);
expect(result.memory.qmd.top_k).toBe(8);
expect(result.memory.qmd.min_score).toBe(0.15);
@@ -1309,6 +1314,29 @@ describe('configSchema — memory injection strategy', () => {
expect(result.memory.qmd.top_k).toBe(12);
expect(result.memory.qmd.min_score).toBe(0.2);
});
it('accepts proactive extraction and daily log settings', () => {
const result = configSchema.parse({
...minimalConfig,
memory: {
proactive_extract: {
enabled: true,
min_tool_calls: 3,
namespace: 'global/facts',
},
daily_log: {
enabled: true,
namespace_prefix: 'memory',
},
},
});
expect(result.memory.proactive_extract.enabled).toBe(true);
expect(result.memory.proactive_extract.min_tool_calls).toBe(3);
expect(result.memory.proactive_extract.namespace).toBe('global/facts');
expect(result.memory.daily_log.enabled).toBe(true);
expect(result.memory.daily_log.namespace_prefix).toBe('memory');
});
});
describe('configSchema — compaction importance threshold', () => {