Remaining CorrelationStrategies and agreement display #17

Closed
opened 2026-08-26 09:15:34 +00:00 by GKaszewski · 0 comments
Owner

What to build

Adds Pearson, Kendall, and the existing mean-difference method to the CorrelationStrategy enum from #15, and builds the display that makes having several worth anything.

Agreement across strategies is the headline, not any single coefficient. A correlation that survives Pearson, Spearman, and Kendall is robust. One that appears only under Pearson is telling you about an outlier or a non-linearity, not about the User's mood.

Presenting them as a menu to choose between would make the noise problem worse rather than better — a User scanning four numbers per metric for the strongest one is p-hacking through a UI. Disagreement between strategies is information, not a choice.

Mean difference joins the enum as the strategy for binary presence, which is what the existing Activity correlation already computes. It cannot be applied to a continuous metric, and a continuous coefficient cannot be applied to Activity presence — the strategy set must reflect which inputs each can score rather than pretending all four apply everywhere.

Acceptance criteria

  • Pearson, Kendall, and mean difference are implemented in the enum
  • The existing Activity correlation runs through the strategy machinery rather than as a separate path
  • All strategies return the same result shape
  • Each strategy declares which inputs it can score; incompatible pairings are not offered
  • Display leads with agreement across strategies, not with any one value
  • Strategies are not presented as a user-selectable setting
  • Ranking and significance badges remain absent

Blocked by

## What to build Adds Pearson, Kendall, and the existing mean-difference method to the `CorrelationStrategy` enum from #15, and builds the display that makes having several worth anything. **Agreement across strategies is the headline, not any single coefficient.** A correlation that survives Pearson, Spearman, and Kendall is robust. One that appears only under Pearson is telling you about an outlier or a non-linearity, not about the User's mood. Presenting them as a menu to choose between would make the noise problem worse rather than better — a User scanning four numbers per metric for the strongest one is p-hacking through a UI. Disagreement between strategies is information, not a choice. Mean difference joins the enum as the strategy for binary presence, which is what the existing Activity correlation already computes. It cannot be applied to a continuous metric, and a continuous coefficient cannot be applied to Activity presence — the strategy set must reflect which inputs each can score rather than pretending all four apply everywhere. ## Acceptance criteria - [ ] Pearson, Kendall, and mean difference are implemented in the enum - [ ] The existing Activity correlation runs through the strategy machinery rather than as a separate path - [ ] All strategies return the same result shape - [ ] Each strategy declares which inputs it can score; incompatible pairings are not offered - [ ] Display leads with agreement across strategies, not with any one value - [ ] Strategies are not presented as a user-selectable setting - [ ] Ranking and significance badges remain absent ## Blocked by - #15
GKaszewski added the ready-for-agent label 2026-08-26 09:15:35 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GKaszewski/k-mood#17