Comments
Comments are short asynchronous messages attached to a record (a task, a note, or a purchase). They keep a conversation tied to the thing it is about, so a question about a PCR recipe lives on that PCR task, not in a separate chat channel. One level of reply nesting keeps threads readable without turning them into Reddit.
Where comments live
Three record types accept comments today.
- Tasks (experiments, lists, purchase orders).
- Notes (free-form lab notes outside an experiment).
- Purchases (individual line items inside a purchase order).
Open any of those records and comments live in a docked rail on the right side of the popup, the way Google Docs and Word park comments beside the document instead of below it. The thread sits next to the record you are reading, so you keep the recipe or the note in view while you scan the conversation about it.
Opening the comments rail
Each record popup has a comment button in its header. Click it to slide the rail open on the right. When a record already has comments, the button wears a small count badge so you can tell at a glance whether a thread is waiting before you open anything.
The comments rail and the version-history rail share the same docked spot, so they are mutually exclusive. Opening one closes the other. Press Escape to close whichever rail is open, which drops you back to the full-width record without closing the popup itself.
You can also start a comment without opening the record first. Right-click an experiment card or a note card and choose Add a comment (or View / add comment when a thread already exists). That opens the record with the comments rail already expanded and the cursor in the composer, so a quick note to a labmate is two clicks from the board.
Threading, one level deep
Comments support a single level of reply nesting. A top-level comment can have replies; a reply cannot have its own reply. This keeps a thread legible at a glance and prevents the rabbit-hole shape that threaded chat platforms drift into. If a reply itself needs a deeper conversation, post a new top-level comment that references it.
@-mentions
Type @ inside a comment to summon the mention picker. Pick a lab member from the dropdown and the editor inserts a mention chip. The mention does two things.
- Renders in the comment body as a styled chip (the member's name, in the member's color).
- Pushes the member's id onto the comment's
mentions: string[]array, a denormalized field that the inbox uses to filter for "comments I was mentioned in."
Members see their @-mentions in the bell (the personal notification queue). On the Lab Overview, the What needs you hero shows a live count of @-mentions for the PI and links to the notes surface where the relevant records live.
Finding comments across records
Comments live on the record they were written on. To find a comment, open the record it belongs to and the comments rail will show the thread. When a bell notification links you to a comment, tapping it opens the host record directly with the rail expanded.
Cross-owner read access
Comments inherit the read permission of their host record. If you have read access to a task that a labmate owns, you also see (and can post) comments on it. PIs have implicit read access to everything, so they see every comment in the lab. Members only see comments on the records they would already see, never anyone else's private threads.