A failed merge links its failed check by a path with no host #131
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Since #129,
git.pr.mergefails with Forgejo's reason and with each check that did not succeed, together with its link. But Forgejo Actions writes a commit status'starget_urlas a path, not a URL, so the link Braid prints has no host. Run 38 failed this way on 2026-10-02 at 22:37:In the console, that is text that cannot be opened as it stands.
What to change
target_urlis a path, prefix the forge's base URL before printing it (_check_listinsrc/osf/forgejo.py), so the line readshttps://forgejo.underthere.xyz/cmoriarty/soundcheck/actions/runs/145/jobs/1. Leave a full URL as it is.target_urlis shown, for example the CI fold insrc/osf/pipeline/ci.py.To verify, add a test in
tests/unit/test_landing.pyin which the fake forge serves atarget_urlthat is a path. Then check on production at the next refused merge.Shipped in
02440a6. Deployed in deploy 97 (76eaaae, 01:47 on 2026-10-03). Archived in3b488ccasabsolute-check-links.When the client reads a commit's statuses, a
target_urlthat Forgejo gives as a path (/owner/repo/actions/runs/N/jobs/M) is now put on the forge's address. A full URL is left as it is. So the reason a refused merge gives names a link that opens. The run-landing spec says so, with a scenario for it.Checked on production after the deploy: the client in the osfd container read the checks on soundcheck PR 72's head. Forgejo gave every link as a path. The client returned each one on
https://forgejo.underthere.xyz, such ashttps://forgejo.underthere.xyz/cmoriarty/soundcheck/actions/runs/145/jobs/1for the failedCI / full (pull_request).