Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Community metrics can silently go stale: updatedAt is never rendered and a failed fetch keeps old numbers

未关闭
#327 0 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

维护者通常 1 天内回复

@IanoNjuguna 已经在做这个了。

开始于 2026年10月14日。

  • #330 来自 @IanoNjuguna —— 未关闭

评估

这个 Issue 还没有评估数据。

描述

enhancement

Problem

website/src/data/githubData.json drives the homepage community metrics. It is regenerated at build time by scripts/fetch-github-data.js (npm prebuild), and two things make it impossible to tell fresh data from months-old data:

  1. A failed fetch keeps the old numbers. The script reads the existing file first and preserves contributors and stats; if the API call then fails, it writes the preserved values back and only refreshes updatedAt. The payload is written unconditionally at the end.
  2. Nothing renders updatedAt. grep -rn "updatedAt" website/src returns no matches. Contributors.tsx:12 reads contributors; MonthlyPulse.tsx:7-9 reads stats. The timestamp is written, committed, and then never shown.

Evidence (2026-10-14)

  • Committed snapshot: updatedAt 2026-08-01, mergedPRs 136 / openIssues 12 / closedIssues 56.
  • A fetch run today: 162 / 9 / 77.

Those two states render identically to a visitor. If a fetch fails — rate limiting on an unauthenticated build (local builds here inject 0 env vars, no GITHUB_TOKEN), network hiccup, expired token — the site ships the older numbers with no marker.

Impact

  • Visitors cannot judge how current the metrics are.
  • Maintainers have no signal that a build silently fell back to a previous snapshot; the site keeps looking healthy.
  • The snapshot in the repo is already ~10 weeks old, so the fallback path is a real, not theoretical, state.

Suggested fix

Either or both:

  • Render updatedAt in MonthlyPulse as a "data as of …" line.
  • Fail (or warn loudly in the build log) when the fetch falls back to the previous snapshot, or when updatedAt is older than a threshold such as 7 days.

Notes

Independent of the font-loading work in #325. Raised while auditing what writes githubData.json, since npm run build / npm start rewrite that file on every run.

Related: #326 — the same fetch script can render automation accounts as contributors.

主要语言
TypeScript
星标
13
派生
22
平均合并
2 天 4 小时
30 天内合并 PR
13

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

IntersectMBO/developer-experience 的其他 Issue

查看 IntersectMBO/developer-experience 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。