Skip to content

Skip iOS CI for metadata edits and stop cancelled UI jobs - #58

Merged
zigdanis merged 1 commit into
masterfrom
t3code/scope-ios-ci
Oct 10, 2026
Merged

zigdanis merged 1 commit into
masterfrom
t3code/scope-ios-ci

Conversation

@zigdanis

@zigdanis zigdanis commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

App Store uploader edits currently trigger an app build and two simulator suites, taking about 30 minutes despite changing no iOS inputs. CI now skips Swift formatting, lint, build and UI jobs only for the documented metadata, documentation and marketing paths. Tool, release and secret checks remain; app inputs, workflows, the simulator harness, unknown paths and manual dispatch still receive full iOS validation. Required check names are preserved.

Cancelled UI runs also kept exporting artifacts and shutting down the simulator, delaying the next run by almost five minutes. These remaining steps now use !cancelled(): ordinary test failures still retain evidence and run cleanup; cancelled jobs stop this work on their disposable hosted VM. Actual cancellation latency still needs observation.

Validation: nine tests exercise real Git diffs, including renames, deletions, mixed changes and invalid refs; all 71 script tests and actionlint pass. Independent correctness and acceptance reviews found no issues. No app interface or capture inputs changed, so simulator screenshots do not apply. All four required checks and hosted release/evidence tool checks passed on efc52a2; both UI suites also passed. Codex and CodeRabbit completed review without actionable findings. The workflow change correctly selected full iOS validation; the separate screenshot capture workflow keeps its own triggers.

@coderabbitai

coderabbitai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: zigdanis/GrowingUp/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 9bb27424-6263-40d7-b7de-c0a3b59426ed


📥 Commits

Reviewing files that changed from the base of the PR and between 718e954 and efc52a2.



📒 Files selected for processing (4)
  • .github/workflows/ci.yml
  • docs/remote-ios-verification.md
  • scripts/ci-scope.py
  • scripts/tests/test_ci_scope.py


Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.




📝 Walkthrough
📝 Walkthrough

Walkthrough

The workflow now classifies changed paths to determine whether iOS checks are required. That result gates validation jobs. Evidence export and cleanup steps now skip execution after cancellation, and the verification guide documents the updated rules.

Changes

iOS CI scope and evidence

Layer / File(s) Summary
Classify changes for iOS validation
scripts/ci-scope.py, scripts/tests/test_ci_scope.py, docs/remote-ios-verification.md
The classifier checks changed paths against a non-iOS allowlist and fails closed for unsupported events, invalid references, and diff errors. Tests cover path and reference cases. The guide documents the scope rules and test commands.
Apply scope to CI jobs
.github/workflows/ci.yml, docs/remote-ios-verification.md
The workflow invokes the classifier and gates formatting, lint, build/test, and UI jobs using its output.
Skip evidence work after cancellation
.github/workflows/ci.yml, docs/remote-ios-verification.md
Evidence export, report creation, upload, summary linking, simulator shutdown, and cleanup now require that the workflow has not been cancelled. The guide documents the resulting evidence limits.

Priority: ➖ Normal

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Bug fix

Sequence Diagram(s)

sequenceDiagram
  participant GitHubActions as GitHub Actions
  participant ChangeDetection as Change detection
  participant CIScope as ci-scope.py
  participant Git as Git diff
  participant ValidationJobs as Formatting, lint, build/test, and UI jobs
  GitHubActions->>ChangeDetection: Provide event and base/head SHAs
  ChangeDetection->>CIScope: Invoke classifier with event and SHAs
  CIScope->>Git: Request changed paths
  Git-->>CIScope: Return diff paths
  CIScope-->>ChangeDetection: Return ios_required
  ChangeDetection->>ValidationJobs: Apply ios_required job conditions
Loading


Merge Risk: ⚪ Minimal · up to efc52

The scope classifier does not skip iOS validation for the investigated unusual filename case. No merge-blocking issue is established.

Pre-merge checks | Passed 4 | Failed 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%. Docstring coverage is scoped to functions touched by this diff. Analyzed 17 functions across 2 files. (2 skipped: 2… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Title check Passed The title clearly summarizes both primary changes: skipping iOS CI for metadata edits and stopping cancelled UI jobs.
Description check Passed The description covers the requested behavior, affected paths, cancellation behavior, validation results, remaining limitations, and why visual evidence does not apply.

Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 17 functions across 2 files. (2 skipped: 2 unsupported.)


  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR



🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR



  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@zigdanis
zigdanis marked this pull request as ready for review October 10, 2026 13:14
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 10, 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-10T13:18:16.485149Z efc52a2 Draft marked ready
ℹ️ 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.

@zigdanis

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@zigdanis
zigdanis merged commit cee5f03 into master Oct 10, 2026
11 checks passed
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