Skip to main content

Policy lists

Policies

Policies are what Matrix uses to describe a recommendation for an action against an entity. An entity can be any first class Matrix concept, but the most common entity is a Matrix user. A recommendation is just a flag that describes what the policy is for. For example, banning a user from a room with Draupnir usually results in the creation of a policy of the type m.policy.room.user with the recommendation m.ban. You can read about in the Matrix specification here

These policies are stored in Matrix rooms as state events. When this happens, we can refer to the room as a policy room. If you are unfamiliar with state events, you can read our Matrix room essentials documentation here.

Policy room vs policy list

A policy room is a Matrix room that contains policies. A policy room is also a policy list, however Draupnir may use the term policy list to also refer to what is effectively virtual policy list. A virtual policy list would be a collection of policies where the list is not backed up by a single Matrix room as the source of the policies. Internally, Draupnir actually collects all the policies together and places them into the same virtual policy list.