Each edge i connects two nodes (u,v). Store a mapping edge_to_node[i] that tells you which node stores edge i. This is the child node in the parent-child pair. When you read edge i with endpoints (u,v), determine which is the parent using depth or parent array.
Store edge i at the child node. To update edge i to ti, find v = edge_to_node[i] and update pos[v] in the segment tree to ti. This is a single point update.