resolve static method
Resolves name, returning null when it is not a built-in or when it
cannot be determined (for example GIT_TAG outside a tagged repository).
Implementation
static Future<String?> resolve(String name) async {
if (_cache.containsKey(name)) return _cache[name];
final resolver = _resolvers[name];
if (resolver == null) return null;
final value = await resolver();
if (value == null || value.isEmpty) return null;
_cache[name] = value;
return value;
}