if project can fulfill with null, does that break `project.isEmberCLIProject()` et al?