- Shipped
- October 6, 2026 at 1:11 AM UTC
- Author
- Kamo
- Commit
- 8f0ac9a
LeadIntakeProcessingJob creates every lead that arrives through the intake endpoint, via LeadService.createLead, which indexes the lead's phones and addresses (LEAD_CONTACT_POINTS) only when a LeadContactPointService bean exists — it is @Autowired(required = false). DaemonService never declared one, so the index was silently skipped: no call, text or email could ever link to an intake lead. Found tracing Harmony Home Loans' JustCall calls: 38 Harmony leads with a phone or address, all intake-created 2026-10-02..05 (source "Sep. Active Va Leads" and blank), had no contact points; every lead created any other way had them. No other org affected. LeadCommsBeanConfig declares the bean (the owning-service rule SharedLibBeanSafetyTest enforces), and @EnableJpaRepositories gains com.kamo.z.shared.comms for its repository — the package VOIPService and SecurityService already scan on the same Boot 3.1.5. LeadService is the only shared-lib bean with optional comms dependencies; all three now resolve here as they do elsewhere. The 38 existing leads self-heal: SecurityService's Communications tab calls seedIfAbsent, which indexes a lead from its creation date the first time the tab is opened. Tests: LeadCommsBeanConfigTest (bean present; scan covers the repository) — RED first, 2 failures. Full suite 111/111.
