Files
ngit-grasp/tests
DanConwayDev a7da97e105 fix(sync): retain NIP-77 for small hydration residuals
A zero-progress residual retry previously disabled negentropy even when the relay had delivered almost every advertised event. Expiry, deletion, or transient indexing lag could therefore misclassify healthy relays and invoke an expensive semantic fallback.

Retain the first-pass hydration ratio and reserve semantic fallback for batches of at least 20 advertised IDs that delivered no more than 10 percent, after the residual retry also makes no progress. Small residuals keep NIP-77 enabled and enter the existing bounded missing-event recovery path.

The threshold deliberately preserves the observed high-failure compatibility fallback while excluding the production residual ratios. This does not change explicit NIP-77 unsupported-signal handling or the recovery schedule.

Extend the censoring-proxy scenario to prove a one-event residual retains NIP-77, add boundary and production-ratio unit coverage, and document the policy. Validation: nix develop -c cargo test (616 library tests; all integration and doc tests green).
2026-08-05 12:52:23 +00:00
..