|
| 1 | +# Suppress Goal Lowering Suggestions |
| 2 | + |
| 3 | +## Problem Statement |
| 4 | + |
| 5 | +The warning banner that suggests lowering a goal (shown on the goal detail page when pass rate is low) can become annoying for users who are aware their goal is hard and don't want to be prompted. There's currently no way to dismiss it permanently. |
| 6 | + |
| 7 | +## Requirements |
| 8 | + |
| 9 | +### "Don't ask me again" button |
| 10 | +- Add a **"Don't ask me again"** button alongside the existing dismiss button on the goal suggestion/warning banner |
| 11 | +- Clicking it opens a small confirmation dialog with two options: |
| 12 | + - **For this goal** — suppresses suggestions for this specific goal only |
| 13 | + - **For all goals** — suppresses suggestions globally across all goals |
| 14 | + |
| 15 | +### Re-enable per goal |
| 16 | +- On the goal detail page, add a small **"Auto-suggest improvements"** toggle or button (subtle, e.g. in the filters row or near the stats section) |
| 17 | +- When suppressed for a goal, this toggle shows as off; clicking it re-enables suggestions for that goal |
| 18 | +- When suppressed globally, show a note that suggestions are globally disabled, with a link to Settings to re-enable |
| 19 | + |
| 20 | +### Re-enable globally (Settings) |
| 21 | +- Add an **"Auto-suggest improvements"** toggle in Settings (under Goal Preferences or similar section) |
| 22 | +- Default: on |
| 23 | + |
| 24 | +## Storage |
| 25 | + |
| 26 | +- Per-goal suppression: `localStorage` key `suggestion_suppressed_<goalId>` = `"true"` |
| 27 | +- Global suppression: `localStorage` key `suggestions_suppressed_all` = `"true"` |
| 28 | + - Alternatively, store in the Settings object (Rust side) if persistence across devices/reinstalls matters — but localStorage is fine to start |
| 29 | + |
| 30 | +## UI Behaviour |
| 31 | + |
| 32 | +- If suppressed (for goal or globally): hide the suggestion banner entirely |
| 33 | +- The "Auto-suggest improvements" toggle on the goal detail page reflects the suppressed state for that goal |
| 34 | +- Clearing suppression (toggling back on) immediately shows the banner again if conditions are met |
| 35 | + |
| 36 | +## Acceptance Criteria |
| 37 | + |
| 38 | +- [ ] "Don't ask me again" button appears on the goal suggestion/warning banner |
| 39 | +- [ ] Clicking it shows a dialog with "For this goal" / "For all goals" options |
| 40 | +- [ ] "For this goal" suppresses the banner on that goal detail page permanently (until re-enabled) |
| 41 | +- [ ] "For all goals" suppresses the banner on all goal detail pages |
| 42 | +- [ ] A toggle/button on each goal detail page allows re-enabling suggestions for that goal |
| 43 | +- [ ] A global toggle in Settings re-enables suggestions for all goals |
| 44 | +- [ ] Suppression state survives page reloads (localStorage) |
| 45 | + |
| 46 | +## Notes |
| 47 | + |
| 48 | +- The existing one-time dismiss (per session, tied to match count) is separate from this — keep that behaviour |
| 49 | +- The "For all goals" option in Settings should be a simple toggle next to an "Auto-suggest improvements" label |
0 commit comments