Fixes and small improvements — June 2026

Clearer auto-renew wording, profile photos on admin-created memberships, private-meeting permissions in the API, and eleven others.

• Event ticket scans from Codereadr write to the newer scan tracking model on first scan, keeping scan history consistent.
• Event ticket overview pages behave after a ticket pack is cancelled.
• Event checkout copes with an empty quantity field instead of erroring.
• Admin-created memberships support uploading a profile photo, matching the public flow.
• The auto-renew badge now reads "Auto-renews next time" rather than "Automatically Renews", which is clearer before the first renewal has happened.
• The Meetings API (v1) respects private-meeting permissions properly.
• Group contact lists remember your selected columns.
• Guest checkout no longer creates empty webhook events.
• Existing member images are handled more safely during the newer sign-in flow.
• Task panels allow scroll chaining back to the page, so long panels stop trapping you.
• Date-picker controls in meeting tasks no longer hide underneath the clear button.
• Inbound email loop protection is better for club role addresses.
• Public shop pages handle Meta and Facebook browser requests more reliably.
• The feedback form rejects an invalid non-file attachment instead of falling over.