diff --git a/src/applications/packages/editor/PhabricatorPackagesVersionEditEngine.php b/src/applications/packages/editor/PhabricatorPackagesVersionEditEngine.php --- a/src/applications/packages/editor/PhabricatorPackagesVersionEditEngine.php +++ b/src/applications/packages/editor/PhabricatorPackagesVersionEditEngine.php @@ -19,7 +19,11 @@ protected function newEditableObject() { $viewer = $this->getViewer(); - return PhabricatorPackagesVersion::initializeNewVersion($viewer); + return PhabricatorPackagesVersion::initializeNewVersion($viewer) + // Attach a dummy package to have the policy checks pass for this object + // during creation. + ->attachPackage( + PhabricatorPackagesPackage::initializeNewPackage($viewer)); } protected function newObjectQuery() { diff --git a/src/applications/packages/storage/PhabricatorPackagesVersion.php b/src/applications/packages/storage/PhabricatorPackagesVersion.php --- a/src/applications/packages/storage/PhabricatorPackagesVersion.php +++ b/src/applications/packages/storage/PhabricatorPackagesVersion.php @@ -15,7 +15,7 @@ protected $name; protected $packagePHID; - private $package; + private $package = self::ATTACHABLE; public static function initializeNewVersion(PhabricatorUser $actor) { return id(new self());