Skip to content

Visualize confidence and urgency on the graph view #84

@smorchj

Description

@smorchj

Context

The learning model (#80, #81) produces two per-node scores: `confidence` (repetition-driven, how load-bearing a folder is) and `urgency` (emotion-driven, how recently something went wrong there). This issue renders both on the graph so you can see the health of the routing at a glance.

Visual encoding

  • Confidence → node size and opacity. High confidence = bigger, more opaque. Low confidence = small, faded. Gives the graph a "weight map" look where the important folders are visually prominent.
  • Urgency → node border color and thickness. High urgency = thick red border. Mid = orange. Low or zero = default stroke. Urgency decays naturally so the graph drifts back to calm over time.
  • Confidence + urgency together → a small load-bearing folder with recent urgency looks like a big glowing red dot and draws the eye immediately. A low-confidence calm folder fades into the background. This is the whole point of the encoding.

Implementation

  • GraphView reads `learningState` from a new store (populated from `.klonode/learning.json` after each post-session run).
  • Rendering already passes a stroke + fill per node; add `confidence` and `urgency` as inputs to the existing color/size computation.
  • No new components needed. Pure CSS/inline style adjustments on the existing svg rects.
  • TreeView gets the same treatment but lighter (confidence dot, urgency left-edge bar).

Legend

Top bar or graph overlay: small legend chip explaining what size and border color mean. Collapsible.

Out of scope

  • Interactive score explanation ("why is this folder urgent?"). Nice to have but filed separately once the suggestions panel is in — the panel already explains why.
  • Animation on score transitions. Static is fine.

Dependencies

Blocked by #80 and #81 for the data. Independent of the suggestions panel (#83) and session-end trigger (#82).

Part of the #77 pivot roadmap.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions