Skip to content

Commit 3eaf057

Browse files
carterscodeclaude
andcommitted
feat(settings): expand Learn More + add extreme/reset preset buttons
Learn More (the per-setting expander, the generated SETTINGS-REFERENCE.md, and the wiki) now answers the same four things for every setting: why the value is recommended, a plain-English pro/con of each choice for a non-expert, and copy-pasteable verify / apply / reverse PowerShell commands. Adds a ChoiceTradeoff model, a hand-authored pro/con catalog (services synthesized from their own risk text), and SettingDocs.ReverseCommandFor. One-click setup gains two siblings to "Apply recommended": - "Apply extreme" -- every toggle at its most-aggressive gaming value (Memory Integrity / VBS off, contested Nagle / NIC tweaks on) with Monitor AND Auto-apply turned on for every setting. - "Reset all to defaults" -- stages every setting back to its Windows default and turns Monitor + Auto-apply off, so applying restores Windows' shipped behavior. Both confirm before staging. Recommended preset behavior is unchanged. Adds ExtremeDesiredOn / WindowsDefaultDesiredOn maps and 24 tests (512 total, all green). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 3a2dbaa commit 3eaf057

13 files changed

Lines changed: 2668 additions & 212 deletions

docs/SETTINGS-REFERENCE.md

Lines changed: 1548 additions & 142 deletions
Large diffs are not rendered by default.

docs/wiki/Settings-and-tabs.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Settings & tabs guide
22

3-
This page explains **every tab** in the GamerGuardian Settings window and **what each setting does and means**. For the deep per-setting reference (full rationale, per-scenario recommendations, risks, exact reversal, and a copy-pasteable verify command), see [SETTINGS-REFERENCE.md](https://github.com/carterscode/GamerGuardian/blob/main/docs/SETTINGS-REFERENCE.md), which is generated from the source catalog.
3+
This page explains **every tab** in the GamerGuardian Settings window and **what each setting does and means**. For the deep per-setting reference — why the recommendation is what it is, a plain-English **pro/con of each choice**, per-scenario recommendations, risks, and copy-pasteable **verify / apply / reverse** PowerShell commands — see [SETTINGS-REFERENCE.md](https://github.com/carterscode/GamerGuardian/blob/main/docs/SETTINGS-REFERENCE.md), which is generated from the source catalog.
44

55
## The three controls on every monitored setting
66

@@ -16,7 +16,7 @@ Other conventions:
1616

1717
- **Current** / **Default** / **Recommended** labels under each setting show the live system value, the Windows default, and GamerGuardian's suggested choice. The green **Recommended** value is shown in that row's own wording — **Enabled/Disabled**, **Gaming/Default**, **On/Off**, or a service's **Default/Manual/Disabled** — so it always matches the actual **Want** options. It's tuned for the typical desktop gamer: clear performance wins are recommended, security toggles (Memory Integrity / VBS) are recommended to stay **on**, and genuinely contested tweaks (Nagle, NIC power) are recommended to stay at the Windows default. For the core gaming settings the recommendation is exactly what the one-click setup applies; Privacy and Debloat recommendations are shown for guidance but stay opt-in. Settings without a documented recommendation simply omit the label.
1818
- A yellow **reboot required** badge means the change only takes full effect after a restart.
19-
- **Learn more** expanders carry the same per-setting explanation as the reference doc.
19+
- **Learn more** expanders carry the same per-setting explanation as the reference doc: why the value is recommended, a **pro/con of each choice** (written for someone who's never heard of the setting), per-scenario picks, risks, and a **Command line (PowerShell)** block to check the current value, apply the gaming-optimized value, and reverse it back to the Windows default.
2020
- Changes are **staged**: toggling preferences doesn't write to Windows until you click **Apply** (or **Save & close**). Everything is reversible, and every applied change is recorded in [`changes.log`](Logging).
2121
- **HKCU** (per-user) settings apply directly; **HKLM** (machine-wide) settings prompt once for **UAC** elevation. Multi-value changes batch into a single prompt.
2222

@@ -26,7 +26,10 @@ Other conventions:
2626

2727
App preferences and the one-click setup — not a monitored-setting tab.
2828

29-
- **One-click Recommended setup** — stages the gaming-optimized configuration across *every* tab at once (sets each setting's **Want**, turns **Monitor** on, and opts into **Auto-apply**). Idempotent: re-running it after an update only picks up newly added settings.
29+
- **One-click setup** — three whole-config presets. Each only *stages* changes (review them per-tab, then **Apply** / **Save & close** to commit, or **Cancel** to discard) and each is idempotent, so re-running after an update only picks up the new deltas:
30+
- **Apply recommended** — GamerGuardian's safe gaming preset: sets each covered setting's **Want**, turns **Monitor** on, opts into **Auto-apply**. Keeps Memory Integrity / VBS **on** (security) and leaves Privacy / Debloat / the contested network tweaks for you to choose. Skips the irreversible UWP AI-app removals.
31+
- **Apply extreme** — everything that could even *remotely* help gaming, on: **every** toggle at its most-aggressive value — including Memory Integrity / VBS **off** and the contested Nagle / NIC tweaks — with **Monitor and Auto-apply turned on for every setting**. Disabling Memory Integrity / VBS breaks Valorant (Vanguard) and weakens malware protection, and several changes need a reboot — it asks for confirmation first.
32+
- **Reset all to defaults** — the inverse: stages every setting back to its **Windows default** and turns **Monitor + Auto-apply off**. Applying then restores Windows' shipped behavior (which re-enables features you may have turned off, like Copilot, ads/suggestions, and telemetry services).
3033
- **Launch at startup** — start GamerGuardian minimized to the tray when you sign in.
3134
- **Polling interval** — how often (seconds) the drift check runs. Default 30 s.
3235
- **Theme** — Light / Dark / System.

src/GamerGuardian/Models/SettingDetails.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,13 @@ public sealed record SettingDetails(
4040
string Recommended,
4141
string Risks,
4242
string ReversibleVia);
43+
44+
/// <summary>
45+
/// One side of a per-setting "what happens if I pick this" pro/con, written for a
46+
/// user who knows nothing about the setting. <see cref="Choice"/> names the option
47+
/// in the same words the Settings window offers (e.g. "Turn it On", "Disabled
48+
/// (gaming)", "Keep it"); <see cref="Pro"/> and <see cref="Con"/> are a single
49+
/// plain-English upside and downside of choosing it. Surfaced in the "Learn more"
50+
/// expander and the generated reference so the recommendation is never a black box.
51+
/// </summary>
52+
public sealed record ChoiceTradeoff(string Choice, string Pro, string Con);

0 commit comments

Comments
 (0)