Thanks to everyone who replied.
Sorry I haven’t been paying more attention to the answers — my posting wasn’t well timed from my own perspective as I was both recovering from an illness (Covid) and wrapping up the year at work - and now I’m finding myself busy with family for the holiday season. My own silly fault, I should have been a bit more restrained and held off for a couple of weeks!
Just a clarification that I am using CLPFD because I’m taking it to be recommended generally - not because I thought it would magically help this particular circumstance. I did tacitly suppose it might constrain the N in length, but I hadn’t really thought it through and the documentation for length made it clear it won’t do that.
(In my defence, other people make this assumption too )
At the moment I’m leaning towards kwon-young’s solution, partly because I like the clear distinction between the two cases. I will need to think about it a little more in a couple of day’s time…