Fix: archived-check shows "unknown" for unreachable repos, not silence - #198
Closed
clickmatos wants to merge 1 commit into
Closed
Fix: archived-check shows "unknown" for unreachable repos, not silence#198clickmatos wants to merge 1 commit into
clickmatos wants to merge 1 commit into
Conversation
…ived checks Reported: maestro-frontend is archived on GitHub but the repos page showed no badge for it, reading as "confirmed not archived" — it's actually private, and the session's GitHub OAuth scope has no `repo` grant, so the archived check 404s and correctly returns null (unknown) for it. The bug was purely in the UI: null and false both rendered as "no badge," indistinguishable to anyone looking at the list. 99% of RocketBus's own repos are private (945/948), so this wasn't an edge case — it's the common case for real orgs using this feature. Now a checked-but-unreachable repo gets a distinct "unknown" tag with a tooltip explaining why, instead of silently looking identical to "confirmed not archived". Co-Authored-By: claude-code_2-1-238_agent <claude-code_2-1-238_agent@iris.invalid>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
4 tasks
Contributor
Author
|
Superada pela #199, que remove o recurso de checagem de arquivados por completo (99% dos repos da RocketBus são privados, tornando a checagem pouco útil na prática sem ampliar o escopo do OAuth). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Reported: maestro-frontend is archived on GitHub, but the /repos page showed no badge for it — reading as "confirmed not archived." Confirmed the real cause: it's private (
gh repo view RocketBus/maestro-frontend→isArchived: true, visibility: PRIVATE), and the session's GitHub OAuth scope has norepogrant (onlyread:user user:email read:org, per #196), so the archived check 404s for it and correctly returnsnull(unknown) — notfalse.The bug was purely in the UI:
nullandfalseboth rendered as "no badge," making "confirmed not archived" and "couldn't check" visually identical.This isn't an edge case for RocketBus: 945 of 948 repos (99%) are private. The archived-check feature as shipped in #196 only works for the ~3 public repos — every private repo silently looked "not archived" even when checked.
Fix (this PR)
A checked repo that came back
nullnow gets a distinct "unknown" tag with a tooltip explaining why, instead of rendering identically to "confirmed not archived."Bigger question (not fixed here — flagging for a decision)
Given 99% of real repos are private, the underlying feature is close to non-functional without broader access. Options if this is worth pursuing further:
repoOAuth scope at login (re-consent flow for existing users, larger security surface — this is exactly the tradeoff flagged and deferred when Add stale + archived filters to the /repos dashboard page #196 was scoped).Not deciding this here — this PR only fixes the misleading UI for the current (public-repos-only) design.
Test plan
npx tsc --noEmit— cleannpx eslint— cleannpx vitest run— 269 passednpm run build— compiles successfullygh repo viewthat maestro-frontend is archived + private, matching the root-cause explanation🤖 Generated with Claude Code