Skip to content

ci: remove cross-platform-tests and semantic PR/branch checks#712

Merged
jamesnrokt merged 1 commit into
mainfrom
ci/remove-flaky-pr-checks
Jun 2, 2026
Merged

ci: remove cross-platform-tests and semantic PR/branch checks#712
jamesnrokt merged 1 commit into
mainfrom
ci/remove-flaky-pr-checks

Conversation

@jamesnrokt

Copy link
Copy Markdown
Collaborator

Summary

Removes three checks that have been failing on nearly every recent PR (#690#711):

  • cross-platform-tests — entire workflow deleted (known broken; depends on the external mParticle/crossplatform-sdk-tests repo)
  • Check PR for semantic titlepr-title-check job removed from pull-request.yml
  • Check PR for semantic branch namepr-branch-check-name job removed from pull-request.yml

Notes

  • If any of these were listed as required checks in branch protection for main, those rules will need to be updated in repo settings so new PRs don't get stuck waiting on checks that no longer run.
  • Two other repeat-offender failures were found but not removed here:
    • Notify GChat / notify-gchat — fails on fork PRs / missing secret; it's a notification, not a gate. Worth a follow-up to add continue-on-error or remove.
    • SonarCloud Code Analysis — posted by the SonarCloud GitHub App, not a workflow file. Needs to be turned off in the SonarCloud UI / repo app settings.

Test plan

  • CI on this PR shows the three removed checks no longer appear
  • Remaining checks (unit tests, lint, instrumented tests, kit compatibility, security, trunk) still run

🤖 Generated with Claude Code

These checks have been failing on nearly every recent PR. The
cross-platform tests are known broken, and the semantic PR title /
branch name checks are no longer enforced.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@jamesnrokt
jamesnrokt requested a review from a team as a code owner May 27, 2026 17:35
@cursor

cursor Bot commented May 27, 2026

Copy link
Copy Markdown

PR Summary

Medium Risk
Fewer automated quality gates (external cross-platform tests and semantic PR/branch enforcement); branch protection must be updated or PRs can block on missing checks.

Overview
This PR stops running three CI gates that were failing on most recent PRs.

The entire .github/workflows/cross-platform-tests.yml workflow is removed, so PRs no longer check out mParticle/crossplatform-sdk-tests, run Android emulator jobs, or upload cross-platform test reports.

In .github/workflows/pull-request.yml, the reusable jobs pr-branch-check-name (semantic branch name) and pr-title-check (semantic PR title) are dropped. Other jobs in that workflow—Trunk, hardcoded secrets, instrumented/unit/lint tests, kit compatibility, dependabot automerge, GChat notify—are unchanged.

Branch protection may still list the removed check names as required; those rules need to be updated in repo settings or merges can stall waiting for checks that no longer exist.

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

@sonarqubecloud

Copy link
Copy Markdown

@BrandonStalnaker

Copy link
Copy Markdown
Contributor

Totally agree with removing the cross-platform-tests but do we no longer want standardized branch names and commit messages?

@jamesnrokt

Copy link
Copy Markdown
Collaborator Author

Totally agree with removing the cross-platform-tests but do we no longer want standardized branch names and commit messages?

For PR titles I felt that these are usually superfluous as they usually fail on the first opening PR and then can never pass so it was adding noise with ❌ on all the commits. Given we no longer use the titles for semver it seems like a fairly useless check and something we can easily edit before merge.

For branch names I don't see the value at all as our branch protection rules protect us from issues and it doesn't impact the work itself.

Wondering what your thoughts are given the above? Overall I'm happy to change it if it causes an issue, my main goal is at a glance ✅ on commits

@nickolas-dimitrakas

Copy link
Copy Markdown

Totally agree with removing the cross-platform-tests but do we no longer want standardized branch names and commit messages?

For PR titles I felt that these are usually superfluous as they usually fail on the first opening PR and then can never pass so it was adding noise with ❌ on all the commits. Given we no longer use the titles for semver it seems like a fairly useless check and something we can easily edit before merge.

For branch names I don't see the value at all as our branch protection rules protect us from issues and it doesn't impact the work itself.

Wondering what your thoughts are given the above? Overall I'm happy to change it if it causes an issue, my main goal is at a glance ✅ on commits

I second the bit about not being able to correct the PR titles for the ✅. It was tedious to have to open a new PR with a proper branch name. No problem with any of the other jobs that were removed either.

@jamesnrokt
jamesnrokt merged commit 6cdacf2 into main Jun 2, 2026
36 of 39 checks passed
@jamesnrokt
jamesnrokt deleted the ci/remove-flaky-pr-checks branch June 2, 2026 14:16
mparticle-automation added a commit that referenced this pull request Jun 22, 2026
## [5.79.2](v5.79.1...v5.79.2) (2026-06-22)

### Updates & Maintenance

* bump actions/checkout from 6.0.2 to 6.0.3 ([#720](#720)) ([d904edb](d904edb))
* remove cross-platform-tests and semantic PR/branch checks ([#712](#712)) ([6cdacf2](6cdacf2))
* Update submodules ([976dd0d](976dd0d))
@mparticle-automation

Copy link
Copy Markdown
Collaborator

🎉 This PR is included in version 5.79.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

denischilik added a commit that referenced this pull request Jul 17, 2026
* chore: Update submodules

* chore: 5.78.3 (release)

## [5.78.3](v5.78.2...v5.78.3) (2026-03-11)

### Updates & Maintenance

* bump actions/upload-artifact from 6 to 7 ([#649](#649)) ([0a188b1](0a188b1))
* Update submodules ([cbb17d7](cbb17d7))

* chore: Update submodules

* chore: 5.78.4 (release)

## [5.78.4](v5.78.3...v5.78.4) (2026-03-23)

### Updates & Maintenance

* Update submodules ([08dab75](08dab75))

* chore: Update submodules

* chore: 5.78.5 (release)

## [5.78.5](v5.78.4...v5.78.5) (2026-03-25)

### Updates & Maintenance

* Update submodules ([86d8d97](86d8d97))

* fix: increase MPLatch timeout from 5s to 30s (#695)

* fix: increase MPLatch timeout from 5s to 30s

The 5-second timeout is too short for WebView JS bridge tests running
on newer GitHub Actions runner images (ubuntu24/20260309.50+). The
MParticleJSInterfaceITest tests consistently fail because JS execution
in the emulator WebView doesn't complete within 5 seconds on these
environments.

Increasing to 30 seconds provides sufficient margin while still
catching genuine hangs via the workflow-level timeout-minutes: 15.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: use explicit 30s timeout in JS bridge tests only

Instead of increasing the global MPLatch timeout (used by 20+ test
files), use an explicit 30-second await in MParticleJSInterfaceITest
only. WebView JS execution needs more time on newer CI runner images,
but other tests don't need the longer timeout.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat: Add max persistence age override option [TRIAGE-608] (#699)

* TRIAGE-608: Add max persistence age override option

* TRIAGE-608: Update throttl ts on success + tests

* TRIAGE-608: Make properties @VisibleForTesting

* TRIAGE-608: Fix retry-on-failure throttle logic

* feat: add customBaseURL CNAME support to NetworkOptions (#701)

* feat: add customBaseURL CNAME support to NetworkOptions

Adds NetworkOptions.Builder.setCustomBaseURL(String) which routes all
mParticle endpoint traffic (config, events, identity, alias, audience)
through a single HTTPS CNAME host. When set, customBaseURL takes
priority over individual domain mappings and rewrites paths to match
CDN routing: /config/v4/, /nativeevents/v2/, /identity/v1/,
/nativeevents/v1/identity/, /nativeevents/v1/<key>/audience.

Also adds R8 keep rules for MParticle$Internal and
ConfigManager.getNetworkOptions() so kits can read customBaseURL after
minification.

The Rokt kit reads NetworkOptions.customBaseURL and forwards it to the
Rokt SDK: mparticle-integrations/mparticle-android-integration-rokt#143

Mirrors iOS work from mparticle-apple-sdk#760.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* fix: persist customBaseURL across NetworkOptions JSON round-trip

NetworkOptions.toJson() and withNetworkOptions(String) did not include
customBaseURL, so any value was silently dropped when UploadSettings
serialized NetworkOptions to the upload database. Events and alias
uploads read back NetworkOptions without customBaseURL and routed to
the default mParticle endpoints instead of the partner CNAME.

Also:
- Extract the customBaseURL/DomainMapping host-resolution branch out of
  getUrl() into a private resolveHost() helper plus a small ResolvedHost
  value type, lowering getUrl()'s cyclomatic complexity.
- Switch java.net.URL / java.net.MalformedURLException to imports.
- Add two androidTest cases covering the round-trip.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* test(android-core): cover custom base URL upload storage

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: Thomson Thomas <thomson.thomas@rokt.com>

* chore: Update submodules

* chore: 5.79.0 (release)

## [5.79.0](v5.78.5...v5.79.0) (2026-05-14)

### Features

* add customBaseURL CNAME support to NetworkOptions ([#701](#701)) ([5285149](5285149)), closes [mparticle-apple-sdk#760](mParticle/mparticle-apple-sdk#760)
* Add max persistence age override option [TRIAGE-608] ([#699](#699)) ([ca88322](ca88322))

### Bug Fixes

* increase MPLatch timeout from 5s to 30s ([#695](#695)) ([20f723f](20f723f))

### Updates & Maintenance

* Update submodules ([59a4a9a](59a4a9a))

* chore: bump trunk-io/trunk-action from 1.2.4 to 1.3.1 (#705)

Bumps [trunk-io/trunk-action](https://github.com/trunk-io/trunk-action) from 1.2.4 to 1.3.1.
- [Release notes](https://github.com/trunk-io/trunk-action/releases)
- [Commits](trunk-io/trunk-action@75699af...04ba50e)

---
updated-dependencies:
- dependency-name: trunk-io/trunk-action
  dependency-version: 1.3.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Handle legacy persisted domain mappings safely (#703)

Co-authored-by: James Newman <james.newman@rokt.com>

* fix(ci): pin isolated-kit gradle version to prevent 6.0.0-rc.1 pull (#714)

The isolated urbanairship-kit lint/test steps in daily.yml and the
kit-compatibility test in pull-request.yml run `./gradlew` from inside
the kit dir without `-Pversion=...`. The kit's standalone build.gradle
defaults `project.version = '+'`, so its `com.mparticle:android-kit-plugin`
dependency resolves to the highest version on Maven Central — now
`6.0.0-rc.1` (published 2026-05-22), which renamed/removed kit-base
symbols and broke the kit's compile.

Mirror the pattern already used in the Sonatype Release job: extract the
SDK version via `./gradlew -q properties` and pass it as `-Pversion=...`
to every standalone kit invocation, so it resolves the freshly-published
mavenLocal artifact instead of the RC.

Affected steps:
- lint-checks → Run Isolated Kit Lint (urbanairship-kit)
- kotlin-lint-checks → Run Isolated Kit Kotlin Lint (urbanairship-kit)
- update-kits → Test Isolated Kits (urbanairship-kit)
- kit-compatibility-test → Run Isolated Kit Compatibility Tests (urbanairship-kit)

The companion defensive fix in mparticle-android-integration-urbanairship
pins the kit's standalone `project.version` to `[5.0,6.0)`.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore: Update submodules

* chore: 5.79.1 (release)

## [5.79.1](v5.79.0...v5.79.1) (2026-05-27)

### Bug Fixes

* **ci:** pin isolated-kit gradle version to prevent 6.0.0-rc.1 pull ([#714](#714)) ([eff10ea](eff10ea))

### Updates & Maintenance

* bump trunk-io/trunk-action from 1.2.4 to 1.3.1 ([#705](#705)) ([f4ceca7](f4ceca7))
* Update submodules ([e435979](e435979))

* ci: remove cross-platform-tests and semantic PR/branch checks (#712)

These checks have been failing on nearly every recent PR. The
cross-platform tests are known broken, and the semantic PR title /
branch name checks are no longer enforced.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore: bump actions/checkout from 6.0.2 to 6.0.3 (#720)

Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.2 to 6.0.3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](actions/checkout@v6.0.2...v6.0.3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: Update submodules

* chore: 5.79.2 (release)

## [5.79.2](v5.79.1...v5.79.2) (2026-06-22)

### Updates & Maintenance

* bump actions/checkout from 6.0.2 to 6.0.3 ([#720](#720)) ([d904edb](d904edb))
* remove cross-platform-tests and semantic PR/branch checks ([#712](#712)) ([6cdacf2](6cdacf2))
* Update submodules ([976dd0d](976dd0d))

* feat: add device-based consent to override MPID-scoped consent (#726)

Enables Inspire-style flows where consent is collected before MPID changes at checkout, so kit forwarding rules and uploads keep the correct consent state.

* chore: 5.80.0 (release)

## [5.80.0](v5.79.2...v5.80.0) (2026-06-25)

### Features

* add device-based consent to override MPID-scoped consent ([#726](#726)) ([e92d352](e92d352))

* chore: normalize CHANGELOG list markers after merge

* ci: pin actions/checkout to commit SHA to satisfy security lint

* docs: remove duplicate Unreleased changelog section

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: mparticle-automation <developers@mparticle.com>
Co-authored-by: Robert Ing <ring@mparticle.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: junias-rokt <junias.ngoyi@rokt.com>
Co-authored-by: James Newman <james.newman@rokt.com>
Co-authored-by: Thomson Thomas <thomson.thomas@rokt.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: ankitsingh08 <ankit.tomar08@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants