fix: suppress fedify inbox HTTP Signature verify errors to fatal
Deploy Indiekit Server / deploy (push) Successful in 1m28s
Deploy Indiekit Server / deploy (push) Successful in 1m28s
Both ["fedify","federation","inbox"] and ["fedify","runtime","docloader"]
are now suppressed to lowestLevel:"fatal". The inbox errors ("Failed to
verify the request's HTTP Signatures") are expected noise from deleted/
migrated actors and are not actionable.
Updates marker from ap-inbox-delivery-debug-A to ap-inbox-delivery-debug-A-fatal.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -183,7 +183,7 @@ npm install git+https://gitea.giersig.eu/svemagie/indiekit-endpoint-activitypub
|
|||||||
| Liked posts show as not-liked in thread context (ancestors/descendants) | Context endpoint used empty interaction Sets — fixed by `patch-ap-interactions-context-state` |
|
| Liked posts show as not-liked in thread context (ancestors/descendants) | Context endpoint used empty interaction Sets — fixed by `patch-ap-interactions-context-state` |
|
||||||
| "Empty reply from server" on webmention poller | Poller routing through nginx (returns 444 for wrong Host) — must use `INDIEKIT_DIRECT_URL` |
|
| "Empty reply from server" on webmention poller | Poller routing through nginx (returns 444 for wrong Host) — must use `INDIEKIT_DIRECT_URL` |
|
||||||
| HTTP Signature 401 errors on all inbound activities | nginx forwarding wrong `Host` header — fixed by `patch-ap-signature-host-header` (overrides to `blog.giersig.eu`) |
|
| HTTP Signature 401 errors on all inbound activities | nginx forwarding wrong `Host` header — fixed by `patch-ap-signature-host-header` (overrides to `blog.giersig.eu`) |
|
||||||
| HTTP Signature verify errors flooding logs for deleted/migrated actors | Expected noise — `patch-ap-inbox-delivery-debug` suppresses to `fatal`; real errors surface at `error` level |
|
| HTTP Signature verify errors flooding logs for deleted/migrated actors | Expected noise — `patch-ap-inbox-delivery-debug` (in `patch-ap-federation-infra.mjs`) suppresses both `["fedify","federation","inbox"]` and `["fedify","runtime","docloader"]` to `lowestLevel: "fatal"`. Current marker: `ap-inbox-delivery-debug-A-fatal` |
|
||||||
| Mastodon client (Phanpy, etc.) gets 401 on all authenticated endpoints ~10 min after login | OAuth access token inherited the auth code's 10-min `expiresAt` — fixed by `patch-ap-oauth-token-expiry-fix` (`$unset: { expiresAt }` during code exchange) |
|
| Mastodon client (Phanpy, etc.) gets 401 on all authenticated endpoints ~10 min after login | OAuth access token inherited the auth code's 10-min `expiresAt` — fixed by `patch-ap-oauth-token-expiry-fix` (`$unset: { expiresAt }` during code exchange) |
|
||||||
| Mastodon client gets 401 on all requests immediately (not just after 10 min) | "Autorisiertes Abrufen erfordern" (authorized fetch / secure mode) is enabled — unsigned GET requests to actor/collections are rejected. Error message "access token is invalid" is misleading; it comes from the authorized-fetch layer, not OAuth. Fix: disable authorized fetch in AP admin settings. Trade-off: blocked servers can still fetch public posts, but this is acceptable for a public blog. |
|
| Mastodon client gets 401 on all requests immediately (not just after 10 min) | "Autorisiertes Abrufen erfordern" (authorized fetch / secure mode) is enabled — unsigned GET requests to actor/collections are rejected. Error message "access token is invalid" is misleading; it comes from the authorized-fetch layer, not OAuth. Fix: disable authorized fetch in AP admin settings. Trade-off: blocked servers can still fetch public posts, but this is acceptable for a public blog. |
|
||||||
| "OAuth callback failed. Missing parameters." | `state` parameter not echoed — fixed in fork (`b54146c`) |
|
| "OAuth callback failed. Missing parameters." | `state` parameter not echoed — fixed in fork (`b54146c`) |
|
||||||
|
|||||||
@@ -125,17 +125,8 @@ const PATCHES = [
|
|||||||
{
|
{
|
||||||
name: "inbox-delivery-debug/inbox-logger-level",
|
name: "inbox-delivery-debug/inbox-logger-level",
|
||||||
files: apPath("lib/federation-setup.js"),
|
files: apPath("lib/federation-setup.js"),
|
||||||
marker: "// [patch] ap-inbox-delivery-debug-A",
|
marker: "// [patch] ap-inbox-delivery-debug-A-fatal",
|
||||||
oldSnippet: ` {
|
oldSnippet: ` {
|
||||||
// Noise guard: HTTP Signature verification failures are expected for
|
|
||||||
// incoming activities from servers with expired/gone keys (e.g. deleted
|
|
||||||
// actors, migrated servers). These produce high log volume with no
|
|
||||||
// actionable signal — suppress everything below fatal.
|
|
||||||
category: ["fedify", "federation", "inbox"],
|
|
||||||
sinks: ["console"],
|
|
||||||
lowestLevel: "fatal",
|
|
||||||
},`,
|
|
||||||
newSnippet: ` {
|
|
||||||
// Surfacing real verification failures (wrong key, clock skew, digest
|
// Surfacing real verification failures (wrong key, clock skew, digest
|
||||||
// mismatch) at "error" level while keeping high-volume key-fetch
|
// mismatch) at "error" level while keeping high-volume key-fetch
|
||||||
// 404/410 warnings from deleted actors silent. // [patch] ap-inbox-delivery-debug-A
|
// 404/410 warnings from deleted actors silent. // [patch] ap-inbox-delivery-debug-A
|
||||||
@@ -143,6 +134,15 @@ const PATCHES = [
|
|||||||
sinks: ["console"],
|
sinks: ["console"],
|
||||||
lowestLevel: "error",
|
lowestLevel: "error",
|
||||||
},`,
|
},`,
|
||||||
|
newSnippet: ` {
|
||||||
|
// Noise guard: HTTP Signature verification failures are expected for
|
||||||
|
// incoming activities from servers with expired/gone keys (e.g. deleted
|
||||||
|
// actors, migrated servers). These produce high log volume with no
|
||||||
|
// actionable signal — suppress everything below fatal. // [patch] ap-inbox-delivery-debug-A-fatal
|
||||||
|
category: ["fedify", "federation", "inbox"],
|
||||||
|
sinks: ["console"],
|
||||||
|
lowestLevel: "fatal",
|
||||||
|
},`,
|
||||||
},
|
},
|
||||||
|
|
||||||
// ── inbox-delivery-debug Fix B: federation-bridge.js — request-level logging ─
|
// ── inbox-delivery-debug Fix B: federation-bridge.js — request-level logging ─
|
||||||
|
|||||||
Reference in New Issue
Block a user