public override IProjectTree?FindByPath(IProjectTree root, string path)
        {
            // We are _usually_ passed the project root here, and we know that our tree items are limited to the
            // "Dependencies" subtree, so scope the search to that node.
            //
            // If we are passed a root which is not the project node, we will not find any search results.
            // This does not appear to be an issue, but may one day be required.
            IProjectTree?dependenciesRootNode = root.FindChildWithFlags(DependencyTreeFlags.DependenciesRootNode);

            return(dependenciesRootNode?.GetSelfAndDescendentsDepthFirst().FirstOrDefault((node, p) => StringComparers.Paths.Equals(node.FilePath, p), path));
        }