Skip to content

TidyFlow 2.0: .NET 10 rewrite and open-source release - #1

Merged
ProfessorMoose74 merged 4 commits into
mainfrom
release/v2.0.0
Sep 23, 2026
Merged

ProfessorMoose74 merged 4 commits into
mainfrom
release/v2.0.0

Conversation

@ProfessorMoose74

Copy link
Copy Markdown
Owner

What this changes

TidyFlow 2.0: a ground-up rewrite on .NET 10, prepared for open-source release on GitHub.

  • One organizing engine (TidyFlow.Core) shared by Organize now, scheduled runs and the file watcher. The PowerShell worker is gone; the scheduled task runs TidyFlow.exe --run silently.
  • New WPF app (MVVM, built-in Fluent theme): Preview changes, History with per-run Undo, weekly/monthly day selection, run at sign-in, start at sign-in, toast notifications, --uninstall.
  • Fixes the 1.x bugs found in review: size filter units, scheduled runs missing from undo/stats, watcher wildcard matching, dead "run on startup", fixed Monday/1st schedules, console windows, tasks breaking after updates, undo overwrite/single-file issues, racing writes.
  • Distribution: single-file portable downloads (x64 + ARM64) published by a tag-driven release workflow. The MSIX project stays as an optional build.
  • Open-source setup: rewritten README with screenshots, updated guides, CHANGELOG, Code of Conduct, security policy, issue/PR templates; MIT license names Elemental Genius LLC.

See CHANGELOG.md for the full list.

How it was tested

  • 65 xUnit tests (engine, 1.x settings migration, history/undo, concurrency, Task Scheduler XML, command line) pass locally.
  • Exercised in the running app against scratch data: headless run, Preview → Move, file watcher (including download renames vs. manual renames), Undo from History, scheduled task create/remove, light/dark themes, single-instance handoff.
  • MSIX package installed temporarily with Developer Mode: execution alias, packaged headless run, startup task, scheduled task pointing at the alias, redirected data folder opening correctly in Explorer; then removed.
  • Portable single-file x64 build: headless run, toast notification, --uninstall cleanup. ARM64 build cross-compiled (not run).
  • CI and release workflows have not run before; this PR is their first CI run.

Checklist

  • .\build.ps1 passes (no warnings, all tests green)
  • Engine changes in TidyFlow.Core come with tests
  • User-facing changes are in CHANGELOG.md and the docs

🤖 Generated with Claude Code

ProfessorMoose74 and others added 4 commits September 23, 2026 17:47
.claude/settings.local.json holds machine-specific permissions (local
paths, an internal remote) and shouldn't be in a public repo. It stays on
disk and is now ignored. The .gitignore is trimmed to what the project
produces today (SDK-style build output, MSIX artifacts, dist/), dropping
WiX and 1.x worker entries.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Replace the .NET Framework 4.8 app and the PowerShell worker with:

- TidyFlow.Core (net10.0): one organizing engine used by Organize now,
  scheduled runs and the file watcher, plus config/preferences/activity
  stores with 1.x migration, atomic writes and a cross-process lock.
- TidyFlow (WPF, MVVM, built-in Fluent theme): Preview changes window,
  History tab with per-run Undo, weekly/monthly day selection, run at
  sign-in, start at sign-in, toast notifications, single instance.
- Headless mode (TidyFlow.exe --run) replaces the PowerShell worker for
  the scheduled task, created via the Task Scheduler COM API. The task
  is repaired on startup if missing or pointing at the 1.x worker.
- --uninstall removes the scheduled task, startup entry and notification
  registration for the portable build.

Fixes 1.x bugs: size filter in bytes vs KB, scheduled runs missing from
history and undo, mid-pattern wildcards ignored by the watcher, dead
"run on startup" option, fixed Monday/1st schedules, console window on
scheduled runs, tasks breaking after MSIX updates, undo overwriting or
restoring a single file, and racing writes to history/statistics.

Build and packaging: SDK-style projects, TidyFlow.slnx, central package
versions, build.ps1 (build/test, -Portable single-file zip, -Package
optional MSIX bundle), CI and tag-driven release workflows, Dependabot,
and 65 xUnit tests across the engine and app services.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- README rewritten for GitHub: downloads from Releases, SmartScreen note,
  screenshots, features, command line, update/uninstall, building.
- All guides updated for 2.0 and portable-first distribution; new
  CHANGELOG. Store listing and the stale project summary removed.
- CODE_OF_CONDUCT (Contributor Covenant 2.1), SECURITY policy, issue
  forms and a pull request template.
- MIT license now names Elemental Genius LLC as copyright holder.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The previous commit meant to stop tracking this machine-specific file but
re-staged it instead. It stays on disk and is covered by .gitignore.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@ProfessorMoose74
ProfessorMoose74 merged commit 108c434 into main Sep 23, 2026
5 checks passed
@ProfessorMoose74
ProfessorMoose74 deleted the release/v2.0.0 branch September 23, 2026 21:59
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.

1 participant