Failed module reading [HELP]

Good night my friends …
First I would like to give Happy New Year to all members and we have a lot of prosperity in the year 2020.

I have a BOT for personal use, and often do some adjustments to better serve the what I expect, these days I noticed that he is a failure that can not solve.

At the beginning of the implementation of BOT, it scans all modules of my ship and starts to run, I did a routine to check when a target is below 20km and use the Warp Disruptor.

This routine works normally, but in some cases (rare) it to use the Warp Disruptor, the module is there, completely inactive (as if the BOT had erased from his memory the module information).

And so I have to just put the mouse on top of the module (to show the information it) and the BOT back to use (according to routine) in the normal way.

It seems to me that at some point, the BOT erase from his memory this module, so I need to put the mouse over, for him “to read again.”

Anyone have any idea what might be going on or any solution for this?

The routine is:

			if (null != targetSelected)
				if (shouldAttackTarget && targetSelected.DistanceMin <= 30000)
					var wd = bot?.MemoryMeasurementAccu?.ShipUiModule?.Where(m => m?.IsWarpDisruptor(bot) ?? false).FirstOrDefault();
					if (wd.IsActive(bot) == false)
						yield return new BotTask { Effects = new[] { wd.MouseClick(BotEngine.Motor.MouseButtonIdEnum.Left) } };
  				static public bool IsWarpDisruptor(this Accumulation.IShipUiModule module, Bot bot) => module?.TooltipLast?.Value?.TitleElementText()?.Text?.RegexMatchSuccessIgnoreCase("Warp Disruptor") ?? false;