Stop counter failures from breaking mail, point setup at wrangler.jsonc

Two problems from the counter and wrangler.jsonc work:

Counter increments ran unguarded in createAddress, revokeAddress and
handleInboundEmail, so a database without the counters table threw
from core paths: /new failed, and inbound mail was accepted by the
receiver and then dropped before delivery. The counter page is a
Cloudflare-only feature but its increments live in core/, so
self-hosted and mail.tm deployments inherited that too. Counter
reads and writes are now best effort and log instead of throwing;
totals read as zero when the table isn't there and nothing else
notices.

wrangler.jsonc silently takes precedence over wrangler.toml, so the
setup wizard and the Cloudflare guide were both writing a file
wrangler ignores: following them produced a deploy on the upstream
domain and D1 database rather than your own. The wizard now edits
wrangler.jsonc in place, warns when the shipped database_id survives
unreplaced, and the dead wrangler.toml.example is gone.

Also documents the status page and the migration step for existing
deployments, which is where 0004/0005 should have been called out.
nccommitted parent c4c15ee3a5d7cb796b3513ca21cdb5c9fc6083bcf01ed64Browse files
6 files changed+96−60

Rendering diff…