ResearchOS/Wiki

User archiving

When a lab member leaves (graduates, rotates out, switches projects), archiving their account is the right move. Archiving hides them from the surfaces where you pick someone, but keeps every byte of their data on disk and in the lab's history. They drop out of the login picker by default and out of the pickers you use to assign new work (the @mention, share, and assignee dropdowns). The records they already wrote stay readable to anyone with permission.

The LabRoster in Settings. Hover a member row to surface the Archive action.

Archive vs. delete

These two paths do different jobs.

  • Archive hides the user from active surfaces while preserving their on-disk data. Tasks they own, notes they wrote, purchases they logged, all stay where they are. Anyone with read access still sees them. The archived user just stops appearing in the login picker, the @mention and assignee dropdowns, and the active-member jump list on the Lab Overview.
  • Delete removes the user's folder from disk entirely. Their data goes with them. The delete affordance lives on the user picker (a trash icon on each row, documented in Creating a user) and is the right tool only when you genuinely want the data gone (a test account, a duplicate).

Archive is reversible. Unarchive a member and they reappear on every surface as if they never left. Delete is permanent (modulo any archive ZIP you chose to download at delete time).

Where the affordance lives

Only a lab head can archive a member. Open Settings and choose Lab Roster from the left rail. The roster lists every member. Hover any row to reveal an Archive button on the right (you can also right-click a row for the same action). Being a lab head is enough to proceed. Clicking Archive opens a short confirmation dialog so you do not archive someone by accident, and that is the only gate.

What happens on archive

One archive is a single action that does a few things at once.

  1. Stamps the member's onboarding sidecar as archived, with the time and the lab head who did it.
  2. Hides the member from the login picker by default (see filter control below).
  3. Drops the member from the active-member jump list on the Lab Overview, so the people you can quick-jump to are active first (an archived member only resurfaces when you drill into their row to restore them).
  4. Filters them out of the @mention picker, the share dialog, and the assignee dropdown, so you do not assign new work to someone who left.
  5. Keeps their records (tasks, notes, purchases) readable to anyone who already had access. No permissions are stripped, and the comments and announcements they already wrote stay exactly where they are.
  6. Writes an entry to the audit log recording the actor, the target, and the timestamp. A restore writes a matching entry.

Bringing an archived member back

Archived members do not disappear from the Lab Roster. They sit at the bottom of the same table in a muted style with an Archived badge, and the row shows a Restore button where active rows show Archive. One click (after the same confirmation dialog) brings them back on every surface as if they never left, and the audit log records the restore.

The login picker is the one place archived members are hidden by default. When a lab has archived accounts, a small Show archived link appears below the account grid. Click it to reveal former members so you can sign in as one of them to check their work.

When to archive

  • A graduate student finished and is no longer doing lab work, but their results and notes still need to be readable for the next person who picks up the project.
  • A rotation student wrapped up and you do not want them turning up in the assignee dropdown when you plan the next round of work.
  • An undergrad worked over the summer and is gone for the school year. Archive now, unarchive when they return.

The right tool for "this account was a test that should not exist" is delete, not archive. Archive is for real members whose work you want to keep.