From: Daan De Meyer Date: Tue, 10 Mar 2026 18:58:17 +0000 (+0100) Subject: ci: Add workflow url to tracking comment in claude-review workflow X-Git-Tag: v260-rc3~34^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8f56e54a91ea01c202dd67b48e3367a93aa616bc;p=thirdparty%2Fsystemd.git ci: Add workflow url to tracking comment in claude-review workflow Simplifies debugging of failed claude-review workflows. --- diff --git a/.github/workflows/claude-review.yml b/.github/workflows/claude-review.yml index 99095138a49..b9940edcb1c 100644 --- a/.github/workflows/claude-review.yml +++ b/.github/workflows/claude-review.yml @@ -327,10 +327,12 @@ jobs: /* Create or update the tracking comment. */ const MARKER = ""; + const runUrl = `${process.env.GITHUB_SERVER_URL}/${process.env.GITHUB_REPOSITORY}/actions/runs/${process.env.GITHUB_RUN_ID}`; if (!summary) summary = "Claude review: no issues found :tada:\n\n" + MARKER; else if (!summary.includes(MARKER)) summary = summary.replace(/\n/, `\n${MARKER}\n`); + summary += `\n\n[Workflow run](${runUrl})`; /* Find an existing tracking comment. */ const {data: issueComments} = await github.rest.issues.listComments({ @@ -344,7 +346,10 @@ jobs: if (existing) { const commentUrl = existing.html_url; - if (existing.body === summary) { + /* Strip the workflow-run footer before comparing so that a new run + * URL alone doesn't count as a change. */ + const stripRunLink = (s) => s.replace(/\n\n\[Workflow run\]\([^)]*\)$/, ""); + if (stripRunLink(existing.body) === stripRunLink(summary)) { console.log(`Tracking comment ${existing.id} is unchanged.`); await github.rest.issues.createComment({ owner,