So, this ones my fault, and a rather obvious problem once I realised.
The function app HTTP endpoints use Azure AD authentication, with each function being injected with the 'ClaimsPrincipal' in the constructor.
I had made a change to the queue triggers to also expect this ClaimsPrincipal, which doesn't exist on a queue triggered function.
So in short, don't try to pull user context or claims from a queue triggered function and you will be fine. Also a slap on the wrist for not testing properly!