关于 cache-expert
cache-expert 是用于调查和调试 Dagger Engine 缓存的技能;其 GraphQL API 以不可变操作构成的 DAG 执行工作流。它指引查阅当前参考资料,并附带用于离线分析缓存快照的 Go 脚本。
主要功能
- 01Dagger 缓存架构概览
- 02缓存调查参考指南
- 03调试与 CI 跟踪说明
- 04离线分析缓存快照的脚本
适用场景
- 01调查保留的缓存根及其闭包
- 02调试 Dagger 缓存行为
- 03离线分析缓存快照转储
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ dagger/ dagger --skill cache-expert安装后在 Claude Code 中输入/cache-expert确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/cache_persistence.mdcache_pruning.mdcachebasics.mddagqltypes.mddebugging.mddynamicinputs.mdegraph.mdfilesync.mdlazy_evaluation.mdmutablecache.mdsession_resources.mdtypedefs.mdwritingcoreapis.mdscripts/dagql-cache-analyzer.go详细介绍
缓存专家
高层架构
Dagger Engine 提供基于 GraphQL 的 API,用于构建和执行 DAG 工作流。
每个操作都将不可变对象/标量值作为输入,并生成不可变对象/标量值作为输出。“可变性”通过对不可变值执行这些操作形成的 DAG 来模拟,类似于函数式编程。
这使缓存成为可能:由于输入不可变且操作具有确定性,因此可以根据操作及其输入推导出缓存键。
操作的 DAG 可以序列化为 ID,这些 ID 关联的摘要可用作操作的缓存键。
references/ 中的参考文档均为最新版本,应作为了解缓存、持久化、剪枝、惰性求值、会话资源、文件同步、类型定义和 e-graph 行为的当前指南。代码仍是最终事实来源,但参考文档预计与当前实现保持一致。
调试缓存相关问题时,务必阅读相关参考文档。对于范围广泛的缓存调查,请阅读所有参考文档。references/debugging.md 包含有关运行测试、重放 CI 跟踪以及一般调试的重要说明。
脚本
-
scripts/dagql-cache-analyzer.go离线分析/debug/dagql/cache快照转储,并汇总保留的根、结果类别和近似的累计闭包。用法:
go run ./skills/cache-expert/scripts/dagql-cache-analyzer.go /tmp/dagql.cache.1
评论
支持 Markdown