Change:
a repo in :bug: see this !
This is expected if the repo that you open has tasks that run on . Could you pls provide me with a repo for which this happens that doesn't have those?
seeing this dialog when I just open a folder, so wondering if something with workspace trust has changed recently. No changes with tasks recently could explain this. !
Doesn't repro in , repros in : Bad: Good:
found these task PRs in that time frame: ,
found it also happens in an empty window on desktop
Still seeing this in (and also RemoteHub on desktop) with the changes in !
This is coming from -here. perhaps we don't want to do that for the or only do that in trusted workspaces? !

Discussion:
*  Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ <ins> import { RunOnceScheduler } from 'vs/base/common/async'; </ins> import { Emitter, Event } from 'vs/base/common/event'; import { IJSONSchema, IJSONSchemaMap } from 'vs/base/common/jsonSchema'; import { Disposable, IDisposable } from 'vs/base/common/lifecycle';

this._register(this.onDidDebuggersExtPointRead(() => { this.debugExtensionsAvailable.set(this.debuggers.length > 0); })); <del> this._register(tasksService.onDidChangeTaskConfig(() => { this.updateTaskLabels(); </del> <ins> // generous debounce since this will end up calling `resolveTask` internally const updateTaskScheduler = this._register(new RunOnceScheduler(() => this.updateTaskLabels(), 5000)); this._register(Event.any(tasksService.onDidChangeTaskConfig, tasksService.onDidChangeTaskProviders)(() => { updateTaskScheduler.cancel(); updateTaskScheduler.schedule(); </ins> })); this.lifecycleService.when(LifecyclePhase.Eventually) .then(() => this.debugExtensionsAvailable.set(this.debuggers.length > 0)); // If no extensions with a debugger contribution are loaded

this.usedDebugTypes.add(s.configuration.type); })); <del> this.updateTaskLabels(); </del> <ins> updateTaskScheduler.schedule(); </ins> } private registerListeners(): void {

private _onDidChangeTaskConfig: Emitter<void> = new Emitter(); public onDidChangeTaskConfig: Event<void> = this._onDidChangeTaskConfig.event; public get isReconnected(): boolean { return this._tasksReconnected; } <ins> private _onDidChangeTaskProviders = this._register(new Emitter<void>()); public onDidChangeTaskProviders = this._onDidChangeTaskProviders.event; </ins> constructor( @IConfigurationService private readonly _configurationService: IConfigurationService,

const handle = AbstractTaskService._nextHandle++; this._providers.set(handle, provider); this._providerTypes.set(handle, type); <ins> this._onDidChangeTaskProviders.fire(); </ins> return { dispose: () => { this._providers.delete(handle); this._providerTypes.delete(handle); <ins> this._onDidChangeTaskProviders.fire(); </ins> } }; }

return Promise.resolve<Task[]>([]); } <del> return this._getGroupedTasks(filter, false).then((map) => this.applyFilterToTaskMap(filter, map)); </del> <ins> return this._getGroupedTasks(filter, true).then((map) => this.applyFilterToTaskMap(filter, map)); </ins> } public taskTypes(): string[] {

export interface ITaskService { readonly _serviceBrand: undefined; onDidStateChange: Event<ITaskEvent>; <ins> /** Fired when task providers are registered or unregistered */ onDidChangeTaskProviders: Event<void>; </ins> isReconnected: boolean; onDidReconnectToTasks: Event<void>; supportsMultipleTaskExecutions: boolean;