Skip to content

fix: limit external-eic-shell error reports to downstream use only#4907

Merged
paulgessinger merged 3 commits intoacts-project:mainfrom
wdconinc:patch-9
Mar 25, 2026
Merged

fix: limit external-eic-shell error reports to downstream use only#4907
paulgessinger merged 3 commits intoacts-project:mainfrom
wdconinc:patch-9

Conversation

@wdconinc
Copy link
Copy Markdown
Contributor

Limit the types of errors that external-eic-shell reports in the summary to build errors after ACTS has been successfully built, and treat failure to build ACTS itself as a pipeline error.

--- END COMMIT MESSAGE ---

With the notifications of failures in the external-eic-shell stack, we now also receive notifications of code in PR that is not yet ready where ACTS fails to compile (rather than this being a change in interface that EIC needs to be aware of). This is not actionable for EIC, so the notifications are noise. Example is https://github.com/acts-project/acts/actions/runs/20168575581/job/57898016435

This PR modifies the strategy to treat build failures of ACTS within the EIC environment as a primary error that will fail a pipeline (instead of only reporting a failure in the comment). This is unlikely to suppress true EIC-specific issues, which would be cases where ACTS builds fine, but somehow the EIC environment can't build it.

@github-actions github-actions Bot added this to the next milestone Dec 12, 2025
@github-actions github-actions Bot added the Infrastructure Changes to build tools, continous integration, ... label Dec 12, 2025
@wdconinc
Copy link
Copy Markdown
Contributor Author

@tmadlener Maybe you want something like this for key4hep builds?

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Dec 12, 2025

📊: Physics performance monitoring for 0a6b17f

Full contents

physmon summary

Comment thread .github/workflows/builds.yml Outdated
@wdconinc
Copy link
Copy Markdown
Contributor Author

RFR @paulgessinger Does this seem like something you'd be ok with? It opens a risk in that the ACTS build itself can build in all ACTS testing systems but fail inside the EIC environment. That's currently not a hard failure, but would become one.

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Dec 12, 2025

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarQube Cloud

paulgessinger
paulgessinger previously approved these changes Dec 15, 2025
@github-actions github-actions Bot added the Stale label Jan 14, 2026
@paulgessinger
Copy link
Copy Markdown
Member

hi @wdconinc we never merged this, do you want to rebase and we try again?

@wdconinc
Copy link
Copy Markdown
Contributor Author

Rebased (a few times until I got it right). Let's see in CI if made any remaining mistakes.

@wdconinc wdconinc marked this pull request as ready for review March 24, 2026 21:55
Copilot AI review requested due to automatic review settings March 24, 2026 21:55
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adjusts the external_eic-shell CI job behavior so that ACTS build failures are treated as primary pipeline failures (and don’t generate downstream noise), while downstream (EICrecon) failures remain reported via the existing comment/artifact mechanism.

Changes:

  • Split the prior combined external build step into separate “Build ACTS” (hard-fail) and “Build EICrecon” (soft-fail) steps.
  • Update the PR comment artifact generation/upload conditions to trigger only on EICrecon failures.
  • Change the intended install prefix used between the two steps to a workspace-mounted path (/work/prefix) so it can be reused across steps.
Comments suppressed due to low confidence (1)

.github/workflows/builds.yml:463

  • export CMAKE_INSTALL_PREFIX=/work/prefix does not set CMake’s install prefix by itself. Since the configure call doesn’t pass -DCMAKE_INSTALL_PREFIX=... (and the install call doesn’t use --prefix), Acts will likely still install to the default prefix (e.g. /usr/local), while the EICrecon step points Acts_ROOT at /work/prefix. Please set the install prefix explicitly during the Acts configure (or during cmake --install) so the installed package ends up under /work/prefix as intended.
            ccache -z && \
            export CMAKE_INSTALL_PREFIX=/work/prefix
            export CMAKE_CXX_COMPILER_LAUNCHER=ccache
            echo "::group::Acts configure phase"
            cmake -B build -S . \
              -GNinja \
              -DACTS_BUILD_EXAMPLES=ON \
              -DACTS_BUILD_FATRAS=ON \
              -DACTS_BUILD_PLUGIN_DD4HEP=ON

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sonarqubecloud
Copy link
Copy Markdown

@github-actions github-actions Bot removed the Stale label Mar 24, 2026
@andiwand
Copy link
Copy Markdown
Contributor

/ci-bridge-run

@andiwand andiwand requested a review from paulgessinger March 25, 2026 06:42
@paulgessinger
Copy link
Copy Markdown
Member

Some copilot related job fails, which blocks merge sentinel. I'll merge this manually after #5277

@paulgessinger paulgessinger merged commit e09344a into acts-project:main Mar 25, 2026
46 of 48 checks passed
@andiwand andiwand modified the milestones: next, v46.1.0 Apr 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Infrastructure Changes to build tools, continous integration, ...

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants