Automated GitLab Merge Request Chasing
Every weekday morning, WebRun signs in to GitLab, reads every open merge request across the projects you track, records who opened it, who is assigned to review, how long it has waited, and whether its pipeline passed, posts the ones past your review target to Telegram oldest first, and queues a Twilio SMS only for merge requests blocking a release.
How do I stop merge requests from sitting unreviewed for days?
WebRun reads every open GitLab merge request each weekday morning, recording the author, the assigned reviewer, hours waited, and the latest pipeline result. It posts the ones past your review target to Telegram oldest first, separates failing pipelines and unassigned requests, and queues an SMS only for release blockers.
- Review debt is visible every morning, oldest first
- Unassigned and failing merge requests are separated from real review waits
- SMS is limited to release blockers and still needs your release
Built for engineering managers · development teams · platform teams · tech leads
What does WebRun do on every run?
The exact actions WebRun takes, in order - in plain language, so you can adjust anything.
-
WebRun signs in and gets to work
Opens
gitlab.com/users/sign_inin a real browser with your saved login - no setup, no API keys. -
1
GitLab - find merge requests waiting on review
WebRun opens GitLab to find merge requests waiting on review. - Sign in to GitLab and open the merge requests view across the projects you track
- Capture each open merge request with its title, author, assigned reviewers, target branch, and the date it was opened
- Record the latest pipeline result and whether the branch has conflicts
- Work out hours since the last reviewer comment and mark anything past your review target
- Separate drafts from ready merge requests, and mark any labelled for the current release
Done when Every open merge request has a reviewer, a waiting time, and a pipeline result.
-
2
Telegram - post the chase list
WebRun opens Telegram to post the chase list. - Post the chase list to your engineering Telegram group, longest waiting first
- Give the merge request title, the author, the reviewer, the hours waited, and the pipeline result
- Put merge requests with a failing pipeline in their own block, since those need the author not the reviewer
- List ready merge requests with no reviewer assigned at all so a lead can assign one
- Post a clean board line when nothing is past target
Done when The chase list is in Telegram with unassigned and failing ones separated.
-
3
Twilio - queue an SMS on release blockers
WebRun opens Twilio to queue an SMS on release blockers. - Draft a short SMS only for merge requests labelled for the current release that are past target
- Queue every message in Twilio for your approval instead of sending it
- Use only numbers on your saved internal engineering list. Nobody outside the team is ever texted
- Queue nothing when no release blocker is overdue
Done when Release blockers have an SMS queued for your release, or there were none.
How is each run configured?
Secure by default
Connect once, stays signed in
WebRun signs in once and keeps each session in a persistent environment, so every run picks up right where it left off.
Every action is checked against this policy before it runs.
Questions, answered
Can it approve or merge code?
No. WebRun reads merge requests and reports them. It never approves, merges, comments, closes, or runs a pipeline, so review and merge decisions stay entirely with your engineers.
Will it text people without approval?
No. SMS is reserved for release blockers, every message is queued in Twilio until you release it, and only numbers on your saved internal engineering list are ever used.
Does it chase drafts?
No. Draft merge requests are listed separately and never chased, because a draft is not waiting on a reviewer yet.
Put this on autopilot.
Turn it on in minutes - or have our team set it up for you.