Parallel timelines layout

Your goal was to make a set of nodes (and edges) strictly vertical. A common goal.
But to my knowledge, the only way to guarantee node alignment to be vertical (or more commonly horizontal) is to include the nodes in a subgroup that has the rank=same attribute, like so:
{ rank=same a b c d e }
(fyi, I tried this on your smaller graph with rankdir=LR, but the resulting graph was not “right” - the sequence of nodes was confusing). You really seem to want, {file=same a b c d e} - but Graphviz does not support this concept. (file - as in rank and file - is equivalent to column=same)

Anyway, I don’t think group guarantees anything other than an effort to prevent multi-line or splined edges. i.e. I believe that diagonal lines (edges) are OK. Not what you want.
Here is more info on the group attribute: A question about the GROUP attribute: what does STRAIGHT mean? - #2 by erg

To be complete, using clusters does not guarantee vertical/horizontal alignment. But it works in this case.

Others have also asked for vertical (file) alignment capability. Unfortunately, dot does not provide it.

Dot ignores positions (pos attribute) as input. You can edit them (to anything legal) and they will have no impact. (Neato -n and gvpr are the only programs that use position values).
Here is a command line that is more direct:
gvpr -c -f group2cluster.gvpr yourfile.gv |dot -Tsvg >yourfile.svg << or any output format, like png