Previously a session tracked only one pending bypass request. If agent A1 had a pending bypass, agent A2's bypass request would block waiting to be read from toolsrv's channel, effectively blocking all agents in the session. Now bypassPending is a map keyed by request ID: - SetBypassPending adds to the map instead of overwriting - BypassPending returns all pending requests (slice) - BypassPendingByID returns a specific request - ResolveBypass removes from the map by ID - 9P bypass file returns JSON array of all pending The bypass loop reads requests continuously without waiting for resolution, so multiple agents can have concurrent pending requests. |
||
|---|---|---|
| .. | ||
| ollie-9p | ||
| olliesrv | ||
| toolsrv | ||