Sebastian I worked on the logic to when check for updates itself, will give more detail when I share the code.
My code contains a logic now that it not only checks for updates accordingly to the intervall in the settings. But it also checks every 45 secons while that intervall is running(if no eopkg instance is curently running) if the transaction number in eopkg history has changed:
sebi@solus ~ $ eopkg history -l 1 | grep "#"
Vorgang #1201: Depot Update
sebi@solus ~ $
If the number has changed, there must have been an eopkg operation been running like install, remove, update, rollback not triggered by the script itself, but by the user in terminal or with gnome software, discover.
In that scenario, the indicator might show a wrong status. I.E it shows updates that already have been installed, or doesn't show updates that are availabe.
So, if the transaction number has changed, the script triggers a check for updates immediately and kind of resets the intervall timer.
I plan to add an additional check. Let's say you have set timer to 60 minutes. The timer is at 15 minutes. You then suspend computer. Next day you get back to computer. Now timer would check in 45 minutes if updates are available, that might be already be available for 12 hours.
That's why I plan to add a check along with the has transactional number changed check: is last check for updates longer ago than the time set in interval. If so, computer must have been in suspend, and you better trigger check for updates now.