Repository navigation
Nightbell 3.10.0
Checking for an update no longer tells GitHub anything. Nightbell asks its own site which version is current, so the one request it makes on your behalf goes to the people who wrote it rather than to a stranger. The number of requests is unchanged: the check has always run at most four times a day and it still does. GitHub is still there in Settings, About, and so is F-Droid, if you would rather one of them was asked instead.
That request is also the only way this project can know how many people use it. The site's log holds a timestamp, a status and the version string the app sends, and nothing else. No address is recorded, and no identifier that could join one day of yours to the next, so retention curves are not something this design can produce, and that is the trade rather than an oversight. A fresh install says the word "new" once and never again, and counting that word is what makes the install number exact without anything having to be recognised.
The privacy answer on the site was wrong about this, and had been for as long as there has been an update check. It said the app talks to your monitors and to the connectivity probe, and beyond those two, nothing. It says three now, and describes what the third one sends.
The screen that asks for permission to page you is reachable again
It showed once. Tapping past it set a flag saying it had been seen, and that same flag decided whether to show it, so a single tap on the way past was permanent. The full-screen permission is granted from one Android settings page, and that page is reachable from this screen and nowhere else in the app, so a phone that skipped could never be woken by an urgent page again, and nothing anywhere said why. Its own footer promised it stayed reachable from Settings, which it never was.
It reads the grants now. A missing one brings it back at the next launch, because the thing it is asking for is still missing. Only "Don't ask again" stops it, and Settings, Alerts, Alert permissions turns that back on. Every install that ever skipped is asked once more, which is the point rather than a side effect.
Reached from Settings it looks like the rest of Settings: the same header, a Done button, and none of the first run copy, because "are you sure you want this" is a question nobody who navigated there on purpose has asked. Its colours mean what they mean elsewhere in the app, too. All four rows used to be rose, which spends the colour that means a monitor is down on a Do Not Disturb toggle. Rose is the notifications row alone now, because without notifications nothing is delivered at all, while the other three each degrade an urgent page in one survivable way.
A page stalled on a request that already failed stops being sent to the timeout
The renderer reports itself most of the way loaded, so "raise the timeout" looked like reasonable advice and could not work: taking sixty seconds to ninety does not resolve a hostname a firewall is blocking. A failed request outranks the progress figure now, because whatever the renderer claims, a load waiting on something that has already failed is not going to arrive later.
Two places said it, and the louder one was an amber line above the paragraph that stayed wrong after the paragraph was right. Both lead with the words that rule the timeout out. That paragraph is also an alert body, cut at 320 characters, and written with the reasoning first it was the verdict that fell off the end. The verdict comes first now, and the card gives it eight lines instead of six, which is what it takes to reach the sentence saying where the diagnostic log lives.
Also in this release
Every address this app chose for itself, the new one included, is pinned to HTTPS and to the certificates the phone shipped with. Your monitors are untouched and still trust whatever you have told the phone to trust, because a NAS behind a private certificate authority is half of what people watch. That pin is derived in a test from the constants the app actually uses, rather than written down in a comment and hoped for.