Skip to content

connector: add optional Telegram portal approval workflow#1071

Draft
nikolya-prodigy wants to merge 1 commit intomautrix:mainfrom
nikolya-prodigy:pr/portal-approval-workflow
Draft

connector: add optional Telegram portal approval workflow#1071
nikolya-prodigy wants to merge 1 commit intomautrix:mainfrom
nikolya-prodigy:pr/portal-approval-workflow

Conversation

@nikolya-prodigy
Copy link
Copy Markdown

Summary

Adds an optional Telegram portal approval workflow.

When portal_approval.enabled is true, automatic portal creation can be controlled per chat type:

  • private chats
  • bot private chats
  • groups
  • supergroups
  • channels

Chats that are not auto-created can be stored in a pending list and managed from Matrix commands:

  • pending
  • allowed
  • denied
  • allow <number>
  • deny <number>
  • unallow <number>
  • undeny <number>

The pending list stores readable chat titles/usernames plus stable numeric approval IDs so admins do not have to copy raw Telegram IDs.

Additional changes

This branch also avoids creating ghost users from passive/background updates in several paths, so rejected or pending chats do not populate the Matrix user list before they are approved.

It also includes the cleanup-users admin command as a conservative bridge-side cleanup tool.

Compatibility

The feature is disabled by default. Existing behavior should be unchanged unless portal_approval.enabled is set.

Testing

  • go test ./pkg/connector/...

Notes

This is opened as a draft because the feature is intentionally policy-heavy and I would like maintainer feedback on the preferred UX/config shape before polishing further.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant