siso: Introduce Garbage Collection Engine Adds `hfs.GarbageCollectBuildLabels(ctx, BuildLabelGCOptions)` to the Siso HashFS backend. This applies mathematical bitwise eviction modeling based on 4 sweep strategies: - RetainLastX (LRU cache bounding) - OlderThan (TTL bounding) - EvictLabels (Explicit target destruction via regex) - KeepLabels (Explicit target retaining via regex) It iterates over the internal dictionary ledger mapping and executes a bitwise sweep against evicted vs kept targets to deterministically compute cache overlap protection across shared files. This engine cleanly separates mathematical evaluation from actual OS execution (`opts.DryRun`), which will allow downstream CLI layers to retrieve metrics. This is the 3rd CL for go/targeted-build-cleaning. Change-Id: Ie323cfaafb18862b79080537669c0d65542dbd2c BUG=446692498 TAG=agy CONV=ff3ec10c-40be-426f-b702-052ff5a38e57 Reviewed-on: https://chromium-review.googlesource.com/c/build/+/8141379 Reviewed-by: Yuke Liao <liaoyuke@google.com> Commit-Queue: Saatvik Sharma <sharmasaatvik@google.com>
This repository contains tools developed and owned by the Chrome Build Team.
The steps for getting the code are:
git clone https://chromium.googlesource.com/buildWe use the standard Go module workflow to work on our projects.