-
Multi-Hoster-Upload v3.3.62 Stable
released this
2026-06-10 00:08:26 +02:00 | 117 commits to master since this releaseWebhook reliability overhaul from a 5-lens multi-agent audit (36 confirmed findings). The notification now actually arrives in the situations where it used to silently fail.
Delivery reliability:
- sendBatchWebhook is now awaited and retries up to 3× with backoff. Before it was fire-and-forget with zero retry — exactly the wrong design for the one moment you need it (end of a long unattended batch, when the network is most likely to be briefly flaky). A transient failure now retries instead of vanishing.
- Discord 429 rate-limit is honored: the Retry-After header is parsed and the POST is re-sent. Critical when many servers finish near-simultaneously and all hit the same webhook — previously some notifications were silently dropped.
- HTTP status is validated. 2xx (incl. Discord's 204) = success; 4xx = stop (bad URL/payload, logged clearly); 5xx/network = retry. Previously ANY response — even 404/401 — was logged as 'sent'.
- The webhook is now awaited before the shutdown-after-finish countdown and before the upload manager is torn down, so an in-flight POST can't be killed.
- Webhook is now ALSO sent on the batch-init error path (startBatch reject) — previously only the happy path notified.
Correctness:
- isDiscordWebhook now requires a real id/token (…/webhooks//). An incomplete URL pasted by mistake no longer gets treated as a valid Discord webhook and 404'd silently.
- Discord 2000-char limit: content is capped (hoster breakdown truncated to top 12 + '…+N', hard clamp at 1900). A 60-hoster or huge batch can no longer 400.
- Fully-aborted/cancelled batches no longer fire a 'done' webhook (you cancelled it — you don't need a ping).
- Auto-retry rounds no longer each fire a webhook (was one ping per round); only the initial batch notifies.
- durationSec clamped to ≥0; machineName falls back to 'unknown-host' if hostname is empty.
Lifecycle:
- The network monitor's DNS-probe interval is now stopped on the batch error path too (was leaking an 8s timer per failed batch).
+12 tests (268 total).
Downloads