The documentation implies that a "step n" or "as" directive must be supplied for bc-rule clause plans, but it appears to be sufficient to simply provide the plan statements without this specification.
In addition, I frequently encountered a complaint that there was no plan for a clause. This was usually because a clause in whatever rule was selected to prove that clause had a plan but the current clause had no plan. It took quite some time to puzzle out that this was the reason for this "no plan in clause N" error. Better documentation would help a lot here, although I wonder if it would be appropriate to automatically generate '$$()' or 'return $$()' plans for these clauses? As it is, deciding to add a plan to a clause somewhere near a leaf of the proof tree can have a fairly significant ripple effect here.
It wasn't obvious that python clauses can't have a plan (maybe it was stated and I overlooked it).