Skip to content

Preserve offline watched folders - #3

Merged
marcmy merged 14 commits into
masterfrom
agent/preserve-offline-watched-folders
Jul 19, 2026
Merged

marcmy merged 14 commits into
masterfrom
agent/preserve-offline-watched-folders

Conversation

@marcmy

@marcmy marcmy commented Jul 19, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • keep watched folders in watcher.json and in the UI when their path is temporarily unavailable
  • skip unavailable folders during idle scans, manual analysis, queueing, and background compression
  • dispose their FileSystemWatcher while offline and recreate it automatically when the folder returns
  • mark reconnected folders as changed so they are analysed again
  • show a small ! warning beside unavailable folders and disable path-dependent actions until they return
  • clear existing C#/VB compiler and MVVM source-generator warnings
  • update the build/release actions to Node.js 24-compatible releases
  • treat future build warnings as errors

Root cause

Startup only loaded entries whose directories currently existed, and every watcher scan called DeleteWatchersWithNonExistentFolders, permanently removing paths on disconnected or powered-off external drives.

The build workflow also used older Node.js 20-based action releases, while several nullable-reference paths and direct generated-field accesses produced compiler and toolkit warnings.

Validation

  • Windows x64 restore, self-contained publish, packaging, and artifact upload pass with TreatWarningsAsErrors=true
  • supply-chain audit passes

Runtime test plan

  1. Add one or more folders from an external drive to the watchlist.
  2. Close CompactGUI, disconnect or power off the drive, and launch CompactGUI again.
  3. Confirm the folders remain listed with a warning icon and are still present after another restart.
  4. Run a full watcher scan and confirm the unavailable folders are skipped without errors or removal.
  5. Reconnect the drive, refresh or allow the next watcher run, and confirm monitoring and analysis resume automatically.
  6. Confirm remove-from-watchlist still works while a folder is unavailable.

@marcmy
marcmy marked this pull request as ready for review July 19, 2026 08:26
@marcmy
marcmy merged commit fc0e346 into master Jul 19, 2026
8 checks passed
@marcmy
marcmy deleted the agent/preserve-offline-watched-folders branch July 19, 2026 08:29
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