On a Sunday, both the 1150 and 1250 Holyhead - London Euston Virgin trains services run as a single Voyager as far as Chester, where they are coupled up to another Voyager to run to London as 10 cars. As far as I can tell, the Voyager that is attached at Chester runs with a separated headcode to the one from North Wales, despite forming the same train. Why is this? It seems really unusual.
It also happens every weekday, but in the other direction - the 1710 and 1910 Euston-Holyhead have two headcodes,
1D91/
1Z91 and
1D93/
1Z93. Presumably they both run as 10-car to Chester where the rear 5-car detaches. The headcodes have been like that for a while; in fact, I think it's been that way since the last timetable recast in December 2008. Since this is the other direction, I think that rules out the possibility that it's so you can start the 5-car short at Chester if the portion from Holyhead is late.
The only other idea I had was that there's some computer system that Virgin use for allocating rolling stock to services, and it gets confused with mid-journey attachments/detachments. In particular, they seem to have a separate headcode if, and only if, a unit attaches or detaches without having been, or becoming, a separate service. So the 1710 and 1910 Euston-Holyhead have a separate headcode for the Chester portion, because they just terminate at Chester and don't form a new service immediately; but the 1810 Euston-Holyhead/Wrexham is
1D92 which detaches
1J32. Similarly, with the up trains in the morning,
1R13 joins
1K14, and
1R24 joins
1D25. Because there's already a separate headcode for them to join/divide, they don't need to invent one to make the system work.
Just a guess, anyway...