However - I feel it is wrong to assume the player doesn't want to save replays in the case of an incomplete level.
Yes, sometimes, the player wants to save replays of incomplete levels. Then he will save manually.
On the other hand, nothing is lost by not saving an empty replay.
First, I call this (d): When a replay would be autosaved, if it is empty, we don't autosave.
And then I'm thoroughly confused
because implementing (d) seems entirely orthogonal to the original issue, or to (a)/(b)/(c). Consider: We start playtesting the exitless map, we win immediately, we assign some skills, then we exit. We have a nonempty replay that solves the map, and it should be autosaved according (d), but I doubt that we want that.
Also, there are levels where the intended solution is empty. Under (d), the player ends with incomplete pack coverage after solving the entire pack.
(c) a special case is introduced where the "save requirement gets capped to number of lemmings that there's exit capacity for" rule doesn't get applied on levels with no exits.
Still, I feel like this is the best. If the level is a sandbox, author sets the save requirement to 0 and whatever the player does, player will solve and game, enacting rule (c), will autosave replay. Edit: Here, you can additionally filter the empty replays with (d), which is very good.
Edited for clarity: If an unfinished puzzle with author's requirement ≥ 1 gets playtested without exits, (c) won't cap, therefore the replay is never solved because the save requirement is unreachable, and replay will never autosave under (c).
-- Simon