Skip to content

Fix startup binding and prepare v1.2.0 pre-release#22

Open
PrimeBuild-pc wants to merge 10 commits into
mainfrom
codex/v1.2.0-prerelease-cleanup
Open

Fix startup binding and prepare v1.2.0 pre-release#22
PrimeBuild-pc wants to merge 10 commits into
mainfrom
codex/v1.2.0-prerelease-cleanup

Conversation

@PrimeBuild-pc
Copy link
Copy Markdown
Owner

@PrimeBuild-pc PrimeBuild-pc commented May 22, 2026

Summary

  • Startup blocker remains fixed: Process tab LastOperationMessage binding is display-only and covered by regression tests.
  • Cleaned up the Process tab primary action path: the persistent action-heavy side panel is hidden from the primary UI, row context-menu actions remain the main path, and the selected-process summary keeps a collapsed advanced affinity picker.
  • Added clear selected-row feedback in the Process grid using the existing accent/selection resources without changing sorting or virtualization behavior.
  • Fixed Process context menu font/size consistency by isolating the row context menu with explicit ContextMenu/MenuItem styles, FontWeight=Normal, stable BodyFontSize, and stable foreground/background/border resources while preserving selected-row highlight.
  • Fixed the Process row context-menu Separator/MenuItem style crash by removing the ContextMenu.ItemContainerStyle path, applying the stable style directly to each MenuItem, and giving separators their own explicit Separator style.
  • Fixed the Process row context-menu dark-theme white strip by replacing the default WPF MenuItem template for this menu with a compact theme-aware template that has no icon/check column and uses ThreadPilot resources for background, foreground, hover, disabled text, border, separators, submenu popup, and submenu arrow.
  • Added a visible Lock process list toggle in Process Management. When enabled, it pauses the UI process-list refresh/reorder path and virtualized background preload while keeping the current visible list and selection stable where possible; when disabled, it resumes UI refresh and triggers an immediate refresh.
  • Confirmed Apply saved rules when matching processes start is visible in Settings under Rules & automation, bound to ApplicationSettingsModel.ApplyPersistentRulesOnProcessStart with the existing default of true.
  • Added visible ThreadPilot Activity entries for Lock process list enabled/disabled and [Settings] Apply saved rules at process start enabled/disabled.
  • Added Power Plans delete support through the plan item context menu, with active-plan blocking, safe failure messaging, refresh-after-delete, status feedback, and ThreadPilot Activity audit entries.
  • Improved Power Plans visual feedback and layout: active plans now get an accent treatment plus an Active badge, and header labels/buttons wrap cleanly at smaller widths.
  • Fixed tray first-open placement again by treating (0,0) as an invalid first cursor point, falling back to the current screen working area near the taskbar, and using explicit WinForms screen-point menu opening without duplicate menus.
  • Optimized theme switching by coalescing duplicate theme applications, reusing the active ThreadPilot theme resource dictionary, and avoiding redundant Wpf.Ui/theme reload work.
  • Repurposed Activity Logs as ThreadPilot Activity, an internal audit trail for ThreadPilot actions instead of a generic Windows/application/process log viewer.
  • Removed generic Windows/process log wording from the visible Activity page and replaced it with ThreadPilot-specific activity trail copy.
  • Added a visible IActivityAuditService pipeline used by the Activity tab, with timestamp, category, status, concise message, and optional details.
  • Added visible success and failure entries for settings/theme changes, system tweaks, optimization actions, power plans, process affinity, CPU priority, memory priority, CPU Sets clear, process context actions, saved rules, persistent rule auto-apply attempts, and the two new toggles.
  • Logged safe Warning entries for access-denied, protected-process, likely anti-cheat, and Realtime-priority-blocked cases; ThreadPilot does not try to bypass protected or anti-cheat restrictions.
  • Avoided noisy audit entries for automatic process refreshes, power-plan auto refreshes, diagnostics tab activation/background sampling, and persistent-rule cooldown suppression.
  • High Scheduling Category now writes Win32PrioritySeparation = 26 decimal / 0x1A when enabled, with the disabled/revert value unchanged at 2.
  • Expanded tests to cover visible Activity audit entries and noise prevention across Settings, System Tweaks, Optimization, Power Plans, Process actions, persistent rules, the Activity tab sink, High Scheduling Category registry value, Process context-menu style stability, Process list lock behavior, Settings auto-apply toggle visibility, Separator isolation, expected Process context-menu actions, theme resource availability, and removal of the default icon/check column path.
  • Removed app and test build warnings without broad warning suppression.

Validation

  • dotnet test "ThreadPilot_1.sln" --configuration Release --no-restore - passed, 458 tests.
  • dotnet build "ThreadPilot_1.sln" --configuration Release --no-restore - passed, 0 warnings, 0 errors.
  • dotnet build "ThreadPilot_1.sln" --configuration Release --no-restore -warnaserror - passed, 0 warnings, 0 errors.
  • dotnet bin\Release\net8.0-windows10.0.22000.0\win-x64\ThreadPilot.dll --smoke-test - passed.

Notes

  • No release artifacts, git tag, GitHub release, installer publishing, Docker, Windows Service, registry/IFEO persistence, or anti-cheat bypass behavior added.
  • Remaining manual validation: open the app, right-click a Process row in dark and light theme and confirm there is no white strip, separators render, all actions are visible, and submenu arrows/hover/disabled states are themed; right-click while the list refreshes/reorders and confirm the context menu font/size stays stable; verify Settings > Rules & automation shows Apply saved rules when matching processes start; toggle Lock process list and the saved-rules setting; verify expected actions appear in ThreadPilot Activity.

@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants