Clean obsolete Extentions during client synchronization

Include the prepared cleanup of both client roots while preserving manifest-listed files and unrelated user state. Verified on Windows through FVM: full formatting and analysis, all 76 tests, production dry run, x64 build and DSA signature verification.
This commit is contained in:
2026-10-10 16:36:51 +04:00
parent c802839688
commit 7799b33239
6 changed files with 43 additions and 8 deletions
@@ -77,6 +77,8 @@ void main() {
'WoW/WoW.exe',
'WoW/old.dll',
'WoW/Data/old.MPQ',
'Extentions/bin/extension.dll',
'WoW/Extentions/old.txt',
];
final untouchedPaths = [
'Cache/cache.bin',
@@ -105,6 +107,9 @@ void main() {
await Directory(
service.resolveClientPath(rootDirectory.path, 'Data/unused/nested'),
).create(recursive: true);
await Directory(
service.resolveClientPath(rootDirectory.path, 'Extentions/empty'),
).create(recursive: true);
final manifest = await _manifestForPaths(
service,
rootDirectory,
@@ -129,6 +134,10 @@ void main() {
'Data/empty',
'Data/unused/nested',
'Data/unused',
'Extentions/bin',
'Extentions/empty',
'Extentions',
'WoW/Extentions',
]),
);
for (final path in snapshot.stalePaths) {