Skip to content

ci: capture the raw test log on cancellation and bound the test step - #102

Merged
onevcat merged 1 commit into
mainfrom
ci/test-log-forensics
Aug 21, 2026
Merged

onevcat merged 1 commit into
mainfrom
ci/test-log-forensics

Conversation

@onevcat

@onevcat onevcat commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

The unit-test job timed out twice on #100 (and once on #101) with zero forensics: the raw-log artifact was gated on failure(), which is false when a job is cancelled by its timeout — exactly the case where the partial log matters most. This uploads on failure() || cancelled() and bounds the test step at 20 minutes (a healthy run is ~3), so a wedged swift test leaves the job time to publish the artifact instead of eating the 60-minute job timeout.

Doubles as a diagnostic probe

This branch is main + this workflow change only — no product or test code. The #100/#101 hang evidence currently points away from the PR content and at the runner image (green main last ran on image 20260720; every hang is on 20260728; macOS 26.5.2 and Xcode 26.6 17F113 are identical across both):

If this run hangs the same way on the current image, the hang is a runner-image regression in the AVFoundation/VideoToolbox path and #100/#101 are exonerated; the artifact this PR adds will name the wedged tests either way. If it stays green, suspicion moves back to the #101 content and we bisect there.

Testing

  • make test locally: full suite green (this change touches only the workflow).

The unit-test job timed out twice on #100 with zero forensics: the
raw-log artifact was gated on failure(), which is false when a job is
cancelled by its timeout — exactly the case where the partial log
matters most. Upload on failure() || cancelled(), and bound the test
step at 20 minutes (a healthy run is ~3) so a wedged swift test leaves
the job time to publish the artifact instead of eating the 60-minute
job timeout.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Signed-off-by: onevcat <onevcat@gmail.com>
@onevcat
onevcat merged commit e822f3b into main Aug 21, 2026
4 checks passed
@onevcat
onevcat deleted the ci/test-log-forensics branch August 21, 2026 07:49
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