- Shipped
- October 6, 2026 at 2:30 AM UTC
- Author
- Kamo
- Commit
- cf6d4fb
PublicWebinarService creates a lead per public webinar registrant through LeadService.createLead, which indexes the lead's phones and addresses (LEAD_CONTACT_POINTS) only when a LeadContactPointService bean exists — @Autowired(required = false). MediaService never declared one: the same silent gap DaemonService's intake job had (38 Harmony leads, DaemonService 8f0ac9a). One webinar lead so far, indexed by the Communications tab's seedIfAbsent self-heal; the next would have been linkable to nothing until someone opened its tab. LeadCommsBeanConfig declares the bean and @EnableJpaRepositories gains com.kamo.z.shared.comms — the pair, as with chat.policy; VOIPService, SecurityService and DaemonService scan the same package on the same Boot 3.1.5. Every service that calls createLead now declares it. Tests: LeadCommsBeanConfigTest (bean present; scan covers the repository) — RED first, 2 failures. Full suite 1842/1842.
