public static function taskLocations()
    {
        $locations = array_merge(
            [self::projectRoot()],
            self::getEngineType()->taskDirectories(),
            self::getProjectType()->taskDirectories(),
            self::getPlatformType()->taskDirectories()
        );

        if (self::hasProjectConfig()) {
            $locations[] = APP_ROOT . '/src/Task';
        }

        return array_filter($locations);
    }