bifrost-gateway
bifrost-gateway copied to clipboard
Ensure /ipfs/cid?format=raw is pass-throughh
(iiuc) an incoming request for /ipfs/cid/subpath/file?format=raw is translated to backend request for /ipfs/cid/subpath/file?format=car&dag-scope=block and the returned CAR includes blocks for traversing /cid → /subpath and then the root block of /file.
When a block for CID is requested directly (no subpath) we are wasting resources on CAR wrapping.
Proposed improvement
If requested format is a single block (application/vnd.ipld.raw), and there is no subpath (only direct CID /ipfs/cid), bifrost-gateway should do a pass-through request, where the backend gets exactly the same request for a single block (application/vnd.ipld.raw):
/ipfs/cid?format=raw → /ipfs/cid?format=raw