fix(oss-commit-sync): align-tree must align the full tree including excluded paths#187
Merged
Merged
Conversation
…xcluded paths rehearsal in the experiments org caught this: with the assertion made exclude-aware, the migration run (align-tree=true, seeds, excluded producer workflow as the only drift) became a green no-op. it deleted nothing, appended no alignment commit, and seeded no Monorepo-Commit trailer, so every subsequent push-triggered export would fail asking for seeds. align-tree now branches on strict tree inequality: it is the explicit operator escape hatch and aligns everything, while the failure path and the guard stay exclude-aware. regression-tested with the exact migration fixture.
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.
Summary
oss-commit-sync/v1) caught a gap the offline suite missed:align-tree: truewith seeds ran green but did nothing. The exclude-aware convergence assertion (added in feat(oss-commit-sync): per-commit diff-replay oss sync action replacing subtree-mirror #185's review round) also gated the alignment path, and since the only drift was the excluded producer workflow, no alignment commit was created — so the OSS-only workflow survived and, worse, noMonorepo-Committrailer was seeded, leaving every subsequent push-triggered export failing and asking for seeds.align-tree: truenow branches on strict tree inequality and aligns everything including excluded paths: it is the explicit operator escape hatch, and at migration it is exactly what deletes the OSS-only producer workflows and seeds the first trailer. The failure path and the divergence guard stay exclude-aware.Test plan
oss-commit-sync/v1.References DEVOPS-1121