There seem to be a number of problems in this area, starting, I believe, from the addition of national-rail services to the API.
An initial simple example is bus route 358,inbound. There are currently 3 branches: 0, 1 and 3.
0: Crystal Palace Bus Station-Sevenoaks Road/Orpington War Memorial, prevBranches:none nextBranches:1,2
1: Sevenoaks Road/Orpington War Memorial-Tubbenden Lane, prevBranches:0 nextBranches: 3
3: Tubbenden Lane-Orpington Station, prevBranches:1, nextBranches:none
Branch 1 runs via Walnuts Centre. I am assuming that the missing branch 2 is the direct route, not via Walnuts Centre, to Tubbenden Lane and that branch 3 should also have prevBranches 1,2
This problem is repeated in routes R5, R8 and R10.
Turning to national-rail and using greater-anglia, inbound as a (relatively simple) example:
There are 50 branches with many duplicate numbers: 12 x branch 0, 7 x branch 1 and so on.
Additionally there are, at least, 3 branches missing, a 2, a 4 and a 9. Probably a 1 and a 3 as well, possibly another 2.
This all makes it virtually impossible to work out which links belong with each other.
As a further complication, rail branches can be renumbered, apparently arbitrarily, between successive updates, making it difficult to establish what, if anything, has changed on the route.
I would appreciate any assistance/clarification on this.