Skip to content

Survey Repo App-token NBCs: token-expiry race & App-install assumption documentation #3349

@marcusrbrown

Description

@marcusrbrown

From PR #3347 Fro Bot review (two non-blocking concerns, both deferred from the main fix).

1. Token-expiry race (defensive)

The Mint App token for privacy gate step in .github/workflows/survey-repo.yaml runs once at job start with no if: guard. The recheck step then runs much later (after the survey agent finishes, which can take up to the 30-min job timeout). App installation tokens live ~1h, so today's worst case is well within the lifetime. But if survey timeouts ever climb past ~50 minutes, the recheck step could race the token expiry and fail with a misleading 401.

Fix shape (when worth doing): re-mint the token immediately before the recheck step, or move the mint to a second dedicated step gated on the same condition as recheck. Today's envelope doesn't need it.

2. App-install assumption documentation (cosmetic)

Four workflows now depend on APPLICATION_ID/APPLICATION_PRIVATE_KEY being installed on github.repository_owner (= fro-bot): update-metadata.yaml, dispatch-renovate.yaml, reconcile-repos.yaml, survey-repo.yaml. The dependency is settled in practice but undocumented.

Fix shape: add a single comment block somewhere central — update-metadata.yaml is the natural home as it was the first cross-org App-token consumer — that documents the App-install precondition.

Why deferred

PR #3347 was focused on closing the bfra-me cross-org survey block. Both NBCs are forward-looking polish that doesn't affect today's correctness. Appropriate as a single bounded follow-up.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions