The QML engine looks at the modification time of the .qml/.js source file to decide whether to re-create the cache files. If the time differs in any way from what it was when creating the cache file, it is re-created.
When the source file comes from the qt resource system, we are unfortunately missing a time stamp. As a temporary workaround we compare the time stamp of the application binary with the time stamp stored in the cache files.
The Qt resource system should copy the time stamp of the original source file from disk, store that time stamp in the embedded resource data and supply it through the Qt API (QFileInfo(":/foo.qml").lastModified()).