What SLAdar does
Pull requests sit for days waiting on a review, and native Bitbucket gives you no way to see it, let alone act on it. SLAdar fixes that — without a Slack bot and without your code data leaving Atlassian.
You set a review SLA for the workspace. SLAdar then tracks every open pull request against that clock, flags the ones going at risk and breached, posts a nudge comment on the PR to the person who can unblock it, and shows a live dashboard plus a monthly compliance rate. It is a focused Forge app for Bitbucket Cloud — one job, done well.
Getting started
After a workspace admin installs SLAdar from the Atlassian Marketplace, you'll find it in three places:
Pull request card
On any pull request — a status pill and a live countdown to the review deadline.
Workspace dashboard
Workspace → SLAdar — every open PR vs SLA, plus the compliance summary.
Settings
Workspace settings → SLAdar settings — the review SLA policy.
Set an SLA
From Workspace settings → SLAdar settings, configure one workspace policy:
- First-review SLA — working hours for someone to first review a PR. Leave blank to not track first review.
- Merge-decision SLA — working hours to merge or decline a PR. Leave blank to not track it.
- Warn before breach — how many hours ahead of a deadline a PR turns at risk (0 = no early warning; straight to breached).
- Skip weekends — Saturdays and Sundays don't count toward the SLA.
SLAdar uses a simple, correct "skip weekends" clock — no timezone or business-hours engine yet. All time math is UTC.
The pull request card
On every pull request, the SLAdar card shows a status pill — On track,
At risk, Breached, Met, or
Draft — and a plain-English countdown for the clock that matters right
now: the first-review deadline until someone reviews it, then the
merge-decision deadline. So you'll see labels like
Review SLA: 7h 59m remaining, Merge SLA: 1d 4h remaining, or
Review SLA breached — 4h 12m over. A draft PR shows
Draft — not tracked — the clock starts when it's marked ready for review. It
recomputes live every time you open the PR, so it's always current between hourly sweeps.
Nudges
An hourly job checks every tracked PR against its SLA. When a PR crosses a stage, SLAdar posts a comment on the PR — delivered by Bitbucket's own notifications — and it targets the person who can actually unblock it:
| Situation | Who gets nudged |
|---|---|
| First-review SLA at risk / breached | The reviewers ("please take a look"). |
| First-review breached, no reviewer assigned | The author ("please add a reviewer"). |
| Merge-decision SLA at risk / breached | The author ("please merge or decline it"). |
- Once per stage. A PR is nudged when it enters at risk, then again when it breaches — never repeatedly. Re-running the job posts nothing new.
- No spam, no external tools. The nudge is a PR comment. No Slack, no email from us, nothing leaves Atlassian.
Dashboard
Workspace → SLAdar lists every open PR with its number (linked), title (linked), repo, reviewers, age, and SLA status. Breached rows show in red and the list is sorted oldest-first, so the most-aged PRs rise to the top.
Filters
Narrow by repository (dropdown) or to breached only (toggle). Status is live — a PR that just crossed its deadline shows Breached on reload, before the next hourly sweep.
Compliance
Above the table, two cards summarise the month:
First review
% of decided PRs that got a first review within the SLA, with a met / missed / counted breakdown.
Merge decision
% of PRs decided (merged or declined) in time — breached if merged/declined late, or left open past the merge deadline.
Each card carries a health indicator (On track / Watch / At risk, or Not tracking when that SLA isn't set) and a progress bar. PRs still within their deadline are "pending" and excluded from the denominator — as are drafts and PRs closed before a review was due — so the number stays honest.
Privacy & permissions
SLAdar is built on Atlassian Forge and runs entirely inside Atlassian Cloud. It makes no requests to any external server and stores only a small SLA layer over each PR (PR number/title/link, author & reviewer display names, timestamps, SLA status, and the nudge ledger) plus your policy and settings. It does not store your code, diffs, commits, or comment threads.
| Scope | Why |
|---|---|
| read:pullrequest:bitbucket | Read PRs (title, reviewers, state, timestamps) to track SLAs. |
| write:pullrequest:bitbucket | Post the nudge comment on a stale PR. |
| read:repository:bitbucket | Identify the repository a PR belongs to. |
| read:workspace:bitbucket | Scope tracking and the dashboard to your workspace. |
| storage:app | Persist the SLA layer, policy, and settings in Forge storage. |
See the full Privacy Policy, Terms of Service, and Support SLA.
FAQ
Does SLAdar send anything to Slack or an external service?
No. SLAdar is "Runs on Atlassian" — it makes no external network calls. Nudges are comments posted on the pull request itself, delivered by Bitbucket's own notifications. Your code data never leaves Atlassian.
What's the difference between the first-review and merge-decision SLAs?
The first-review clock asks "did someone review this in time?" and is met when a reviewer first approves or requests changes. The merge-decision clock asks "was this resolved in time?" and is met when the PR is merged or declined. They run in parallel and are reported separately.
What's the smallest SLA I can set?
SLAs are whole working hours, so the minimum is 1 hour — or 2 hours if you want an early "at risk" warning before the breach. The background job runs hourly, so anything finer couldn't be enforced anyway.
How often are people nudged, and can it get spammy?
A PR is nudged at most once when it enters "at risk" and once when it breaches — never repeatedly. Set the warning window to 0 for breach-only nudges.
What if a PR has no reviewer assigned?
It's still tracked. When its first-review SLA breaches, the nudge asks the author to add a reviewer, since there's nobody else to chase.
Does it handle weekends and timezones?
The clock skips Saturdays and Sundays. It does not yet model business hours, holidays, or per-team timezones — time math is UTC. A correct simple clock beats a subtly wrong sophisticated one.
What does it cost?
A free tier is planned for small teams, with paid tiers above that. Billing is handled entirely by the Atlassian Marketplace.
Support
Questions, bugs, or feedback? Email support@outpostlabs.dev. We provide best-effort, asynchronous support — see the Support SLA for response targets.