Ga naar inhoud

Anonimiteit & retentie

Anonimiteit is de kernbelofte van I See You: een vraag wordt alleen aan de geselecteerde opiniegevers getoond — een via Beheer instelbaar aantal — en bestaat slechts tijdelijk. Deze pagina beschrijft de cleanup-cyclus die dat afdwingt — niet als bijzaak achteraf, maar als een eersteklas regel van het Retentiebeleid. Zie ook de termen Anonimiteit en Retentiebeleid.

We volgen drie gelijktijdige situaties die door dezelfde cleanup-cyclus worden afgehandeld.

  1. Sanne (geregistreerd) neemt een video van maximaal 10 seconden (mag korter) op en legt die als Vraag voor. Ze heeft een account (een Gebruiker), een Profiel, een credits-saldo en waarderingsstatistieken.
  2. Een anonieme bezoeker stelt een vraag met een foto. Voor de matching ontstaat een AnoniemeGebruiker met een minimaal profiel (leeftijd, gender, achtergrond); de foto wordt als Vraag opgeslagen.
  3. De camera-flow maakt onderweg een tijdelijke upload aan (de rauwe opname voordat die een definitieve Vraag wordt).

De cleanup-cyclus draait periodiek op de achtergrond en past het Retentiebeleid toe:

  1. Tijdelijke uploads die ouder zijn dan 10 minuten worden verwijderd (de opname is dan ofwel een Vraag geworden, ofwel achtergelaten).
  2. Vragen (de opnames) blijven na afronding (isBeoordeeld()) nog een begrensd resultaat-retentievenster bestaan zodat de maker het resultaat + de opname kan terugzien; daarna worden ze altijd verwijderd — direct wanneer de maker zelf op “verwijder opname” klikt, of automatisch zodra resultaatRetentieUren (instelbaar, standaard 168 = 7 dagen na beoordeeldOp) verstrijkt — ongeacht het media-type (Video/Foto) en ongeacht of de maker geregistreerd is. Een via Beheer instelbare veiligheids-timeout (veiligheidsTimeoutMin) ruimt daarnaast vragen op die nooit afgerond raken. Een eventueel achtergelaten uitslagnotificatie-adres (notificatieEmail) is dan al lang weg: het wordt direct na de verzendpoging — bij het zetten van beoordeeldOp — gewist, dus er blijft geen mailinglijst achter, en het zou hoe dan ook met de vraag verdwijnen.
  3. Sessies waarvan lastActivity langer dan het inactiviteitsvenster geleden is, worden opgeruimd.
  4. Anonieme gebruikers worden opgeruimd zodra hun bijbehorende vraag verdwijnt. (Zolang de anonieme sessie leeft, kan ook een anonieme maker zijn resultaat terugzien.)
  5. Geregistreerde gegevens — de Gebruiker zelf, haar credits, haar waarderingsstatistieken en Berichten — blijven behouden. Alleen de opname (Vraag) van Sanne verdwijnt, niet haar account.

Het netto-effect: een opname bestaat na afronding nog precies zo lang als de maker nodig heeft om het resultaat te bekijken — begrensd door het resultaat-retentievenster — en daarna bestaat er van die opname geen spoor meer (de veiligheids-timeout sluit ook nooit-afgeronde vragen af), terwijl geregistreerde gebruikers hun credits, waarderingsstatistieken en berichten houden.

Geen locatie-tracking nodig. Er is geen Land-veld meer (per 2026-07-11m, ADR-037) — er is geen GeoIP, geen IP-detectie en geen automatische locatiebepaling. Alleen een optioneel gekozen regio wordt opgeslagen; het IP-adres is voor locatie nooit nodig. Zie Bounded context Gebruiker & Toegang.

