Skip to content

docs: add RFD 533 client migration guide#49

Closed
lsaether wants to merge 1 commit into
mainfrom
docs/rfd533-client-migration
Closed

docs: add RFD 533 client migration guide#49
lsaether wants to merge 1 commit into
mainfrom
docs/rfd533-client-migration

Conversation

@lsaether
Copy link
Copy Markdown
Owner

Summary

Test Plan

  • git diff --check
  • Validated all JSON code blocks in the new migration guide parse successfully.
  • Validated touched local markdown links resolve.

Notes

Docs-only change; no Rust code touched.

@lsaether
Copy link
Copy Markdown
Owner Author

Clients should request server-shaped “newest turn first” attach history, not implement their own blind reverse-sort.

The client recipe is:

─ json
{
"method": "session/attach",
"params": {
"historyPolicy": "full",
"_meta": {
"amux": {
"replayOrder": "newest_turn_first"
}
}
}
}

Then:

  1. Read transcript bootstrap from result.history.
  2. Confirm result._meta.amux.appliedReplayOrder === "newest_turn_first".
  3. Render that history as the bootstrap transcript.
  4. Do not also render the legacy WebSocket replay.
  5. Continue applying live WebSocket frames after attach.

And the key semantic: newest_turn_first means setup/context-ish frames stay first, completed turn groups are newest-first, butframes inside each turn stay chronological. So it is “freshest turns first,” not “reverse every event.”

@lsaether lsaether force-pushed the docs/rfd533-client-migration branch from dc0cc40 to f9bfc80 Compare May 26, 2026 23:22
@lsaether
Copy link
Copy Markdown
Owner Author

lsaether commented Jun 5, 2026

Closing this as stale under the new #70 direction. The attach/client migration details should be reworked as smaller AMUX-layer docs after the core-vs-AMUX boundary is refreshed.

@lsaether lsaether closed this Jun 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant