At the moment it seems not possible to archive a Conpherence chat. But that would be somehow natural.
Proposal
- understand how "is disabled" is saved in other applications and do the same.
Exploration 1.1: how a status is implemented in Projects?
Project is weird, is a varchar but in only contains integers 0 (active) and 100 (disabled):
$ SHOW CREATE TABLE phabricator_project.project; `status` varchar(32) NOT NULL` -- no key on status
Exploration 1.2: how a status is implemented in Dashboard app?
Dashboard has a varchar saving active and archived:
$ SHOW CREATE TABLE phabricator_dashboard.dashboard; ... `status` varchar(32) NOT NULL -- no key on status
Exploration 1.3: how a status is implemented in File Meme app?
The Meme app seems to use the most efficient way, just a tinyint:
$ SHOW CREATE TABLE phabricator_file.file_imagemacro; ... `isDisabled` tinyint(1) NOT NULL, KEY `key_disabled` (`isDisabled`)
→ we may want to proceed like in the File Meme app that seems the most efficient way, so, with a tinyint
→ we may want to add a database key on this disabled field, since it will be frequently queried and it will avoid a full table scan, and we will cover the situation of a Phorge with tons of chats in your Phorge (see next line)
- only show active chats from the page /conpherence/ (and curtain, top and floating)
- add an "Archived" filter in https://we.phorge.it/conpherence/search/ and as default only show active chats