Skip to content

fix(engine): remote follow-ups found while wiring the iOS client #1917

Closed

Description

@LHagfoss

Problem

Small gaps found when the Swift client first drove a real gateway and TUI on loopback (v0.64.0). None blocks use; each costs the client a workaround.

Evidence

  • Resume at the exact watermark is refused: attach_session with resume.last_sequence equal to the session's current sequence returns attached with resync: "sequence_gap" and a full snapshot instead of resumed. resumed was never observed against a live host.
  • The live host sends "timestamp":"16:57" on transcript messages while the golden frames in docs/remote-protocol/v1/golden/ show RFC 3339 (2026-10-09T08:14:02Z).
  • A shared session with no prompt yet is listed with "title":"(no prompt)".
  • text_delta has no target item id, and items built from events carry no message_id to match against a later snapshot or history page.
  • can_steer exists only in the snapshot; question options are identified by label only and nothing says whether a custom answer is allowed; approval actions have no id.
  • Receipts are bounded by count (1024 per registration), not by time; a full store returns receipt_capacity until the session is shared again.
  • The fallback socket directory under /tmp/rustcode-<uid>/ is left behind when the gateway stops.
  • Tool calls carry summary, input and output only; there is no structured command for a client's "copy command", and sessions and transcript items have no machine-readable time.

Acceptance criteria

  • A cursor at the current watermark resumes with resumed and no snapshot; a test covers it through the gateway.
  • Timestamps on the wire are RFC 3339 and the golden frames match what the host sends.
  • An untitled session has an empty or absent title, not placeholder text.
  • Each remaining item is either fixed additively (schema and golden frames regenerated) or recorded as a deliberate limit in docs/remote-protocol/README.md.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions