TurnBegin: TaggedStruct<
"turnBegin",
{
from: optional<
Struct<
{
event: EntityIdClass;
feed: optional<RefSchema<Feed & OfKind<Object> & Unknown>>;
thread: optional<brand<String, "@dxos/echo/Feed/BranchId">>;
},
>,
>;
model: optional<Codec<DXN, DXN, never, never>>;
},
> = ...
Start of one model request: the base of the turn's own branch, so every event the turn produces continues that branch, and
turnEnd(the branch's last event) merges the turn into its parent.