Skip to content

ci: apply threshold to Scalpel-detected modules in incremental build - #26025

Merged
Croway merged 1 commit into
apache:mainfrom
gnodet:ci-fix/scalpel-threshold-bypass
Sep 2, 2026
Merged

ci: apply threshold to Scalpel-detected modules in incremental build#26025
Croway merged 1 commit into
apache:mainfrom
gnodet:ci-fix/scalpel-threshold-bypass

Conversation

@gnodet

@gnodet gnodet commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Summary

Claude Code on behalf of gnodet

  • Before Scalpel, when the -amd expansion of changed modules exceeded the threshold (50), the build would only test the directly changed modules. The CI comment correctly reported "Dependent modules were not tested because the total number of affected modules exceeded the threshold."
  • With Scalpel, detected dependent modules are added explicitly to -pl (merged at step 2c), bypassing the threshold entirely. For core module changes (camel-api, camel-support), this means ~591 modules get tested regardless of the threshold — making the comment misleading.
  • This fix strips dependency-detected modules (grep + Scalpel) from the build list when the threshold is exceeded, restoring the pre-Scalpel behavior. The test-dependents label still forces testing all dependents.

Test plan

  • Verify that CI changes are under .github/ path-ignore and won't trigger a full build
  • Validate by opening a test PR that touches core/camel-support — should only test the directly changed modules, not ~591 dependents
  • Verify test-dependents label still overrides the threshold

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

Before Scalpel, when the -amd expansion of changed modules exceeded the
threshold (50), the build would only test the directly changed modules.
With Scalpel, detected dependent modules are added explicitly to -pl,
bypassing the threshold entirely. For core module changes (camel-api,
camel-support), this means ~591 modules get tested regardless.

Strip dependency-detected modules (grep + Scalpel) from the build list
when the threshold is exceeded, restoring the pre-Scalpel behavior.
The test-dependents label still forces testing all dependents.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

🌟 Thank you for your contribution to the Apache Camel project! 🌟
🤖 CI automation will test this PR automatically.

🐫 Apache Camel Committers, please review the following items:

  • First-time contributors require MANUAL approval for the GitHub Actions to run
  • You can use the command /component-test (camel-)component-name1 (camel-)component-name2.. to request a test from the test bot although they are normally detected and executed by CI.
  • You can label PRs using skip-tests and test-dependents to fine-tune the checks executed by this PR.
  • Build and test logs are available in the summary page. Only Apache Camel committers have access to the summary.

⚠️ Be careful when sharing logs. Review their contents before sharing them publicly.

@davsclaus

Copy link
Copy Markdown
Contributor

@Croway is this related to your JIRA you created

@Croway

Croway commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Oh yes! I didn't know he already opened this PR, I'll assign the ticket to Guillaume and resolve it. Thanks!

@Croway
Croway merged commit d32f9bf into apache:main Sep 2, 2026
3 checks passed
@gnodet

gnodet commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

Oh yes! I didn't know he already opened this PR, I'll assign the ticket to Guillaume and resolve it. Thanks!

Thx, I did not know you created a JIRA !

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.

3 participants