MCPcopy Create free account
hub / github.com/EvoMap/evolver / filterRelevantOutcomes

Function filterRelevantOutcomes

src/adapters/scripts/_memoryFiltering.js:14–33  ·  view source on GitHub ↗
(entries, opts = {})

Source from the content-addressed store, hash-verified

12const DEFAULT_MAX_OUTCOMES = 3;
13
14function filterRelevantOutcomes(entries, opts = {}) {
15 const minScore = opts.minScore !== undefined ? opts.minScore : DEFAULT_MIN_SCORE;
16 const maxAgeMs = opts.maxAgeMs !== undefined ? opts.maxAgeMs : DEFAULT_MAX_AGE_MS;
17 const maxOutcomes = opts.maxOutcomes !== undefined ? opts.maxOutcomes : DEFAULT_MAX_OUTCOMES;
18
19 const now = Date.now();
20
21 return entries
22 .filter(e => {
23 // Only keep 'success' outcomes (failed ones don't provide learning value)
24 if (e.outcome?.status !== 'success') return false;
25 // Only keep high-confidence outcomes
26 if ((e.outcome?.score ?? 0) < minScore) return false;
27 // Only keep recent outcomes
28 const ts = e.timestamp ? new Date(e.timestamp).getTime() : 0;
29 if (now - ts > maxAgeMs) return false;
30 return true;
31 })
32 .slice(-maxOutcomes);
33}
34
35module.exports = { filterRelevantOutcomes, DEFAULT_MIN_SCORE, DEFAULT_MAX_AGE_MS, DEFAULT_MAX_OUTCOMES };

Callers 2

runInjectionFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected