Skip to content

Move platform activity probes off the hot path #49

Description

@Today20092

Parent

#45

What to build

Keep operating-system activity probes off the five-second tracking hot path. Preserve native Windows behavior while macOS and X11 publish cached activity samples from a bounded worker that exists only while Resolve runs.

Acceptance criteria

  • Windows activity remains native and is available to each Tracking Observation without child processes.
  • macOS and X11 activity sampling runs at most once every fifteen seconds while Resolve is present.
  • Repeated five-second Tracking Observations read immutable cached activity and spawn zero child processes.
  • Resolve absence stops activity sampling completely.
  • Missing utilities, permission denial, malformed output, timeout, missing display access, and Wayland produce an explicit unavailable state.
  • Unavailable activity pauses billable transitions and never assumes Active Work.
  • No PyObjC, custom X11 binding, WMI, or new watcher dependency is added.

Working branch

feature/zero-idle-tracking

Blocked by

Metadata

Metadata

Assignees

No one assigned

    Labels

    ready-for-agentFully specified and ready for an AFK agent

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions