SKILL

content-hash-cache-pattern

使用 SHA-256 内容哈希缓存开销较大的文件处理结果——与路径无关、自动失效,并实现服务层分离。

机器翻译
查看英文原文

Cache expensive file processing results using SHA-256 content hashes — path-independent, auto-invalidating, with service layer separation.

适用对象:对象待分类。自动收录 · 待核查。

原作者说明节选

从固定版本的 SKILL.md 提取,保留原文语言。以下内容属于作者说明,本站尚未验证安装、兼容或运行结果。

查看英文原文

原文涵盖的主题

  • Content-Hash File Cache Pattern
  • When to Activate
  • Core Pattern
  • 1. Content-Hash-Based Cache Key
  • 2. Frozen Dataclass for Cache Entry
  • 3. File-Based Cache Storage
  • 4. Service Layer Wrapper (SRP)
  • Key Design Decisions

Cache expensive file processing results (PDF parsing, text extraction, image analysis) using SHA-256 content hashes as cache keys. Unlike path-based caching, this approach survives file moves/renames and auto-invalidates when content changes. Building file processing pipelines (PDF, images, text extraction) Processing cost is high and same files are processed repeatedly Need a --cache/--no-cache CLI option Want to add caching to existing pure functions without modifying them Use file content (not path) as the cache key: Why content hash? File rename/move = cache hit. Content change = automatic invalidation. No index file needed. Each cache entry is stored as {hash}.json — O(1) lookup by hash, no index file required. Keep the processing function pure. Add caching as a separate service layer. | Decision | Rationale | |----------|-----------| | SHA-256 content hash | Path-independent, auto-invalidates on content change | | {hash}.json file naming | O(1) lookup, no index file needed | | Service layer wrapper | SRP: extraction stays pure, cache is a separate concern | | Manual JSON serialization | Full control over frozen dataclass serialization | | Corruption returns None | Graceful de

这里只展示节选,请以完整原文和当前要求为准。

来源仓库
affaan-m/ECC
源文件
.kiro/skills/content-hash-cache-pattern/SKILL.md
固定版本
d2ef2680594f9a17526a6e1a2e18b3d242c5d17b
阅读完整原作者说明 ↗

来源与内容状态

本条为自动发现的元数据,尚未完成人工文档核查;适用性与运行结果待核查。

原作者:affaan-m/ECC · 原作者仓库元数据。文档核查:未核查。最近来源检查:2026-11-09T14:01:48.548Z。

分类由名称、说明与路径规则生成,分类不代表已核实适配。

许可与权利归属

MIT。第三方内容及版权归原作者,使用条件以原文为准。

许可原文 ↗

本站没有因同步、复制或用户自报成功而将资源标为运行验证通过。

限制与注意事项

  • 元数据收录不代表本站已经安装、适配、实测或进行安全审查。