Design docs and RFCs

Design review before the PR exists, with the agent still on call.

Peers, the architect, and the manager comment on the RFC. Agent connect can still reach the session that did the research.

liverfcs/0042-event-log.md

RFC 42: append-only event log

Owner: Camila Duarte. Status: draft. Replaces the nightly CSV export.

Nightly CSV exports land after finance has closed the day, and late rows are simply missing. This RFC replaces that file with one append-only log. The CSV job becomes a reader. It stops being the source.

Today

  • Each service writes its own nightly file, on its own clock. A late file is missing rows.
  • Finance re-runs the export by hand when a file is short. That re-run is how they notice.
  • Nobody can replay a single account without rebuilding the file from the first of the month.

Proposal

  • Services append events to one log. Consumers read from an offset and resume after a restart.
  • A bad event is corrected by a new event, never by editing history. The log has no update.
  • Finance export retention is thirty days.
  • The CSV job reads the log each morning and writes the file finance already knows.

Alternatives

Rejected options: none recorded.We rejected a separate bus because the team would have to run it. The team would own the broker, the disk, and the on-call.

  • A second database was sketched and dropped. Two stores will drift the first time a write fails.
  • Ordering across services is out of scope. One writer per service, and no global sequence.

thirty days

Wen Zhao

Is thirty days of retention enough for the finance export?

Tomás Ibarra

Finance asked for ninety. I want that called out before we lock the proposal.

Rejected options

Tomás Ibarra

@agent add the option we rejected and why.

agent

Added the rejected bus option and the reason we skipped it. Leaving the thread open so you can check the wording.

Start with @agent to ask the agent
ResolveReply
Fictional example: a Cobaltfern Analytics event-log RFC in Gander, with a peer thread and a scripted agent connect reply.

How design docs get reviewed today

RFCs often start as a doc paste or a long message. That works for comments on a frozen draft. It works less well when the agent is still editing the file that has the rejected alternatives in its context.

A meeting gets the architect and two peers in one room. It does not keep the thread attached to the paragraph. An early PR reviews the diff, not the decision, and it asks the founder of the idea to commit a draft.

The RFC, reviewed while the research is still warm

Camila Duarte asks her agent to draft an RFC for Cobaltfern Analytics: replace nightly CSV exports with an append-only event log. The agent writes rfcs/0042-event-log.md. Camila runs gander watch and sends the link to Tomás Ibarra and Wen Zhao.

Wen highlights the retention line and asks whether thirty days is enough for the finance export. Tomás replies in that thread. The agent is not on that conversation.

Tomás opens a second comment: "@agent add the option we rejected and why." The session that explored the alternatives edits the RFC, replies, and leaves the thread open so Wen can read the wording. The link Camila sent is the one that updates. The RFC goes to the repo when the review is done.

Who's in the doc

WriterPeer engineerArchitectThe author's agent

Writer Runs the agent and sends the link. Still the only install.

Peer engineer Looks for the decision, the rejected option, and the missing risk.

Architect Checks that the proposal matches how the system actually runs.

The author's agent Still has the alternatives it explored. Edits when a peer uses agent connect.

Reviewers only need a browser. Talk to each other in normal threads. Use agent connect when you want the draft changed.

Agents that fit design docs and rfcs

Claude CodeThe RFC can live under ./plans or rfcs, and MCP brings agent connect back to the session.
CodexCodex drafts the doc next to the repo. The MCP table carries agent connect.
CursorPeers comment on the link. The authoring session is the one with the repo open.
OpenCodeA terminal agent writes the RFC. Agent connect returns through its MCP entry.

Have the design review on the live RFC, before anyone opens a PR for a decision that is still moving.

See how it works on the homepage