diff --git a/scripts/cache-lib.sh b/scripts/cache-lib.sh index d24ac4c..d195a5e 100755 --- a/scripts/cache-lib.sh +++ b/scripts/cache-lib.sh @@ -330,6 +330,62 @@ _holds_compiled_artifact() { return 1 } +# The directory names that select a mutable subtree, as one find predicate. +# +# Named once because THREE readers have to agree on it: the selection in +# _mutable_dirs, the prune that skips those subtrees when it sizes the file +# rules, and anything later that measures what a clone will cost. Two +# spellings of this list would size a different tree than the one copied, and +# the direction that fails is silent — an under-measured clone runs out of +# disk mid-unshare, which is gitdan-actions#20. +_MUTABLE_DIR_NAMES=( -name .fingerprint -o -name fingerprint -o -name run -o -name out ) + +# _mutable_file_rules +# +# The FILE half of the mutable set, applied one rule at a time: +# +#