I'm mid-authoring of a crawler, and just glancing through the spec in a bit more detail than before. Section 3.1 says
The declarations must be accessible via HTTP and/or HTTPS  from the website that the
instructions are to be applied to under a standard relative path on the server host: "/ads.txt" and
and HTTP request header containing "Content-Type: text/plain". It may be advisable to
additionally use "Content-Type: text/plain; charset=utf-8" to signal UTF8 support.
but I assume it actually means to refer to the Accept header (and possibly Accept-Encoding), not Content-Type on the request side of things.
I also am a tiny bit skeptical of the paragraph below it:
Other HTTP status codes such as HTTP 302 redirects are not supported, a future version may
address delegating authority to a third-party web server to publish the data.
I have a feeling that in the wild, at least a few publisher sites will have sorts of global redirects with absolutely nothing hosted on the root, e.g. to redirect to a www subdomain etc. I think I'm likely to implement redirect following just to not have to think about it.
(Sidebar: this is the appropriate place for these sorts of things I hope? https://iabtechlab.com/blog/industry-aligns-to-adopt-ads-txt-specification/
seems to mention that there's an ads.txt slack channel. Is that public, or available to members of this list? I can't seem to find any other mention of it anywhere in a 30 second Google search.)