Index: src/services/guardianship/handshake.js
===================================================================
--- src/services/guardianship/handshake.js	(revision 026173008d0d963628475bb6c9caa53d040cea7c)
+++ src/services/guardianship/handshake.js	(revision ea211b9cdb42e4c59da937c4c2ab5162251ce374)
@@ -428,7 +428,13 @@
             // the same way. Who proposed it rides along separately, for the
             // guardian's screen.
+            // Zou DIT antwoord het besluit afmaken (shaer-8vt)? De telling loopt
+            // hier, op de server van het kind, en nergens anders -- zonder dit
+            // veld kan een guardian elders onmogelijk weten dat hij de doorslag
+            // geeft. Een ja/nee en geen getal: zie isDecisive.
+            const p = gated.gatedProgress(site.slug, gs.feature);
             deps.deliverTo(site, g, {
               id: offerId, type: 'Offer', actor: me, to: [g], object: activity.object,
               'shaer:proposer': actor,
+              'shaer:decisive': gated.isDecisive(p.votes, p.need),
             }).catch(() => { /* the delivery queue retries */ });
           }
@@ -450,4 +456,7 @@
           proposer: (typeof activity['shaer:proposer'] === 'string' ? activity['shaer:proposer'] : actor),
           feature: gs.feature, value: gs.value,
+          // Ontbreekt het veld (een oudere server), dan WAARSCHUWEN we: niets
+          // zeggen terwijl je beslist is de gevaarlijke kant (shaer-8vt).
+          decisive: activity['shaer:decisive'] !== false,
         });
         notify(site.slug, { kind: 'gated_review', feature: gs.feature, value: gs.value, ward: gs.ward });
