mirror of
https://github.com/element-hq/synapse.git
synced 2026-08-14 13:40:39 +00:00
Adds the recipient_permission push rule condition (unstable kind org.matrix.msc4506.recipient_permission): matches iff the user the rules are being evaluated for has a power level >= that required to perform the power-levels action named by `key`. Uses it in a new default override rule .org.matrix.msc4506.rule.knock (inserted before .m.rule.member_event, which otherwise suppresses all member events) so that members who can invite -- i.e. accept the knock (MSC2403) -- are pushed when someone knocks. Also lifts the member-event fast-path in the bulk evaluator for knocks, which otherwise evaluates rules for nobody (a knock's sender == state_key). Gated behind experimental_features.msc4506_enabled. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Uk8aPxHn3BHCe52L226jdG