Knowledge Representation for Task Decomposition
A decision tree for each domain of tasks to encapsulate the decomposition along the functional axis
Each node contains a subtask description, requirements, and constraints, but also an adaptable port-based agent implementation
Use and/or tree, but I think something more complex may be necessary
To find viable decomposition, search the tree for solutions where constraints are satisfied by the available capabilities