toString

open override fun toString(): String

The chain that will produce this value, as far as a value holding no plan can say.

The step is named by the index its handle was created at, which after TransactionPlan.addPlan is not where that step sits in the merged plan. TransactionPlan.describe has the plan in hand and says where the step really is.