This directory holds design documents for ares-webui features that are worth thinking through in writing before (or alongside) implementation — typically when the change touches durability, recovery, schema, or cross- cutting infrastructure.
Top of every RFC carries a small header:
- **Status:** Proposed | Accepted | Implemented | Withdrawn
- **Author:** @github-handle
- **Created:** YYYY-MM-DD
When in doubt, just ship the code — small features don’t need RFCs. First-time contributor RFCs should be discussed in an issue before opening a PR.
ares-run-adapter-contract.md — #1925
event/control contract, runtime-state ownership matrix, acceptance catalog,
and reversible migration gates for moving WebUI execution behind an explicit
adapter boundary.webui-run-state-consistency-contract.md
— #2361 consistency rules for keeping transcript, model context, live streams,
replay, compression, and session metadata coherent during active and recovered
WebUI runs.live-to-final-assistant-replies.md
— #3400 product model for long-running assistant replies, live process prose,
tool activity, recovery, terminal outcomes, and the final-answer boundary.transparent-stream-activity-mode.md
— #3820 opt-in display mode for power users who need a transparent,
chronological Thinking / progress / tool-call stream alongside the default
Compact Worklog model.stable-assistant-turn-anchors.md — #3926
proposed frontend presentation/reconciliation model for anchoring live
assistant activity, settled final answers, replay, and Compact/Transparent
render modes to one assistant turn.canonical-session-resolution.md — #2361
focused contract for resolving URL, query parameter, localStorage, sidebar,
and compression-lineage session IDs to one canonical visible chat target.turn-journal.md — Crash-safe WebUI turn journal for
recovering interrupted chat submissions.webui-pending-intent-controls.md —
#3058 control-surface companion to #3400 for Queue, Steer, Stop-and-send,
Interrupt, and leftover-steer inputs submitted while a long-running agent
session is active.