Thread System
Understanding the core data model.
In Loom, there is no distinction between a "Card" on a roadmap and a "Discussion". They are the same object, viewed through a different lens.
The Thread
The underlying data structure. It contains the author, the initial post content, and a linear list of replies (comments).
The Feature
The roadmap representation. We decorate the Thread with metadata like status, eta, and votes to turn it into a trackable item.
Lifecycle
How a thread moves through the system:
Drafting & Discussion
A user creates a thread. At this stage, it's just a conversation. Other users can upvote it if they want it.
Commitment (Planned)
A Product Manager reviews the thread. If valid, they change the status to Planned. This officially puts it on the Roadmap view.
Execution (In Progress)
Engineers pick up the work. The status changes to In Progress. The original thread remains open for implementation details or clarification questions.
Delivery (Shipped)
The feature is live. The thread is marked Shipped. It now effectively serves as a changelog entry.
Extended Data
Loom uses a flexible extendedData JSON field on each thread to store roadmap-specific information without modifying the core schema.
{
"status": "planned",
"votes": 42,
"impact_score": 8.5,
"tags": ["frontend", "performance"]
}