Skip to content

Add member history tracking and enhance process detail view - #3

Merged
Danil-Didkovskiy merged 8 commits into
mainfrom
add-graph-members
Jun 18, 2026
Merged

Add member history tracking and enhance process detail view#3
Danil-Didkovskiy merged 8 commits into
mainfrom
add-graph-members

Conversation

@Danil-Didkovskiy

Copy link
Copy Markdown
Contributor

Previously, the process detail view showed a single CPU/Memory usage value for the current moment. This PR replaces it with a graph that tracks changes:

This makes the view more useful and easier to understand. When reviewing child processes, users can now see how much each process consumed at a specific tick.

The current implementation reuses existing graph components and data aggregation logic.

P.S. This is the final polish step before the 1.0.0 release.

@Danil-Didkovskiy Danil-Didkovskiy self-assigned this Jun 17, 2026
Copilot AI review requested due to automatic review settings June 17, 2026 19:23

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR upgrades the process detail view from a single “current value” readout to a time-series experience by retaining per-process history (CPU/memory totals) and per-tick member breakdowns, enabling accurate inspection of grouped processes at any historical tick.

Changes:

  • Added “picked” (click) vs “scrubbed” (hover) index behavior so clicking off-data can resume live, while hover continues to clamp.
  • Introduced selective sampling and storage of metric histories and per-tick group member breakdowns, with buffering while inspecting a pinned tick.
  • Updated process grouping behavior to list system daemons as normal singleton rows (no synthetic “System” bucket), and refreshed UI/graphs to support pinned tick inspection.

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/unit/sample-history.test.ts Adds unit coverage for click-pick vs hover-scrub index mapping.
tests/unit/process-list.test.ts Updates expectations for daemon grouping and adds tests for selective sampling + member breakdown sampling.
tests/unit/process-detail.test.ts Adds tests for ranking/rendering stored historical member breakdowns.
src/renderer/index.css Adds panel pin-in/out animations with reduced-motion support.
src/renderer/domain/sample-history.ts Adds pickedIndexAtFraction to distinguish click picking from hover scrubbing.
src/renderer/domain/process-list.ts Removes synthetic System bucket, adds member breakdown sampling and selective sampling APIs.
src/renderer/domain/process-detail.ts Adds rankMemberSamples for historical per-tick member list rendering; removes System-specific flag.
src/renderer/components/processes/use-process-histories.ts Stores aligned metric + member breakdown trails, buffers ticks while pinned inspection is active.
src/renderer/components/processes/use-process-actions.ts Simplifies action targeting now that there is no synthetic System group.
src/renderer/components/processes/process-row.tsx Removes System-icon special casing in row rendering/equality.
src/renderer/components/processes/process-icon.tsx Removes gear glyph path; uses the neutral fallback glyph consistently.
src/renderer/components/processes/process-explorer-view.tsx Wires inspection state into history freezing; passes member history + icon table to detail view.
src/renderer/components/processes/process-detail.tsx Implements pinned tick inspection UX and overlay members panel backed by historical member samples.
src/renderer/components/metrics/memory-graph.tsx Adds optional click-to-pick behavior and pinned-band styling.
src/renderer/components/metrics/cpu-graph.tsx Adds optional click-to-pick behavior and pinned-band styling.
src/renderer/components/metrics/area-layer.tsx Extends ScrubBand to visually distinguish pinned vs hover scrubs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Danil-Didkovskiy
Danil-Didkovskiy merged commit 230ceff into main Jun 18, 2026
3 checks passed
@Danil-Didkovskiy
Danil-Didkovskiy deleted the add-graph-members branch June 18, 2026 11:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants