- Shipped
- September 2, 2026 at 2:21 AM UTC
- Author
- Kamo
- Commit
- fb8e516
The market dialog gains "Quote's Future Contact" under Enable quotes: the lead's assigned agent, a choice made per quote, or one explicit person picked with the same AgentSelector the /leads filter uses. Under Adjustable Per Quote the editor grows a Contact section, seeded from the snapshot the server took when the quote was raised — which is the lead's agent, so it opens on the person already there — and saves the change with the rest of the quote. The three client-side decisions moved out of two large components into app/lib/quotes/quoteContact.ts. They were asked in both screens and the screens disagreeing is invisible until a document prints the wrong person; as one module they are also testable, which inline ternaries in a 1300-line dialog were not. The preview shows a newly picked contact by name with the title, phone and email blank: those are resolved server-side from that member's mailbox and extension, so carrying the previous person's number under a new name would be a lie the unsaved-changes banner does not excuse.