Skip to content

Enable App CI for staging PRs - #104370

Open
Beamanator wants to merge 2 commits into
mainfrom
codex/staging-pr-ci
Open

Beamanator wants to merge 2 commits into
mainfrom
codex/staging-pr-ci

Conversation

@Beamanator

@Beamanator Beamanator commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Explanation of Change

Enables applicable pull-request CI for the staging target branch while retaining the existing production exclusion. The bot-created OSBotify conflict PR (os-botify[bot]) skips computational jobs; applicable checks run once after a human pushes the resolution.

Fixed Issues

$ #101609
PROPOSAL: #101609 (comment)

Tests

Written by AI:

  1. Ran git diff --check successfully.
  2. Parsed all 69 workflow YAML files successfully with Ruby Psych.
  3. Ran bash -n scripts/validatePatches.sh successfully.
  4. Ran BASE_REF=main ./scripts/validatePatches.sh and BASE_REF=staging ./scripts/validatePatches.sh successfully.
  5. Ran npm run lint-changed successfully; it reported no lintable changed files.
  6. The pre-commit oxfmt hook completed successfully for the changed workflow files.
  7. npm run spell-changed could not run because this checkout has no node_modules directory.

Offline tests

Not applicable. This PR changes GitHub Actions configuration only and has no application behavior.

QA Steps

  1. Open a human-authored PR targeting staging that changes a covered file and verify the applicable checks run.
  2. Verify a PR targeting production does not run the newly enabled workflows.

Ask the current app deployer (@jasperhuangg next week) to test that CI checks run on any cherry-pick PRs created this week

PR Author Checklist

  • I linked the correct issue in the ### Fixed Issues section above.
  • I wrote clear testing steps that cover the changes made in this PR.
    • I added steps for local testing in the Tests section.
    • I added steps for the expected offline behavior in the Offline tests section. Not applicable because this PR has no application behavior.
    • I added steps for Staging and/or Production testing in the QA Steps section.
    • I added steps to cover failure scenarios. The QA steps cover the bot-created conflict PR being skipped and the human-resolution push running the checks.
    • I turned off my network connection and tested it while offline. Not applicable because this PR has no application behavior.
    • I tested this PR with a High Traffic account. Not applicable because this PR has no application behavior. https://github.com/Expensify/App/blob/main/contributingGuides/CONTRIBUTING.md#high-traffic-accounts
  • I included screenshots or videos for tests on all platforms. Not applicable because this PR has no UI changes. https://github.com/Expensify/App/blob/main/contributingGuides/CONTRIBUTING.md#make-sure-you-can-test-on-all-platforms
  • I ran the tests on all platforms and verified they passed. Not applicable because this PR has no UI changes.
    • Android: Native — not applicable.
    • Android: mWeb Chrome — not applicable.
    • iOS: Native — not applicable.
    • iOS: mWeb Safari — not applicable.
    • MacOS: Chrome / Safari — not applicable.
  • I verified there are no console errors. Not applicable because this PR has no application behavior.
  • I verified any copy / text that was added to the app is either from Figma or approved by marketing. Not applicable; no app copy changed.
  • If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers. Not applicable; the change follows existing workflow patterns.
  • I tested other components that can be impacted by my changes. Not applicable; no application components changed.
  • If new assets were added or existing ones were modified, I verified that:
    • The assets are optimized and compressed. Not applicable; no assets changed.
    • The assets load correctly across all supported platforms. Not applicable; no assets changed.
  • If the PR modifies code that runs when editing or sending messages, I tested supported Markdown behavior. Not applicable.
  • If the PR modifies a generic component, I tested its usages in the rest of the App. Not applicable.
  • If the PR modifies a component related to Storybook stories, I tested all stories for that component. Not applicable.
  • If the PR modifies a component or page accessible by a direct deeplink, I tested the deeplink while logged in and logged out. Not applicable.
  • If the PR modifies UI or form input styles:
    • I verified all inputs inside a form are aligned. Not applicable.
    • I added the Design label and/or tagged @Expensify/design. Not applicable.
  • If the PR adds or modifies UI:
    • I asked an AI agent to review the changes for accessibility issues and addressed its findings. Not applicable.
    • I tested with a screen reader and verified focus order. Not applicable.
    • I verified all new/changed elements have meaningful accessible names and roles. Not applicable.
    • I verified state changes are announced. Not applicable.
  • I added unit tests for any new feature or bug fix in this PR. Not applicable; this workflow-only change is covered by the YAML and shell validation above. https://github.com/Expensify/App/blob/main/tests/README.md
  • After rebasing main into this PR, I reran the applicable validations and verified the outcome remains expected.

Screenshots/Videos

Android: Native

Not applicable — no UI changes.

Android: mWeb Chrome

Not applicable — no UI changes.

iOS: Native

Not applicable — no UI changes.

iOS: mWeb Safari

Not applicable — no UI changes.

MacOS: Chrome / Safari

Not applicable — no UI changes.

@Beamanator
Beamanator requested a review from a team as a code owner October 19, 2026 16:01
@melvin-bot
melvin-bot Bot requested review from shubham1206agra and removed request for a team October 19, 2026 16:01
@melvin-bot

melvin-bot Bot commented Oct 19, 2026

Copy link
Copy Markdown

@shubham1206agra Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-19T16:12:15.886490Z 43cd198 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

chatgpt-codex-connector[bot]

This comment was marked as resolved.

@Beamanator
Beamanator requested review from a team and removed request for shubham1206agra October 23, 2026 20:56
@melvin-bot
melvin-bot Bot requested review from cretadn22 and removed request for a team October 24, 2026 19:20
@melvin-bot

melvin-bot Bot commented Oct 24, 2026

Copy link
Copy Markdown

@cretadn22 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

@Beamanator
Beamanator removed the request for review from cretadn22 October 24, 2026 19:21
@Beamanator

Copy link
Copy Markdown
Contributor Author

looking for an internal engineer reviewer, sorry

@Beamanator

Copy link
Copy Markdown
Contributor Author

This branch has not been deployed

No deployments
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.

1 participant