bundle: remove split config sync elements from every block - #6135
Closed
ilyakuz-db wants to merge 1 commit into
Closed
bundle: remove split config sync elements from every block#6135ilyakuz-db wants to merge 1 commit into
ilyakuz-db wants to merge 1 commit into
Conversation
Contributor
Approval status: pending
|
Collaborator
Integration test reportCommit: 490a0da
10 interesting tests: 4 RECOVERED, 4 SKIP, 2 flaky
Top 3 slowest tests (at least 2 minutes):
|
ilyakuz-db
force-pushed
the
configsync/block-provenance
branch
from
August 2, 2026 14:01
7075667 to
8454025
Compare
ilyakuz-db
force-pushed
the
configsync/block-scoped-removal
branch
from
August 2, 2026 14:01
88ba6e6 to
2aca20d
Compare
ilyakuz-db
force-pushed
the
configsync/block-provenance
branch
from
August 2, 2026 14:46
8454025 to
f6b4d04
Compare
ilyakuz-db
force-pushed
the
configsync/block-scoped-removal
branch
from
August 2, 2026 14:46
2aca20d to
af80453
Compare
ilyakuz-db
force-pushed
the
configsync/block-provenance
branch
from
August 2, 2026 18:53
f6b4d04 to
7387cfe
Compare
ilyakuz-db
force-pushed
the
configsync/block-scoped-removal
branch
2 times, most recently
from
August 2, 2026 19:15
c7d2043 to
add864c
Compare
This was referenced Aug 2, 2026
ilyakuz-db
force-pushed
the
configsync/block-provenance
branch
from
August 2, 2026 19:58
7387cfe to
f8e1487
Compare
ilyakuz-db
force-pushed
the
configsync/block-scoped-removal
branch
from
August 2, 2026 19:58
add864c to
f1fc0e3
Compare
Co-authored-by: Isaac
ilyakuz-db
force-pushed
the
configsync/block-provenance
branch
from
August 2, 2026 21:52
f8e1487 to
3aaaf93
Compare
ilyakuz-db
force-pushed
the
configsync/block-scoped-removal
branch
from
August 2, 2026 21:52
f1fc0e3 to
490a0da
Compare
Contributor
Author
|
Consolidated into #6138 — the stack is merged into a single PR with the same final tree. |
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.
Stack
Each PR is based on the one above it and carries the acceptance tests for its own behaviour.
Changes
Removes a keyed list element that is defined in more than one YAML block from every block that defines it.
The parent PR routes each change to a single block, which is right for a field edit but cannot express this removal: a job task declared both at the top level and in a
targets.<target>override has a part in each, and the merged element only disappears once both are gone. That case was therefore left unapplied.routeElementnow returns one destination per defining block, andApplyChangesToYAMLalready groups changes by file, so the patch layer is unchanged.Each destination gets its own copy of the change, because the
Replace→Addreclassification for a field absent from the source rewrites the operation, and one block's rewrite must not leak into the next.Why
Leaving the change unapplied was safe but never converged: the element stays in configuration after the user deleted it remotely, so every later sync re-reports the same removal. Deleting only the top-level half — the behaviour before the parent PR — was worse, since it orphaned the override half.
Tests
Two new directories, both failing on the parent commit and passing here:
split/keyed_remove— removes one task per block in one run (exactly those two go,betasurvives), then removes the task defined in both blocks:task_key: bothgoes from 2 to 0 and the top-levelkeeptask is untouched.split/isolation— a structural change to a split element alongside an unrelated scalar edit on another resource, in the same run. The unrelated edit is applied regardless, so one harder change never stops the rest.Review with
git diff -w. The real change is +39/−14 inresolve.go; the rest of the raw line count is re-indentation from wrapping the existing body in a per-destination loop.