Skip to content

feat(performance): expose live monitoring and managed process attribution #951

Closed

Description

@Juliusolsson05

Part of #944; depends on #950 and #949.

Users need the same performance monitor in Settings and the ordinary command palette, without an environment variable or developer mode. Current pane stats only sample when the debug panel is open and perform repeated process-tree scans per visible pane, missing managed sessions outside the current layout.

Acceptance:

  • Settings → Performance and a normal Performance Monitor command open one shared live surface; preserve the existing command ID for saved bindings.
  • Overview shows main/renderer health, collection status and loss, approximate process RSS, CPU semantics, timestamps, and explicitly unavailable data.
  • A bounded process table includes all managed sessions (including detached sessions), Electron helpers and descendants, with shared-process attribution and PID reuse handling.
  • One cached process sampler owns CPU intervals and process topology, never overlaps scans, and does no scan work in UI getters.
  • Poll only while the monitor is mounted, with one request in flight and stable bounded charts/tables; support keyboard and screen-reader use.
  • Tests cover process attribution/reuse, passive cached reads, discovery in ordinary settings/commands, and polling teardown. Measure overhead and packaged behavior in stage 6.

Incidents, durable history, export and explicit recordings follow in the remaining stages of #944.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions