Skip to content

Feature: quickfiler-high-confidence-filter #169

Description

@drmoisan

@

Summary

Add a high-confidence entry point to QuickFiler that shows only emails whose top suggested destination folder has a probability at or above a configurable threshold (default 90%). Emails with no suggestion above the threshold are excluded from the view. Intent: clear the inbox of high-confidence, known-destination items so the user can focus on ambiguous ones.

Approach (selected: least rework)

Folder probabilities are computed lazily per-email after the QuickFiler window is shown (in LoadSecondaryAsync), not at data-load time. The least-rework solution is therefore an alternative entry point plus a post-scoring removal pass, rather than a datamodel-stage filter or an in-GUI toggle.

  • New ribbon button ("QuickFiler — High Confidence") launches QuickFiler in high-confidence mode.
  • After per-item scoring completes (LoadSecondaryAsync), item groups whose top folder score is below round(threshold * 1000) are removed from the view on the UI thread.
  • Threshold is a persisted user setting (default 0.90) with an enable flag, plus a runtime input control to change the percentage.

Scope of changes (per research)

  • UtilitiesCS/OutlookObjects/Folder/FolderScorer.cs — add TopScore().
  • UtilitiesCS/Interfaces/IGlobals/IAppQuickFilerSettings.cs + TaskMaster/AppGlobals/AppQuickFilerSettings.cs + TaskMaster/Properties/Settings.settings + Settings.Designer.cs — add HighConfidenceModeEnabled (bool, default false) and HighConfidenceThreshold (double, default 0.9).
  • QuickFiler/Interfaces/IQfcCollectionController.cs + QuickFiler/Controllers/QfcCollectionController.cs — add RemoveBelowThresholdAsync(double).
  • QuickFiler/Controllers/QfcFormController.cs — conditional removal call after LoadSecondaryAsync.
  • TaskMaster/Ribbon/RibbonController.cs, RibbonViewer.cs, RibbonExplorer.xml — new entry point button, threshold input control, enable toggle.

Acceptance criteria

  1. A new QuickFiler entry point launches QuickFiler in high-confidence mode.
  2. When high-confidence mode is enabled, emails whose top suggested folder probability is below the configured threshold are not shown in the view.
  3. Emails with no folder suggestion above the threshold (including none at all) are excluded.
  4. The default threshold is 90% (0.90) and is persisted as a user setting.
  5. The threshold percentage is changeable at runtime via a ribbon input control, with validation, and persists across sessions.
  6. With high-confidence mode disabled, QuickFiler behaves exactly as today (no filtering).
  7. New/changed logic is covered by MSTest + Moq + FluentAssertions tests; toolchain (CSharpier, analyzers, nullable, MSTest) passes.

Notes / known limitations

  • First iteration applies the filter to the initial loaded batch (consistent with current batch-1 scope); re-application across later background batches is out of scope for v1.
  • Research artifact: artifacts/research/2026-06-01-quickfiler-probability-filter-research.md.
    @

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureFeature request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions