Since the specs for a task may already have been defined by a parent either during runtime or statically, it is sometimes enough for the user to just specify the id of the task they would like to push. As a convince, users can just push a string representing the id, since it will probably be a common pattern that tasks will be pushed with a spec that just includes its id. Internally we use this feature below.