social.colibri.beta.thread

A thread's configuration, including the link to the channel it belongs to. Lives at key 'self' in the thread's own space and is written only by the community.

Repository @colibri.social did:plc:mprdjqjluoswa7awzggaggj3 namespace authority
Details · record, key literal:self
Kindrecord
Record keyliteral:self
Authoritybeta.colibri.social
Indexed

Record

record · key literal:self

Properties

The message the thread was opened from. Absent on a thread opened from scratch. Its space stays where the thread was opened even after the thread moves to another channel, which is what drops the thread's marker out of the old channel without losing the quoted message.

Who opened this thread on another service. Honoured only when the community itself wrote the record.

channel

requiredstring · space-ref

The text channel this thread belongs to. Moving the thread to another channel rewrites this field.

closedAt

string · datetime

When the thread was closed. Absent on an open thread. A closed thread still accepts messages, and the next one reopens it.

createdAt

requiredstring · datetime

When the thread was opened.

createdBy

requiredstring · did

Who opened the thread.

locked

boolean

Whether only members who may manage threads can write in this thread. Absent means unlocked.

name

requiredstring

The thread's title.

  • minLength: 1
  • maxLength: 128

Members that may read this thread in addition to visibleToRoles.

itemsstring · did

A member permitted to read.

Roles that may read this thread. Empty or absent means everyone who can read the parent channel can read the thread. A non-empty list makes the thread private: the community declines space credentials for it to anyone outside the list, so it is enforced by the protocol rather than only by a read handler.

itemsstring · record-key

A role permitted to read.

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • A thread as the AppView serves it. The thread's identity is its space.

  • A thread beside a text channel. The space key is the thread's identity, and the thread's own configuration is the social.colibri.beta.thread record at key 'self' inside it. That record carries the link to the parent channel and only the community may write it, so a thread cannot claim a channel its community did not put it in.

  • social.colibri.beta.thread.create

    procedure not from the namespace authority

    Opens a thread beside a text channel. This creates a space for the thread, then writes the thread's configuration record at key 'self' inside it. The anchor message is referenced rather than copied, so it stays in its author's repo in the channel where it was written.

  • A thread in a channel

  • A channel's configuration. Lives at key 'self' in the channel's own space. The space type says whether it is a text or voice channel, and the space key is the channel's identity.