Validation: Fix GroupMe reconciliation (requires_approval + nickname)
Verdict: PASS
Ticket
forgejo_admin/basketball-api#159 — Fix GroupMe reconciliation: set requires_approval=false on new groups and add nickname parameter to add_member. PR #195.
Environment
Local checkout at commit
f26ec7c. Tests run with pytest.Checks
| # | Criterion | How Verified | Result | Evidence |
|---|---|---|---|---|
| 1 | PR merged to main | <code>git log --oneline -5</code> | PASS | Commit <code>f26ec7c fix: set requires_approval=false on new GroupMe groups (#195)</code> at HEAD, plus <code>344afc5 chore: remove unused _run_script helper from reconciliation tests</code> (cleanup commit) |
| 2 | update_group called after create_group with requires_approval=False | Read <code>scripts/create_groupme_groups.py</code> | PASS | Line 136: <code>client.update_group(group_id, requires_approval=False)</code> called immediately after group creation |
| 3 | add_member includes nickname parameter | Read <code>scripts/create_groupme_groups.py</code> | PASS | Lines 144-148: <code>client.add_member(group_id=group_id, user_id=user_id, nickname=name)</code> with name from the loop tuple |
| 4 | Test: update_group called with requires_approval=false | <code>pytest tests/test_reconciliation.py -v</code> | PASS | <code>test_update_group_called_with_requires_approval_false PASSED</code> |
| 5 | Test: add_member includes nickname | <code>pytest tests/test_reconciliation.py -v</code> | PASS | <code>test_add_member_includes_nickname PASSED</code> |
| 6 | Test: existing groups are skipped | <code>pytest tests/test_reconciliation.py -v</code> | PASS | <code>test_existing_groups_are_skipped PASSED</code> |
Regression Check
All 3 reconciliation tests pass (0.34s). The script still correctly skips teams that already have a groupme_group_id. Error handling wraps both update_group and add_member in try/except so failures are logged but don't block the reconciliation loop.
Discovered Issues
None.