Label one entry of a transcript
Puts a short tag on one moment of a conversation, or takes the tag away by sending an empty one — setting and clearing are the same write, because changing a label and removing it are the same gesture from where a person stands. A label is what makes a branched family navigable by meaning rather than by id: “the version that worked”, “before the refactor”, “where it broke”. One per entry, at most 128 characters, and it appears on the labels of the session’s node in getSessionTree, which is also what that operation’s label filter matches. The entry must belong to the named session. This is the only write in the transcript’s surface that names an entry directly, so it is the only one that could be aimed at another conversation’s entry, and one that is gets 404 rather than quietly succeeding. That 404 is deliberately not branchSession’s 422 for the same fact. Here the entry is part of the ADDRESS: this session’s entry with that id does not exist, which is what 404 says. branchSession carries the entry in its body, so the address (the session) does exist and it is the request that does not make sense against it, which is what 422 says.
Path Parameters
The session's id.
The transcript entry's id.
Body
The tag to put on one transcript entry. An empty string clears it — setting and clearing are one write, because from where a person stands renaming a marker and removing it are the same gesture.
A short tag a person types to recognise this moment on sight. Empty clears whatever was there.
128Response
The label was set, or cleared.

