Current situation
We have numerous team backlog funneling Herald rules like this:
- When all of these conditions are met:
- Project tags include any of { #some_code_project1 | #some_code_project2 }
- Project tags include none of { #team_parent_project | #team_sprint1_milestone | #team_sprint2_milestone }
- Take these actions first|every time this rule matches:
- Add projects: { #team_parent_project }
Currently, after creating #team_sprint3_milestone (as a direct milestone of the #team_parent_project) and not manually adding #team_sprint3_milestone to the "none" Herald rule and creating a task tagged with both #some_code_project1 && #team_sprint3_milestone, Herald will immediately remove #team_sprint3_milestone from the task and add #team_parent_project. Which is unwanted.
So in one sentence, we'd like to eliminate the need to define/edit none: #team_sprintX_milestone
Examples of the problem:
- https://phabricator.wikimedia.org/T366388#9852123
- https://phabricator.wikimedia.org/T367355#9887098
Original task title
"Develop a custom herald condition for maniphest tasks: "projects include any subprojects of ___ ""
Original task description
This would allow us to have herald rules that automatically add the parent project when any sub-project is added to a task.
The main benefit is that we wouldn't need to manually update herald every time a new subproject gets created.

