Patch release — LOCO eigen-cache review follow-ups (no API change).
Changed
- LOCO eigen-cache invalidation diagnostics:
eigen_cache_is_validnow reports a malformed manifest (parses but has nocache_key— e.g. an old-schema or truncated file) distinctly from a real input change, and enforces the manifestschema_versionexplicitly before the key compare instead of relying only on its presence in the hashed payload — a schema bump now invalidates all prior caches with a clear log reason. The manifest isfsync'd before its atomic rename so a crash cannot leave a parseable-but-garbage manifest, and corrupt-vs-unreadable manifests log distinct warnings. Manifest and components payloads are now typed viaTypedDict(EigenCacheComponents,EigenCacheManifest).
Docs
- Corrected the "recomputed once" claim: a cache written before the manifest existed is rejected and recomputed on every read run until regenerated with
-eigen. Addedschema_versionto the listed cache determinants.