Skip to content

Rotate FIGMA_TOKEN before it expires on 2026-10-20 #259

Description

@yschimke

The FIGMA_TOKEN repo secret (created 2026-07-22, 90-day expiry) expires on
2026-10-20
. Rotate it on or before 2026-10-13 — a week ahead.

Why this needs a reminder

When it lapses the failure is easy to misread: everything else in
design-parity.yml keeps working, and only the figma-sourced entries in
design-map.json fail to resolve. The claude-design entries still render from
their committed HTML, so the run looks mostly healthy.

Currently affected entries (see design-map.json):

  • ChatBodyPreviews.kt#ContactChatPreview
  • ChatBodyPreviews.kt#ChannelChatPreview
  • ChatBodyPreviews.kt#CommandsPreview
  • DeviceSettingsBodyPreviews.kt#DeviceSettingsPreview
  • (plus CachedDeviceBodyPreview, once its node id lands)

How to rotate

  1. https://www.figma.com/settings -> Security -> Personal access tokens ->
    Generate new token.
  2. Scope: file_content:read only. That one scope covers both calls
    @design-parity/adapter-figma makes -- GET /v1/files/:key/nodes and
    GET /v1/images. file_metadata:read is optional and only makes failures
    more legible.
    • Do not add write scopes. A Figma PAT is scoped to the whole account,
      not to one file, so it already inherits access to every file the owner can
      see; write scopes would let a headless job mutate the design source it is
      supposed to be judged against.
    • file_variables:read will not be offered -- the Variables REST API is
      Enterprise-only and this is a Pro team. That is expected and harmless: the
      adapter degrades to structure-only tokens, and spec tokens come from each
      entry's tokensFile (design/meshcore.tokens.json), not from Figma.
  3. Set a fresh expiry (90 days) rather than "no expiration".
  4. Update the secret:
    https://github.com/yschimke/meshcore-mobile/settings/secrets/actions
  5. Re-run the Design parity artifacts workflow and confirm the figma:
    entries resolve.
  6. Open the next rotation reminder issue with the new date.

Verify it worked

curl -H "X-Figma-Token: $FIGMA_TOKEN" \
  "https://api.figma.com/v1/files/gYzowY4cQ7rNr2gYoco1M6/nodes?ids=73:5" | head -c 200

A 403 means the token is wrong or unscoped; a JSON body with a nodes key
means it works.

Context: docs/design-parity.md, "The Figma file (design-led references)".

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions