• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mroderick / codebar-planner / 24155059187
96%
master: 95%

Build:
Build:
LAST BUILD BRANCH: fix/invitation-log-retry-v2
DEFAULT BRANCH: master
Ran 08 Apr 2026 08:00PM UTC
Jobs 1
Files 182
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

08 Apr 2026 07:45PM UTC coverage: 95.507%. First build
24155059187

push

github

mroderick
fix: deduplicate members in chapter_students and chapter_coaches

Members subscribed to multiple groups within a chapter were being
processed multiple times when sending invitations with audience='everyone',
causing 'Member has already been taken' validation errors.

Root Cause:
- Member.in_group() uses JOIN on subscriptions, returning duplicate rows
  when a member is subscribed to the same group type multiple times
- 336 members in London chapter affected (subscribed to both Students and Coaches)
- 35 members in Berlin chapter affected
- 57 members in Brighton chapter affected

Impact:
- Workshop invitation batches failed mid-process (e.g., 517 of 7000+
  invitations sent before failure)
- InvitationLogEntry validates uniqueness of member_id per invitation,
  causing validation errors on second processing attempt
- Admins had to manually retry batch sends multiple times

Affected Chapters:
- 46 of 54 chapters (85%) have members with duplicate subscriptions
- ~1,200 members affected across all chapters
- Top 5: London (336), West London (79), Brighton (57), South London (57),
  Barcelona (55), Edinburgh (37), Berlin (35)

Timeline:
- Original code (Jan 2017, commit 448acc7c) included .uniq for deduplication
- Refactoring (May 2018, commit d7a463da) extracted to scopes but
  accidentally removed the .uniq call

Fix: Add .distinct to chapter_students and chapter_coaches methods,
restoring the deduplication behavior that existed before the refactoring.

Tests:
- Add spec for unique members when subscribed to same group multiple times
- Add spec for unique invitations per role when member is in both groups

2 of 2 new or added lines in 1 file covered. (100.0%)

3465 of 3628 relevant lines covered (95.51%)

46.06 hits per line

Jobs
ID Job ID Ran Files Coverage
1 24155059187.1 08 Apr 2026 08:00PM UTC 1092
69.99
GitHub Action Run
Source Files on build 24155059187
  • Tree
  • List 182
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24155059187
  • 75ecc09b on github
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc