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

kobotoolbox / kpi / 21447864952 / 2
81%
master: 76%

Build:
Build:
LAST BUILD BRANCH: dev-1259-remove-metadata-endpoints
DEFAULT BRANCH: master
Ran 28 Jan 2026 05:45PM UTC
Files 881
Run time 18s
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

28 Jan 2026 05:05PM UTC coverage: 81.312% (+2.3%) from 78.986%
21447864952.2

push

github

web-flow
fix(projectOwnership): only restart transfers that have been accepted DEV-1643 (#6655)

### đŸ“Ŗ Summary
Ensure that project transfers only begin after the recipient has
accepted the invitation, preventing projects from being moved before the
transfer is authorized.

### Notes
This PR also contains an adjustment to ensure that invitations that are
auto-accepted are marked as accepted as soon as they are created to
avoid getting stuck in "pending" if the task fails.

### 👀 Preview steps

1. â„šī¸ have an account (userA) and a project
2. Transfer the project to userB
3. Do NOT click on the link in the email userB received for the transfer
4. Wait for several minutes 
5. 🔴 [on release] Refresh userB's project list and see the project has
been transferred
6. 🔴 [on release] Try to click on the link (logged in as userB) and
receive an error that the invite has expired
7. đŸŸĸ [on pr] Refresh userB's project list and see the project has NOT
been transferred
8. đŸŸĸ [on pr] Try to click on the link (logged in as userB) and
successfully transfer the project

To test org invitations:
1. Have an account with an mmo
2. Have another account with a project
3. Invite userB to the mmo
4. Update `project_ownership.utils.create_invite` to error just outside
of the transaction block (eg by adding `x = 1/0`)
5. Restart the kpi_worker
6. As userB, accept the invite
7. Remove the error line
8. Restart the kpi_worker
9. Notice the transfer is restarted and successfully completes

---------

Co-authored-by: rgraber <becca.graber@kobotoolbox.org>

7236 of 11333 branches covered (63.85%)

27760 of 34140 relevant lines covered (81.31%)

0.81 hits per line

Source Files on job 21447864952.2
  • Tree
  • List 881
  • Changed 31
  • Source Changed 0
  • Coverage Changed 31
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 21447864952
  • 6bd68490 on github
  • Prev Job for on release/2.025.47 (#21217311342.1)
  • Next Job for on release/2.025.47 (#21468428430.1)
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