Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement clarifications for the PUT _matrix/client/v3/pushrules/{scope}/{kind}/{ruleID} endpoint #2870

Open
zecakeh opened this issue Nov 9, 2022 · 0 comments
Labels
C-User-API F-Push spec-compliance Fix something that doesn't comply with the specs T-Task Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.

Comments

@zecakeh
Copy link

zecakeh commented Nov 9, 2022

Two PRs were merged lately with clarifications to push rules, and specifically the PUT _matrix/client/v3/pushrules/{scope}/{kind}/{ruleID} endpoint:

Although those were partly based on Dendrite's behavior, a few changes are needed in PutPushRuleByRuleID to be spec-compliant:

  1. The rule ID cannot start with a dot as it's reserved for default push rules, and those cannot be overriden.
  2. m.rule.master is always the rule with the highest priority, even higher than user-defined ones.

I believe a database migration needs to be written to make sure that no server-default pushrules were overriden and m.rule.master is the first.

@S7evinK S7evinK added spec-compliance Fix something that doesn't comply with the specs C-User-API labels Nov 9, 2022
@kegsay kegsay added F-Push T-Task Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks. labels Dec 6, 2022
kegsay added a commit that referenced this issue Apr 14, 2023
partly takes care of #2870
by making sure that rule IDs don't start with a dot.

Co-authored-by: kegsay <kegan@matrix.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-User-API F-Push spec-compliance Fix something that doesn't comply with the specs T-Task Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.
Projects
None yet
Development

No branches or pull requests

3 participants