mirror of
https://github.com/luxfi/aml.git
synced 2026-09-24 00:25:20 +00:00
The EU list answered "tls: received record with version 302 when expecting version 303" on one request, and the same host served the same 24.8 MB file correctly seconds later — verified afterwards across three TLS configurations, all HTTP 200. There was no retry, and the refresh runs daily, so that single lost packet cost a full day of screening against a list 6,017 designations short. Transport is retried three times with a growing wait. Nothing else is: a parse failure is a disagreement about the schema and will fail identically on the next attempt, so retrying it delays the refresh without changing the outcome. A cancelled context stops immediately, because that is the deployment shutting down rather than the publisher failing. A publisher that is genuinely down is still reported, and the error names the attempts made — an operator who cannot tell a blip from an outage cannot decide whether to act. One publisher failing still does not abandon the others. The download is a parameter rather than a call into the network, which is what makes any of this testable: five tests cover the retried blip, the persistent outage, the un-retried parse failure, the surviving sibling and the cancellation. Eight mutants, all killed — including removing the retry, which is the defect. Co-authored-by: Hanzo Dev <[email protected]>