Conversation
Codecov Report❌ Patch coverage is
❌ Your patch check has failed because the patch coverage (72.72%) is below the target coverage (90.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## main #775 +/- ##
==========================================
- Coverage 92.25% 92.25% -0.01%
==========================================
Files 1305 1305
Lines 47957 47967 +10
Branches 1636 1636
==========================================
+ Hits 44245 44252 +7
- Misses 3401 3404 +3
Partials 311 311
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
drazisil-codecov
left a comment
There was a problem hiding this comment.
Approved with notes
| UploadFinisherFollowUpTaskType.CONTINUATION: 0, | ||
| UploadFinisherFollowUpTaskType.WATCHDOG: FINISHER_GATE_TTL_SECONDS, | ||
| } | ||
| self.app.tasks[upload_finisher_task_name].apply_async( |
There was a problem hiding this comment.
possible race condition between when gate expired and watcher fires. Gate may be gone at that time.
Also consider a cap on time so we don't hit the issue that CODECOV-59 is fixing
--Joe
There was a problem hiding this comment.
possible race condition
this should be fine, the task should check for the gate on re-run
cap on time
good call, although that perhaps defeats the purpose of the watchdog, I might just remove watchdog in the future and have continuation be 30 seconds after. and have a cron job that sweeps

This adds a scheduler method to re-run another task
Legal Boilerplate
Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. In 2022 this entity acquired Codecov and as result Sentry is going to need some rights from me in order to utilize my contributions in this PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.
Note
Medium Risk
Changes upload finishing task scheduling by introducing self-rescheduling follow-ups with Redis gate TTL refresh, which could create unexpected retry/loop behavior if misconfigured.
Overview
Adds a follow-up scheduling mechanism to
UploadFinisherTaskso the finisher can re-queue itself as a sweep, watchdog, or immediate continuation run.This introduces
UploadFinisherFollowUpTaskType, a newFINISHER_SWEEP_DELAY, and a_schedule_followuphelper that refreshes a finisher gate TTL and re-enqueuesupload_finisherwith an explicittriggerand type-specific countdown (including a watchdog delay based onFINISHER_GATE_TTL_SECONDS).Written by Cursor Bugbot for commit 9fb7bd6. This will update automatically on new commits. Configure here.