mirror of
https://relay.ngit.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp.git
synced 2026-10-05 15:08:24 +00:00
PolicyLimited returned reconnect-allowed unconditionally, hiding an active transport failure deadline. Production refused peers consequently redialed within two seconds of disconnect while their failure streak was increasing. Reject dial admission during active policy, rate, or request-failure pauses. After those expire, continue enforcing the existing transport deadline. Established live connections remain untouched and SDK auto-reconnect remains disabled, so the application is the reconnect admission authority. This assumes a new socket cannot repair a subscription refusal during its pause. It deliberately does not ban the peer or modify remote state. Validation: 932 library tests and 114 sync integration tests passed (one ignored), formatting and strict all-target Clippy passed. The new regression checks policy refusal plus disconnect, policy expiry with transport backoff still active, eventual admission, and a separate silent-request pause. The integration validation includes a separate follow-up fixture correction: its last-update log search missed already installed coverage for another relay. Assisted-by: GPT-6