Changeset 0517013 in Klonkt for src/services


Ignore:
Timestamp:
08/08/2026 04:15:57 AM (5 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
553bd70
Parents:
06bae1e
git-author:
Robin <roboburr@…> (08/08/2026 04:15:44 AM)
git-committer:
Robin <roboburr@…> (08/08/2026 04:15:57 AM)
Message:

De Accept-terugval werkt nu ook op de gedeelde inbox

Vervolg op 06bae1e, en de fout die daar in zat: de terugval hing aan
slugParam, en die is LEEG wanneer er op /ap/inbox wordt afgeleverd in plaats
van op /ap/users/<slug>/inbox. Funkwhale doet precies dat, dus de terugval
werd overgeslagen en de rij bleef alsnog op pending -- alleen zei de log nu
tenminste eerlijk "accept UNMATCHED".

Wie wij zijn staat gewoon in de ingesloten Follow: die hebben wij zelf
verstuurd, dus object.actor is onze eigen actor-URI. Daar leiden we de slug
uit af als slugParam ontbreekt.

Zonder bruikbare Follow raden we niets: dan blijft het pending. Er is een test
die dat vastlegt, naast de test voor de gedeelde-inbox-weg zelf.

7 tests.

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/services/ActivityPubService.js

    r06bae1e r0517013  
    25232523    // rij die nog op pending staat wordt geraakt, dus dit kan niets anders
    25242524    // openzetten dan een follow die wij zelf hebben verstuurd.
    2525     if (!raak && slugParam && actorUri) {
    2526       try { raak = fwStmts().accByActor.run(slugParam, actorUri).changes; } catch { /* ignore */ }
     2525    //
     2526    // En de slug mag NIET van slugParam afhangen: Funkwhale bezorgt op de
     2527    // GEDEELDE inbox, en dan is die leeg. Wie wij zijn staat in de ingesloten
     2528    // Follow -- die hebben wij immers zelf verstuurd, dus `object.actor` is
     2529    // onze eigen actor-URI.
     2530    let mij = slugParam;
     2531    if (!mij && act.object && typeof act.object === 'object') mij = slugFromActorUrl(act.object.actor);
     2532    if (!raak && mij && actorUri) {
     2533      try { raak = fwStmts().accByActor.run(mij, actorUri).changes; } catch { /* ignore */ }
    25272534    }
    25282535    // Eerlijk loggen: zonder treffer is er niets geaccepteerd, en dat hoort te
Note: See TracChangeset for help on using the changeset viewer.