Weight deal strength by discount percent and złoty saved #28

Merged
kubus merged 1 commit from feature/refactor/deal-strength-index into main 2026-10-06 18:51:43 +00:00
Owner

Summary

  • Deal strength now weighs both discount percentage and złoty saved: percent × √(typical / 400 zł)
  • Tiers: Strong ≥ 12, Very strong ≥ 20, Exceptional ≥ 30 (each with minimum 8%, 13%, 20% thresholds)
  • Simplified iOS navigation: direct tab switching instead of nested routes (removed SettingsRoute, WatchesRoute)
  • Removed undo toast system and haptic feedback from app model
  • Removed verification verdicts from listing rows and context menus
  • Simplified triage to swipe-only actions (removed long-press preview and menu)
  • Removed placeholder rows and loading spinners during initial fetch
  • Flips view simplified (no thumbnails, no context menu, removed "I bought this" from listings)
  • Removed deep-link support for new-watch, new-flip, and search quick actions

Testing

  • Deal strength calculation: verify 100 zł off 600 zł (16.7%) scores Very strong; 50 zł off 200 zł (25%) scores Strong
  • Top deals endpoint returns correct listings filtered by Strong+ strength
  • iOS Deals tab loads and displays top deals without placeholders or spinners
  • Swipe right triages a listing; swipe left hides it
  • Tap a deal opens its detail view with full information
  • Flips tab add (+) button opens the flip editor
  • Tab bar navigation works: Deals, Search, Watches, Market (Flips/Analytics), Settings
  • Analytics still accessible via Market tab
  • Schema migration succeeds on existing databases
  • npm run typecheck, npm test, npm run build pass
## Summary - Deal strength now weighs both discount percentage and złoty saved: `percent × √(typical / 400 zł)` - Tiers: Strong ≥ 12, Very strong ≥ 20, Exceptional ≥ 30 (each with minimum 8%, 13%, 20% thresholds) - Simplified iOS navigation: direct tab switching instead of nested routes (removed SettingsRoute, WatchesRoute) - Removed undo toast system and haptic feedback from app model - Removed verification verdicts from listing rows and context menus - Simplified triage to swipe-only actions (removed long-press preview and menu) - Removed placeholder rows and loading spinners during initial fetch - Flips view simplified (no thumbnails, no context menu, removed "I bought this" from listings) - Removed deep-link support for new-watch, new-flip, and search quick actions ## Testing - [ ] Deal strength calculation: verify 100 zł off 600 zł (16.7%) scores Very strong; 50 zł off 200 zł (25%) scores Strong - [ ] Top deals endpoint returns correct listings filtered by Strong+ strength - [ ] iOS Deals tab loads and displays top deals without placeholders or spinners - [ ] Swipe right triages a listing; swipe left hides it - [ ] Tap a deal opens its detail view with full information - [ ] Flips tab add (+) button opens the flip editor - [ ] Tab bar navigation works: Deals, Search, Watches, Market (Flips/Analytics), Settings - [ ] Analytics still accessible via Market tab - [ ] Schema migration succeeds on existing databases - [ ] `npm run typecheck`, `npm test`, `npm run build` pass
Weight deal strength by discount percent and złoty saved
Some checks failed
ci / verify (pull_request) Has been cancelled
01c33c5ab0
- Replace single-metric discount tiers with blended dealStrength() index
- Index is percent × √(typical / 400), equals plain percent at 400 zł typical
- Each tier (Strong ≥12, Very strong ≥20, Exceptional ≥30) requires both index and minimum percent thresholds, so 100 zł off 600 zł (16.7%, 100 zł index) outranks 50 zł off 200 zł (25%, 50 zł index)
- Update analytics, UI labels, watch leaderboard, and iOS views to reflect the new scale
- Bump Jev verification session to v2 with improved description guidance
- All test assertions adjusted for the new blended tiers
kubus force-pushed feature/refactor/deal-strength-index from 01c33c5ab0
Some checks failed
ci / verify (pull_request) Has been cancelled
to de75231b07
Some checks failed
ci / verify (pull_request) Has been cancelled
2026-10-06 18:50:30 +00:00
Compare
kubus merged commit 84e834b696 into main 2026-10-06 18:51:43 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kubus/scout!28
No description provided.