# RFC 0001: Memory Capsules

## Status

Draft

## Summary

A Memory Capsule is the core primitive in Wolfpacker. It stores distilled
operational knowledge with evidence, confidence, freshness, relationships,
permissions, and lifecycle state.

## Non-Goals

- Store raw chat history as memory.
- Preserve every event forever as a first-class memory.
- Simulate personality or emotional continuity.
- Build a generic vector database abstraction.

## Capsule Shape

A capsule should include:

- stable identifier
- concise claim
- operational domain
- lifecycle state
- confidence score
- freshness score
- validation count
- contradiction count
- source event references
- related memory references
- ownership and permissions
- timestamps

Example claim:

Traefik provider failures often correlate with remote Docker socket permission
changes.

## Confidence

Confidence is not the same as similarity, recency, or frequency. It should be
derived from evidence quality, validation events, contradiction events, source
diversity, and observed usefulness.

## Freshness

Freshness models whether the memory is likely to still apply. A memory can be
high-confidence and stale at the same time.

## Relationships

Capsules should be able to relate to each other:

- supports
- contradicts
- supersedes
- refines
- duplicates
- caused_by
- often_co_occurs_with
- environment_variant_of

## Retrieval Principle

Retrieval should return useful operational knowledge, not the largest possible
context dump. A good recall result includes the capsule claim, confidence,
freshness, evidence summary, related memories, and known contradictions.

