From f12f3f1356e4e96d419d66d13c2e67b73a50346f Mon Sep 17 00:00:00 2001 From: Lukasz Kasprzak Date: Tue, 15 Sep 2026 00:26:36 +0200 Subject: an earlier directory's applied results stay claimed for later ones --- internal/plan/chain.go | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'internal/plan/chain.go') diff --git a/internal/plan/chain.go b/internal/plan/chain.go index b32cc7d..bb4876b 100644 --- a/internal/plan/chain.go +++ b/internal/plan/chain.go @@ -28,6 +28,12 @@ func NewClaims() *Claims { return &Claims{taken: claimed{}} } +// Claim marks path as spoken for: a later Build call of the run treats it +// as another step's result, never displacing it (spec ยง7.4). +func (c *Claims) Claim(path string) { + c.taken[path] = true +} + // Input is one file and the rules that matched it, in match order. type Input struct { File scan.File -- cgit v1.3