# klieo-runlog

Tier 2 observability — RunLog aggregate + replay engine for klieo agents.

Part of the [klieo](https://crates.io/crates/klieo) Rust agent framework.

## Features

- Projects `EpisodicMemory` events into a deterministic `RunLog` per agent run
- Replay engine re-emits a recorded run for debugging or audit
- Deterministic compaction merges partial logs without data loss

## Usage

```toml
[dependencies]
klieo-runlog = "0.38"
```

```rust
use klieo_runlog::{project, RunLogStore, InMemoryRunLogStore};

// Retrieve episodes from any EpisodicMemory impl, then project:
let episodes = memory.replay(run_id).await?;
let log = project(&episodes, run_id);

// Persist to a store:
let store = InMemoryRunLogStore::default();
store.put(log).await?;
```

## Status

`0.38.x` — pre-1.0; patch releases are backward-compatible.
See [`docs/SEMVER.md`](https://github.com/mohrimic/klieo/blob/main/docs/SEMVER.md).

## License

MIT — see [`LICENSE`](https://github.com/mohrimic/klieo/blob/main/LICENSE).
