Ignore:
Timestamp:
07/25/2026 10:37:37 AM (7 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
97bacf2
Parents:
787e0d9
Message:

Guardian 2 wordt de nieuwe /guardian; oude v1 eruit

Robins besluit: /guardian2 is de canonieke Guardian-PWA, de oude /guardian mag
weg. guardian2 was een superset van v1 (kloon + meekijken, follow-gating,
cross-instance goedkeuring, wave, invite), dus er gaat niks verloren. De
"invite a guardian" blijft zichtbaar op de pagina maar is verder geparkeerd.

Alle paden/keys omgezet: /guardian2 -> /guardian, i18n guardian2.* -> guardian.*,
manifest-id klonkt-guardian-, short_name "Guardian". De v2-bestanden zijn
verwijderd en de v2-inhoud staat nu in de v1-bestanden. Push-URLs (follow-gating)
en de mount in server.js wijzen weer naar /guardian.

Changed files:
src/routes/guardian.js

  • vervangen door de v2-route (feed, follow-requests, wave, invite/join) op /guardian

src/views/pages/guardian.ejs

  • v2-view (wards-corner, volgverzoeken, invite-knop), titel weer "Guardian"

src/assets/js/guardian.js, src/assets/css/guardian.css

  • v2-client + styling

src/services/i18n.js

  • guardian2.* keys hernoemd naar guardian.*

src/services/ActivityPubService.js

  • push-URLs + comments /guardian2 -> /guardian

src/server.js

  • /guardian2-mount + import verwijderd; /guardian wijst naar de nieuwe route

Removed files:
src/routes/guardian2.js, src/views/pages/guardian2.ejs,
src/assets/js/guardian2.js, src/assets/css/guardian2.css

remarks: npm test 171/171; /guardian serveert de nieuwe inhoud, /guardian2 = 404.

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/services/ActivityPubService.js

    r787e0d9 rf1c50f9  
    14051405      // FEP-633c §5.3, modelled on the guardian offer: the ward forwards the
    14061406      // gated follow to its guardians for approval. A LOCAL guardian gets a
    1407       // push and reads /guardian2 directly; a REMOTE guardian gets an
     1407      // push and reads /guardian directly; a REMOTE guardian gets an
    14081408      // Offer(Follow) delivered so its instance stores a copy (same distributed
    14091409      // pattern as the adoption offer). On quorum the ward returns Accept(Follow).
     
    14191419        if (isLocal) {
    14201420          const L = pushLang(gslug);
    1421           pushEvent(gslug, { type: 'guardian', title: i18nT(L, 'push.n_guard_cog_t'), body: i18nT(L, 'push.n_guard_cog_b', { who: fi.name || fi.handle || i18nT(L, 'notif.someone') }), url: `${pushPrefix(gslug)}/guardian2` });
     1421          pushEvent(gslug, { type: 'guardian', title: i18nT(L, 'push.n_guard_cog_t'), body: i18nT(L, 'push.n_guard_cog_b', { who: fi.name || fi.handle || i18nT(L, 'notif.someone') }), url: `${pushPrefix(gslug)}/guardian` });
    14221422        } else {
    14231423          fetchActor(g).then((ga) => {
     
    30093009      Guardianship.follows.recordReview(gslug, { id: followId, wardUri, wardInbox: wardDoc && wardDoc.inbox, follower, followerHandle: fai.handle, followerIcon: fai.icon, followJson: JSON.stringify(fo) });
    30103010      const L = pushLang(gslug);
    3011       pushEvent(gslug, { type: 'guardian', title: i18nT(L, 'push.n_guard_cog_t'), body: i18nT(L, 'push.n_guard_cog_b', { who: fai.name || fai.handle || i18nT(L, 'notif.someone') }), url: `${pushPrefix(gslug)}/guardian2` });
     3011      pushEvent(gslug, { type: 'guardian', title: i18nT(L, 'push.n_guard_cog_t'), body: i18nT(L, 'push.n_guard_cog_b', { who: fai.name || fai.handle || i18nT(L, 'notif.someone') }), url: `${pushPrefix(gslug)}/guardian` });
    30123012      stored = true;
    30133013    }
     
    30323032}
    30333033
    3034 // Leg 3: a guardian in /guardian2 decides on a forwarded follow; send the
     3034// Leg 3: a guardian in /guardian decides on a forwarded follow; send the
    30353035// Accept/Reject back to the ward's inbox (signed by the guardian).
    30363036export async function sendFollowDecision(guardianSite, review, decision) {
Note: See TracChangeset for help on using the changeset viewer.