The ONE contextUser-resolution policy for the server-in-process agent invokers (makeAIClient
here, resolveClient in _it-live-agent-harness.ts): params.contextUser ?? boundUser, else throw
a harness-attributed error. Shared so the two invokers' fallback policy and error message cannot
drift (#3251 review follow-up). Callers are async, so the throw always surfaces as a rejection.
The ONE contextUser-resolution policy for the server-in-process agent invokers (makeAIClient here, resolveClient in _it-live-agent-harness.ts):
params.contextUser ?? boundUser, else throw a harness-attributed error. Shared so the two invokers' fallback policy and error message cannot drift (#3251 review follow-up). Callers are async, so the throw always surfaces as a rejection.