Skip to content

[BUG]: Cache key ignores auth state, causing stale contributor data after adding PAT #228

Description

@amankv1234

Bug Description

fetchWithCache() in src/services/github.js caches responses using only the URL as key, ignoring pat. Since fetchContributors uses maxPages = pat ? 10 : 1, page=1 has the same URL whether authenticated or not. Once page=1 is cached without a PAT, adding a PAT later silently returns the old cached page=1 instead of re-fetching with auth. Affects fetchOrg, fetchRepos, fetchContributors, fetchIssues, fetchPulls.

Steps to Reproduce

  1. Without a PAT, explore an org (e.g. AOSSIE-Org) — caches page=1 contributors for each repo.
  2. Add a PAT in Settings, Save.
  3. Explore the same org again.
  4. In DevTools → Network, filter by a repo already explored in step 1 (e.g. "Website").
  5. page=1 shows no new request (served from cache); only page=2, page=3... appear as fresh requests.

Logs and Screenshots

async function fetchWithCache(url, pat) {
const cached = await cacheGet(url) // <-- pat ignored here
if (cached) return cached
...
const data = await res.json()
cacheSet(url, data) // <-- pat ignored here too
return data
}

Environment Details

No response

Impact

Critical - Application is unusable

Code of Conduct

  • I have joined the Discord server and will post updates there
  • I have searched existing issues to avoid duplicates

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions