mirror of
https://github.com/euzu/tuliprox.git
synced 2026-10-07 08:22:05 +02:00
Task 10 step 7. Admission runs when the request is accepted, which can be a long time before anything is written: the recording may wait for provider capacity, sit through a retry backoff, or be scheduled hours ahead. The quota and free space it was admitted against are not the ones it is about to consume. Until now nothing looked again. The first sign that the disk had filled while a recording waited was a write failure part-way through it -- after a provider slot had been taken and, for Live, after ffmpeg had started against a broadcast that only happens once. The check runs at the last point before a destination is opened. The subject is excluded from both the quota and the disk sums and then added back as the candidate charge, so it is not counted twice. An unmeasurable root is not grounds to refuse, matching admission. A refusal releases the provider slot, commits a terminal Failed naming which resource ran out, and clears the reservation. The test seeds a queued capture, drives headroom to zero through the safety margin, and asserts the encoder was never spawned, no destination file exists, the slot was returned exactly once, and no disk is still reserved.