fix(ci): restore visual acceptance publication - #5588
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
1e0fee6 to
aa61931
Compare
PR Analysis Report📚 Storybook PreviewView Storybook for this PR 🧪 Sandbox PreviewView Sandbox for this PR No new or modified components detected. Bundle Size SummaryNo component packages changed. Accessibility AuditStatus: No accessibility violations detected. Generated by PR Enrichment workflow | Storybook | Sandbox | View full report |
cixzhang
left a comment
There was a problem hiding this comment.
Thanks, this looks good. The trusted publisher keeps PR writes, and the ASTRYX_* identity fixes the source-run mismatch. Approve once undrafted.
[Reviewed by Robohands]
cixzhang
left a comment
There was a problem hiding this comment.
Thanks, this looks good. The trusted publisher now owns label writes, and ASTRYX_* keeps recapture identity tied to the source CI run.
[Reviewed by Robohands]
aa61931 to
ff779be
Compare
Why
The required
visual-acceptancegate can still strand stable-visual PRs after #5587 fixed its source run/attempt identity and granted PR mutation permission:visual-approveditself. That mixes the lightweight head-status initializer with advisory PR mutation and requires broader credentials than classification needs.GITHUB_SHA. GitHub keeps that value bound to the publisher workflow, so immutable evidence can record the publisher commit instead of the captured PR head.#5162 exposed the initializer failure after #5578 made the context required.
What
ASTRYX_VISUAL_RUN_ID/ASTRYX_VISUAL_RUN_ATTEMPTimplementation and extends it withASTRYX_VISUAL_SHArather than duplicating the identity helper.workflow_runpublisher and gives only mutating jobspull-requests: write.The immutable gh-pages acceptance record remains authoritative. Statuses, comments, and
visual-approvedremain derived projections. Fork code is downloaded only as a static Storybook artifact and never receives write credentials.Verification
actionlinton all three visual-acceptance workflows (with the repository's custom runner label allowed)pnpm check:repopending:decision, then an isolated immutable acceptance for PR/head/run5162/66ef14d69ed5f32c469c78cb2e8395bfe23ec633/33041576630/1producessuccess:acceptedwith 16 archived AFTER hashes.The live #5162 capture is not a zero-diff capture: it still needs explicit visual acceptance after this process fix lands and its trusted publisher is rerun.