Phabricator/Project management/Tracking tasks

A "tracking task", as it existed in now-defunct Bugzilla, was an umbrella task which specified no work itself and had no defined endpoint, but which blocked on other tasks; for example, "Fix the docs". These tasks tended to exist forever, and really represented a category of work, rather than a chunk of work.

Creating new tracking tasks (tasks that "automatically" get resolved when all their dependency tasks are resolved) in Phabricator is discouraged. It is recommended to create a project instead.

Existing tracking tasks (see T4007 and the tracking project) can be converted to projects or remain regular tasks with dependency/blocker tasks. If you would like to convert a tracking task into a project, follow the regular process to request a new project and announce the conversion proposal in the tracking task.

Sub-tasks and blockers of "real" tasks (a task that describes an actual problem to fix and does not get resolved by just fixing all its dependency/blocker tasks) are of course fine. Umbrella tasks that represent a specific time period of work, such as a monthly goal, are acceptable when a sprint project won't work. And "Epic" stories, which represent a large but reasonably specific chunk of work, and which will be considered done when all the sub-tasks are resolved, are also acceptable.

Technical steps to perform a conversion
These are steps for performing the actual conversion, not for the proposal to convert:


 * If the request to convert a tracking task into a project has been made in a dedicated task, make sure that in the existing tracking task a comment has been added to create awareness and consensus: "Note that this tracking task will soon be converted into a Phabricator project, as proposed in {TXXXXX}." Wait a few days before going ahead with the following steps for the actual conversion.
 * Have batch-editing permissions
 * Create the requested new project
 * Go to the tracking task
 * Select Search… > Search Subtasks
 * Increase "Page Size" value of that search if needed (default is 100)
 * Select all tasks
 * Batch-edit the tasks and add the new project
 * If you run into a timeout, repeat.
 * Add subscribers of tracking task as project members to the new project.
 * Edit the tracking task:
 * Remove all subtasks
 * Change the status to Invalid
 * Change the priority to Low
 * Add the new project to the tracking task
 * Remove the task assignee if there is any
 * Change the task title to "[DO NOT USE] [superseded by #]"
 * Update its summary to "This tracking task has been superseded by the project #XXXXXXXXX as requested in {Txxxxx / above}. Please use / watch (https://www.mediawiki.org/wiki/Phabricator/Help#Receiving_updates_and_notifications) the project #XXXXXXXXX instead of this task."
 * Also add the new summary as a comment on the task (as mail notification settings differ)
 * Move the task to "Transition completed" column on #Tracking project workboard