add another question in comments for later
add a cache up-to-date check