openclaw - 💡(How to fix) Fix Light sleep ingestion score is a hardcoded constant, causing uniform confidence for all entries

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Light sleep dreaming outputs uniform confidence: 0.62 for all entries from daily memory files, and uniform 0.58 for all session corpus entries. This makes the light sleep output non-informative for prioritization.

Root Cause

In dreaming-phases (compiled as dreaming-phases-CC9r0Vso.js):

const DAILY_INGESTION_SCORE = .62;
const SESSION_INGESTION_SCORE = .58;

Every chunk ingested from memory files gets score: DAILY_INGESTION_SCORE regardless of content. Since entryAverageScore computes totalScore / signalCount, and every signal adds the same constant, the average is always the constant itself:

avg = (N × 0.62) / N = 0.62  // always

Fix Action

Workaround

Currently relying entirely on the recall signal feedback loop for differentiation. This works but requires high search volume to be effective within a reasonable timeframe.

Code Example

const DAILY_INGESTION_SCORE = .62;
const SESSION_INGESTION_SCORE = .58;

---

avg = (N × 0.62) / N = 0.62  // always

---

Total entries: 4049
Score distribution: 0.58 (3360 entries, session), 0.62 (635 entries, daily)
With recall signals: 55 (1.4%)
REM confidence: 77% at 0.49, 10% at 0.58 — minimal spread
RAW_BUFFERClick to expand / collapse

Summary

Light sleep dreaming outputs uniform confidence: 0.62 for all entries from daily memory files, and uniform 0.58 for all session corpus entries. This makes the light sleep output non-informative for prioritization.

Root Cause

In dreaming-phases (compiled as dreaming-phases-CC9r0Vso.js):

const DAILY_INGESTION_SCORE = .62;
const SESSION_INGESTION_SCORE = .58;

Every chunk ingested from memory files gets score: DAILY_INGESTION_SCORE regardless of content. Since entryAverageScore computes totalScore / signalCount, and every signal adds the same constant, the average is always the constant itself:

avg = (N × 0.62) / N = 0.62  // always

Impact

  • Light sleep reports show all candidates at identical confidence, providing zero differentiation signal
  • REM calculateCandidateTruthConfidence partially mitigates this via recallStrength + consolidation + conceptual weights, but since averageScore * 0.45 is the dominant term (45% of weight), REM confidence also clusters narrowly (77% of entries at 0.49)
  • The intended feedback loop (entries differentiate via search recall) works but is slow — in our case only 1.4% of entries (55/4049) have organic recall signals after 6 weeks of active use

Evidence

Store analysis from a real workspace (6 weeks active, ~40 sessions/day):

Total entries: 4049
Score distribution: 0.58 (3360 entries, session), 0.62 (635 entries, daily)
With recall signals: 55 (1.4%)
REM confidence: 77% at 0.49, 10% at 0.58 — minimal spread

Proposed Fix

Replace the hardcoded constant with a content-dependent score during ingestion. Options:

  1. Signal density scoring: Score based on information density of the chunk — entries with more structure (bullet points, code blocks, links) score higher than plain text blobs
  2. Section-header weighting: Chunks under recognizable headers (## Summary, ## Actions, ## Key Finding) get a boost over raw narrative
  3. Length-normalized novelty: Score inversely proportional to Jaccard similarity with recently-ingested entries (novel content scores higher)

Any of these would produce a meaningful distribution (0.4-0.85 range) instead of a single point mass.

Workaround

Currently relying entirely on the recall signal feedback loop for differentiation. This works but requires high search volume to be effective within a reasonable timeframe.

Environment

  • OpenClaw version: latest (checked 2026-05-28)
  • Workspace: active agent with daily memory writes + session transcripts
  • Dreaming: light sleep every 6h, deep sleep daily at 03:00

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING