Skip to content

fix(release-qa): deep-link Slack counts to bucket sections via user-content- anchors#35842

Merged
nollymar merged 1 commit into
mainfrom
fix/release-qa-anchor-deeplink
May 26, 2026
Merged

fix(release-qa): deep-link Slack counts to bucket sections via user-content- anchors#35842
nollymar merged 1 commit into
mainfrom
fix/release-qa-anchor-deeplink

Conversation

@nollymar
Copy link
Copy Markdown
Member

Closes #35841

Problem

Each bucket count in the release QA Slack notification links to the workflow run summary with a per-bucket fragment (e.g. #qa-missing), but clicking it lands at the top of the run page rather than the bucket section.

Example: https://github.com/dotCMS/core/actions/runs/26459945291#qa-missing

Root cause

GitHub's markdown sanitizer prefixes anchor ids in the job summary with user-content-. The summary declares <a id="qa-missing"> but the rendered element is id="user-content-qa-missing", so #qa-missing matches nothing.

Fix

Point the Slack count links at #user-content-<anchor>. The markdown anchor markers are unchanged — GitHub adds the prefix on render. One-line change in slackCounts plus the corresponding test assertions.

Notes

🤖 Generated with Claude Code

GitHub's markdown sanitizer rewrites anchor ids in the Actions job
summary with a `user-content-` prefix, so linking to the bare
`#qa-missing` fragment landed at the top of the run page instead of the
bucket section. Point the Slack count links at `#user-content-<anchor>`
to match the rendered ids. The markdown `<a id="...">` markers are
unchanged — GitHub adds the prefix when rendering.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@claude
Copy link
Copy Markdown
Contributor

claude Bot commented May 26, 2026

Claude finished @nollymar's task in 39s —— View job


Rollback safety analysis — ✅ Safe to Rollback

  • Read docs/core/ROLLBACK_UNSAFE_CATEGORIES.md
  • Reviewed PR diff against every unsafe category
  • Applied AI: Safe To Rollback label

Scope of changes

  • .github/scripts/release-qa-status/src/format.ts — prefix user-content- on Slack count anchor links
  • .github/scripts/release-qa-status/src/format.test.ts — corresponding test assertions

Analysis

These changes only affect the CI-side Slack notification formatter for the release QA status job. The diff does not touch any category in the reference document:

Category Match?
C-1 Structural data model change No
C-2 Elasticsearch mapping change No
C-3 contentlet_as_json model version bump No
C-4 DROP TABLE / DROP COLUMN No
H-1 One-way data migration No
H-2 RENAME TABLE / COLUMN No
H-3 PK / unique constraint restructuring No
H-4 New ContentType field type No
H-5 Storage provider change No
H-6 DROP PROCEDURE / FUNCTION No
H-7 NOT NULL column without default No
M-1 Non-broadening column type change No
M-2 Push publishing bundle format change No
M-3 REST / GraphQL API contract change No
M-4 OSGi public interface change No

No runonce tasks, no SQL, no schema or mapping changes, no runtime Java/REST surface touched. Rolling back to N-1 has no application impact — the previous version of the script would simply emit the previous (broken) anchor links in the Slack message, which is the prior state.
· Branch fix/release-qa-anchor-deeplink

@nollymar nollymar added this pull request to the merge queue May 26, 2026
Merged via the queue into main with commit d8731c1 May 26, 2026
31 checks passed
@nollymar nollymar deleted the fix/release-qa-anchor-deeplink branch May 26, 2026 23:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Release QA Slack count links don't deep-link to the bucket section

2 participants