Hi Bob.
I think you might have misunderstood the purpose of the questions. I'll explain with some examples:
When setting up your certification, you can currently choose a recertification expiry method. Your option 1 corresponds to "use completion date" and your option 2 corresponds to "use fixed expiry date".
Lets say your certification was set to "use completion date", with 1 year period, 2 month window period. A user completed the original set of courses on 1 Jan 2015 and is due to expiry 1 Jan 2016. It's now 1 Sept 2015 and you need to add a course to both certification paths. At this point, you could either say "ok, they're certified for now, let them do the new course when their window opens on 1 Nov 2015", or "they need to do the course now, because their certification has immediately become invalid". If they have to do it now, one way to achieve that is by putting them on the primary certification path and marking them uncertified. We'll assume that we will leave the already completed courses complete, rather than resetting them like the "window open" event does (although some clients might want to have them all reset). It's now 1 Oct 2015 and they complete the new course, thus having all requirements complete for primary certification. Because we've chosen "use completion date", a new expiry date is calculated as 1 Oct 2016. Sound ok? Or should their certification still be due to expire 1 Jan 2016?
What happens if the new course is only required on one of the certification paths? Say the two paths have quite different content, and the new course was only added to the recertification path. Compare two users, one who has just completed primary certification, the other has just recertified. The recertification has not opened for either. You now add the extra course to the recertification path. Should the recertified user be required to complete the new course, while the other user isn't? What state is the user in while they complete the extra course? They can't be marked uncertified, because they would be required to do the primary certification path courses. If their latest recertification was somehow reversed, to a point just before they recertified, then it might be that their expiry date has now passed and they would immediately expire, putting them on the primary certification path.
Another situation is when the new course is added to the primary certification path only: What happens to the certified/recertified users? I'll let you try to think this one through.
The "use fixed expiry date" method is in ways both more and less complicated. The way it calculates the next expiry date should be resilient to the unusual circumstances (I mean the dates should stay in rhythm regardless of what happens), but depending on the settings and timing, the expiry date could jump forward one whole active period unexpectedly (well, it's expected from the algorithm but not expected by the users).
The point I'm getting at is that it's a much more complicated problem than it seems at first glance. I'm not sure of the correct way to deal with most of these situations, and I'm sure there are a lot more relevant situations that I haven't thought of. I suspect that the answer will be different from client to client, so it's unlikely that a simple solution could be agreed upon. If we wanted to make any change to the behaviour, we'd have to have concrete and consistent solution to all these questions and more. Our current concrete and consistent solution is "do nothing when certification requirements are changed, let users do the new requirements when they are naturally required for certification or recertification".
Nathan