fix(ci): repair nightly XCTest and conformance lanes - #1989
Conversation
Size Report
npm unpacked components
Startup median (7 runs, lower is better):
Top changed chunks:
Top changed packed files
|
|
|
Exact head |
|
Request changes at
The additive JSON tag, fail-closed behavior once tagged, and module split otherwise look sound. macOS Smoke is red and iOS Smoke remains pending, so this head is not merge-ready. |
|
Request changes at The macOS close/cleanup delta is meaningful: it waits for observed app termination, promotes cleanup failures to typed
Current deterministic CI is green; Android/iOS/Coverage are still pending. No readiness label. |
b1a4d46 to
7041e9f
Compare
|
Request changes at exact head
The head is stale against current main and the PR spans several separable cleanup families. Rebase after fixing, rerun exact-head macOS and combined gates, and consider splitting generated-JSON/XCTest/CLI cleanups from the replay-classification owner change. |
7041e9f to
0eb4414
Compare
|
Re-reviewed exact head |
b755672 to
f400450
Compare
|
Addressed in The production Validation: focused tests 36/36; |
|
Not ready: |
|
Exact head |
f400450 to
6b7f965
Compare
|
Addressed in
Validation: focused tests 38/38; typecheck and format passed; |
|
Re-review clean at |
6b7f965 to
37d7cfe
Compare
|
Coverage-ratchet follow-up is fixed in The new production-route regressions had pushed The exact |
|
Exact-head follow-up for
The worktree is clean and its HEAD exactly matches the PR head. |
Summary
role=button label=Abouttarget, and enough assertion budget for one runner recycleREPLAY_DIVERGENCEresults, soteststops retrying live-owner conflictsmainand keep fix: stop replay retries after cleanup failures #2001 as the single replay-cleanup owner; the stale competing cleanup implementation and tests were removedThe differential regression runs real temporary engine processes through scenario reporting and a matching waiver. Before the fix it failed because the Maestro exit was classified as
behavioral; after the fix the report isinfrastructure-failedand remains red.The device-claim regressions run through the production
test --jsonhandler path. Before the fix a typedDEVICE_CLAIM_LIVE_OWNERresult retried four times and omitted the infrastructure tag; after the fix it stops after one attempt and serializesinfrastructure: true. An untyped, retriableDEVICE_IN_USEresult still retries four times and serializes no infrastructure tag; the classifier does not infer a claim from its code or message.Validation
pnpm check:affected --run— all 34 runnable local checks passed (54 selected; GitHub-authoritative native/device checks skipped locally), including 3,323 related testspnpm maestro:conformance— 54/54 passedbehavioralinstead ofinfrastructure)test --jsonregression retried four times and omittedinfrastructurebefore the device-claim fixDEVICE_IN_USEas infrastructure before the code-wide shortcut was removedNative XCTest, differential-device, regeneration, mutation, and full-coverage lanes remain GitHub-authoritative.