Summary
Currently context window is a passive container — WMC turns + EMC episodes concatenated without active prioritization. Adding a salience scorer would make context assembly an active focus mechanism, deciding what actually matters most right now.
Current Behavior
Context = WMC turns + top-K EMC episodes by similarity. No active attention or salience scoring.
Proposed Enhancement
Add a salience scoring layer in MCC that scores each candidate context item before including it:
class SalienceScorer:
"""
Active attention mechanism for context prioritization.
Scores each candidate event segment by:
- Recency (recent > old)
- Semantic relevance (EMC similarity score)
- Emotional weight (valence score)
- Task relevance (does it relate to current goal)
"""
def score(self, segment: dict, query: str, recency: float) -> float:
semantic = segment.get("similarity", 0.0)
emotional = abs(segment.get("emotional_valence", 0.0))
return (semantic * 0.5) + (recency * 0.3) + (emotional * 0.2)
Impact
- Context = what GRACE is actively paying attention to
- Not just "what's similar" but "what's useful right now"
- More human-like attention and focus
- Foundation for future agentic reasoning
Notes
Summary
Currently context window is a passive container — WMC turns + EMC episodes concatenated without active prioritization. Adding a salience scorer would make context assembly an active focus mechanism, deciding what actually matters most right now.
Current Behavior
Context = WMC turns + top-K EMC episodes by similarity. No active attention or salience scoring.
Proposed Enhancement
Add a salience scoring layer in MCC that scores each candidate context item before including it:
Impact
Notes