Skip to content

docs(adr): délai de grâce de suppression 30 → 14 jours (ADR-023)#275

Merged
thierryvm merged 1 commit into
mainfrom
docs/adr-023-suppression-compte
Jul 27, 2026
Merged

docs(adr): délai de grâce de suppression 30 → 14 jours (ADR-023)#275
thierryvm merged 1 commit into
mainfrom
docs/adr-023-suppression-compte

Conversation

@thierryvm

Copy link
Copy Markdown
Owner

Décision écrite ce soir, exécution demain

Doctrine du projet : une décision d'architecture ne se prend pas dans la même session que son implémentation. Cet ADR ne contient aucune ligne de code.

Ce que le contrôle de conformité a trouvé

L'art. 12(3) donne un mois pour répondre à une demande d'effacement. Le délai de grâce est de 30 jours : la suppression est donc programmée au bord exact de la limite. Une panne de cron, un long week-end, et on est hors délai.

Ni l'audit sécurité ni l'audit RGPD de cette nuit ne l'avaient vu — les deux lisaient du code, et c'est un problème de calendrier.

Aucune règle n'impose un délai de grâce. C'est une courtoisie produit. 14 jours laissent deux semaines de marge et ne coûtent rien que personne n'ait jamais réclamé.

L'alternative était de garder 30 jours en soutenant que la grâce n'est pas le délai de réponse. Défendable — mais c'est un argument à tenir devant une autorité, pas un problème résolu.

Pourquoi pas de code maintenant

Passer à 14 jours sans cron ne ferait qu'avancer la date d'une promesse toujours pas tenue. Le changement part avec l'étape 3b, qui liste ses sept chaînes i18n × 5 locales.

Trois trous non-code, consignés

  • Les sauvegardes survivent à la suppression, et rien ne le dit nulle part. C'est l'oubli le plus classique sur cette fonctionnalité.
  • Aucun canal pour confirmer l'effacement : l'app n'envoie aucun email, et une fois le compte supprimé la personne ne peut plus consulter l'écran de statut.
  • Les journaux Vercel et Supabase gardent des IP après coup.

Refermé

Art. 8 écarté@Thierry a confirmé que les trois titulaires de comptes tiers sont ses enfants majeurs. Consigné aussi au registre.

AIPD probablement non requise, avec le motif écrit. C'est la trace qui vaut accountability, pas l'absence d'AIPD.

The compliance check found what neither the security nor the GDPR audit saw,
because both read code and this is a calendar problem. Art. 12(3) gives one
month to answer an erasure request. The grace period is 30 days, so the erasure
is scheduled at the exact edge of the legal limit — one failed cron run, one
long weekend, and it lands late.

No rule requires a grace period at all; it is a product courtesy. Fourteen days
leaves two weeks of margin and costs nothing anyone has ever asked for. The
alternative was to keep 30 and argue that the grace window is not the response
window — defensible, but an argument to make to a regulator rather than a
problem solved.

Deliberately no code: doctrine is decision in session N, implementation in
session N+1. And the change only makes sense alongside the cron — moving to 14
days without an executor would just bring forward the date of a promise still
not kept.

Records three non-code gaps the same check surfaced: backups outlive the
deletion and nothing says so, the app has no email capability at all so there is
no channel to confirm an erasure to someone whose account no longer exists, and
subprocessor logs keep IPs after the fact.

Art. 8 is closed: @Thierry confirmed the three third-party account holders are
his adult children. Noted in the compliance record too.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 27, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
ankora Ready Ready Preview, Comment Jul 27, 2026 10:59am

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @thierryvm, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@github-actions github-actions Bot added status:review-needed Ready for review type:docs Documentation only labels Jul 27, 2026
@thierryvm
thierryvm merged commit 6148083 into main Jul 27, 2026
10 checks passed
@thierryvm
thierryvm deleted the docs/adr-023-suppression-compte branch July 27, 2026 11:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

status:review-needed Ready for review type:docs Documentation only

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant