design doc for caching compiled interfaces