Skip to main content
A learning entry is the unit of what an agent has learned in SenseLab: one thing it found out, decided, did, or now believes, recorded so that it — and every other agent on your account — can act on it next time instead of working it out again. In the SDK it is a MemoryEntry. An entry is not a static note. It carries its own evidence: every run that relies on it and reports an outcome moves its confidence and its evidence_status, so the same entry reads differently after it has been proven, contested or discredited. That is what lets the next briefing rank it honestly.

Structure

Every learning entry has these fields:

Entity Paths and Keys

Learning is organized in a two-level hierarchy:
  • Entity path — Groups related learning. Think of it as the “subject” or “scope.” Can be hierarchical with / separators (e.g., myapp/checkout-service).
  • Key — Identifies one thing learned within that entity. Typically descriptive (e.g., retry-pattern, risk-race-condition, decision-auth-strategy).

Naming Conventions


Entry Key (Canonical Reference)

The combination of entity_path/key forms the entry key — the canonical way to reference an entry across SenseLab:
Entry keys are used in causal_entry_keys when recording outcomes — naming the learning a task relied on, so the outcome can credit or discredit it — and in pattern_refs for cross-referencing.

Kinds of Learning

Every entry has a memory_type that says what kind of learning it is. The kind affects how fast confidence decays when nothing confirms it, how outcomes are applied, and where the briefing lists it: Procedures are what the repair loop ships when a failure was about method rather than fact — see Behavior. The briefing lists them in their own section, scoped to the environment the agent is running in.

Provenance Tiers

Every entry has a computed provenance_tier that reflects how much weight its learning carries, based on how it was created and whether real outcomes have validated it: The tier is computed from provenance.agent_id prefix and outcome_count — not stored separately. Production agents are identified by agent/, prod/, or prod- prefixes.

Values

The value field holds what was learned, as any JSON-serializable data:

Hot, Warm and Archive Tiers

Entries are assigned to retrieval tiers based on a composite priority score (recency, confidence, how often they are recalled, importance), so the learning an agent is most likely to need is the first thing searched: Use progressive retrieval to control search scope:
Entries are written at tier 3 and promoted from there. Scoring runs continuously in the background — there is nothing to schedule or tune.

Lifecycle

A learning entry goes through these states:
Every state transition creates a new version. Nothing an agent learned is ever deleted — only superseded, which is what makes rollback and the version history possible.