source: Klonkt/src/services/ActivityPubService.js@ cb3001e

main
Last change on this file since cb3001e was cb3001e, checked in by Robin <roboburr@…>, 4 weeks ago

De outbox pagineert, want zonder first en last weigerde Funkwhale hem

De eerste CONCRETE reden die we hoorden waarom er niets van ons binnenkwam. Uit
hun log:

Error while fetching actor outbox: https://dev.klonkt.com/ap/users/dev/outbox
ValidationError: {'first': This field is required.,

'last': This field is required.}

AS2 eist die velden niet -- een OrderedCollection mag zijn items inline dragen,
en dat deden wij -- maar bijna iedereen pagineert, en een lezer die de
paginaweg volgt liep hier dood. Dagenlang zochten we het bij onze objecten
terwijl het de omslag was.

De items blijven WEL inline op de wortel. Shaer bouwt zijn feed daaruit, en wie
hem vandaag leest hoort er morgen niet voor te hoeven pagineren. Er is precies
een pagina (we kappen op MAX_OUTBOX), dus first en last wijzen naar dezelfde, en
?page=1 geeft een OrderedCollectionPage met partOf terug.

Ook de LEGE outbox van een geblokkeerde lezer draagt ze nu -- juist die zou
anders door dezelfde serializer geweigerd worden, en dan is een blokkade van
buiten niet te onderscheiden van een kapotte server.

Vijf tests. Anker bij het bewerken was .slice(0, MAX_OUTBOX): het retourblok van
buildOutbox is teken voor teken gelijk aan dat van buildFeatured, en een
patroon zonder dat anker raakte er twee.

NIET meegenomen: followers, following en featured missen first/last ook. Daar
klaagde niemand over en Mastodon leest ze zonder morren, dus dat is een aparte
afweging en geen sleepnet.

Co-Authored-By: Claude Opus 5 <noreply@…>

  • Property mode set to 100644
File size: 365.4 KB

HTML preview not available, since the file size exceeds 256.0 KB.Try downloading the file instead.

Note: See TracBrowser for help on using the repository browser.