Changeset 2fc9b7f in Klonkt for src/routes


Ignore:
Timestamp:
06/20/2026 03:14:25 AM (3 months ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
389aa99
Parents:
7990e00
Message:

fix(circle): do not add hubs/non-circle sites as partner

A hub does not federate (its /.klonkt/actor.json returns 404), but it was
still added to the circle with a dead "error / HTTP 404" row. The add now
rolls back the insert on a 404 and shows a clear message ("a hub cannot be
a circle partner"). Temporary (non-404) errors still leave the link so it
can be refreshed later.

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/routes/admin-circle.js

    r7990e00 r2fc9b7f  
    6969    return res.redirect('/admin/circle?success=' + encodeURIComponent('Toegevoegd en gesynchroniseerd ✓'));
    7070  } catch (e) {
     71    const msg = String((e && e.message) || e);
     72    // 404 = geen cirkel-endpoint. Hubs federeren bewust NIET (hun /.klonkt/actor.json
     73    // geeft 404), net als losse niet-Klonkt-sites. Niet toevoegen: rol de insert terug
     74    // zodat er geen dode "fout"-rij in de cirkel blijft staan.
     75    if (/\b404\b/.test(msg)) {
     76      db.prepare('DELETE FROM circle_links WHERE id = ?').run(id);
     77      return res.redirect('/admin/circle?error=' + encodeURIComponent('Niet toegevoegd: deze site doet niet mee aan cirkels. Een hub kan geen cirkel-partner zijn (en losse/niet-Klonkt-sites ook niet).'));
     78    }
     79    // Andere (mogelijk tijdelijke) fout → link blijft staan; later "Verversen".
    7180    return res.redirect('/admin/circle?success=' + encodeURIComponent('Toegevoegd — synchroniseren mislukte (klik "Verversen" om opnieuw te proberen)'));
    7281  }
Note: See TracChangeset for help on using the changeset viewer.