Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

[BUG]: Analytics page keeps the previous organization's pull request data after exploring a new org

Ouverte Adaptée aux débutants
#272 5 commentaires 0 réactions 1 personne assignée Voir sur GitHub

Les mainteneurs répondent en général sous 4 jours

@amanbn8 y travaille déjà.

Depuis le 1/10/2026.

  • #279 par @amanbn8 — ouverte

Évaluation

Difficulté
1/5
Temps estimé
Moins d'une heure
Accessibilité débutants
90/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
javascript
Domaine
frontend

Piste de recherche

Commencez dans src/context/AppContext.jsx et examinez le bloc de réinitialisation dans explore(), où model, organizations et issuesData sont effacés. Vérifiez que l’état de pull request est également effacé lors du changement d’organisation. Vérifiez-le en reproduisant le flux de AOSSIE-Org vers DjedAlliance sans PAT : Advanced Analytics devrait être vide et proposer « Collect Advanced Metrics », et les anciennes valeurs ne devraient pas réapparaître après un rechargement.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug
Bug Description

When you explore a new organization, explore() in src/context/AppContext.jsx resets the model, the org list and issuesData, but it never resets pullsData. Whatever pull request data was collected for the previous organization stays in state and is shown under the new one.

On the Analytics page this means:

  • The "Average PR Merge Time" and "Pull Request Acceptance Rate" cards show the previous org's numbers.
  • The repository dropdown in the Advanced Analytics section still lists the previous org's repositories.
  • Because hasPullsData is true, the "Collect Advanced Metrics" button is hidden. Without a PAT there is then no way to fetch pull data for the new org, since the banner's "Run Complete Analysis" needs a PAT.

The persist effect also writes the stale pullsData into the analysis cache together with the new org, so the wrong data comes back after a reload.

The reset block at the top of explore() is currently:

setLoading(true);
setError('');
setModel(null);
setOrgs([]);
setIssuesData({});
setLastOrgNames(orgNames);
setAuditComplete(false);
setAdvanceAnalyticsComplete(false);

There is no setPullsData({}). pullsData is only written by runAdvanceAnalytics, runFullAnalytics and the cache restore effect, so nothing else clears it either.

Steps to Reproduce
  1. With no PAT configured, explore AOSSIE-Org from the Quick explore buttons.
  2. Open Analytics and click "Collect Advanced Metrics". Wait for the merge time and acceptance rate cards to appear.
  3. Go back to Home and explore DjedAlliance.
  4. Open Analytics again.

Expected: the Advanced Analytics section is empty and offers "Collect Advanced Metrics" for DjedAlliance.

Actual: the Overview page correctly shows Djed Alliance with 35 repos, but the Analytics page still shows AOSSIE-Org's data. The repository dropdown lists Website, EduAid, Resonate, PictoPy, DebateAI, Agora-Blockchain, InPactAI, Devr.AI, Resonate-Website and BabyNest (all AOSSIE-Org repos), the cards read "14.2 Days" average merge time and "49.6 %" acceptance based on 273 merged / 277 rejected AOSSIE-Org pull requests, and the "Collect Advanced Metrics" button is gone. Reloading the page brings the same stale numbers back from the cache.

Logs and Screenshots

No console errors, the stale data just renders.

Environment Details
  • main at 95a980d, npm run dev
  • Chromium on macOS, no PAT configured
Impact

High - Major feature is broken

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

The fix looks like a one-liner: add setPullsData({}) to the reset block in explore(). I'd be happy to open a PR for it if this is confirmed.

Langage dominant
JavaScript
Étoiles
45
Forks
148
Merge moyen
5 j 14 h
PR mergées (30 j)
30

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de AOSSIE-Org/OrgExplorer

Toutes les issues de AOSSIE-Org/OrgExplorer

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.