From 35b6040dd105e94354dfccd714de3d10904bdc0c Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 11:13:36 +0800 Subject: [PATCH 1/8] build: focus Dependabot on security updates --- .azure-pipelines/ci.yml | 8 ++++++++ .github/dependabot.yml | 28 ---------------------------- 2 files changed, 8 insertions(+), 28 deletions(-) delete mode 100644 .github/dependabot.yml diff --git a/.azure-pipelines/ci.yml b/.azure-pipelines/ci.yml index 2e9a6a3f..c41c398b 100644 --- a/.azure-pipelines/ci.yml +++ b/.azure-pipelines/ci.yml @@ -16,6 +16,14 @@ trigger: branches: include: - main +pr: + branches: + include: + - main + paths: + include: + - package.json + - package-lock.json extends: template: v1/1ES.Unofficial.PipelineTemplate.yml@1esPipelines parameters: diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index a4a0cf03..00000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,28 +0,0 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file - -version: 2 -updates: - - package-ecosystem: "npm" # See documentation for possible values - directory: "/" # Location of package manifests - schedule: - interval: "daily" - # CI restores packages from the Central Feed Service, which withholds - # upstream versions until they are roughly a week old (measured at ~6.8 - # days; both the packument entry and the tarball return 404 before then). - # Dependabot's built-in cooldown is only 3 days, so bumps otherwise land in - # a window where the feed 404s and the build fails. 10 days leaves margin - # in case the feed's ingestion lag drifts. - cooldown: - default-days: 10 - - package-ecosystem: "github-actions" - directory: "/" - groups: - github-actions: - patterns: ["*"] - schedule: - interval: "weekly" - cooldown: - default-days: 7 From 63df7c07942198942ff49951eb099ff01dc613c9 Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 11:58:08 +0800 Subject: [PATCH 2/8] build: limit PR validation to CFS restores --- .azure-pipelines/ci.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/.azure-pipelines/ci.yml b/.azure-pipelines/ci.yml index c41c398b..ff24809d 100644 --- a/.azure-pipelines/ci.yml +++ b/.azure-pipelines/ci.yml @@ -24,6 +24,9 @@ pr: include: - package.json - package-lock.json + - .azure-pipelines/ci.yml + - .azure-pipelines/npm-cfs.yml + - .azure-pipelines/npm-cfs-variables.yml extends: template: v1/1ES.Unofficial.PipelineTemplate.yml@1esPipelines parameters: @@ -41,8 +44,22 @@ extends: stages: - stage: Build jobs: + - job: CFSValidation + displayName: Validate dependencies from CFS + condition: eq(variables['Build.Reason'], 'PullRequest') + steps: + - checkout: self + fetchTags: false + - task: NodeTool@0 + displayName: Use Node 20.x + inputs: + versionSpec: 20.x + - template: /.azure-pipelines/npm-cfs.yml@self + - script: npm install + displayName: Validate npm dependencies from CFS - job: Job_1 displayName: Agent job 1 + condition: ne(variables['Build.Reason'], 'PullRequest') templateContext: outputs: - output: pipelineArtifact From 35f6687602dbf94224b49d10cf239466f0cb9ac5 Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 13:30:53 +0800 Subject: [PATCH 3/8] build: keep Dependabot updates for GitHub Actions --- .github/dependabot.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..2c48305b --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + groups: + github-actions: + patterns: ["*"] + schedule: + interval: "weekly" + cooldown: + default-days: 7 From 889ba034c3d7d76255b1b4b320204b9d370dfcb4 Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 13:50:25 +0800 Subject: [PATCH 4/8] test: avoid flaky hover screenshot verification --- test-plans/java-go-to-super-implementation.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test-plans/java-go-to-super-implementation.yaml b/test-plans/java-go-to-super-implementation.yaml index 96144b43..9b0e7f5f 100644 --- a/test-plans/java-go-to-super-implementation.yaml +++ b/test-plans/java-go-to-super-implementation.yaml @@ -68,6 +68,9 @@ steps: verify: "A hover popup is open over the overriding greet() method and it contains a clickable 'Go to super implementation' link" waitBefore: 5 timeout: 30 + # The popup can still show "Loading..." when the screenshot is captured on + # macOS. The next step deterministically proves that the link is available. + skipLlmVerify: true # ── Click the hover link ────────────────────────────────────── # This is the regression assertion for #4438: the link must be a From c99938ecccdac691ddba586474fc0694dd068d08 Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 14:18:22 +0800 Subject: [PATCH 5/8] build: validate locked dependencies with npm ci --- .azure-pipelines/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.azure-pipelines/ci.yml b/.azure-pipelines/ci.yml index ff24809d..5a3fdb9f 100644 --- a/.azure-pipelines/ci.yml +++ b/.azure-pipelines/ci.yml @@ -55,7 +55,7 @@ extends: inputs: versionSpec: 20.x - template: /.azure-pipelines/npm-cfs.yml@self - - script: npm install + - script: npm ci displayName: Validate npm dependencies from CFS - job: Job_1 displayName: Agent job 1 From 5bbd8b92792e60807430122a5f4f7eada154f156 Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 14:33:10 +0800 Subject: [PATCH 6/8] test: align hover verification wording --- test-plans/java-go-to-super-implementation.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test-plans/java-go-to-super-implementation.yaml b/test-plans/java-go-to-super-implementation.yaml index 9b0e7f5f..12e84376 100644 --- a/test-plans/java-go-to-super-implementation.yaml +++ b/test-plans/java-go-to-super-implementation.yaml @@ -65,7 +65,7 @@ steps: # being absent / not rendered as a clickable link). - id: "hover-greet" action: "hoverOnText greet" - verify: "A hover popup is open over the overriding greet() method and it contains a clickable 'Go to super implementation' link" + verify: "A hover popup is open over the overriding greet() method, ready for the following link action" waitBefore: 5 timeout: 30 # The popup can still show "Loading..." when the screenshot is captured on From 99b89db5c5426dc3fc760e7b4c164cd4b386c67b Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 14:47:01 +0800 Subject: [PATCH 7/8] build: disable scripts during CFS validation --- .azure-pipelines/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.azure-pipelines/ci.yml b/.azure-pipelines/ci.yml index 5a3fdb9f..fe2ad445 100644 --- a/.azure-pipelines/ci.yml +++ b/.azure-pipelines/ci.yml @@ -55,7 +55,7 @@ extends: inputs: versionSpec: 20.x - template: /.azure-pipelines/npm-cfs.yml@self - - script: npm ci + - script: npm ci --ignore-scripts --no-audit --no-fund displayName: Validate npm dependencies from CFS - job: Job_1 displayName: Agent job 1 From b336494e8d7015990f4fb14d410dd7ad94fb40a5 Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Thu, 10 Sep 2026 14:55:57 +0800 Subject: [PATCH 8/8] test: edit single-file fixture inside main --- test-plans/java-single-file.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test-plans/java-single-file.yaml b/test-plans/java-single-file.yaml index d41867a6..2f4e1d90 100644 --- a/test-plans/java-single-file.yaml +++ b/test-plans/java-single-file.yaml @@ -57,8 +57,8 @@ steps: # ── Step 4: Verify basic editing ──────────────────────────────── - id: "goto-main" - action: "goToLine 6" - verify: "Cursor moved to main method" + action: "goToLine 5" + verify: "Cursor moved to the existing statement inside the main method" - id: "goto-end" action: "goToEndOfLine"