Batch GitOps YAML parsing and release the cache lock before validation #291

Merged
binjovi-bot merged 1 commit from perf/gitops-validator-cache into trunk 2026-09-10 21:08:05 +00:00
Owner

Compile the policy selector in Go and parse source YAML in one bounded batch. Fetch only immutable required revisions into a retained Git object cache. Keep cache initialization, fetch and clone preparation under a repository lock; run checkout and validation independently. Preserve exact policy rejection and changed-path coverage.

Validation: real malformed and multi-document YAML, strict policy fixtures, pull-only commits, warm fetch reuse, concurrent isolated checkouts and pruning retention. Twenty matched local YAML pairs reduced median46-file parsing from756.53ms to21.36ms; cluster pipeline savings remain to be measured. Validatorv10 must be published and pinned before consumers enable shared cache mounts.

Compile the policy selector in Go and parse source YAML in one bounded batch. Fetch only immutable required revisions into a retained Git object cache. Keep cache initialization, fetch and clone preparation under a repository lock; run checkout and validation independently. Preserve exact policy rejection and changed-path coverage. Validation: real malformed and multi-document YAML, strict policy fixtures, pull-only commits, warm fetch reuse, concurrent isolated checkouts and pruning retention. Twenty matched local YAML pairs reduced median46-file parsing from756.53ms to21.36ms; cluster pipeline savings remain to be measured. Validatorv10 must be published and pinned before consumers enable shared cache mounts.
perf: batch GitOps validation and share exact Git objects without long locks
All checks were successful
binjovi/ci Binjovi completed the frozen plan
c17ed5d3a2
binjovi-bot deleted branch perf/gitops-validator-cache 2026-09-10 21:08:05 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
sean/builder-images!291
No description provided.