|
| 1 | +# FrameGuard — Roadmap |
| 2 | + |
| 3 | +> Documento de referência interno. Atualizar a cada release concluído. |
| 4 | +> Filosofia de versionamento: `0.2.x` = melhorias/adições ao modelo atual | `0.3.x` = nova UX/paradigma | `0.4.x` = features avançadas |
| 5 | +
|
| 6 | +--- |
| 7 | + |
| 8 | +## ✅ v0.1.0 — Release inicial |
| 9 | +- App funcional com Dashboard, Otimizações, Privacidade, Serviços, Limpeza |
| 10 | +- Detecção de hardware (GPU/CPU vendor, Power Plan, Windows version) |
| 11 | +- Backup e restore de tweaks |
| 12 | +- GitHub Actions CI/CD com build automático |
| 13 | + |
| 14 | +## ✅ v0.1.1 — Hotfix |
| 15 | +- Fix detecção incorreta de Windows 11 (usava `ProductName` → migrado para `CurrentBuildNumber ≥ 22000`) |
| 16 | + |
| 17 | +## ✅ v0.2.0 — Polish e infraestrutura |
| 18 | +- Light mode / Dark mode funcional |
| 19 | +- Busca global (Ctrl+K) com keyboard navigation |
| 20 | +- Remoção de UWP/Bloatware (40 apps curados) |
| 21 | +- Infraestrutura vendor-specific (`useHardwareFilter`, `TWEAK_HARDWARE_MAP`) |
| 22 | +- Export/import de configuração `.fg` |
| 23 | +- Issue templates no GitHub |
| 24 | + |
| 25 | +## ✅ v0.2.1 — Qualidade e auto-update |
| 26 | +- Fix de contraste em light mode (bloatware não instalado — WCAG 4.5:1) |
| 27 | +- Auto-updater on-demand na página About (sem background process, sem serviço) |
| 28 | + - Nota técnica: `createUpdaterArtifacts: true` é obrigatório no objeto `bundle` do `tauri.conf.json` |
| 29 | + |
| 30 | +## ✅ v0.2.2 — Privacidade expandida e debloat |
| 31 | +- Windows Recall disable (`HKLM\...\WindowsAI`) |
| 32 | +- Windows Error Reporting off |
| 33 | +- Activity History / Timeline off |
| 34 | +- Location Tracking global off |
| 35 | +- Feedback Frequency off |
| 36 | +- DiagTrack expandido (`AllowDeviceNameInTelemetry`, `DoNotShowFeedbackNotifications`, `dmwappushservice`) |
| 37 | +- Edge Debloat (~15 policies: startup boost, background mode, sidebar Copilot, shopping, telemetria) |
| 38 | +- Classic Right Click Menu (Win11 only — reinicia Explorer automaticamente) |
| 39 | + |
| 40 | +--- |
| 41 | + |
| 42 | +## ✅ v0.2.3 — Serviços, CPU vendor tweaks e Docker |
| 43 | +- 11 novos serviços Tier 1 (Fax, MapsBroker, RetailDemo, WerSvc, lfsvc, wisvc, RemoteRegistry, AJRouter, SEMgrSvc, TermService, Spooler) |
| 44 | +- Warnings críticos e detalhados nos 4 serviços Xbox (XblAuthManager, XblGameSave, XboxNetApiSvc, XboxGipSvc) — explica o que quebra em cada um |
| 45 | +- CPU Vendor Tweaks: AMD Ryzen Power Plan (GUID `9897998c-...`), Intel Power Throttling Off, Intel Turbo Boost Agressivo |
| 46 | +- AMD fTPM detection — warning no Dashboard com link para FAQ da AMD |
| 47 | +- Docker cleanup — containers parados, imagens dangling, build cache (volumes opt-in com warning) |
| 48 | + |
| 49 | +## ✅ v0.2.4 — GPU vendor tweaks, tweaks de alto impacto e Mitos & Verdades |
| 50 | + |
| 51 | +### Tweaks de alto impacto (todos os usuários) |
| 52 | +- **HVCI/VBS disable** (`disable_hvci_vbs`) — 5-10% FPS médio, até 28% em CPUs sem MBEC. `risk_level: Medium`, `requires_restart: true` |
| 53 | +- **Timer Resolution 1ms** (`timer_resolution_1ms`) — `GlobalTimerResolutionRequests=1`. Melhora 20-30% em 1% lows. `risk_level: Low`, `requires_restart: false` |
| 54 | + |
| 55 | +### NVIDIA GPU (`hardware_filter: { gpu_vendor: "nvidia" }`) |
| 56 | +- **PowerMizer** (`nvidia_power_mizer`) — enumera subkey GPU via `find_gpu_registry_subkey("NVIDIA")`, seta `PerfLevelSrc=0x2222`, `PowerMizerEnable=1`, `PowerMizerLevelAC=1` |
| 57 | +- **Telemetria off** (`nvidia_telemetry_off`) — IFEO bloqueando `NvTelemetryContainer.exe` + desabilita scheduled tasks `NvTmMon`/`NvTmRep` via `schtasks` |
| 58 | +- **Overlay off** (`nvidia_overlay_off`) — `HKCU\...\ShadowPlay\ShadowPlayOnSystemStart\Enable=0` |
| 59 | +- **MSI Mode revisão** — agora cobre GPU Display + HD Audio Controller NVIDIA. Detecta estado atual (RTX 40+ já em MSI reporta "já aplicado"). Backup multi-entry com `restore_multi_entries` |
| 60 | + |
| 61 | +### AMD GPU (`hardware_filter: { gpu_vendor: "amd" }`) |
| 62 | +- **ULPS disable** (`amd_ulps_disable`) — `EnableUlps=0` na subkey GPU via `find_gpu_registry_subkey("AMD")`/`"Radeon"`. Elimina delays de wake e black screens |
| 63 | +- **Shader Cache forçado** (`amd_shader_cache`) — `ShaderCache` (REG_BINARY) = `32 00` no subkey `UMD`. Funções `read_binary`/`write_binary` adicionadas a `registry.rs` |
| 64 | + |
| 65 | +### Frontend |
| 66 | +- 7 tweaks registrados em `tweakRegistry.ts` e `searchIndex.ts` (busca global) |
| 67 | +- 5 tweaks vendor-specific mapeados em `TWEAK_HARDWARE_MAP` (`useHardwareFilter.ts`) |
| 68 | + |
| 69 | +### Página Mitos e Verdades (Learn) |
| 70 | +- 14 itens com veredicto técnico: 5 PERIGOSO (vermelho), 4 MITO (cyan), 5 CONDICIONAL (amarelo) |
| 71 | +- Cada item: badge colorido, veredicto em uma linha, explicação em accordion, link para fonte |
| 72 | +- Itens: pagefile, Realtime priority, Defender, Spectre/Meltdown, Xbox Services, Nagle, IRQ8Priority, SvcHostSplit, Core Parking, Memory Compression, Process Affinity, HAGS, HPET, SysMain |
| 73 | + |
| 74 | +--- |
| 75 | + |
| 76 | +## 📋 v0.3.0 — Nova experiência de uso *(mudança de paradigma — justifica bump de minor)* |
| 77 | + |
| 78 | +### Nova Home Page — "O que você quer fazer hoje?" |
| 79 | +Substitui o Dashboard como tela inicial. 3 camadas progressivas: |
| 80 | +1. **Plano Recomendado** — analisa estado atual (tweaks não aplicados, serviços rodando) e gera plano personalizado com 1 clique |
| 81 | +2. **Planos por Intenção** — 4 cards: |
| 82 | + - 🎮 Quero mais FPS → HVCI, Timer Resolution, Game DVR, GPU vendor tweaks |
| 83 | + - 🔒 Quero mais privacidade → Telemetria, WER, Activity History, Recall, Edge Debloat |
| 84 | + - 🧹 Quero limpar → Cleanup, UWP Bloatware, serviços desnecessários |
| 85 | + - ⚡ Quero tudo → todos os tweaks safe combinados |
| 86 | +3. **Modo Expert** → link para páginas específicas (comportamento atual) |
| 87 | + |
| 88 | +### Contador Before/After Serviços |
| 89 | +- WMI `Win32_Service WHERE State='Running'` antes e depois de executar qualquer plano |
| 90 | +- Exibir inline: "Antes: 189 rodando → Depois: 177 rodando (-12 serviços)" |
| 91 | +- Delay de 3-5s após execução para aguardar serviços terminarem |
| 92 | + |
| 93 | +### Arquivos novos |
| 94 | +- `src/pages/Home.tsx` + `Home.module.css` |
| 95 | +- `src/hooks/useHomeRecommendations.ts` |
| 96 | +- `src-tauri/src/commands/metrics.rs` (`get_running_services_count`) |
| 97 | +- Atualizar `App.tsx`: rota `/` → Home. Dashboard continua acessível pela sidebar |
| 98 | + |
| 99 | +--- |
| 100 | + |
| 101 | +## 📋 v0.4.0 — Raio-X do PC com IA + Educação |
| 102 | + |
| 103 | +### Feature principal: Raio-X do PC com IA |
| 104 | +Diagnóstico inteligente baseado no Event Viewer + IA generativa. |
| 105 | + |
| 106 | +**Fluxo**: |
| 107 | +1. Coletar eventos do Event Viewer — últimos 3 dias, apenas Error/Warning/Critical |
| 108 | +2. Filtrar ruído conhecido (ex: `DistributedCOM 10016`, `Kernel-EventTracing`, `VSS` — eventos normais do Windows que poluiriam o relatório) |
| 109 | +3. Sanitizar dados sensíveis (caminhos de arquivo, nomes de usuário, IPs) antes de enviar |
| 110 | +4. Enviar para API do Claude com prompt de sistema contextualizado: |
| 111 | + - O que o FrameGuard pode fazer (tweaks disponíveis, limpezas, etc.) |
| 112 | + - Os eventos coletados |
| 113 | + - Instrução para gerar: diagnóstico de estabilidade + ações que o FrameGuard pode executar + ações manuais recomendadas |
| 114 | +5. Exibir relatório formatado com plano de ação |
| 115 | + |
| 116 | +**Arquitetura BYOK (Bring Your Own Key)**: |
| 117 | +- Campo nas Settings para o usuário inserir sua chave da API Anthropic |
| 118 | +- A chave é armazenada localmente (nunca enviada ao servidor do desenvolvedor) |
| 119 | +- Todo o processamento ocorre diretamente entre o PC do usuário e a API Anthropic |
| 120 | +- Feature gratuita — sem monetização planejada por enquanto |
| 121 | +- Iniciar apenas com Claude/Anthropic. Outras IAs (GPT-4, Gemini) como expansão futura após validar qualidade do prompt |
| 122 | + |
| 123 | +**Considerações importantes**: |
| 124 | +- O prompt do sistema é o coração da feature — vai precisar de iteração |
| 125 | +- Lista de exclusão de eventos ruidosos precisa ser curada (trabalho real) |
| 126 | +- Sanitização de dados sensíveis é obrigatória para coerência com filosofia do projeto |
| 127 | + |
| 128 | +~~### Feature secundária: Mitos e Verdades (página Learn)~~ |
| 129 | +*(Implementado em v0.2.4 — 14 itens com badges coloridos, accordion e fontes)* |
| 130 | + |
| 131 | +--- |
| 132 | + |
| 133 | +## 🔮 Backlog / Futuro indefinido |
| 134 | + |
| 135 | +- **Auto-exclusões Defender para jogos** — detectar Steam/Epic/GOG via registry, listar pastas, adicionar exclusões via `Add-MpPreference`. Sem desabilitar Defender |
| 136 | +- **Memory Dump files** — arquivos gerados por BSODs podem acumular facilmente 20GB+. Verificar e oferecer limpeza de `C:\Windows\Minidump\` (minidumps individuais) e `C:\Windows\MEMORY.DMP` (dump completo). Exibir tamanho total antes de limpar |
| 137 | +- **Pontos de Restauração do Windows** — podem acumular 40GB+. Oferecer limpeza com opção de manter apenas o ponto mais recente (nunca deletar tudo sem aviso). Usar `vssadmin delete shadows` ou `Checkpoint-Computer` via PowerShell |
| 138 | +- **Microsoft Store** — publicação futura. Usar SignPath.org para certificado de código gratuito (open source) |
| 139 | +- **Node.js upgrade** — Node 20.x EOL abril 2026. Migrar para LTS atual |
| 140 | + |
| 141 | +--- |
| 142 | + |
| 143 | +## Referências técnicas importantes |
| 144 | + |
| 145 | +### Padrões obrigatórios do projeto |
| 146 | +- Comandos Tauri com I/O: sempre `pub async fn` + `tokio::task::spawn_blocking` (nunca `pub fn` síncrono — bloqueia main thread) |
| 147 | +- Versão Windows: sempre `CurrentBuildNumber` (≥22000 = Win11). NUNCA `ProductName` |
| 148 | +- Power Plan: detectar por GUID, nunca por nome (compatibilidade cross-locale) |
| 149 | +- GPU info: ler direto de `HKLM\SYSTEM\ControlSet001\Control\Class\{4d36e968...}` via winreg |
| 150 | +- Detecção de subkey GPU: `find_gpu_registry_subkey()` em `gpu.rs` — enumera `HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\` buscando `DriverDesc` contendo "NVIDIA" ou "AMD"/"Radeon". O índice (`0000`, `0001`...) varia por sistema |
| 151 | +- Páginas: conditional rendering (não keep-alive/display:none) — evita disparo simultâneo de comandos na startup |
| 152 | +- Auto-updater: `createUpdaterArtifacts: true` obrigatório no objeto `bundle` do `tauri.conf.json` |
| 153 | + |
| 154 | +### GUIDs de Power Plans |
| 155 | +| Plano | GUID | |
| 156 | +|---|---| |
| 157 | +| Balanceado (Windows) | `381b4222-f694-41f0-9685-ff5bb260df2e` | |
| 158 | +| Alto Desempenho | `8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c` | |
| 159 | +| Máximo Desempenho | `e9a42b02-d5df-448d-aa00-03f14749eb61` | |
| 160 | +| AMD Ryzen Balanced | `9897998c-92de-4669-853f-b7cd3ecb2790` | |
| 161 | + |
| 162 | +### Serviços Xbox — o que cada um faz |
| 163 | +| Serviço | Quebra se desabilitar | |
| 164 | +|---|---| |
| 165 | +| XblAuthManager | Login Xbox Live, Game Pass não lança, achievements param | |
| 166 | +| XblGameSave | Cloud saves param de sincronizar | |
| 167 | +| XboxNetApiSvc | Multiplayer Xbox Live, detecção NAT, party chat | |
| 168 | +| XboxGipSvc | Firmware update e remapeamento de controles Xbox Elite/Series | |
| 169 | + |
| 170 | +### Tweaks com evidência sólida (referência rápida) |
| 171 | +| Tweak | Impacto | Risco | |
| 172 | +|---|---|---| |
| 173 | +| HVCI/VBS disable | 5-10% FPS médio, até 28% sem MBEC | Medium | |
| 174 | +| Timer Resolution 1ms | 20-30% melhora em 1% lows | Low | |
| 175 | +| AMD ULPS disable | Elimina black screens e wake delays | Low | |
| 176 | +| PowerMizer NVIDIA | GPU sempre em P0 | Low | |
| 177 | +| MSI Mode GPU | Reduz DPC latency | Low | |
| 178 | +| AMD Ryzen Power Plan | Responsividade e boost | Low | |
| 179 | +| Edge StartupBoost off | Melhora boot time | Low | |
0 commit comments