anchor.diff:    static Future<GroupDirectoryLayout> resolve(
         Directory directory, String gitUri) async {
       // TODO: should check if gitUri is the uri for the current group too
  -    return ((await isExistingContainerDirectory(directory)) && gitUri == null)
  -        ? new GroupDirectoryLayout.withDefaultName(directory)
  -        : new GroupDirectoryLayout.fromParent(
  -            directory, gitWorkspaceName(gitUri));
  +    if (gitUri == null) {
  +      if (await isExistingContainerDirectory(directory)) {
  +        return new GroupDirectoryLayout.withDefaultName(directory);
  +      } else {
  +        throw new ArgumentError('must either be in a container directory or '
  +            'specify a gitUri');
  +      }
  +    } else {
  +      return new GroupDirectoryLayout.fromParent(
  +          directory, gitWorkspaceName(gitUri));
  +    }
     }
   
     static Future<bool> isExistingContainerDirectory(Directory directory) async {
  
positive.code:     bool smellsLikeAContainer = await groupDirectory.exists();
  
      if (!smellsLikeAContainer) {
        return false;
      }
  
      bool isAContainer =
          await new File(p.join(groupDirectory.path, 'jefe.yaml')).exists();
      return isAContainer;
    }
  }
  
negative.code:         p.basename(directory.path).endsWith(_containerSuffix));
  
      if (!looksLikeAContainer) {
        _log.finest(
            "$directory is not an existing directory ending with $_containerSuffix");
        return false;
      }
  
  