You'll noticeTier: how much it should matter to you
2Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
Self-Hosted RunnerArea: what it touches
ImprovementsKind: in v2.1.246,
ImprovementsSection of the release
What
The self-hosted runner now checks the shape of each work-poll response before using it, and the errors name an intercepting proxy as the likely cause rather than failing obscurely later.
Details
Non-object bodies, non-array assignment lists and malformed session ids each throw.
A lease expiry is accepted only if it is a string, and session assignments only if they are an array.
Unconditional on the self-hosted runner path.
Evidence
PollWork: response body is not a JSON object (an intercepting proxy may have answered)
Strings lifted out of the shipped bundle, so the claim above can be checked against them.