At the start of every minute
Each minute starts with a minute marker comprising 500mS carrier off and 500mS carrier on with the details of this minute having been encoded in the 58 (negative leap second), 59 (normal), or 60 (positive leap second) seconds preceeding.
The signal is shown below (inverted).
Personally I don’t find the official specification at http://www.npl.co.uk/upload/pdf/MSF_Time_Date_Code.pdf very clear on exactly where the minute transition is relative to the two 500mS sections so I have been doing some investigation and came across an interesting page at http://wwwhome.cs.utwente.nl/~ptdeboer/ham/sdr/leapsecond.html which shows a waterfall plot of two time signals during a leap second transition.
And if you zoom in very closely you can see the waterfall for just one second of MSF signal timestamped against a locally NTP synchronized PC clock, my interpretation of this is that the start of carrier off is the minute transition. i.e. the carrier is off for the first 500mS of the new minute and then on for the next 500mS. (Note: Signal in my oscilloscope screenshot above is inverted).
As an aside it is very interesting to discover http://www.websdr.org/ which allows you to listen to signals around the world over a huge range of frequencies. For my purposes WebSDR in Peterborough, England (IO92VO) at http://cambs-sdr.no-ip.org:8901/ yielded a nice waterfall of the MSF signal although I’m not sure of the latency of these feeds so won’t rely on them for determining the minute transition.
I’m pretty happy to have concluded that the minute starts with the carrier turning off for the minute boundary. i.e. a positive edge for my inverted signal. However clearly the minute marker is yet to arrive at this point so my software implementation will use the initial transition but combine this with receiving the preceding of A-bits 01111110, once these two conditions are met I will consider a good minute mark.