Oh dear, my first test launch is listing badly.
When the lighting level hit my (arbitrary) threshold, about 5 mins after sunrise, it triggered the correct state transition. Clock then began counting seconds. Idea being, when it hit the same threshold this afternoon, it would calculate calculate Solar Time offset and synchronise the quartz controlled clock.
Unfortunately... a bug. I'd simulated the whole cycle by switching a desk lamp off/on, but I'd been impatient, and used 'days' that lasted only a minute or two. That all worked but when it encountered a real day my counter went skew whiff after 256 seconds.
Checking the source code it is a very obvious and trivial bug, exemplary of the perils of assembly language, an 'addwf' mnemonic that needs to be 'addwfc'. But I have to wait half a day before a chance to start another test.
Thinking further I'm reasoning that, in addition to estimating Solar Noon by sunrise/sunset, a very useful additional parameter will be to count seconds between sunrise transitions. That should give me the length of a solar day, and would be self compensating no matter which direction I am facing, or whether in the shade of mountains or buildings. And Solar Day length opens up all sorts of avenues for deductions and assumptions.