Skip to content

ci: jobs fail with 'FlakeHub registration required' authentication error (clippy-lint observed on #1806, #1820) #2120

Closed

Description

@dezren39

Problem

CI jobs are failing with a FlakeHub authentication error that has nothing to do with the code under test:

FlakeHub registration required. Unable to authenticate to FlakeHub. Individuals must register at FlakeHub.com; Organizations must create an organization at FlakeHub.com.

Evidence (2026-10-29, two independent PRs)

In both cases gh run rerun --failed is refused while the workflow run still has queued jobs, so the failure cannot be cleared promptly, and queue-worker tasks for #807 and #800 are parked on it.

Impact

Any PR whose clippy-lint job hits this cannot go fully green, which blocks merge-under-green-checks for the fleet even when the change itself is verified by every other check.

Acceptance

  • The cause is identified (FlakeHub cache/auth configuration in the workflow, org registration state, or a Determinate/FlakeHub change) and recorded here.
  • CI no longer fails jobs with the FlakeHub authentication error — either the cache is authenticated/registered correctly, or the workflows stop depending on FlakeHub where it is not required.
  • A re-run of a previously affected PR's clippy-lint job passes (or fails only on a real code finding).

Filed by the repo queue worker (lane A shift, 2026-10-29) after observing the same failure on two unrelated PRs in one shift.

Acceptance criteria

  • The cause is identified (FlakeHub cache/auth configuration in the workflow, org registration state, or a Determinate/FlakeHub change) and recorded on this issue.
  • CI no longer fails jobs with the FlakeHub authentication error — either the cache is authenticated/registered correctly, or the workflows stop depending on FlakeHub where it is not required.
  • A re-run of a previously affected PR's clippy-lint job passes (or fails only on a real code finding).

Activity

  1. developing-today commented on Oct 29, 2026

    @developing-today
    Contributor
  2. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    Additional evidence (queue worker lane A, 2026-10-29 ~05:55Z): on PR #1820 run 40810482013, two more jobs have now failed with the identical FlakeHub authentication annotation — nix flake check (cargo-fmt-check) (job 123254382184) and nix flake check (treefmt-check) (job 123254382213) — alongside the earlier clippy-lint failure. No code-level failure annotation exists on any of them; the separate treefmt check and cargo-check-family checks that did run passed. The failure is spreading across job types as the run drains its queue, which points at the FlakeHub cache/auth step rather than any single job's setup.

  3. added
    kind/ciCI/CD pipelines, workflows, and build automation
    source/queue-workerFiled or worked by the queue/worker pilot
    priority/highImportant and time-sensitive
    effort/mMedium: expected under 1 day of work
    area/ciCI/CD pipelines, workflows, and build automation (area)
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Oct 29, 2026
  4. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    Intake review

    🤖 Fleet monitor intake enrichment, 2026-10-29. Acceptance criteria appended to the body (original preserved verbatim above it); labels normalized.

  5. dezren39 commented on Oct 30, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · done

    • Agent: queue worker Lane C (repo-worker-code)
    • Session / ID: queue task 3133 (triage), shift 2026-10-29 21:14 CDT
    • Found via: queue claim
    • Task: Root-caused the FlakeHub registration failures from the failing jobs' own logs; fix enqueued as queue task 3761.
    • Expectation: done — implementation is task 3761.
    • Links: queue task 3761

    Cause (from run 40804099293, job 123242262922, 2026-10-29T04:35Z)

    The job's log names it directly:

    1. Installer step: "FlakeHub is disabled because the workflow is misconfigured. Please make sure that id-token: write and contents: read are set for this step's (or job's) permissions so that GitHub Actions provides OIDC token endpoints."
    2. magic-nix-cache step: "FlakeHub Cache is disabled due to missing or invalid token", then "Enabling FlakeHub cache because determinate-nixd is available", then the hard error: "Unable to authenticate to FlakeHub. Individuals must register at FlakeHub.com; Organizations must create an organization at FlakeHub.com."

    Verified at HEAD: all four workflows using DeterminateSystems/magic-nix-cache-action v15 declare only contents: read — id-check.yml:65, id-bench.yml:31, id-e2e-nightly.yml:21, mcpx-nixbuild.yml:35 — none grants id-token: write. So the cache action cannot OIDC-authenticate, yet still tries FlakeHub (because determinate-nixd is present) and fails the job in a setup step that has nothing to do with the code under test. It is not clippy-specific: run 40810482013 (PR #1820) failed the same way in the cargo-fmt/treefmt/clippy/rustfmt jobs on a later attempt; which jobs trip it is timing/cache-path dependent.

    Fix routes (in task 3761)

    • Preferred, no external dependency: configure magic-nix-cache-action to skip FlakeHub (GitHub Actions cache only) in the four workflows.
    • Alternative: add id-token: write — only sufficient if the developing-today organization is actually registered on FlakeHub, which the error text suggests it is not; registering an org is an admin action, not a worker PR.
  6. removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Oct 30, 2026
  7. 18 remaining items

  8. added
    status/parkedDeliberately paused with a recorded resume condition
    on Oct 30, 2026
  9. dezren39 commented on Oct 30, 2026

    @dezren39
    MemberAuthor

    🤖 Correction (Lane D, task 3761): the timestamps in my parked note above (04:02Z / 04:04Z) were mis-stated — the CI check and park actually happened at 2026-10-30T03:44–03:46Z (park not_before 04:06Z confirms). The check counts themselves (7 SUCCESS / 31 QUEUED) are from the live PR read. — queue worker Lane D

  10. added
    queue/claimedQueue worker lifecycle state
    and removed
    status/parkedDeliberately paused with a recorded resume condition
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    on Oct 30, 2026
  11. dezren39 commented on Oct 30, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked (merge queued)

  12. added
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    status/parkedDeliberately paused with a recorded resume condition
    and removed
    queue/claimedQueue worker lifecycle state
    status/parkedDeliberately paused with a recorded resume condition
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    work/assignedQueue worker lifecycle state
    on Oct 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area/ciCI/CD pipelines, workflows, and build automation (area)effort/mMedium: expected under 1 day of workkind/ciCI/CD pipelines, workflows, and build automationmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/highImportant and time-sensitivesource/queue-workerFiled or worked by the queue/worker pilot

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions