Originally created by: ilyamxx
Migrated messaging connections can reserve credentials despite belonging to deleted agents, or become impossible to edit because updates change their reservation scope.
Users may receive:
These platform credentials are already assigned within their allowed scope
The conflicting connection may be hidden from normal agent views, leaving no clear recovery path.
On September 8, 2026, I encountered this with the Freor agent:
The UI did not identify the conflicting connection or provide a recovery action.
This incident prompted the code investigation above. We have not confirmed whether either identified migration defect caused this particular failure.
Two inconsistencies exist in the shared connection lifecycle:
legacy-agent:<id> scopes, but updates unconditionally replace those scopes with global. Even a settings-only edit can then conflict with another connection.Deleting and recreating the affected connection does not help if another connection still holds the global reservation.
Both paths affect Slack, Telegram, and Discord in main at bbf77075.
Source inspection and focused in-memory reproductions confirm these mechanisms. Full API/PostgreSQL regression tests remain needed.
Freor’s Slack update/recreation failures prompted this investigation; their exact production cause is not yet confirmed. Teams, tool integrations, and cron delivery are outside this issue.