#BeslissingMotivatie
1Opnames worden ALTIJD verwijderd, ongeacht gebruikerstype of media-type.Anonimiteit is een belofte die niet afhangt van wie de maker is; een Video en een Foto volgen exact hetzelfde retentieregime. Alleen het moment is verschoven: uiterlijk aan het einde van het resultaat-retentievenster.
2Na afronding een begrensd resultaat-retentievenster, daarna automatisch verwijderd (resultaatRetentieUren); de maker kan ook zelf eerder verwijderen; een instelbare veiligheids-timeout (veiligheidsTimeoutMin) vangt nooit-afgeronde vragen op.De maker moet zijn resultaat + opname kunnen terugzien, maar er vormt zich geen blijvend beeldarchief: het venster is kort en begrensd, en verwijderen is gegarandeerd.
3Tijdelijke uploads verlopen al na 10 minuten.De rauwe opname vóór bevestiging hoeft niet zo lang te bestaan als een actieve vraag; eerder opruimen verkleint het privacy-venster.
4Gebruikerstype bepaalt wat blijft. Geregistreerd → gebruikers en berichten blijven; anoniem → data verdwijnt.Een account heeft een legitieme reden om te blijven (credits, waarderingsstatistieken, berichten); anonieme deelname laat geen restdata achter.
5Anonieme gebruiker is gekoppeld aan zijn vraag en verdwijnt mee.Het minimale profiel bestaat alleen om matching mogelijk te maken; zonder vraag heeft het geen bestaansrecht.
6Sessies worden opgeruimd bij inactiviteit (single-device).Verlopen logins horen niet eindeloos te blijven staan; sluit aan op het inactiviteitsvenster en de single-device-regel.
7Cleanup is een expliciet, periodiek beleid (Retentiebeleid), geen toevallig neveneffect.Verwijderen is een eersteklas domeinregel — privacy by design in plaats van best-effort.
8(vervallen per 2026-07-11mADR-037) Het land was een keuze, geen meting; de gebruiker koos het land uit een keuzelijst.I See You wordt per land als aparte site gehost (NL eerst); een Land-veld binnen de applicatie was overbodig. Een optionele regio blijft, als vlakke keuzelijst.
9Uitslagnotificatie-adres eenmalig, daarna gewist. Een optioneel notificatieEmail wordt bij het zetten van beoordeeldOp gebruikt voor één seintje (alleen een link) en direct na de verzendpoging gewist.Dataminimalisatie: er blijft geen mailinglijst of herleidbaar adres achter. Het adres bestaat maar kort en verdwijnt hoe dan ook met de vraag; de mail bevat bovendien geen beoordelingsinhoud.
flowchart TD
    Start([Cleanup-cyclus draait periodiek]) --> Upload{Tijdelijke upload ouder dan 10 min?}
    Upload -->|Ja| DelUpload[Verwijder tijdelijke upload]
    Upload -->|Nee| Vraag
    DelUpload --> Beoordeeld{"Beoordeling klaar?"}
    Beoordeeld -->|Ja| Venster["beoordeeldOp gezet · maker kan resultaat + opname terugzien"]
    Beoordeeld -->|Nee| Sessie
    Venster --> Vraag{"Maker verwijdert zelf,<br/>resultaat-retentie verstreken,<br/>of veiligheids-timeout?"}
    Vraag -->|Ja| DelOpname[Verwijder opname ALTIJD]
    Vraag -->|Nee| Sessie
    DelOpname --> Type{Maker geregistreerd?}
    Type -->|Ja| Behoud[Behoud Gebruiker, credits, waarderingsstatistieken en Berichten]
    Type -->|Nee| DelTijdelijk[Verwijder AnoniemeGebruiker en data]
    Behoud --> Sessie
    DelTijdelijk --> Sessie{Sessie inactief?}
    Sessie -->|Ja| DelSessie[Ruim verlopen sessie op]
    Sessie -->|Nee| Eind
    DelSessie --> Eind([Geen opname-spoor; account behouden])
StapModelondersteuning
Opname bewaard na beoordeling, dan verwijderdVraag.isBeoordeeld() zet beoordeeldOp (opname blijft); Retentiebeleid.resultaatRetentieUren verwijdert daarna automatisch, de maker kan eerder zelf verwijderen, en veiligheidsTimeoutMin ruimt nooit-afgeronde vragen op. Zie Vraag, Resultaat-retentie en Retentiebeleid.
Tijdelijke upload verloopt na 10 minDe rauwe opname uit de camera-flow wordt opgeruimd vóórdat ze een definitieve Vraag is.
Opname wordt ALTIJD verwijderdGeldt voor beide waarden van MediaType (Video, Foto) en onafhankelijk van Vraag.makerIsGeregistreerd.
Geregistreerd: data blijftGebruiker (geregistreerd account) met zijn credits, waarderingsstatistieken en gekoppelde Berichten blijven behouden — alleen de Vraag verdwijnt.
Anoniem: data verdwijntAnoniemeGebruiker wordt opgeruimd zodra zijn Vraag verdwijnt; er blijft geen profiel achter.
Sessie opgeruimd bij inactiviteitSessie.lastActivity stuurt het periodiek opruimen van verlopen, single-device Sessies.
Geen landveldGeen Land-veld (per 2026-07-11m) — geen GeoIP. Alleen een optioneel gekozen regio wordt opgeslagen; er is geen IP-adres voor locatie nodig.
Notificatie-adres eenmaligVraag.notificatieEmail wordt bij het zetten van beoordeeldOp gebruikt voor één seintje via IUitslagNotificaties en daarna op null gezet; er blijft geen adres bewaard.
Cleanup als beleidRetentiebeleid (policy) in de Moderatie & Retentie-context bundelt resultaatRetentieUren, veiligheidsTimeoutMin en meldingenDrempel; de overige parameters (zoals onlineVensterMin) staan in de Systeeminstellingen. Zie domeinmodel.
Verwijderen via meldingenEen Vraag kan ook verdwijnen bij een via Beheer instelbaar aantal meldingen (standaard 3). Zie Melden → automatisch verwijderen.

Privacy by design. Retentie is niet iets dat de gebruiker moet aanvragen of dat het systeem “ooit nog eens” doet. Na afronding krijgt de maker een begrensd venster om resultaat + opname terug te zien; daarna dwingt de cleanup-cyclus verwijdering af — automatisch na resultaatRetentieUren, of eerder wanneer de maker zelf verwijdert — met een veiligheids-timeout als vangnet voor vragen die nooit afgerond raken. Het onderscheid geregistreerd vs. anoniem bepaalt enkel wat er rond een account mag blijven, nooit of de opname zelf blijft. De opname verdwijnt altijd.