forked from mirrors/misskey
* fix(backend): skip inbox activities without an actor instead of throwing TypeError - guard getApId() against null/undefined (and fix the 'detemine' typo) - skip actor-less inbox activities early with Bull.UnrecoverableError Fixes #17557 * fix(backend): reject actor-less inbox activities at enqueue time Per review feedback (#17558), move the actor presence check to the inbox HTTP handler and drop the processor-side guard. - ActivityPubServerService.inbox(): validate the request body from the loose (unknown) type and return 400 for structurally invalid activities (non-object / missing actor) instead of enqueueing a job that can never be authenticated. Avoids useless retries and TypeError noise. - InboxProcessorService.process(): remove the actor null guard; IActivity.actor is non-null, so the check is unnecessary once enqueue is validated. - getApId(): widen the parameter to include undefined so the existing null guard is type-honest (getOneApId can pass value[0] of an empty array). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| .vscode | ||
| assets | ||
| migration | ||
| nsfw-model | ||
| scripts | ||
| src | ||
| test | ||
| test-federation | ||
| test-server | ||
| .madgerc | ||
| eslint.config.js | ||
| ormconfig.js | ||
| package.json | ||
| README.md | ||
| rolldown.config.ts | ||
| tsconfig.json | ||
| vitest.config.e2e.ts | ||
| vitest.config.fed.ts | ||
| vitest.config.ts | ||
| vitest.config.unit.ts | ||
