Skip to content

fix: scan each cache category once per clean and harden its git calls (INC-485) - #539

Merged
arzafran merged 1 commit into
mainfrom
franco/inc-485-cache-clean
Nov 4, 2026
Merged

arzafran merged 1 commit into
mainfrom
franco/inc-485-cache-clean

Conversation

@arzafran

@arzafran arzafran commented Nov 4, 2026

Copy link
Copy Markdown
Member

Summary

Cleaning several items in a cache category rescanned the whole category once per item, so a 30-folder DerivedData clean could take minutes. Each item now carries its removal method, set at scan time, and a clean scans each category once.

  • The storage scan's git calls now go through the hardened automatic-git runner, so a repo's own git config (fsmonitor and similar) can't run a command during a scan.
  • The login-shell PATH is resolved once per app run, and storage payloads share one date formatter.
  • All safety rechecks before deletion are unchanged.

Fixes INC-485

Testing

  • Two new tests in programaTests/StorageCategoriesTests.swift: scan count per clean, and git hardening. They compile but were not run locally; CI runs them.
  • Not tried in a running app.

Demo Video

Not applicable, no visible UI change.

Checklist

  • Tested via CI
  • I added or updated tests for behavior changes
  • I updated docs/changelog if needed (not needed)

@arzafran
arzafran merged commit 620f8d3 into main Nov 4, 2026
12 checks passed
@arzafran
arzafran deleted the franco/inc-485-cache-clean branch November 4, 2026 22:02
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