silly mistake: I had forgotten to include the CACHE MANIFEST directive on the first line of the file.
The cache file now validates.