Can't I correctly handle HEAD requests in Workers?

The docs mentioned that we can’t set a Content-Length manually:

The Content-Length header will be automatically set by the runtime based on whatever the data source for the Response is. Any value manually set by user code in the Headers will be ignored. To have a Content-Length header with a specific value specified, the body of the Response must be either a FixedLengthStream or a fixed-length value just as a string or TypedArray.

But, I mean, what if I want to handle a HEAD request? A HEAD request should return the Content-Length header while NOT returning the body at all!

I tried to set Content-Length header on my own worker and it turned out that currently there’s no exception for HEAD requests. Is that my problem or Worker can never handle HEAD requests correctly?