Skip to content

build: validate dependency updates through CFS - #1096

Open
wenyt (wenytang-ms) wants to merge 5 commits into
mainfrom
build/cfs-pr-validation
Open

build: validate dependency updates through CFS#1096
wenyt (wenytang-ms) wants to merge 5 commits into
mainfrom
build/cfs-pr-validation

Conversation

@wenytang-ms

@wenytang-ms wenyt (wenytang-ms) commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add an Azure DevOps PR validation job for Component Framework Service (CFS)
  • validate npm and Maven/Tycho dependency updates with isolated caches
  • run CFS validation only when dependency inputs or CFS configuration change
  • remove scheduled npm Dependabot updates now covered by CFS

Validation

  • parsed .azure-pipelines/ci.yml with js-yaml
  • parsed cfs-settings.xml
  • validated the expanded Azure DevOps pipeline preview
  • ran git diff --check

npm run compile currently reports the existing minimatch/glob type incompatibility also present outside this YAML-only change.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The CFS path filter and npm registry handling need correction.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds Azure DevOps PR validation through CFS for npm and Maven/Tycho dependency updates, with isolated caches, while removing scheduled npm Dependabot updates.

Changes:

  • Adds path-filtered CFS validation jobs.
  • Configures isolated npm and Maven caches.
  • Restricts existing CI behavior for PR builds.
  • Removes npm Dependabot scheduling.
File summaries
File Summary Review findings
.github/dependabot.yml Removes scheduled npm updates. None.
.azure-pipelines/ci.yml Adds CFS validation and dependency path filters. Moderate (3 votes): misses the OSGi manifest dependency path. Moderate (2 votes): lockfile URLs may bypass CFS and use npmjs directly.
Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 2
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .azure-pipelines/ci.yml
Comment thread .azure-pipelines/ci.yml

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Retain npm Dependabot updates or provide a guaranteed replacement updater.

Review details

Suppressed comments (1)

.github/dependabot.yml:8

  • Removing the npm entry leaves Dependabot with no in-repository mechanism to create npm dependency-update PRs. The new CFS job only validates existing package.json/package-lock.json changes; it does not discover new versions or open update PRs, so npm dependencies will stop receiving automated updates unless a separate CFS updater is guaranteed. Please retain this entry or wire the replacement updater into this change.
  - package-ecosystem: "github-actions"
  • Files reviewed: 2/2 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The critical credential exposure in the PR-triggered job must be addressed before approval.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 1
  • Review effort level: Lite

Comment thread .azure-pipelines/ci.yml

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Fix the npm authentication environment variable casing before approval.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 1
  • Review effort level: Lite

Comment thread .azure-pipelines/npm-cfs.yml Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

CI triggers, credentials, and dependency workflows warrant final human review.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Two critical credential-isolation issues remain unresolved.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 2
  • Review effort level: Lite

Comment thread .azure-pipelines/ci.yml Outdated
Comment thread .azure-pipelines/npm-cfs.yml Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Address credential exposure and preserve or replace automated npm dependency updates.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details

Suppressed comments (1)

.azure-pipelines/ci.yml:76

  • Deleting the npm package-ecosystem entry disables Dependabot's version-update PRs, while this new job only validates dependencies on an already-existing PR (npm ci/the Maven build) and does not create updates. Unless an external CFS updater is provisioned, npm dependencies will stop receiving automated update PRs; retain the Dependabot entry or add/document that replacement mechanism before removing it.
              - script: npm ci --ignore-scripts --prefer-online --cache "$(Agent.TempDirectory)/npm-cache"
                displayName: Validate npm dependencies from CFS
  • Files reviewed: 2/2 changed files
  • Comments generated: 2
  • Review effort level: Lite

Comment thread .azure-pipelines/ci.yml
Comment thread .github/dependabot.yml

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The changes warrant final human review before approval.

Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

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