Research npm token renewal for CLI releases #279

Closed
opened 2026-05-11 02:02:14 +00:00 by barrettruth · 0 comments
Owner

Problem

The CLI release workflow publishes @barrettruth/delta through the Forgejo NPM_TOKEN Actions secret. The current npm token is short-lived and was created with an expiration date of 2026-06-09, so CLI publishing will fail unless we rotate or renew it before then.

Questions

  • Does npm support renewing an existing token, or must maintainers create a replacement token each time?
  • Can rotation be automated without introducing a more privileged long-lived credential?
  • Should SOPS be the source of truth for this token, with a sync step that updates the Forgejo Actions secret?
  • Should just release cli ... --tag check token age/expiry before pushing a release tag?

Acceptance criteria

  • Document the recommended renewal or rotation path.
  • Add any needed SOPS-to-Forgejo secret sync or manual runbook.
  • Add a release-time warning or preflight if manual rotation remains required.
  • Ensure no token values appear in Git, issues, logs, PR descriptions, or release artifacts.
## Problem The CLI release workflow publishes @barrettruth/delta through the Forgejo `NPM_TOKEN` Actions secret. The current npm token is short-lived and was created with an expiration date of 2026-06-09, so CLI publishing will fail unless we rotate or renew it before then. ## Questions - Does npm support renewing an existing token, or must maintainers create a replacement token each time? - Can rotation be automated without introducing a more privileged long-lived credential? - Should SOPS be the source of truth for this token, with a sync step that updates the Forgejo Actions secret? - Should `just release cli ... --tag` check token age/expiry before pushing a release tag? ## Acceptance criteria - Document the recommended renewal or rotation path. - Add any needed SOPS-to-Forgejo secret sync or manual runbook. - Add a release-time warning or preflight if manual rotation remains required. - Ensure no token values appear in Git, issues, logs, PR descriptions, or release artifacts.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
barrettruth/delta#279
No description provided.