Add durable warm conversation context #104

Merged
lost-rob0t merged 9 commits from agent/conversation-warm-context into main 2026-08-19 04:10:23 +00:00
lost-rob0t commented 2026-08-18 19:57:01 +00:00 (Migrated from github.com)

What changed

Adds durable warm-context primitives on top of #102.

  • structured derivation over exact conversation ranges;
  • deterministic trusted generator callbacks plus an RLM generation path;
  • immutable source-message provenance;
  • versioned warm artifacts through the existing artifact store;
  • verbatim, detailed_summary, compact_summary, and facts_only representations;
  • token-priced warm context_units compatible with the shared CLP(FD) packer;
  • bounded candidate narrowing and explainable utility signals;
  • tests for transcript preservation, immutable recompaction versions, representation selection, ranking, and malformed generator rejection.

Integration contract

This PR provides the warm layer. The stacked managed orchestration in #106 wires existing published warm artifacts into the normal public rlm conversation path when warm_store/1 is configured.

That means warm context is part of the hot/warm/cold context architecture. Callers do not need to manually feed warm context_units/1 through the public managed facade once #106 is applied.

What remains intentionally explicit is warm production / compaction. Normal turns do not choose ranges, call a summarizer, or publish new warm artifacts under token pressure.

Invariants

  • compaction is never transcript deletion;
  • source refs resolve to exact original messages;
  • derived state is versioned;
  • generator output is schema-validated;
  • warm generation does not widen authority;
  • mandatory hot turns cannot be displaced by warm coverage;
  • automatic/background compaction is not introduced.

Stacked dependency

Based on agent/conversation-runtime / PR #102. #106 consumes this layer in the canonical managed facade.

GitHub Actions on the exact head remains authoritative.

## What changed Adds durable warm-context primitives on top of #102. - structured derivation over exact conversation ranges; - deterministic trusted generator callbacks plus an RLM generation path; - immutable source-message provenance; - versioned warm artifacts through the existing artifact store; - `verbatim`, `detailed_summary`, `compact_summary`, and `facts_only` representations; - token-priced warm `context_unit`s compatible with the shared CLP(FD) packer; - bounded candidate narrowing and explainable utility signals; - tests for transcript preservation, immutable recompaction versions, representation selection, ranking, and malformed generator rejection. ## Integration contract This PR provides the warm layer. The stacked managed orchestration in #106 wires **existing published warm artifacts** into the normal public `rlm` conversation path when `warm_store/1` is configured. That means warm context is part of the hot/warm/cold context architecture. Callers do not need to manually feed warm `context_units/1` through the public managed facade once #106 is applied. What remains intentionally explicit is **warm production / compaction**. Normal turns do not choose ranges, call a summarizer, or publish new warm artifacts under token pressure. ## Invariants - compaction is never transcript deletion; - source refs resolve to exact original messages; - derived state is versioned; - generator output is schema-validated; - warm generation does not widen authority; - mandatory hot turns cannot be displaced by warm coverage; - automatic/background compaction is not introduced. ## Stacked dependency Based on `agent/conversation-runtime` / PR #102. #106 consumes this layer in the canonical managed facade. GitHub Actions on the exact head remains authoritative.
Sign in to join this conversation.
No description provided.