Skip to content

chore(e2e): default local runs to include timing-sensitive flows#141

Merged
floydkim merged 2 commits intomasterfrom
update-timingsensitive-e2e
Mar 17, 2026
Merged

chore(e2e): default local runs to include timing-sensitive flows#141
floydkim merged 2 commits intomasterfrom
update-timingsensitive-e2e

Conversation

@floydkim
Copy link
Collaborator

@floydkim floydkim commented Mar 17, 2026

No description provided.

@coderabbitai
Copy link

coderabbitai bot commented Mar 17, 2026

📝 Walkthrough

Walkthrough

타이밍 민감도 시나리오 처리 방식을 "포함" 의미론에서 "제외" 의미론으로 변경합니다. GitHub Actions 워크플로우, 문서, E2E 실행 스크립트 전반에 걸쳐 플래그 및 환경 변수를 업데이트하고, 기본 동작을 제외 우선으로 변경합니다.

Changes

Cohort / File(s) Summary
GitHub Actions 워크플로우
.github/workflows/e2e-manual.yml, .github/workflows/e2e-matrix.yml
워크플로우 입력 및 환경 변수를 include_timing_sensitive에서 exclude_timing_sensitive로 변경하고, 대응하는 CLI 인자 로직을 업데이트합니다. iOS 및 Android 경로 모두에서 TIMING_SENSITIVE_ARG 처리 방식 수정.
문서
e2e/README.md, e2e/README.ko.md
CLI 옵션 테이블 및 실행 단계 설명에서 --include-timing-sensitive 플래그를 --exclude-timing-sensitive로 교체하고, 제외 의미론에 맞도록 설명 업데이트.
E2E 스크립트
e2e/run.ts
CliOptions 인터페이스에서 includeTimingSensitiveexcludeTimingSensitive로 변경하고, 타이밍 민감도 시나리오가 기본적으로 포함되도록 조건부 로직 역전.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 타이밍 민감도 시나리오를 제외하려면,
이제는 플래그를 설정하면 되네요!
기본은 포함, 제외는 선택—
더욱 명확한 의도로 테스트를 다루다,
워크플로우와 문서가 함께 춤을 춘다. ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title accurately describes the main change: defaulting local runs to include timing-sensitive flows by switching from an include flag to an exclude flag paradigm.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch update-timingsensitive-e2e
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

Migrating from UI to YAML configuration.

Use the @coderabbitai configuration command in a PR comment to get a dump of all your UI settings in YAML format. You can then edit this YAML file and upload it to the root of your repository to configure CodeRabbit programmatically.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.github/workflows/e2e-manual.yml:
- Line 164: The current single-line shell in the workflow step's script makes
maintenance hard; refactor the script value for the workflow step that defines
TIMING_SENSITIVE_ARG into a YAML multiline block (using | or >) and split the
logic into clear statements: set TIMING_SENSITIVE_ARG once, then use an if/else
block to run the two variants of the npm run e2e command (the branch for when
inputs.expo is "true" and the branch for the non-expo case), preserving the same
flags (--app, --platform android, --framework expo only in the expo branch,
--retry-count, --retry-delay-sec and $TIMING_SENSITIVE_ARG) so the behavior of
the script is unchanged but the script is readable and easier to edit.

In @.github/workflows/e2e-matrix.yml:
- Line 236: The one-line Android `script` is hard to read and maintain; refactor
the job step to use a YAML multiline block (using | or >) and split the logic
into multiple lines while preserving behavior: compute TIMING_SENSITIVE_ARG,
branch on startsWith(matrix.app, 'Expo') to choose the appropriate npm run e2e
invocation, and include the same parameters (--app "${{ matrix.app }}",
--platform android, --framework expo only for Expo, --retry-count
"$E2E_RETRY_COUNT", --retry-delay-sec "$E2E_RETRY_DELAY_SEC" and
$TIMING_SENSITIVE_ARG). Keep the same conditional branching on
startsWith(matrix.app) and the same variable names (TIMING_SENSITIVE_ARG,
matrix.app, E2E_RETRY_COUNT, E2E_RETRY_DELAY_SEC) so behavior is unchanged but
the script is readable and easier to extend.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 88bca1b7-40e7-42bd-89be-ce3d2bafae28

📥 Commits

Reviewing files that changed from the base of the PR and between df9a473 and 9566e82.

📒 Files selected for processing (5)
  • .github/workflows/e2e-manual.yml
  • .github/workflows/e2e-matrix.yml
  • e2e/README.ko.md
  • e2e/README.md
  • e2e/run.ts
📜 Review details
🔇 Additional comments (10)
.github/workflows/e2e-matrix.yml (2)

16-20: 플래그 의미 전환이 명확하게 반영되었습니다.

입력 이름/설명/기본값이 exclude 의미론으로 일관되게 바뀌어 의도 전달이 좋습니다.


149-154: iOS 실행 인자 매핑이 올바릅니다.

exclude_timing_sensitive 입력에서 --exclude-timing-sensitive CLI 인자로 이어지는 연결이 정확합니다.

e2e/run.ts (2)

53-56: CLI 플래그 전환이 정확합니다.

--exclude-timing-sensitive 옵션 정의가 명확하고 기본 동작(옵션 미지정 시 포함)과 충돌하지 않습니다.


230-247: Phase 4 조건 분기가 의도에 맞게 잘 정리되었습니다.

옵션 미지정 시 타이밍 민감 시나리오를 포함하고, 옵션 지정 시만 스킵/안내 로그를 출력하는 흐름이 일관됩니다.

e2e/README.ko.md (2)

43-43: CLI 옵션 설명이 코드 동작과 일치합니다.

기본 포함/옵션 지정 시 제외 의미가 한국어 문서에 정확히 반영되었습니다.


78-79: Phase 4 실행 조건 설명이 명확합니다.

--exclude-timing-sensitive 미지정 시 03/04가 실행된다는 점이 분명하게 문서화되었습니다.

e2e/README.md (2)

43-43: CLI 옵션 문서가 구현과 일치합니다.

--exclude-timing-sensitive의 기본 동작 설명이 현재 러너 동작과 정확히 맞습니다.


78-79: 옵셔널 시나리오 실행 조건이 정확히 기술되었습니다.

03/04 플로우의 실행 조건이 명확해져 사용자가 플래그 동작을 오해할 여지가 줄었습니다.

.github/workflows/e2e-manual.yml (2)

25-29: 수동 실행 입력 플래그가 잘 정리되었습니다.

exclude_timing_sensitive 입력이 추가되며 기본 동작 의도가 명확해졌습니다.


93-104: iOS 경로의 인자 전달이 일관됩니다.

환경 변수에서 CLI 인자로 변환해 Expo/일반 케이스 모두 동일하게 적용한 점이 좋습니다.

@floydkim floydkim merged commit ecc8ede into master Mar 17, 2026
3 checks passed
@floydkim floydkim deleted the update-timingsensitive-e2e branch March 17, 2026 15:30
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