搜索

PythonReactSEOPDF
GitHub Skill

cache-expert

Covers Dagger Engine caching internals including cache key derivation, invalidation, and the immutable DAG model. Use when debugging cache misses, unexpected invalidations, or implementing caching-related engine features.

NeverSight☆ 66 仓库 Stars19 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

Cache Expert

High-Level Architecture

The Dagger Engine serves a GraphQL-based API for building and executing DAG workflows.

Each operation takes immutable objects/scalar values as inputs and produces an immutable object/scalar value as output. "Mutability" is simulated as a DAG of these operations on immutable values, similar to functional programming.

This enables caching: since inputs are immutable and operations are deterministic, cache keys can be derived from the operation and its inputs.

DAGs of operations can be serialized as IDs, which have associated digests that serve as the operations' cache keys.

Quick Reference

Jump to the right doc for your task:

Task Read
Understand how IDs encode operations and digests ids.md
Understand cache-relevant dagql execution flow dagql-api-server.md
Understand base/session cache storage and lifecycle cache-storage.md
Debug cache misses and cache behavior regressions debugging.md
Understand filesync cache behavior filesync.md

Core References

To build cache expertise, read these in order:

  1. ids.md - How IDs and digests define cache identity
  2. dagql-api-server.md - How Select/preselect/call drive cache usage
  3. cache-storage.md - How results are stored, indexed, released, and persisted

Optional References

Load on-demand for specific tasks:

  • debugging.md - Practical debugging loop and instrumentation points
  • filesync.md - Host filesystem sync internals and filesync cache model

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-03-11
索引更新时间
2026-03-11
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!