I have previously worked on GUTS (Google Unified Ticketing System v3) while my employment with Google. They had the feature of "Resolved" which did not meant that the task will be marked as "Closed" at the same time, instead they had "Resolved & Closed" as an additional option.
All the task that were marked "closed/resolved" by general user were only reactivated by the administrator or assignor.
In Phabricator I have implemented the functionality by appending settings for "Done"(self created status) in the maniphest.status.
I will appreciate if a similar feature is incorporated globally. It really helps in differentiating among the tasks that were "completed" and those that were directly closed.