Changeset 47db4b5 in Klonkt
- Timestamp:
- 08/13/2026 07:53:48 PM (4 weeks ago)
- Branches:
- main
- Children:
- 54b027a
- Parents:
- f926d13
- Files:
-
- 1 added
- 1 edited
-
src/services/ActivityPubService.js (modified) (1 diff)
-
test/move-guardianship.test.js (added)
Legend:
- Unmodified
- Added
- Removed
-
src/services/ActivityPubService.js
rf926d13 r47db4b5 5795 5795 } 5796 5796 } 5797 // Een Move is een Move: de guardian is dezelfde guardian, het kind is hetzelfde 5798 // kind, alleen het adres is nieuw. Toezicht IS een gewone Follow (FEP-633c §5), 5799 // en die is hierboven al meeverhuisd -- maar de relatie zelf hing nog aan de 5800 // oude URI. Dat leverde de vervelendste toestand op: de guardian ziet de posts 5801 // nog binnenkomen, terwijl alles dat op other_uri matcht omvalt (de gate op een 5802 // nieuwe volger, het escalatiepad, listGuardians bij het kind). Half een 5803 // vangnet ziet eruit als een heel vangnet. 5804 // 5805 // Zelfde bescherming als de re-follow hierboven: alleen na een geverifieerde 5806 // Move, en niet als de bestemming geblokkeerd is (daar zijn we al uitgestapt). 5807 // De twee harde randen van shaer-tge staan hier LOS van: weigeren te verhuizen 5808 // naar een instance die shaer:guardians niet kan dragen is een controle aan de 5809 // UITGAANDE kant, en het terugkeren-zonder-set is een alsoKnownAs-kwestie. 5797 5810 try { 5798 5811 const g = db.prepare('SELECT slug, role FROM ap_guardianships WHERE other_uri = ? AND status = ?').all(oldUri, 'accepted'); 5799 if (g.length) console.warn('[AP] Move touches a guardianship party — left untouched (shaer-tge):', oldUri, '→', g.map((r) => `${r.role}:${r.slug}`).join(', ')); 5800 } catch { /* table absent on fresh init */ } 5812 if (g.length) { 5813 const r = db.prepare('UPDATE ap_guardianships SET other_uri = ? WHERE other_uri = ? AND status = ?').run(newUri, oldUri, 'accepted'); 5814 console.log('[AP] guardianship moved:', oldUri, '→', newUri, `(${r.changes}x)`, g.map((x) => `${x.role}:${x.slug}`).join(', ')); 5815 } 5816 } catch (e) { console.warn('[AP] guardianship move failed:', e && e.message); } 5801 5817 return 202; 5802 5818 }
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)