Repository navigation
[build-tools] Upload the agent-device screenshot display rotation as artifact metadata - #4508
Merged
szdziedzic merged 2 commits intoOct 5, 2026
Conversation
szdziedzic
added a commit
that referenced
this pull request
Oct 1, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4508 +/- ##
==========================================
+ Coverage 73.71% 73.71% +0.01%
==========================================
Files 998 998
Lines 48775 48777 +2
Branches 10545 10547 +2
==========================================
+ Hits 35950 35952 +2
Misses 11831 11831
Partials 994 994 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
…artifact metadata agent-device reports displayRotation on screenshot entries in its /artifacts inventory. Read it and pass it to the device run session artifact upload as metadata.displayRotation. An unknown value is dropped so it cannot block the upload, and an artifact without the field uploads no metadata, as before. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
szdziedzic
force-pushed
the
szdziedzic-claude/agent-device-screenshot-orientation
branch
from
October 5, 2026 13:25
549bc75 to
b97a0f5
Compare
|
✅ Thank you for adding the changelog entry! |
krystofwoldrich
approved these changes
Oct 5, 2026
krystofwoldrich
left a comment
Contributor
There was a problem hiding this comment.
Nice. And because the agent device uses the latest, this just starts working correctly.
szdziedzic
deleted the
szdziedzic-claude/agent-device-screenshot-orientation
branch
October 5, 2026 13:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
agent-device screenshots in EAS device run sessions carry no information about device rotation. A consumer cannot tell a landscape capture from a portrait one without decoding the image, and it cannot tell
landscape-leftfromlandscape-rightat all.agent-device now reports
displayRotation(portrait,portrait-upside-down,landscape-left, orlandscape-right) on screenshot entries in its/artifactsinventory. This is the rotation the display rendered the capture in. The saved image is always upright, so a landscape value pairs with a landscape image. The agent-device change: callstack/agent-device#3088.How
AgentDeviceArtifactSchemareads the optionaldisplayRotationfield. An unknown value is dropped through.catch(undefined), so a newer daemon value cannot fail the whole inventory parse and block uploads.uploadAgentDeviceArtifactAsyncpasses it asmetadata: { displayRotation }on the existingcreateArtifactUploadSessioninput. An artifact without the field uploads no metadata, as before.This is safe to merge before agent-device releases the field: older daemons omit it.
Test Plan
agentDeviceArtifacts.test.ts: a known value is kept and an unknown one dropped, the value is uploaded as metadata, and no metadata is sent without it. 10 of 10 pass.GET /artifactsreturneddisplayRotation).metadata.displayRotationyet.🤖 Generated with Claude Code