Copyright © 2026 Unity Technologies
Steps to reproduce:
mkdir -p "$HOME/probe-alpha/Assets" "$HOME/probe-alpha/ProjectSettings" printf 'm_EditorVersion: 6000.6.2f1\n' > "$HOME/probe-alpha/ProjectSettings/ProjectVersion.txt"
Actual results: At step 5 the removed project is back in the list. Measured directly against hub.db:
after step 3 (removed) probe rows = 0 registry = 79 after step 4 (restart) probe rows = 0 registry = 79 removal held after step 5 (refresh) probe rows = 1 registry = 80 removal undone
One press reverses every removal, not just the most recent. Removing three projects in succession without refreshing empties the list, and a single Refresh restores all three:
removed probe-1 rows = 2 removed probe-2 rows = 1 removed probe-3 rows = 0 list empty one press of Refresh projects rows = 3 all three back
No confirmation is shown before the import and no summary of what was imported is shown afterwards. The removal dialog states that the files remain on disk and explains how to add the project back, so the Hub presents re-addition as something the user does deliberately. On this machine, the project location is the user's home folder, so one press pulls in every Unity project anywhere beneath it, including every project the user has ever taken out of the list.
Expected results:
Refresh projects" leaves explicitly removed projects out, or it says what it is about to do and shows what it added. Removing a project from the Hub should not require avoiding a button called "Refresh" for the removal to stick.
The Hub already has this mechanism for Editor folders. excludedEditorFolders.json records folders the user does not want picked up by scanning, and an equivalent list for projects would let Refresh honour a removal instead of reversing it.
Reproducible with version: 3.22.0-beta.1
Tested on (OS): MacBook Pro - Golden Gate 27.0
Issues you vote on will appear here