is componentId needed? it's only used for the cacheId - that could be subrootComponentId too