Delete docs/pr-6853-performer-hover-preview-draft.md

Cursor overzealous.
This commit is contained in:
Stash-KennyG 2026-04-21 16:38:14 -04:00 committed by GitHub
parent db693060ea
commit 8fcaf3a596
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,75 +0,0 @@
# Draft PR: Tagger Performer Hover Preview Enhancements
## PR Title
Enhance Tagger performer match UX with hover previews and mismatch warnings
## Base / Head
- Base: `stashapp/stash` `develop`
- Head: `Stash-KennyG/stash` `feature/6853-performer-hover-preview`
## Summary
- Adds a hover preview for matched performer selection in Scene Tagger by attaching the preview to the picker control, not the matched text label.
- Adds a scraped performer hover preview on the left performer label using scraped/remote data, while rendering through shared performer card UI for visual consistency.
- Adds mismatch context in the matched performer hover card for non-matching performer fields (including aliases/URLs as counts), to make potential cross-linkage easier to spot before save.
- Adds stash ID conflict warning inside the hover card when the local selected performer already has a stash ID for the same endpoint but with a different GUID.
- Uses a compact red endpoint chip for stash ID conflict warning, with full conflicting GUID available via chip tooltip.
## Files Changed
- `ui/v2.5/src/components/Performers/PerformerPopover.tsx`
- `ui/v2.5/src/components/Tagger/scenes/MatchedPerformerPreview.tsx`
- `ui/v2.5/src/components/Tagger/scenes/PerformerResult.tsx`
- `ui/v2.5/src/components/Tagger/scenes/ScrapedPerformerPreview.tsx` (new)
- `ui/v2.5/src/components/Tagger/styles.scss`
## Behavior Details
- **Picker hover target**: hover card now opens from the selected picker chip/control.
- **Left-side scraped hover**: hover on scraped performer text shows card built from scraped data (image/name/etc.) but styled with shared `PerformerCard`.
- **Mismatch rows**: shown only for fields where scraped has a value and differs from selected local value.
- **Aliases / URLs**: reported as counts only.
- **Stash ID conflict warning**:
- shown only when `selected stash_id(endpoint) != incoming remote_site_id`
- displayed inside card, above mismatch rows
- compact red endpoint chip; GUID is tooltip text.
## Mismatch Fields Included
- Birthdate
- Death Date
- Ethnicity
- Hair Color
- Eye Color
- Height
- Weight
- Penis Length
- Circumcised
- Measurements
- Fake Tits
- Tattoos
- Piercings
- Career Start
- Career End
- Aliases (count)
- URLs (count)
## Test Plan
- [ ] Hover selected performer picker in Scene Tagger matched result and confirm card opens below picker.
- [ ] Hover left scraped performer name and confirm scraped preview card appears and matches shared performer card styling.
- [ ] Confirm mismatch rows render only for differing values and are hidden for exact matches.
- [ ] Confirm aliases/URLs mismatch rows show count only.
- [ ] Confirm stash ID warning appears only when endpoint matches and GUID differs.
- [ ] Confirm warning chip is compact red endpoint chip and GUID is visible in tooltip.
- [ ] Confirm no stash ID warning appears when GUIDs match.
- [ ] Confirm no regressions in create/skip/select/link flow for performer rows.
- [ ] Confirm lint/build checks pass.
## Notes
- This feature is designed to improve confidence in match correctness before save, especially in larger datasets where name collisions are more common.
## Compatibility Note: CSS Class Shape
- `PerformerPopover` now supports an optional `cardClassName` prop and applies it by appending to the existing wrapper class:
- before: `className="tag-popover-card"`
- after: `className={\`tag-popover-card ${cardClassName ?? ""}\`.trim()}`
- The base class `tag-popover-card` is preserved, so existing styling and selectors that target it continue to work.
- This is expected to be low-risk for downstream usage because:
- the prop is optional
- existing callers do not need to change
- DOM structure is unchanged (same wrapper element).