Pipeline
Pipeline is a kanban-style board for tracking a lead's deal progress through your workspace, at /dashboard/pipeline — its own sidebar item, between Reply Box and the Infrastructure group. A PipelineRecord is created automatically the moment a contact is enrolled as a lead in a campaign; there's no manual "add to pipeline" action anywhere in the app. Enroll the same contact in two campaigns and you get two independent pipeline records, one per campaign.
The board
Seven fixed-order columns, left to right: Active, Engaged, Interested, Meeting Requested, Meeting Booked, Handed to Client, and Not Interested/Disqualified. Every record starts in Active. See Stages & automatic movement for how a record actually moves between them.
The board scrolls horizontally rather than wrapping its columns onto multiple rows. That's a deliberate, documented exception to this app's usual no-horizontal-scroll rule — the same exception made for data grids, since squeezing seven columns to fit without it would make every card too narrow to read.
Each column loads and paginates independently — it fetches only its own 20-record page for its own stage, not the whole board at once. A column with more than 20 records gets its own Previous/Next controls in its footer; one with 20 or fewer shows none. The column header shows a color dot, the stage's label, and a total count badge.
Pipeline
Every enrolled lead, organized by deal stage.
Sarah Chen
Nimbus Robotics
Marcus Webb
Bright Path Legal
Priya Nair
Meridian Co
$12,000
David Osei
Fenwick & Ames
$28,500
Lena Kade
Northwind Supply
$40,000
Tom Reyes
Acme Corp
Record cards
Each card shows the contact's name (first + last, falling back to their email, falling back to "Unknown contact" if neither exists), their company if known, a click-to-expand health score, a relative "last changed" time, and the estimated value if one has been set.
The health score is a colored dot plus a number — red below 60, amber 60–79, green 80 and up — that expands in place into the full four-component breakdown (Intent, Engagement, Fit, Momentum) when clicked. See Health score for exactly how each component is computed. "Last changed" reflects the record's own most recent update — a stage move, an estimated value edit, or a background score recompute, not narrowly "last stage change."
A card's list data doesn't include why it last changed, only when — the reason and full history are one click away in the record's own detail view.
Opening a record
Clicking anywhere on a card except the health score toggle opens the full record detail — a modal with the health breakdown, the estimated value control, a stage-change control, and the record's complete history with per-entry undo. That's covered in full on Stages & automatic movement and Estimated value & currency. The modal also links out to the contact's own page in ForgeSend.
The Pipeline rollup on a contact
A contact can hold more than one pipeline record — one per campaign they're enrolled in. A "Pipeline" action on a contact's row (in the All Contacts grid, and in a list's own contact grid) opens a small rollup modal listing every pipeline record that contact currently holds, across every campaign, unpaginated.
Pipeline
Priya Nair
Q3 enterprise rollout
Spring re-engagement
Each row shows the campaign name, a stage badge, the estimated value if set, and the health score. Clicking a row opens the exact same record detail modal described above. If a contact isn't enrolled in any campaign yet, the modal shows "No pipeline records" instead of an empty list.