so, lets prove me wrong, re-start the pool and lets see what happens! :-)
Do you want to say that Kano is not interested in finding blocks by his pool? where is the logic?

Indeed - I only restart the pool when it needs to be.
Due to: resource issues, changes, or it restarts itself if it crashes.
Restarting KDB has no effect at all on your work/block finding data unless it cascades into a pool restart also
(which is rare but not 'never')
Yes indeed it is fun to think that restarts are helpful, but when it degenerates in to comments about code problems ... well ... OK ... fun gone

I am not doubting your ability's at all. In fact I know you know what you are doing. I just made a comment that it has happened a few times that these long spells have been fixed after a pool restart. Yes, I may notice that moreso than when there was no restart.
I understand the miners do the work, but the work is issued to them by the pool. If the work issued or the returned work is not generated properly, or logged properly, or some small thing is happening that is not noticed which yields bad work from miners, or not even that, just missed or mis-handled work of a miner. Maybe it happens, maybe there is some set of circumstances that occur that is not "visible"
Look at it this way... and I know this has happened to me with other stuff. You write your code, you have gone through it more often than you can remember. If your looking at it and expecting it to be correct, you might gloss over something. I do not mean any disrespect by any means. I have had people look over stuff I have done, and seen something, and its like.. oh yeah... opps. If there was an issue, i am sure you will find it, or have found other things as you have mentioned. Maybe the issue is not even with code, it could be something else. Bad transactions that are put into a block that effect the results, but hard to know which transactions are bad. And when I say bad, I do not mean one without proper funds, I mean with some other thing someone discovered that can corrupt data etc...
A good example is... remember when android phones could be hacked by just sending it an a particular SMS message. No one thought that would ever be the case, but somebody found out how to do it.
At the end of the day, Bitcoin has had alot of people doing alot of bad things to gain the advantage.
So, if I might be noticing these events, lets start a log.... well, actually you probably have a log of re-starts.. look back and find the dates and see if just preceeding it there was low block finds, and then more blocks found just after. maybe there is another event that happens that causes it, if it is even there. Maybe there is a set of circumstances that make it happen that isn't discovered yet.
Again, I am not trying to be disrespectful, I know that you are perfect if your work and knowledge. you understand the inner workings alot better than any of us. I am just saying it might be worth looking at it from a different angle. ( Again, not code related, but a set of circumstances, internal or external. Maybe a bad miner like the one you had sending invalid shares for over 2 months that you found. You said that it didnt send one valid share for that 2 or 2+ months, and that it doesnt affect the pool. So if someone had knowledge to modify miner code to make it send back all invalids, they probably know that this would not harm the pool. So why are they doing it? There has to be more to that one. )
Drukyulgoods here. Im coming up on my 3rd year in Kanos (pronounced: KaahNos) fine pool. I am a lurker on the forum but every now and again when things matter, I post something.
Your fine points are noted but speaking from history they might need to be revaluated. Restarting the pool is irrelevant to the pool cracking a tough block. Period. Primarily it is luck, followed by diff values, followed by the pool size. Or for an inside joke, please sacrifice a chicken or wish for luck from your favorite avatar.
It is not the code nor the pool infrastructure. You sit mining in a pool with ?TH (I didnt look) but with a pool owner who not only contributes immensely to the code internals of our endeavors but has from day one been dedicated to the pool members offering a more than fair return while providing total support and full communication.
Im not a big miner (40TH max). After losing countless funds going with AntPoo, Sluck, and renting machines from whomever, I found Kanos pool and gave it a try. Thankfully I never looked back and the % of my long term returns has significantally outpaced my IRA within the same timeframe. Ive done great! Enduring the horrible droughts and celebrating the block after block after block hits.
For my part, I went to post #1 and spent a month read every single one of the posts and continue it to this day. Something that I hardly suggest to all.
Hang in there as I have Aerial. Or jump. Its your choice but it is Not Kanos code.