phacility/phabricator · error · Exception

You can not plan changes to a draft revision.

Error message

You can not plan changes to a draft revision.

What it means

Error "You can not plan changes to a draft revision." thrown in phacility/phabricator.

Source

Thrown at src/applications/differential/xaction/DifferentialRevisionPlanChangesTransaction.php:73

  public function applyInternalEffects($object, $value) {
    $status_planned = DifferentialRevisionStatus::CHANGES_PLANNED;
    $object->setModernRevisionStatus($status_planned);
  }

  protected function validateAction($object, PhabricatorUser $viewer) {
    if ($object->isDraft()) {

      // See PHI346. Until the "Draft" state fully unprototypes, allow drafts
      // to be moved to "changes planned" via the API. This preserves the
      // behavior of "arc diff --plan-changes". We still prevent this
      // transition from the web UI.
      // TODO: Remove this once drafts leave prototype.

      $editor = $this->getEditor();
      $type_web = PhabricatorWebContentSource::SOURCECONST;
      if ($editor->getContentSource()->getSource() == $type_web) {
        throw new Exception(
          pht('You can not plan changes to a draft revision.'));
      }
    }

    if ($object->isChangePlanned()) {
      throw new Exception(
        pht(
          'You can not request review of this revision because this '.
          'revision is already under review and the action would have '.
          'no effect.'));
    }

    if ($object->isClosed()) {
      throw new Exception(
        pht(
          'You can not plan changes to this this revision because it has '.
          'already been closed.'));
    }

View on GitHub (pinned to 5720a38cfe)

When it happens

Trigger: Thrown at src/applications/differential/xaction/DifferentialRevisionPlanChangesTransaction.php:73 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/06035adb6c5860dc. Report an issue: GitHub.