Skip to content

Report config-remote-sync changes that were not written back - #6146

Open
ilyakuz-db wants to merge 1 commit into
configsync/split-list-write-backfrom
configsync/report-skipped-changes
Open

Report config-remote-sync changes that were not written back#6146
ilyakuz-db wants to merge 1 commit into
configsync/split-list-write-backfrom
configsync/report-skipped-changes

Conversation

@ilyakuz-db

@ilyakuz-db ilyakuz-db commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Stacked on #6138 — review that first. Based on its branch so this diff shows only the reporting change; rebase onto main once #6138 merges.

Problem

config-remote-sync leaves a change unapplied when it cannot be attributed to a single source location. That is the right call — the command runs unattended, and a guessed location is worse than nothing. But every drop path is a log.Debugf, while the command still prints the full detected changeset and exits 0.

So a run that dropped an edit is indistinguishable from one that applied it, and the in-workspace UI reports "written back" for changes that were not. split/keyed_rename in this repo has been dropping two changes with no visible signal.

Solution

ResolveChanges returns the skipped changes alongside the resolved ones, and the caller reports them: a Not written back section in the text output, a skipped array in the JSON output (omitted when empty, so existing consumers are unaffected), a warn-level log line per drop, and a skipped_changes_count telemetry counter.

Only paths where a real user edit is discarded are counted. The OperationRemove-on-an-undefined-field path is deliberately excluded — a field absent from config has nothing to remove, so that drop is correct rather than a lost edit, and counting it would fire on ordinary runs.

Tests

split/keyed_rename already triggers the unpaired-rename path, so it gains the reporting assertions rather than a new directory — its golden previously showed two changes as detected with no indication they were dropped. It now asserts the text section, and a second run with -o json asserts the skipped array. No other golden changes.

@ilyakuz-db
ilyakuz-db force-pushed the configsync/report-skipped-changes branch from 4725000 to 66c73ca Compare August 3, 2026 14:18
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Approval status: pending

/acceptance/bundle/ - needs approval

4 files changed
Suggested: @pietern
Also eligible: @denik, @andrewnester, @anton-107, @janniklasrose, @lennartkats-db, @shreyas-goenka

/bundle/ - needs approval

5 files changed
Suggested: @pietern
Also eligible: @denik, @andrewnester, @anton-107, @janniklasrose, @lennartkats-db, @shreyas-goenka

/cmd/bundle/ - needs approval

Files: cmd/bundle/config_remote_sync.go
Suggested: @pietern
Also eligible: @denik, @andrewnester, @anton-107, @janniklasrose, @lennartkats-db, @shreyas-goenka

/libs/telemetry/ - needs approval

Files: libs/telemetry/protos/bundle_config_remote_sync.go
Eligible: @simonfaltum, @renaudhartert-db, @hectorcast-db, @parthban-db, @tanmay-db, @Divyansh-db, @tejaskochar-db, @mihaimitrea-db, @chrisst, @rauchy

Any maintainer (@andrewnester, @anton-107, @denik, @pietern, @shreyas-goenka, @simonfaltum, @renaudhartert-db, @janniklasrose, @lennartkats-db) can approve all areas.
See OWNERS for ownership rules.

@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: 9fb79e3

Run: 30863374466

Env 💚​RECOVERED 🙈​SKIP ✅​pass 🙈​skip Time
💚​ aws linux 4 4 334 1079 5:22
💚​ aws windows 4 4 324 1081 10:03
💚​ azure linux 4 4 334 1078 5:18
💚​ azure windows 4 4 324 1080 7:22
💚​ gcp linux 1 5 333 1080 5:34
💚​ gcp windows 1 5 323 1082 9:30
8 interesting tests: 4 RECOVERED, 4 SKIP
Test Name aws linux aws windows azure linux azure windows gcp linux gcp windows
💚​ TestAccept 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
🙈​ TestAccept/bundle/invariant/no_drift 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_endpoints/drift/recreated_same_name 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_indexes/recreate/embedding_dimension 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/ssh/connection 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
💚​ TestFetchRepositoryInfoAPI_FromRepo 💚​R 💚​R 💚​R 💚​R 🙈​S 🙈​S
💚​ TestFetchRepositoryInfoAPI_FromRepo/root 💚​R 💚​R 💚​R 💚​R
💚​ TestFetchRepositoryInfoAPI_FromRepo/subdir 💚​R 💚​R 💚​R 💚​R
Top 6 slowest tests (at least 2 minutes):
duration env testname
8:52 aws windows TestAccept
8:21 gcp windows TestAccept
6:20 azure windows TestAccept
3:12 gcp linux TestAccept
2:57 aws linux TestAccept
2:54 azure linux TestAccept

@ilyakuz-db
ilyakuz-db force-pushed the configsync/report-skipped-changes branch from efeb78a to 029fb75 Compare August 3, 2026 15:42
@ilyakuz-db
ilyakuz-db force-pushed the configsync/split-list-write-back branch from 49300b3 to 8b3e0a8 Compare August 3, 2026 16:04
@ilyakuz-db
ilyakuz-db force-pushed the configsync/report-skipped-changes branch 3 times, most recently from 912e1cd to 10391bd Compare August 3, 2026 16:32
@ilyakuz-db
ilyakuz-db force-pushed the configsync/report-skipped-changes branch 10 times, most recently from d67ebbb to 89c03cb Compare August 3, 2026 23:19
@ilyakuz-db
ilyakuz-db force-pushed the configsync/report-skipped-changes branch from 89c03cb to 9fb79e3 Compare August 3, 2026 23:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants