-
released this
2026-08-18 11:31:29 +00:00 | 330 commits to main since this releaseA failure from somebody else's service stops sounding like this server breaking.
Gmail's "Fetch now" answered 502 with the codeinternal_error, which the
interface maps to a generic sentence — so Google's own words, which are the whole
diagnosis, were replaced by one that says nothing. And that path recorded nothing,
so there was nowhere to look it up afterwards. Both halves are fixed: the message
is quoted, and the row is written to the error log, which is the entire reason that
log exists.The same connection left the mailbox unnamed. The address is learned when Gmail is
connected and that call can fail; a warning went to a log the next restart erases,
and "an unknown account" stayed on the page forever. The status endpoint asks again
when it finds none.Ten Danish strings were hiding inside
confirm()andapp.toast()calls —
including every destructive confirmation in the app, which is what somebody reads
in the half-second before agreeing to lose something. The i18n guard reads script
blocks now, and found four a hand-written grep had missed.A Rune's manifest version is bumped when its variables change. The panel keys its
catalogue on that number, so new fields with an unchanged version are invisible:
the upload succeeds and nothing reports it.No migrations.
Downloads