strop-ui-protocol 0.36.0

strop UI protocol (0056 AR09/AR10): bounded versioned envelopes, semantic snapshots/deltas, the Rust-first stdio driver
docs.rs failed to build strop-ui-protocol-0.36.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.

The strop UI protocol (0056 AR09/AR10): one bounded, versioned, non-graphical contract between the strop --ui-stdio backend and any frontend process (the future Windows GUI, test drivers, automation).

Shape:

  • Bytes: bounded Content-Length framing ([frame]), the convention strop-lsp already pins at its trace boundary. stdout carries frames only; diagnostics stay on stderr.
  • Envelopes: [message] — handshake, admitted actions, acknowledgements with explicit outcomes, semantic snapshots/deltas keyed by backend incarnation + view generation, host effects, resync and shutdown.
  • Actions: [message::AdmittedAction] mirrors the engine's admitted input surface one-to-one — there is no parallel command table.
  • Client: [client::Client] is the pure readonly cache (snapshot/delta application, resync poisoning); [driver::Driver] is the stdio process transport with deterministic state/revision barriers.

The client is never an editing model: it holds the last published view, refuses to act on stale or poisoned state, and recovers through an explicit resync — never by blindly applying a delta.