Skip to content

Accept the system In progress prefix in ProgressView unit tests - #528

Merged
HemSoft merged 1 commit into
mainfrom
fix/issue-527-progress-label-tests
Oct 27, 2026
Merged

HemSoft merged 1 commit into
mainfrom
fix/issue-527-progress-label-tests

Conversation

@HemSoft

@HemSoft HemSoft commented Oct 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

Main CI run 40502617023 at a96e436 failed in the iOS tests job: 1,182 tests passed and 2 failed. The original red step, "Verify function risk and release phase failure fixtures", now passes because of #524.

Both failures read a labelled SwiftUI ProgressView. They got "In progress, Loading accounts…" and "In progress, Using reset…" where the tests expected the bare labels. The same pair failed the same way on October 22 (run 39799242125, a different image). Three hosted runs on the current image passed without any change to the views or tests.

Cause, reproduced on air: SwiftUI adds this prefix while the simulator has app accessibility enabled. With com.apple.Accessibility ApplicationAccessibilityEnabled set on an iOS 26.2 iPhone Air under Xcode 26.6 17F113, main a96e436 fails both tests with the exact CI labels. Both labels are real system output, and the prefixed form is what accessibility clients receive.

Changes, tests only, with no product or accessibility text changes:

  • HostedViewProbe.isProgressLabel(_:_:) accepts exactly "<label>" or "In progress, <label>". A new test shows it rejects nil, empty, partial, reversed and other-label strings.
  • The loading and Use Reset tests use the new helper.
  • The loading test first waits for the first dashboard body state, which is either loading or empty. It still fails if the empty state appears without the loading state first. Without accessibility, the probe sometimes saw only the toolbar (["Open settings", "Refresh usage"]), so the unchanged test failed 1 in 5 locally. That is a separate race from the CI failure.
  • A Developer Experience changelog entry.

Closes #527.

Validation

On air, with Xcode 26.6 (17F113), an iOS 26.2 iPhone Air (23C54), the CI runtime:

Check Before (main a96e436) After (e26fbc4)
3 tests, app accessibility on both target tests fail with the CI labels 10/10 iterations pass
3 tests, app accessibility off loading test failed 1 of 5 (nil before body) 20/20 iterations pass
Full CodexBarIOSTests 1,184 pass on Xcode OS=latest 1,185 tests, 0 failures
build-for-testing warnings 0 0
Canonical pinned SwiftLint n/a 0 violations in 287 files

The simulator's accessibility default was restored after the runs.

Automatic CI: no workflow changes, and CodexBarIOSTests is not run by automatic PR CI. That CI runs pinned SwiftLint and the policy tests only, so automatic cost is unchanged.

After merge: one manual ci.yml dispatch on main proves main green. Live provider checks don't apply.

🤖 Generated with Claude Code

With app accessibility enabled on the simulator, SwiftUI reads a labelled
ProgressView as "In progress, <label>". Hosted iOS test runs sometimes
start in that state, which failed the loading and Use Reset progress tests
in main CI. Accept exactly the label or its In progress form, and wait for
the dashboard body before checking the loading state.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 27, 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-27T12:41:51.361753Z e26fbc4 Manual request
ℹ️ 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.

@HemSoft

HemSoft commented Oct 27, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. More of your lovely PRs please.

Reviewed commit: e26fbc4010

ℹ️ 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".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@HemSoft
HemSoft merged commit 90b2e37 into main Oct 27, 2026
8 checks passed
@HemSoft
HemSoft deleted the fix/issue-527-progress-label-tests branch November 9, 2026 08:26
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.

Accept the system In progress prefix in ProgressView unit-test assertions

1 participant