diff --git a/src/applications/project/editor/PhabricatorProjectTransactionEditor.php b/src/applications/project/editor/PhabricatorProjectTransactionEditor.php --- a/src/applications/project/editor/PhabricatorProjectTransactionEditor.php +++ b/src/applications/project/editor/PhabricatorProjectTransactionEditor.php @@ -631,6 +631,7 @@ } break; case PhabricatorProjectTransaction::TYPE_PARENT: + case PhabricatorProjectTransaction::TYPE_MILESTONE: $materialize = true; $new_parent = $object->getParentProject(); break; @@ -669,6 +670,11 @@ ->rematerialize($object); } + if ($new_parent) { + id(new PhabricatorProjectsMembershipIndexEngineExtension()) + ->rematerialize($new_parent); + } + return parent::applyFinalEffects($object, $xactions); } diff --git a/src/applications/project/engine/PhabricatorBoardLayoutEngine.php b/src/applications/project/engine/PhabricatorBoardLayoutEngine.php --- a/src/applications/project/engine/PhabricatorBoardLayoutEngine.php +++ b/src/applications/project/engine/PhabricatorBoardLayoutEngine.php @@ -435,7 +435,7 @@ // If we have proxies, we need to force cards into the correct proxy // columns. - if ($proxy_map) { + if ($proxy_map && $object_phids) { $edge_query = id(new PhabricatorEdgeQuery()) ->withSourcePHIDs($object_phids) ->withEdgeTypes(