Action Metadata
data class ActionMetadata(val name: String, val description: String, val inputs: Set<IoBinding>, val outputs: Set<IoBinding>, val preconditions: EffectSpec, val effects: EffectSpec, val canRerun: Boolean, val qos: ActionQos)
Serializable action metadata