0.5.0 — Webmention becomes optional, as the spec always said it was
Companion to 0.4.1, which hardened the Webmention endpoint. This release lets you not run one at all.
Protocol 0.3 §15 is OPTIONAL at every level, and §15.1 says the endpoint is advertised "only when mentions are accepted". This client did not implement that: it served the endpoint unconditionally, so a node stood up by following blygger.org/start/ got an unauthenticated public POST surface whether or not its operator wanted one. The intent was even in the code — buildManifest takes a webmention: false option that no caller ever passed.
- Settings → Accept Webmentions, on by default: nothing changes for an existing node until you change it.
- Off means withdrawn, not guarded. The manifest omits its
webmentionkey, your pages omit both the<link rel="webmention">element and theLinkheader, and a POST to the endpoint returns 404 — the same answer a static export of your blyg gives. A 403 would advertise an endpoint with a policy; there is no endpoint. - You still send mentions. When you quote, stub or fork someone else's item, your blyg still tells them. The two halves were always independent. Responses you have already collected stay in your studio.
- If you leave it on, 0.4.1's rate limits apply: per source host, per registrable domain, and per endpoint per hour.
Migrations: none — settings are key/value rows in a table that already exists. Upgrading is a redeploy:
git pull
npm ci --legacy-peer-deps
npm run deployIf your copy came from blygger-spec/worker/ — a node stood up before 2026-09-28 — git pull will not reach this repo: the client left that one by git subtree split, so the histories are unrelated and worker/ no longer exists there. Clone this repo fresh and carry over your wrangler.jsonc (D1 database_id, R2 bucket, routes, vars). Secrets, database and bucket are untouched by an upgrade.
515 tests, tsc --noEmit clean. Full reasoning in CHANGELOG.md.