The problem is that the 'Not Run' state is handled as a composite of the test result itself, so it isn't possible in NCrunch's model for a test to have a 'Not Run' status at the same time as holding a previous pass or fail result. To avoid reporting pass/fail results from previous runs we're actually overriding the result of these tests inside the model to set them to 'Not Run'. This is how we can keep the reports consistent with the console run.
It's not impossible for this sort of logic to be changed. So for example, the report could consider a test as 'Not Run' simply by taking the time of its execution and comparing this with the start of the console run. This would, however, be a totally separate mechanism that would likely take some time and effort to get right. The bottom line is that in the current design, we don't report old results and would need to change quite a bit to make that work. Given the sort of UX complexity we'd need to introduce to report old results, I think this is better handled in your own build/CI system by parsing NCrunch logs or reports.