- Shipped
- August 4, 2026 at 11:02 PM UTC
- Author
- Kamo
- Commit
- 1f2dafb
A reserved opportunity now records what the organization pays out of the sale to the requesting agent and the group they share with — the pot the per-colleague splits are carved out of. A lead market carries a default that pre-fills it when an approval is granted. Every column is nullable with no default. A reservation nobody approved has no agreed commission and a market that has not configured one has no default; writing a zero into either would put a figure nobody chose onto a payout record. Three request fields would not have been enough. A JSON null and an absent field are the same thing after deserialization, and absence already means two other things here — "use the market default" on approve, "leave it alone" on an edit. So clearCommission says removal out loud; without it an approver who deletes a commission gets silence, and on approve the default they just cleared comes back. LeadIdentity gains the market defaults and findIdentities now spells out its LEFT JOINs. Written as the implicit path l.market.x, Hibernate emits an INNER join and every lead with no market drops out of the projection entirely — which would have shown up as "Unnamed lead" on exactly the rows nobody looks at twice.