Skip to content

feat(tools): draw progress history as one panel per measure - #7455

Closed
ggkouujere-debug wants to merge 1 commit into
boykopovar:mainfrom
ggkouujere-debug:feat/tools-history-panels
Closed

ggkouujere-debug wants to merge 1 commit into
boykopovar:mainfrom
ggkouujere-debug:feat/tools-history-panels

Conversation

@ggkouujere-debug

Copy link
Copy Markdown

What

Redraws the progress history chart (tools/progress_history.py) as proposed in #6997:

  • One panel per measure (system library functions, GPU shader instructions) sharing the date axis, each with its own y-scale — the two unrelated measures no longer share one axis and the shader line is no longer flattened.
  • Same encoding in both panels: implemented as a solid line with fill, declared as a dashed line; the current percentage sits beside each panel's labels. Labels now say what they count ("System library functions", "GPU shader instructions").
  • The shader panel draws the declared total from tools/rdna_isa.txt (the same total the progress page uses) — previously only the implemented count was drawn, hiding that shaders are at 1166/1166.
  • Horizontal date labels that thin out as history grows (no more 60° rotation); every day gets a hover tooltip via an invisible rect (previously tooltips existed only for series up to 45 points).
  • Incorporates fix(progress_history): label axis dates on calendar days #6574's calendar-day label fix (labels walk every calendar day, not just days with commits) so the rewrite does not regress it; fix(progress_history): label axis dates on calendar days #6574's test is included.

Tested

  • New test_chart_shows_a_declared_total_per_panel: two panels, one dashed declared line per panel, percentage labels.
  • Updated test_long_series_keeps_the_chart_readable: no rotated labels; dots only for short series; one hover tooltip per day at every length.
  • test_axis_labels_fall_on_calendar_days_without_commits (from fix(progress_history): label axis dates on calendar days #6574) passes.
  • Rendered SVG validated as well-formed XML; geometry sanity-checked (independent panel scales, right-label de-collision at ~100%).
  • Full tools/tests suite: 559 tests pass (22 pre-existing platform skips).
  • python3 tools/check_conventions.py --base origin/main: pass.

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source
  • Generic behaviour, not specific to one title
  • Depends on: none
  • Fixes: tools: progress history chart has no shader instruction total #6997
  • Unblocks: none
  • GPUs tested: n/a
  • AI-assisted: yes

@github-actions github-actions Bot added the open PR limit Closed over the open PR limit: 1 without merged PRs, 20 with at least 1, none from 20 label Oct 18, 2026
@github-actions

Copy link
Copy Markdown

Thank you for your contribution! Authors with no pull requests merged into main can have 1 open pull request at a time, authors with at least 1 merged can have 20, and from 20 merged there is no limit. This PR has been automatically closed and labeled "open PR limit" because that limit was reached. This is not a judgment of the quality of your changes: reopen it once one of your open pull requests is merged or closed.

@github-actions github-actions Bot closed this Oct 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

open PR limit Closed over the open PR limit: 1 without merged PRs, 20 with at least 1, none from 20

Projects

None yet

Development

Successfully merging this pull request may close these issues.

tools: progress history chart has no shader instruction total

1 participant