.forge/issues/ee5121b8-e3da-4667-88b7-243e11ec27f6/issue.md 2.1 KiB 30 lines Raw

id: ee5121b8-e3da-4667-88b7-243e11ec27f6 title: 'serve: git upload-pack has no timeout, no concurrency cap, and fully buffers the pack' state: closed labels:


/repo.bundle/git-upload-pack spawns git upload-pack per POST with no timeout, no concurrency limit, and buffers the entire pack in RAM (wait_with_output() → Vec<u8> → respond).

Problems:

Note this is the smart path and is serve-only (dumb /repo.git is static and unaffected), so a deployment that never advertises /repo.bundle still exposes it — the route exists whenever www/repo.bundle exists, which build always writes.

Fix direction:

Acceptance:

view raw