docs: public static <T> void recordOperationSteps(final OperationContext context,
          final Map<T, ModelNode> operations,
          final Map<T, ModelNode> responses,
          final OperationHandlerResolver handlerResolver,
          final boolean adjustAddresses,
          final boolean rejectPrivateOperations) throws OperationFailedException {
  
          assert responses != null;
          assert responses.isEmpty() || operations.size() == responses.size();
  
          boolean responsesProvided = !responses.isEmpty();
  
          PathAddress currentAddress = adjustAddresses ? context.getCurrentAddress() : null;
  
          List<OpData> opdatas = new ArrayList<>();
          for (Map.Entry<T, ModelNode> entry : operations.entrySet()) {
              ModelNode response = responsesProvided ? responses.get(entry.getKey()) : new ModelNode();
              assert  response != null : "No response provided for " + entry.getValue();
  
              ModelNode op = entry.getValue();
  
              PathAddress stepAddress = PathAddress.pathAddress(op.get(OP_ADDR));
  
              if (adjustAddresses) {
                  stepAddress = currentAddress.append(stepAddress);
                  op.get(OP_ADDR).set(stepAddress.toModelNode());
              }
  
              OpData opData = getOpData(context, op, response, stepAddress, handlerResolver, rejectPrivateOperations);
              // Reverse the order for addition to the context
              opdatas.add(0, opData);
  
              if (!responsesProvided) {
                  responses.put(entry.getKey(), response);
              }
          }
  
          for (OpData opData : opdatas) {
              context.addModelStep(opData.response, opData.operation, opData.definition, opData.handler, true);
          }
      }