Skip to content

In-product nudge: 'legacy detections — run Reclassify to enable instant threshold' #650

Description

@jss367

Context

#636's unreleased CHANGELOG correctly warns:

Legacy detections from prior versions are preserved but pre-filtered. Run "Reclassify" once per folder to regenerate them with the new raw storage if you want to take full advantage of low-threshold browsing.

But there's no in-product surface for this. For users with existing libraries, the headline feature (instant detector_confidence changes) will appear to do nothing — pre-migration detections were stored post-threshold, so lowering the threshold won't reveal new boxes for those photos. Users have to read the CHANGELOG to know they need to act.

Fix

A non-blocking banner / one-time card in Settings or on the Pipeline page:

N folders have legacy detections. Run Reclassify on these folders to enable instant threshold changes.

with a "Reclassify all legacy folders" action and a per-folder list.

Identification

A folder has legacy detections iff any of its photos has predictions with labels_fingerprint = 'legacy' (the migration sentinel, set in vireo/db.py around the predictions rewrite). That's the cheapest proxy and doesn't need a new column.

Alternative: stamp the migration timestamp on a meta table at install, then compare detector_runs.run_at < migration_ts.

Acceptance

After a fresh upgrade on a non-empty pre-#636 library, the user sees the nudge without reading the CHANGELOG, and clicking it queues a reclassify for the affected folders.

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