src/vs/workbench/contrib/notebook/browser/services/notebookExecutionServiceImpl.ts/NotebookExecutionService/resolveKernelFromKernelPicker
class NotebookExecutionService:	private async resolveKernelFromKernelPicker(notebook: INotebookTextModel, attempt: number = 1): Promise<INotebookKernel | undefined> {
		if (attempt > 3) {
			// we couldnt resolve kernels through kernel picker multiple times, skip
			return;
		}

		await this._commandService.executeCommand(SELECT_KERNEL_ID);
		const runningSourceActions = this._notebookKernelService.getRunningSourceActions(notebook);

		if (runningSourceActions.length) {
			await Promise.all(runningSourceActions.map(action => action.runAction()));

			const kernel = this._notebookKernelService.getSelectedOrSuggestedKernel(notebook);
			if (kernel) {
				return kernel;
			}

			attempt += 1;
			return this.resolveKernelFromKernelPicker(notebook, attempt);
		} else {
			return this._notebookKernelService.getSelectedOrSuggestedKernel(notebook);
		}
	}