config-remote-sync: report deployed ids when a selector matches nothing - #6115
Merged
Conversation
Co-authored-by: Isaac
Collaborator
Integration test reportCommit: dd7c64f
10 interesting tests: 4 RECOVERED, 4 SKIP, 2 flaky
Top 14 slowest tests (at least 2 minutes):
|
…loyed-id-diagnostics
Co-authored-by: Isaac
denik
approved these changes
Aug 5, 2026
…loyed-id-diagnostics
Contributor
Author
|
Bypassing Windows integration tests as this feature is os.skipped in Windows + the change is isolated to the config-remote-sync scope Manually checked that other platforms passed successfully |
Collaborator
Integration test reportCommit: 4151b37
504 interesting tests: 338 MISS, 159 FAIL, 5 RECOVERED, 2 SKIP
Top 50 slowest tests (at least 2 minutes):
|
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.
Changes
When
bundle config-remote-sync --select-idsmatches no deployed resource, the error only said which id was missing:That single line can't distinguish the cases it actually covers, and they have completely different fixes:
The error now also reports what the state did contain:
Only resource types and ids are included. Ids are opaque workspace identifiers; resource keys, names and paths come from user configuration and are never reported. The id list is capped at 10 (
... (and N more)) so the message stays readable and fits the truncation limit on the error string recorded in telemetry.Why
This error shows up in production and is currently very hard to act on — the message looks identical whether the state is empty, belongs to another bundle, or holds a different id set, so diagnosing it requires reproducing with
--log-level debug. Including the id set makes the common cases self-evident from the error alone.Tests
Unit tests for the three message shapes plus the truncation path, and the existing
select_basicacceptance snapshot updated (it already covered both the wrong-id and wrong-type cases, on both engines).