Changeset 26b1848 in Klonkt


Ignore:
Timestamp:
08/11/2026 05:36:21 PM (4 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
fc41e04
Parents:
abbb72a
Message:

Drie spellingen van dezelfde naam, en "door wie" was de hele vraag (shaer-lgo)

Zichtbaar geworden in de echte data van vandaag: naast een markering van
boiert.eu met handle @boiert@… stond die van dev met handle NULL. Op het
scherm valt dat terug op de kale URI.

Onze eigen markering werd op twee plekken geboekt, en allebei anders:

routes/guardian.js (het paneel) null
ActivityPubService (de app, C2S) @${site.slug} -- zonder host
inkomend van een ander de echte handle

Nu alle drie deriveHandle(me). Die stond module-privé in ActivityPubService en
is geexporteerd in plaats van in de route nagebouwd -- een tweede afleiding van
dezelfde naam is precies de naad die vandaag al twee keer beet.

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

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • src/routes/guardian.js

    rabbb72a r26b1848  
    431431  // Onze eigen kopie meteen, zonder op bezorging te wachten: het scherm van
    432432  // degene die klikt hoort niet te liegen omdat een andere server traag is.
    433   Guardianship.help.record(noteUri, me, kind, null);
     433  // MET onze eigen handle. Die stond hier op null, en "door wie" was juist de
     434  // hele vraag van deze bead: een binnengekomen markering draagt de handle van
     435  // de afzender wel, dus onze EIGEN rij was de enige zonder naam. Op het scherm
     436  // viel dat terug op de kale URI.
     437  Guardianship.help.record(noteUri, me, kind, AP.deriveHandle(me));
    434438
    435439  // DE MEDE-GUARDIANS, en dit ging mis (shaer-lgo, gevonden 11-8 met @mee).
  • src/services/ActivityPubService.js

    rabbb72a r26b1848  
    13381338  return m ? decodeURIComponent(m[1]) : null;
    13391339}
    1340 function deriveHandle(actorUri) {
     1340export function deriveHandle(actorUri) {
    13411341  try { const u = new URL(actorUri); const seg = u.pathname.split('/').filter(Boolean).pop() || ''; return `@${seg}@${u.host}`; } catch { return String(actorUri || ''); }
    13421342}
     
    32043204          if (mark) {
    32053205            const base2 = (process.env.PUBLIC_BASE_URL || '').replace(/\/+$/, '');
    3206             Guardianship.help.record(mark.noteUri, actorId(base2, site.slug), mark.kind, `@${site.slug}`);
     3206            // Met de VOLLEDIGE handle. Hier stond `@${site.slug}` -- zonder host,
     3207            // dus een derde vorm naast de kale URI van de PWA-route en de echte
     3208            // handle die een binnengekomen markering draagt. Drie spellingen van
     3209            // dezelfde naam, en "door wie" was de hele vraag van shaer-lgo.
     3210            const mij = actorId(base2, site.slug);
     3211            Guardianship.help.record(mark.noteUri, mij, mark.kind, deriveHandle(mij));
    32073212          }
    32083213          const r = await deliverDirectNote(site, { recipients, text: plain, language: object.language || null, inReplyTo: typeof object.inReplyTo === 'string' ? object.inReplyTo : null, attachments: atts, helpRequest: help, awayUntil, gateRequest: gateReq && gateReq.feature, helpMark: mark });
  • test/help-c2s.test.js

    rabbb72a r26b1848  
    5858  // markering.
    5959  assert.equal(h.state.open, true);
     60});
     61
     62test('onze EIGEN markering draagt onze eigen handle', () => {
     63  // "Door wie" was de hele vraag van deze bead. Een binnengekomen markering
     64  // draagt de handle van de afzender wel; onze eigen rij stond op null en viel
     65  // op het scherm terug op de kale URI. Gezien op 11-8 in de echte data naast
     66  // een rij van boiert.eu, die zijn handle wel had.
     67  const coll = queues.helpCollection('https://x/queues/help', 'oma');
     68  const item = coll.orderedItems.find((i) => i.id === BOEI);
     69  assert.deepEqual(item['shaer:pickedUpBy'], ['@oma@oma.test'],
     70    'een handle en geen URI');
    6071});
    6172
Note: See TracChangeset for help on using the changeset viewer.