One additional bit of info on the fatigue system. I was away for the weekend, so my agents stood around with mission reports for longer than expected. When I checked them before handing the missions in, they had fatigue levels that would have been close to what they were previously, when I handed in the missions these fatigue levels went up as expected. Then they dropped to 0% (may have required me to close and reopen the agent dossier view).
My new hypothesis is that agent fatigue does start going down as soon as the mission is complete (unknown if rate is different), but that any reduction is deferred until after the mission hand-in is completed and the incapacitation check occurs. This may also explain some of those “instant recoveries” that people have noticed, when an agent is incapacitated for 30s or less.