Credential rotate decisions carry a required expiry
Refresh and exchange answers now type as ExpiringTokenSet, and a rotate decision requires tokenExpiresAt, so neither store has a no-expiry rule left to mutate: a NULL expiry can only be written by a revoke. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
32208cc8e2
commit
655fcc7d22
5 changed files with 15 additions and 14 deletions
|
|
@ -738,6 +738,7 @@ for (const { kind, live } of rigKinds) describe.skipIf(live && !adminUrl)(`manag
|
|||
kind: "rotate",
|
||||
accessTokenEncrypted: `A${n}`,
|
||||
refreshTokenEncrypted: `R${n}`,
|
||||
tokenExpiresAt: new Date(Date.now() + 3600_000).toISOString(),
|
||||
scopes: locked.scopes,
|
||||
updatedAt: new Date().toISOString(),
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in a new issue