Change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.69 () OS Version: macOS Ventura (13.0) developer beta 2, Firefox 102.0 Steps to Reproduce: an Insiders Codespace with any repository on Settings Sync until extensions are installed many walkthroughs being opened Here is a video demonstration: Something else that I took note of (also seen in the demo video) is that: Sync is turned off for every new codespace I create the extension setup, the page reloads every time in some stage of the process (this could be expected though) I have tested this both on Brave and Firefox with various different repositories. Original issue:
The respective component owner has to opt into syncing the state.
This user is stating it only happens in codespaces and not on or I'm not sure if settings sync is treated differently here but we do sync walkthrough state
Yes indeed, In addition, this does not happen for me in 1.68.1 (stable).
Created a PR fixing this Can it be cherry-picked to the release branch before tomorrows release :pray: ? This also affects workbench theme as it flashes from default theme to the theme from settings sync which is really annoying, in 1.68 workbench starts with the theme from sync server directly cc
It seems the newly created codespace is not getting initialised with synced data because the workspace says it is not new.

Discussion:
private applicationStorage: IStorage | undefined; private applicationStorageDatabase: IIndexedDBStorageDatabase | undefined; <del> private readonly applicationStoragePromise = new DeferredPromise<{ indededDb: IIndexedDBStorageDatabase; storage: IStorage }>(); </del> <ins> private readonly applicationStoragePromise = new DeferredPromise<{ indexedDb: IIndexedDBStorageDatabase; storage: IStorage }>(); </ins> private profileStorage: IStorage | undefined; private profileStorageDatabase: IIndexedDBStorageDatabase | undefined;

this.updateIsNew(this.applicationStorage); <del> this.applicationStoragePromise.complete({ indededDb: applicationStorageIndexedDB, storage: this.applicationStorage }); </del> <ins> this.applicationStoragePromise.complete({ indexedDb: applicationStorageIndexedDB, storage: this.applicationStorage }); </ins> } private async createProfileStorage(profile: IUserDataProfile): Promise<void> {

// avoid creating the storage library a second time on // the same DB. <del> const { indededDb: applicationStorageIndexedDB, storage: applicationStorage } = await this.applicationStoragePromise.p; </del> <ins> const { indexedDb: applicationStorageIndexedDB, storage: applicationStorage } = await this.applicationStoragePromise.p; </ins> this.profileStorageDatabase = applicationStorageIndexedDB; this.profileStorage = applicationStorage; <ins> this.profileStorageDisposables.add(this.profileStorage.onDidChangeStorage(key => this.emitDidChangeValue(StorageScope.PROFILE, key))); </ins> } else { const profileStorageIndexedDB = await IndexedDBStorageDatabase.create({ id: this.getId(StorageScope.PROFILE), broadcastChanges: true }, this.logService); this.profileStorageDatabase = this.profileStorageDisposables.add(profileStorageIndexedDB); this.profileStorage = this.profileStorageDisposables.add(new Storage(this.profileStorageDatabase)); <del> } this.profileStorageDisposables.add(this.profileStorage.onDidChangeStorage(key => this.emitDidChangeValue(StorageScope.PROFILE, key))); </del> <ins> this.profileStorageDisposables.add(this.profileStorage.onDidChangeStorage(key => this.emitDidChangeValue(StorageScope.PROFILE, key))); </ins> <del> await this.profileStorage.init(); </del> <ins> await this.profileStorage.init(); </ins> <del> this.updateIsNew(this.profileStorage); </del> <ins> this.updateIsNew(this.profileStorage); } </ins> } private async createWorkspaceStorage(): Promise<void> {