Skip to content

feat(signing): ré-émission au renouvellement (#27) - #68

Merged
blafourcade merged 1 commit into
mainfrom
feat/renewal
Jul 22, 2026
Merged

feat(signing): ré-émission au renouvellement (#27)#68
blafourcade merged 1 commit into
mainfrom
feat/renewal

Conversation

@blafourcade

Copy link
Copy Markdown
Contributor

Ferme #27.

Mécanisme

La date d'émission = renewed_on du record s'il existe, sinon la date de première certification (commit d'ajout). Un renouvellement = un mainteneur fixe renewed_on (après re-certification) → nouvelle fenêtre de 1 an. Déterministe.

"Sans invalider l'ancien"

La ré-émission écrit un nouveau credential.jwt (nouvelle échéance). Une preuve déjà téléchargée garde son ancienne échéance et reste valide jusque-là — rien ne l'invalide.

Tests (+5, e2e)

resolveEmissionDate (défaut, priorité renewed_on, vide→fallback, absence→erreur, invalide→erreur). E2E : renewed_on 2027 sur une certif 2026 → validFrom 2027, validUntil 2028.

🤖 Generated with Claude Code

L'émission date depuis renewed_on du record s'il est présent, sinon la date de
première certification (commit d'ajout). Un renouvellement = maj de renewed_on ->
nouvelle fenêtre 1 an. Déterministe. Une preuve exportée garde son échéance et
reste valide jusque-là. +5 tests.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@blafourcade
blafourcade requested review from a team as code owners July 22, 2026 03:23
@blafourcade
blafourcade merged commit 4a7a3ca into main Jul 22, 2026
2 checks passed
@blafourcade
blafourcade deleted the feat/renewal branch July 22, 2026 03:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant