ClientEnvelope
ClientEnvelope =
ChartRequestMessage|AssistantInjectionMessage|AcknowledgedAssistantMessage|HistoryGetMessage
Defined in: packages/protocol/src/lib/envelope.ts:179
Every message a client may send to an engine host over the duplex stream.
Every ChartRequestMessage / AssistantInjectionMessage —
i.e. every EngineMessage — is a valid ClientEnvelope; the envelope module
adds transport-only messages (HistoryGetMessage and
AcknowledgedAssistantMessage) that the LLM never sees. The legacy
assistant arm remains fire-and-forget; only the acknowledged arm requests a
response. Discriminated on type, so a host router can use one switch.