Can't use strings of timestamps as IDs

I’ve got a bug where I can’t get the edge to appear as expected between the two nodes when I use a timestamp as an ID.
When I step through my code, I’ve verified that the nodes have the expected IDs and the edge is created between the nodes with those IDs. I’ve verified that I can create the edge as expected. And, I’ve added a condition to prevent an edge between a node and itself. But, what we’re seeing is that the IDs are being treated as if they’re one.
If I use simpler strings as IDs, it behaves as expected.

Screenshot 2023-12-14 at 1.23.25 PM

Please provide a small sample input graph that fails.

To take a wild guess at what is going on, note that : is a port separator, not a character you can use in identifiers, DOT Language | Graphviz.