Currently, the Special:Watchlist button on en.wikipedia "Mark all pages visited" does so for all pages at the time of the press, thus marking as visited all pages newer than the currently displayed list, but which the user has not yet seen on the watchlist. This forces the user to manually note whether new pages were added in the process.
The obvious solution is to mark as viewed only up to those pages already displayed on the watchlist - i.e. that were last updated before the watchlist was created. It should not be difficult to include a hidden timestamp in the button for transmitting back, to be used in choosing up to when the "marked as visited" should take effect.