Skip to content

ci: verbose setup during CI#33151

Open
Gudahtt wants to merge 1 commit into
mainfrom
verbose-setup
Open

ci: verbose setup during CI#33151
Gudahtt wants to merge 1 commit into
mainfrom
verbose-setup

Conversation

@Gudahtt

@Gudahtt Gudahtt commented Jul 10, 2026

Copy link
Copy Markdown
Member

Description

The setup script has been updated to use a verbose logger in CI, and to forward logs from each sub-step to the parent process. This will make it easier to understand delays and diagnose problems.

This verbose mode is also usable locally with the new --verbose flag.

Changelog

CHANGELOG entry: null

Related issues

N/A

Manual testing steps

Run yarn setup locally to confirm that it works the same as before.

Try yarn setup --verbose to test the new verbose mode (or just look in the CI logs for this PR).

Screenshots/Recordings

N/A

Pre-merge author checklist

Performance checks (if applicable)

  • I've tested on Android
    • Ideally on a mid-range device; emulator is acceptable
  • I've tested with a power user scenario
    • Use these power-user SRPs to import wallets with many accounts and tokens
  • I've instrumented key operations with Sentry traces for production performance metrics

For performance guidelines and tooling, see the Performance Guide.

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Low Risk
Dev/CI tooling only; no app runtime, auth, or data-path changes.

Overview
scripts/setup.mjs turns on verbose setup logging when CI is set, and adds a --verbose flag for the same behavior locally.

When verbose is on, execa runs with stdio: 'inherit' so sub-step output (yarn, pods, etc.) streams to the parent instead of being hidden behind Listr’s default UI. The root Listr task list also switches from the default renderer to verbose, so CI logs show more detail for stalls and failures.

Default local runs without --verbose stay unchanged.

Reviewed by Cursor Bugbot for commit 5e5c912. Bugbot is set up for automated code reviews on this repo. Configure here.

The setup script has been updated to use a verbose logger in CI, and to
forward logs from each sub-step to the parent process. This will make
it easier to understand delays and diagnose problems.

This verbose mode is also usable locally with the new `--verbose` flag.
@mm-token-exchange-service mm-token-exchange-service Bot added the team-core-platform Core Platform team label Jul 10, 2026
@mm-token-exchange-service

Copy link
Copy Markdown
Contributor

PR template — items to address before "Ready for review"

Warnings — informational, address before merging:

  • Related issues section is empty. Add Fixes: #123 / Closes: <URL> / Refs: <Jira key>, or write a short rationale after the colon.
  • Pre-merge author checklist has unchecked items (e.g. "I've tested on Android"). Every box must be consciously checked — see docs/readme/ready-for-review.md.

See docs/readme/ready-for-review.md for the full Definition of Ready for Review.

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: None (no tests recommended)
  • Selected Performance tags: None (no tests recommended)
  • Risk Level: low
  • AI Confidence: 97%
click to see 🤖 AI reasoning details

E2E Test Selection:
The only changed file is scripts/setup.mjs, which is a build/setup script. The changes are:

  1. Renaming the $ import alias from execa to runScript (cosmetic refactor)
  2. Adding a VERBOSE flag that defaults to true in CI environments
  3. Adding a --verbose CLI argument
  4. Configuring execa to use stdio: 'inherit' in verbose mode for better output
  5. Setting Listr renderer to 'verbose' mode when verbose is enabled

These changes only affect how the setup script outputs information during the build/setup process. They have zero impact on:

  • Application code or user-facing functionality
  • E2E test infrastructure or test specs
  • Controllers, Engine, or core modules
  • Any user flows that E2E tests cover

No E2E test tags are warranted for this purely build-tooling change.

Performance Test Selection:
The change is limited to the setup/build script (scripts/setup.mjs) and only adds verbose logging output. It has no impact on app performance, rendering times, or any performance-sensitive code paths. No performance tests are needed.

View GitHub Actions results

@Gudahtt Gudahtt marked this pull request as ready for review July 10, 2026 22:13

@cursor cursor Bot 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.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 5e5c912. Configure here.

Comment thread scripts/setup.mjs
if (INSTALL_PODS && !BUILD_IOS) {
throw new Error('Cannot install pods if iOS setup has been skipped');
}
const $ = runScript(VERBOSE ? {stdio: 'inherit'} : undefined);

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.

Bundler stderr check breaks CI

Medium Severity

When verbose mode is on (CI by default), the shared execa helper uses stdio: 'inherit', so failed subprocesses no longer populate error.stderr. The GitHub CI bundler install path treats missing stderr as a real failure and rethrows, so an already-installed bundler can fail setup instead of being ignored.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 5e5c912. Configure here.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This doesn't fail for me locally when bundler isn't installed 🤔 That error handling path might already be obsolete.

@github-actions github-actions Bot added the risk:high AI analysis: high risk label Jul 10, 2026
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:high AI analysis: high risk size-XS team-core-platform Core Platform team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant