Prune managed-voice daily counters after 90 days
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 45/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- typescript
- Domaine
- backend, databases, documentation
Piste de recherche
Read hosted/server/runtime-roles.sql and the "Managed voice" section in docs/specs/hosted.md to understand the runtime permissions and history-sweep constraint; then inspect the voice Worker's speak-request transaction and scheduled-job entry points. Choose between the two approaches described in the issue, prune dormouse_voice_usage rows older than 90 days, and update the retention sentence in website/src/pages/Privacy.tsx; done means pruning is implemented and the policy states the 90-day bound.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
dormouse_voice_usage keeps one (userId, day, count) row per subscriber per UTC day, and nothing deletes them before account deletion. The fair-use cap only reads today's row, so older rows serve no purpose. Keeping them indefinitely is a GDPR storage-limitation weak spot, and it makes the Privacy policy's retention sentence longer than it needs to be.
Prune rows older than 90 days. The voice Worker's runtime role has no DELETE grant (hosted/server/runtime-roles.sql), and docs/specs/hosted.md → "Managed voice" keeps the history-sweep cron off the database, so choose between:
- a
DELETEgrant plus pruning that piggybacks on the speak request's existing transaction, or - a separate scheduled job that runs as the migration role.
When this lands, change "Account-linked daily voice counters currently remain until account deletion" in website/src/pages/Privacy.tsx → "Storage, retention, and security" to the new bound.
- Langage dominant
- TypeScript
- Étoiles
- 5
- Forks
- 1
- Merge moyen
- 12 h 19 min
- PR mergées (30 j)
- 442
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de diffplug/dormouse
-
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
diffplug/dormouse#912 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 1-2 jours Accessibilité débutants 25/100
diffplug/dormouse#1235 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 1-2 jours Accessibilité débutants 48/100
diffplug/dormouse#1234 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
security
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 18/100
diffplug/dormouse#1194 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement security
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
diffplug/dormouse#1166 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de diffplug/dormouse
Issues similaires
-
area:editor bug issue-form:bug P0 platform:windows review: low
Difficulté 2/5 1-3 heures Accessibilité débutants 64/100
1lck/Lithe-IDEA#1388 ·
Les mainteneurs répondent en général sous 1 jour
-
fix(api): isToolAuditEnabled swallows database read errors on auditToolOperations without loggingOuvertearea: backend bug priority: low
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
snapotter-hq/SnapOtter#3238 ·
Les mainteneurs répondent en général sous 1 jour
-
rig up --plan times out after 5 s and reports an UNKNOWN outcome while the daemon completes the planOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
filesystem: search_files does not expand non-wildcard excludePatterns like directory_tree doesOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
modelcontextprotocol/servers#5216 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 1 jour