Task support for status command
Considering the status command (and ultimately for UIs, display of status information) - how should TaskInterface best expose this information? Should it support a single status()
operation which bundles various stats together in a single call, or should it simply expose its components (extractor/keymap in particular) and let the controlling application gather the info it needs?
In the second case, we will almost certainly want to expose the components for the sake of other tools (e.g., a task configuration editor) anyway. The main downside, I think, would be that complementary tools (CLI/UI versions of a given tool) would be duplicating some things, but a trait could handle that.
Now that I write it out, that seems like the best approach. Specifically, to support the basic status functionality, TaskInterface needs:
public function getExtractor() : ExtractorInterface;
public function getKeyMap() : ?KeyMapInterface;
// First we need to implement a means to track the status...
//public function getTaskStatus();