You probably have a couple of suite “contact” files left over from unclean shutdowns, e.g. you (or root user) killed suites with kill -9 PID or the machine got rebooted. (If a Cylc scheduler shuts down cleanly, it removes its contact file on exit).
The contact file contains, among other things, the port that the suite daemon is listening on for commands etc. Your gscan GUI looks for these contact files in your cylc-run directory, assumes they belong to running suites, and connects to the ports it finds.
If your suites are actually no longer running though, the listed ports may have been used by someone else’s suites that started up since yours got killed. So gscan connects to those, and displays the summary data. This is annoying/confusing but safe - if you don’t own the suite you will only see the basic summary data and can’t execute commands (gscan can optionally show other users’ suites on purpose, with the right options).
Contact file locations: ~/cylc-run/<suite-name/.service/contact (note the dot in .service)
So get gscan to show port numbers, and grep for those in your contact files, confirm those suites really aren’t running and delete the contact files.
Or just look for any contact files present in the service directories of suites that are not running, and remove them.