ci: do not manually re-sign UI test runner; keep app re-sign with entitlements #72

Merged
gronod merged 4 commits from fix/m7-ci-uitest-runner-sign into develop 2026-09-10 03:33:19 +01:00
Owner

The M7 U1 workflow re-enabled CI, but manually re-signing *Runner.app with codesign --options runtime stripped the xctrunner entitlements that xcodebuild generates for the UI test runner. The hardened ad-hoc runner then rejected XCTest at dyld load time.

  • Remove the *Runner.app loop from .gitea/workflows/macos.yml.
  • Keep xattr -cr and codesign --options runtime on ICCery.app only, explicitly passing Resources/ICCery.entitlements.
  • Update docs/megaplans/M7-MEGAPLAN.md and docs/megaplans/M7-RISK-REGISTER.md to match.
  • Append PROP-M7-CI-RUNNER-SIGN-FIX to PROPOSED_CHANGES.md.

Labels: Project/ICCery-v2, Bug/DevOps, Priority/Critical.

The M7 U1 workflow re-enabled CI, but manually re-signing `*Runner.app` with `codesign --options runtime` stripped the `xctrunner` entitlements that xcodebuild generates for the UI test runner. The hardened ad-hoc runner then rejected `XCTest` at dyld load time. - Remove the `*Runner.app` loop from `.gitea/workflows/macos.yml`. - Keep `xattr -cr` and `codesign --options runtime` on `ICCery.app` only, explicitly passing `Resources/ICCery.entitlements`. - Update `docs/megaplans/M7-MEGAPLAN.md` and `docs/megaplans/M7-RISK-REGISTER.md` to match. - Append `PROP-M7-CI-RUNNER-SIGN-FIX` to `PROPOSED_CHANGES.md`. Labels: `Project/ICCery-v2`, `Bug/DevOps`, `Priority/Critical`.
gronod added the
Priority
Critical
1
Project/ICCery-v2Bug/DevOps
labels 2026-09-10 02:33:59 +01:00
gronod added 1 commit 2026-09-10 02:34:00 +01:00
ci: do not manually re-sign UI test runner; keep app re-sign with entitlements
macOS CI / build-and-test (pull_request) Failing after 9m52s
macOS CI / package (pull_request) Skipped
2bdd6b0291
The M7 U1 workflow re-enabled CI, but manually re-signing *Runner.app
with codesign --options runtime stripped the xctrunner entitlements
that xcodebuild generates for the UI test runner. The hardened ad-hoc
runner then rejected XCTest at dyld load time.

- Remove the *Runner.app loop from .gitea/workflows/macos.yml.
- Keep xattr -cr and codesign --options runtime on ICCery.app only,
  explicitly passing Resources/ICCery.entitlements.
- Update M7-MEGAPLAN.md and M7-RISK-REGISTER.md to match.
- Append PROP-M7-CI-RUNNER-SIGN-FIX to PROPOSED_CHANGES.md.

Generated with Devin
gronod added 1 commit 2026-09-10 03:09:40 +01:00
fix: back-compat WizardState decode and UI test fixtures
macOS CI / build-and-test (pull_request) Failing after 13m40s
macOS CI / package (pull_request) Skipped
58eacec2e4
- Add custom init(from:) to WizardState so missing keys
  (notably calibrationOriginalBasename from pre-#69 state files)
  fall back to their defaults instead of failing decode.
- Update Milestone5/6 UI tests to include calibrationOriginalBasename
  and profileBasename in the pre-staged wizard_state.json.
- Make AboutHelpUITests wait for aboutVersion and search within
  app.sheets as well as app.descendants for sheet-hosted identifiers.

Generated with Devin
gronod added 2 commits 2026-09-10 03:32:00 +01:00
- Wrap version, build, and build date HStacks in .accessibilityElement(children: .contain)
- Wrap parent VStack in .accessibilityElement(children: .contain)
- Ensures UI tests can reliably query aboutVersion and aboutBuildDate identifiers within sheet hierarchy
fix: add accessibility container to Stage2View printer info row
macOS CI / build-and-test (pull_request) Failing after 10m20s
macOS CI / package (pull_request) Skipped
2e4bca3f9d
- Wrap printer selection HStack in .accessibilityElement(children: .contain)
- Ensures UI tests can reliably query printer-related identifiers within view hierarchy
gronod merged commit 77fd8937f0 into develop 2026-09-10 03:33:19 +01:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gronod/iccery-v2-mac#72