Thanks for the very precise report. The cause: a run stopped by its max cycles is paused, not finished. It keeps its consoles so you can add cycles and resume it, and while it is in that state its team stays locked for agent edits. The cancel tool treated such a run as already finished, so it changed nothing while still answering "cancelled", and the team stayed locked until the run was dismissed by hand.
What changes: team_cancel_run now really ends a run stopped by its max cycles. Its consoles are closed, agents can edit the team again right away, and the ticket can start a new run. The run stays in the finished list as cancelled, with the reason the agent gave, so you can see in the morning what happened. When a run had already finished, the tool now says that nothing was changed instead of claiming it cancelled it, and team_finalize_run refuses a stopped run and points to the two ways out (cancel it, or add cycles). The fix will be in the next release.
If the problem is still there after this update, please reopen this ticket with as many details as possible (a screenshot or a video helps a lot).