# Groundskeeper 0.1.0-beta.2 — verification record

Local Windows 11 x64 beta. Not publicly published and not code signed. This document records the implemented scope and the checks performed, rather than certifying the application as safe.

## Implemented

| Workflow | Scope |
|---|---|
| Cleanup | Discover existing user temp and supported Chrome, Edge, Brave and Firefox cache locations. Scan a selected location; filter by modification age (seven-day default), size, extension and name. Review individual files before recycling. Browser cookies, history, passwords and sessions are outside the discovered cache locations. |
| Exact duplicates | Size grouping, SHA-256 candidate hashes and byte-for-byte comparison, performed locally. Hard links and empty files are excluded. Select a preferred keeper or protect a folder; add extra copies to review in batches of up to 100. Large groups have paginated rows. |
| Large files | Descending-size results, name/type/size/last-modified filters, paginated lists, full path in review and Explorer reveal. File age is not presented as last-used time. |
| Maintenance | Saved scan locations and rescanning; local session history with counts and bytes moved; history clearing. Windows handles Recycle Bin restoration/management. |
| Interface | Original Groundskeeper leaf identity, evergreen/cream/apricot workbench, light/dark themes, modal keyboard behavior, reduced-motion support, prominent operation cards, indeterminate discovery/cleanup bars, current-file comparison percentages, elapsed time, live counts, result-loading indicators, stopping acknowledgement and finished states. |

## Verification

- 17 native tests passed: scanner/file-action and comparison coverage, including exact byte-progress callbacks for hashing and verification, and cancellation between chunks. Rust static lint checks passed.
- Eight browser integration tests passed, covering preferred/protected copies, extra-copy batch review, 201-copy group pagination and batch limits, filename filtering, sample-mode behavior, delayed old-scan responses, correctly scoped removal calls, persisted history, unavailable storage, compact layout and theme/dialog accessibility. The added delayed-operation test covers opening, discovery, stopping, comparison preparation, file-level progress during verification, filter loading, cleanup failure/retry, reduced motion and activity-card accessibility in both themes.
- Installed native fixture checks passed for known scan totals, the old-file filter, exact duplicates, same-size different-content rejection, all-copies removal rejection, final-survivor protection, a real review/recycle operation, recorded history and stale scan rejection. The recycled fixture was restored through Windows and its contents verified.
- Packaged WebView accessibility checks passed across all five sections and the About dialog in light and dark themes. Main and compact layouts were inspected; independent Windows display-scaling checks are not implied.
- Dependency inventory from beta.1 contains 278 dependency/SDK/installer records, with no missing declared license or notice text. The WebView2 loader is matched to the official SDK archive. npm audit reported zero vulnerabilities after removing an unused vulnerable development-test dependency.

The updated installer passed the native fixture and packaged accessibility checks described above. It installs without elevation for the current user. Installed notices match the source notices byte for byte; the installed executable matches the standalone executable except for Tauri's three-byte bundle-type marker.

## Candidate identity

Installer: Groundskeeper_0.1.0-beta.2_x64-setup.exe

SHA-256: see SHA256SUMS.txt alongside the release packages.

The portable ZIP was extracted and its native application passed the same scan/comparison/recycle/history workflow, with the disposable file restored and contents checked. The installed application was closed and uninstalled: its executable and uninstall registration were removed while the scanned fixture remained intact. These checks used isolated application directories and WebView profiles on the development PC, not an independent Windows machine.

The separately distributed SECURITY-CHECKS.json records the final local antivirus check, signature version, timestamp and exact package hashes. It is a publisher-recorded scan result, not independent certification or a guarantee of safety. Signing and a completed VirusTotal report are not supplied for this beta.

## Practical limits

One local folder or drive is scanned at a time. The beta does not include cross-root simultaneous comparison, image-similarity matching, file-content previews, browser-history cleanup, automatic scheduling, registry tuning or a permanent-delete mode. Scans are snapshots; links, offline cloud placeholders and unavailable entries are skipped/reported. Real cloud-provider compatibility and physically disconnected-drive behavior have not been comprehensively validated for this beta.

Memory grows with entries and duplicate groups; no million-entry duplicate-performance claim is made. Verification reads duplicate contents again before removal and holds survivor files open against writes/deletion during the batch on Windows. Other programs and filesystem changes outside the app can still affect scan results. Selected/moved bytes are not guaranteed immediately recoverable space; Recycle Bin contents continue to occupy storage.

This has been tested on the development PC, not an independent clean Windows 11 machine. User evaluation of Groundskeeper and broader beta testing remain ahead of a public launch.


## Beta.2 progress verification

The packaged native app compared two disposable 128 MiB files. Polling observed intermediate byte counts during hashing and a separate byte-verification stage, followed by one exact duplicate group. The native callback test also checks exact chunk totals and cancellation after the first chunk. Discovery and recycling intentionally use indeterminate activity bars because they do not expose a reliable overall total or live batch counter.

