Stream state, starting a stream, org fields, return dates and a role on a lead's deal [skip ci]
A lead's stream on every screen, and the canvas's new steps
The lead page, board cards and grid show a lead's stream, with a filter. A person sets a return date on the lead. The canvas offers starting and leaving a strea...
A lead's stream, a reactivation date, and a role through its deals
Reads a lead's live stream from its run, for the grid, board, lead page and a filter. A reactivation date is a LeadCallback, moved in place and cancelled quietl...
Stream state, org fields, reactivation dates and a role on a lead's deal
Neutral pieces the engine needs: three trigger events, a reactivation purpose on LeadCallback with its time as an org setting, a lead filter on live runs, a dea...
A pipeline column paints thirty cards, then more on request
Every loan was an animated card, so a status holding thousands of loans stalled the browser after the data arrived.
The applications list reads scalar pipeline rows
The list behind /commerce hydrated the URLA graph to fill a twenty-column row. It now uses the shared AppMortgageSummaryReader, and the parse test guards the re...
Read pipeline rows as scalars, so a large lender's board loads
The kanban read every application as a plain AppMortgage. Hibernate cannot proxy or batch the inverse one-to-ones, so each row cost about four more round trips;...
Stream counts read, the contact card follows a status, and a card drags by its name
A dead status cancels due callbacks, and a stage offers only live loan statuses
Reports and Gamification are included in Business and up
Owner, 2026-11-01. They were on Enterprise alone.
Never offer an upgrade that does not exist
The Apps screen told Harmony, on the top plan, to upgrade to a higher plan. An add-on app now names its add-on, and an app nothing can unlock is left off the sc...
A paused seat grants nothing; the Apps screen says how an app can be had
A paused subscription's licenses stay assigned, ready for the resume, and grant nothing. Each app an organization lacks now carries how to get it: an add-on, a ...
Nothing suspends or cancels a customer for owing money
DunningSweep took seats away after the grace period and cancelled the subscription at thirty days. Both are gone: a past-due bill is chased, and only a manual p...
Owing money never stops service; only a manual pause does
A past-due subscription stayed live for seven days and then lost everything on the clock. It now stays live for as long as it is past due. A manual pause was th...
A new callback reaches Waiting on Me at once, and the panes' contract joins the brief
A floor signal's domains, its throttle and what a frame carries [skip ci]
Ten live panes for the sales floor
Five for someone on the phones: Next Best Lead, Speed-to-Lead Clock, Waiting on Me, Today's Streak and Best Time to Call. Five for whoever runs the floor: Floor...
A landed call, text or email tells open screens
The contact tracker now announces each communication on the floor's domains, so a call the phone system reports reaches the board at once instead of on the next...
A landed call, text or email tells open screens
The contact tracker now announces each communication on the floor's domains, so a call the phone system reports reaches the board at once instead of on the next...
A landed call, text or email tells open screens
The contact tracker now announces each communication on the floor's domains, so a call the phone system reports reaches the board at once instead of on the next...
Text consent per lead source, and the canvas shows a step its switch holds back
A lead source's settings can count its consent field as text consent, and a file import can do the same for one file. Off by default. A step card and the side p...
Intake records text consent where a source counts its field, and a rollup back-fill job
The back-fill has no schedule. It reads leads from lead_communications, calls the same hydrate a lead's page does, and writes only the rollup. hydrated_at is it...
A lead source's text consent setting, and borrower messages stay off a linked loan
The setting needs a consent field mapped on that source, and each change goes in the access log. A file import keeps its consent proof and can count a column as...
A rebuilt database gets what entities can't declare
Expression indexes on borrowers, the borrower pairs index, and each restricted table's privileges as they stand in production: 16 tables, dial_ledger among them...
A lead import can name its text consent column, and a source's setting can be saved
The ledger's one tally answers by lead, by hour and by day, and the floor can signal live
DialTally gains what the sales floor's panes need, so none of them count for themselves: a breakdown over a set of leads, hours and days, conversations resting ...
Live sales floor events reach open screens
svc_voip and svc_daemon may publish rt.org.>, so a call the phone system reports and a lead a job creates reach the board at once. New svc_automation login, cor...
Read every deal role, loan officer included, from the one store
Backfilled and counted per org first. MortgageLoanOwnership and DealRoleService now read only mlos_deal_role_assignment. The column stays a mirror for the origi...
Reports' own-loans scope reads the one role store
The loan officer is backfilled, so every role is a row and the deal's column is a mirror.
A lead source can count its own consent field as text consent, and zones follow NANPA
Off by default, per source. When on, a lead source's chosen consent field writes the SMS consent OutreachCheck already reads, with the proof in LeadConsentValue...
A text that may have gone is never called a refusal
Telnyx reported every ProviderException as REJECTED, and its client wraps a timeout in that type, so a timed-out text read as not sent and a stream's retry coul...
Fill the loan officer into the role store on a rebuild
Idempotent, and a row already there wins. KI ships nothing on its own and was not run on production, which was backfilled by hand.
Every loan officer write goes to the role store and its mirror together
**************** is the one writer, in the caller's transaction. The lead's assignee on a new deal, a person's or SI's assignment, a creator's claim, an adopted...
The reports' own-loans condition parses against the real mapping [skip ci]
Who works a deal, on the pipeline card and in the stream canvas
The loan officer's assign flow now serves every deal role: one picker, one call, one set of rules. Each deal shows who works it, a person or an SI, and a role t...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
