Skip to content

refactor: split large UI files, extract Win32 interop, remove reflection#399

Merged
rygel merged 2 commits intodevelopfrom
refactor/ui-cleanup-and-ci
Mar 21, 2026
Merged

refactor: split large UI files, extract Win32 interop, remove reflection#399
rygel merged 2 commits intodevelopfrom
refactor/ui-cleanup-and-ci

Conversation

@rygel
Copy link
Copy Markdown
Owner

@rygel rygel commented Mar 21, 2026

Summary

  • Split SettingsWindow.xaml.cs (2500 lines) into partial classes per tab
  • Split MainWindow update/SignalR logic into separate partial files
  • Move Win32 P/Invoke to shared Win32Interop helper
  • Replace reflection-based provider discovery with explicit static list
  • Delete unused experimental-rust workflow

Test plan

  • 884 + 127 = 1,011 tests passing
  • Build succeeds with 0 errors

🤖 Generated with Claude Code

- Split SettingsWindow.xaml.cs (2500 lines) into partial classes:
  SettingsWindow.Providers.cs, SettingsWindow.Monitor.cs, SettingsWindow.Data.cs
- Split MainWindow: extract MainWindow.Updates.cs and MainWindow.SignalR.cs
- Move Win32 P/Invoke declarations to shared Win32Interop static class
- Replace reflection-based provider discovery with explicit static list
- Delete experimental-rust workflow (12 unused Rust build jobs)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown
Contributor

⚠️ Large PR Detected

This PR contains 4676 lines changed across 11 files.

Details:

  • 📁 Files changed: 11
  • ➕ Insertions: 2091
  • ➖ Deletions: 2585
  • 📊 Total: 4676 lines

Recommendation:
Consider splitting this PR into smaller, focused changes to make review easier and faster. PRs under 500 lines are ideal for thorough code review.


This is an automated message. Feel free to ignore if this PR is intentionally large.

…tion

Codex and ClaudeCode set the parent card's NextResetTime from the 5-hour
burst window, but EnrichWithPeriodDuration set PeriodDuration from the
7-day rolling window. This made pace projection nonsensical — e.g. 90%
used with 4h left in a 5h burst projected as 90/(4h/7d) = tiny fraction,
showing "On pace" when the user was clearly burning through their quota.

Fix: EnrichWithPeriodDuration now also corrects NextResetTime to match
the rolling window detail when setting a rolling PeriodDuration. Also
fix CodexProvider to prefer the weekly reset time on the parent card.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown
Contributor

⚠️ Large PR Detected

This PR contains 4694 lines changed across 13 files.

Details:

  • 📁 Files changed: 13
  • ➕ Insertions: 2108
  • ➖ Deletions: 2586
  • 📊 Total: 4694 lines

Recommendation:
Consider splitting this PR into smaller, focused changes to make review easier and faster. PRs under 500 lines are ideal for thorough code review.


This is an automated message. Feel free to ignore if this PR is intentionally large.

@rygel rygel merged commit 1d130ee into develop Mar 21, 2026
22 checks passed
@rygel rygel deleted the refactor/ui-cleanup-and-ci branch March 21, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants