fix(review): load private GitHub PR images and videos - #629
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> (cherry picked from commit 32e8b2584556c0c55ce0d1d8f72b506cb771d60d)
832493b to
9bcbf71
Compare
|
Browser verification on 832493b: six public GitHub fixture images loaded through signed Pylon asset URLs; expanded image preview and video playback worked. The recording shows six seconds of continuous proxied playback. Private access, login/account switch/logout, unsafe redirects, credential stripping and range responses are covered by controlled transport regressions; this is not a claim of live private-repository testing. Attachments: baseline, updated image preview, updated video, playback recording.
media-playback.mp4Rebased onto merged #626 afterward; media UI unchanged. The CLI conflict retains #626’s environment forwarding and quota guards. Final-head CI and integrated media/CLI regressions are required before merge. |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |



Private GitHub screenshots and recordings in PR descriptions/comments currently load without credentials and can return 404. Route supported GitHub media through short-lived signed Pylon asset URLs, using the active GitHub CLI account on the repository's environment. Images preserve authored sizing, original links, retries and older-server public fallback; videos stream range responses for seeking.
Adopts maria / maria-rcks's upstream work in
32e8b2584556c0c55ce0d1d8f72b506cb771d60d(#11706), retaining original authorship and coauthor credit. Pylon adaptations preserve local path restrictions, context rendering and provider behavior. Direct adversarial review removed the process-global token cache so account changes/logout apply to the next request, restricted redirects to GitHub media/CDN hosts, stripped credentials on signed CDN hops, and kept credential-bearing failures out of logs. GitHub Enterprise media is unsupported; no account-routing feature imported.Validation: 37 AssetAccess tests, 11 HTTP transport regressions (including malformed/unsafe redirects, account credential handling, range streaming, MIME and SVG sandbox), and 100 markdown regressions pass. Scoped server, web, contracts, client-runtime and mobile typechecks passed; scoped lint passes with existing warnings. Account switch/login/logout regression is in AssetAccess tests. Browser screenshots and playback recording are attached; real private-repository delivery is covered by controlled transport tests, not claimed as a live private-repository check.
Rebased onto merged #626: 64 integrated asset/transport/CLI regressions and the server typecheck pass; the conflict preserves the merged quota guards and environment forwarding.
Part of #625. No release or installation.
Implemented and adversarially self-reviewed with Codex (GPT-6), without delegation at the maintainer's request.