Skip to main content

Module gc

Module gc 

Source
Expand description

ASD’s garbage-collection retention policy, shared by asd gc and asd-serve’s sweep preview so the two can never disagree about what a sweep keeps.

ASD’s answer differs from AgentStateGraph’s RetentionPolicy::default() in one place, checkpoint_every. That default keeps every hundredth commit’s state as a sparse checkpoint, which suits a store whose history is its product. ASD’s is not: nearly all of it is derived index state, rebuilt from source at the git revision a milestone records. At one pin per hundred commits a busy store (a million commits is not unusual — every asd index commits) would keep thousands of full snapshots, and a sweep would reclaim almost nothing.

Constants§

GC_CHECKPOINT_EVERY
Sparse checkpoints among older commits: none. See the module docs.
GC_KEEP_RECENT
Commits whose state a sweep keeps in full, newest first.

Functions§

gc_policy
The retention policy an ASD sweep runs under.