code: func NewCacheManager(id string, storage CacheKeyStorage, results CacheResultStorage) CacheManager {
  	cm := &cacheManager{
  		id:      id,
  		backend: storage,
  		results: results,
  	}
  
  	if err := cm.ReleaseUnreferenced(); err != nil {
  		logrus.Errorf("failed to release unreferenced cache metadata: %+v", err)
  	}
  
  	return cm
  }
docs: // NewCacheManager creates a new cache manager with specific storage backend