It depends a bit on how you "restart" the calculation.
If you use the method of passing an scf object under the keyword "self_consistent_calculation" to the function
executeSelfConsistentCalculation(), then ATK assumes that you do so because the calculation did not converge (perhaps because of crash, or not reaching convergence within max number of steps allowed). In that case, the only thing that makes sense is to take the parameters from the checkpoint file.
If you want to change the parameters, then you should instead pass the self-consistent object (restored from the NetCDF file) under the keyword "initial_calculation". In this case, all parameters are read from the new method, and you can also change the positions of the atoms if you wish. You can not, however, change the basis set or the number (in fact, even the order) of the atoms, since there needs to be a 1-to-1 mapping between the density matrix in the old and new systems. This is quite useful to get a head-start in cases where you have a converged calculation, and just wish to increase the mesh cut-off, k-point sampling, or something else (or, as mentioned already, move the atoms a bit), since the path to convergence most likely is shorter from the converged calculation than from scratch. (This is not always true, but in most cases it is.)
In either case, the electrodes are recalculated. In 99% of all systems, the electrode calculation takes only a fraction of the total time, so in the big picture it doesn't really matter, although I agree it can be a bit frustrating where you are trying things out
You can try to use the "initial_calculation" even if your calculation is not converged, but the state saved in the NetCDF file might be a worse starting point than scratch (or not...). It depends on how close to convergece you came in the first run.