Index: test/feed-changes.test.js
===================================================================
--- test/feed-changes.test.js	(revision 21ef238b2aef0be15654f3a397db52757fa168b1)
+++ test/feed-changes.test.js	(revision e2150909dd29bd970c606ecdc6b09f233415d3a8)
@@ -87,4 +87,16 @@
 });
 
+test('het verschil draagt de rechten mee', async () => {
+  // Zonder dit valt de client terug op zijn standaard, en die standaard is
+  // 'alles mag': een gesloten poort zou zichzelf stil openzetten bij elke
+  // verschil-lezing.
+  const vol = await get('');
+  db.prepare("UPDATE sites SET gate_images = 0 WHERE slug = 'kind'").run();
+  db.prepare("INSERT INTO ap_guardianships (slug, other_uri, role, status) VALUES ('kind', 'https://elders/u/oma', 'guardian', 'accepted')").run();
+  post('https://elders/n/9', '<p>na de poort</p>');
+  const delta = await get(`?changes=1&since=${encodeURIComponent(vol.body['shaer:cursor'])}`);
+  assert.equal(delta.body['shaer:capabilities']['shaer:images'], false, 'de dichte poort reist mee');
+});
+
 test('niets veranderd is een leeg verschil, niet een leeg antwoord', async () => {
   const vol = await get('');
Index: test/gates-capabilities-parity.test.js
===================================================================
--- test/gates-capabilities-parity.test.js	(revision 21ef238b2aef0be15654f3a397db52757fa168b1)
+++ test/gates-capabilities-parity.test.js	(revision e2150909dd29bd970c606ecdc6b09f233415d3a8)
@@ -29,9 +29,15 @@
 const SOURCE = 'src/routes/activitypub.js';
 
-/** De sleutels binnen het shaer:capabilities-blok, gelezen uit de bron. */
+/** De sleutels van het rechtenblok, gelezen uit de bron.
+ *
+ *  Het blok woont sinds 10-8 in capabilitiesOf(), omdat de verschil-lezing
+ *  (?changes=1) dezelfde rechten moet dragen: een antwoord zonder rechten laat
+ *  de client terugvallen op zijn standaard, en die standaard is 'alles mag'.
+ *  Deze toets kijkt daarom naar die functie en niet meer naar de plek in de
+ *  route. */
 function capabilityKeys() {
   const src = fs.readFileSync(SOURCE, 'utf8');
-  const start = src.indexOf("'shaer:capabilities': {");
-  assert.notEqual(start, -1, `${SOURCE} heeft nog een shaer:capabilities-blok`);
+  const start = src.indexOf('function capabilitiesOf(');
+  assert.notEqual(start, -1, `${SOURCE} heeft geen capabilitiesOf() meer`);
   const open = src.indexOf('{', start);
   let depth = 0;
