phacility/phabricator · error · Exception
You can not request review of this revision because you are…
Error message
You can not request review of this revision because you are not the author of the revision and it is not currently a draft.
What it means
Authority guard in DifferentialRevisionRequestReviewTransaction::getActorSourceType (reached from validateAction and the revision-action metadata path): the actor is neither the revision author, nor a draft-revision case, nor the omnipotent Harbormaster build actor. Requesting review transfers a draft into review and broadcasts it, so it must be initiated by the author (or the build system promoting the draft); a third party acting on someone else's non-draft revision has no valid source type and falls through to this error.
Solutions
- Have the revision author perform the 'Request Review' action
- If you are the author, confirm you are authenticated as the correct account
- For automation, use an omnipotent/bot actor (e.g. Harbormaster-style) rather than a plain user, or grant the acting user ownership via commandeer first
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/applications/differential/xaction/DifferentialRevisionRequestReviewTransaction.php:187 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of phacility/phabricator@5720a38cfe (2026-08-21).
Data as JSON: /api/errors/8c5b99d49b65f077.
Report an issue: GitHub.
Appendix: source
Thrown at src/applications/differential/xaction/DifferentialRevisionRequestReviewTransaction.php:187
DifferentialRevision $revision,
PhabricatorUser $viewer) {
$is_harbormaster = $viewer->isOmnipotent();
$is_author = $this->isViewerRevisionAuthor($revision, $viewer);
$is_draft = $revision->isDraft();
if ($is_harbormaster) {
// When revisions automatically promote out of "Draft" after builds
// finish, the viewer may be acting as the Harbormaster application.
$source = self::SOURCE_HARBORMASTER;
} else if ($is_author) {
$source = self::SOURCE_AUTHOR;
} else if ($is_draft) {
// Non-authors are allowed to "Request Review" on draft revisions, to
// force them into review immediately.
$source = self::SOURCE_VIEWER;
} else {
throw new Exception(
pht(
'You can not request review of this revision because you are not '.
'the author of the revision and it is not currently a draft.'));
}
return $source;
}
}
View on GitHub (pinned to 5720a38cfe)