Under the hood
Forking a background session can now resume at a specific earlier message
What
The internal function used to spawn a background agent or fork a conversation now accepts a resumeAtLeaf option, letting it resume from a specific message rather than the latest one. If the conversation no longer actually contains that message as a valid fork point, it now returns a clear error: "Couldn't fork - the conversation no longer contains the fork point," instead of proceeding incorrectly.
Why
This lets background forks branch from a precise earlier point in a conversation, and fails clearly and safely if that point has since disappeared (for example, after history was pruned).