feat(foreman): run_reconcile tool for sliced-workload drift check#1046
Merged
Conversation
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
737424b to
8518842
Compare
Task 4b of the Sliced Workloads epic (defilantech#1033): the deterministic run_reconcile tool that a sliced Workload's reconcile step dispatches. It fetches + checks out the integration branch (pushed by run_integrate), then runs slicer.PinnedCheck against the pinned shared identifiers. Verdict: clean -> GATE-PASS; a pinned identifier missing from a slice that must define or reference it -> GATE-FAIL (cross-slice interface drift the build is blind to); a fetch fault -> GATE-ERROR. The integration branch is validated with refSafe (shared with run_integrate) against argv injection. v1 runs only the authoritative pinned_check; the advisory llm_sweep needs a model endpoint the deterministic path does not resolve and is a follow-up. Real-git tests: clean union -> GATE-PASS, exporter/dashboard metric drift -> GATE-FAIL, option-looking branch -> GATE-ERROR. Part of defilantech#1033 Signed-off-by: Christopher Maher <chris@mahercode.io>
8518842 to
b9136c3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Task 4b of the Sliced Workloads epic (#1033): the deterministic
run_reconciletool that a sliced Workload'sreconcilestep dispatches.It fetches + checks out the integration branch (pushed by
run_integrate), then runsslicer.PinnedCheckagainst the pinned shared identifiers.GATE-PASS; a pinned identifier missing from a slice that must define/reference it →GATE-FAIL(cross-slice interface drift the build is blind to); a fetch fault →GATE-ERROR.refSafe(shared withrun_integrate) against argv injection.Why
The union builds clean but is blind to semantic interface drift between slices (a dashboard querying a metric an exporter never emits). This is the in-cluster wiring of the authoritative check that caught the real drift on #700 and #1001, driving the AgenticTask verdict.
Scope: v1 is pinned_check only
Per the design decision, v1 runs the deterministic, authoritative
pinned_check. The advisoryllm_sweep(slicer.LLMSweep) needs a model endpoint the deterministic path does not resolve; wiring it is a small follow-up.pinned_checkis what caught the drift in validation;llm_sweepwas the corroborating backstop.Testing
go test ./pkg/foreman/agent/tools/ -run TestRunReconcile— real-git: clean union →GATE-PASS, exporter/dashboard metric drift →GATE-FAIL, option-looking branch →GATE-ERROR. Fulltoolspackage,vet,golangci-lint,buildclean.Stacked PR
Checklist
go test/vet/golangci-lint/buildcleanPart of #1033
Assisted-by: Claude Code (Opus 4.8); reviewed and verified by the author.