Skip to content

Changelog scrubber: keep links to public repos marked skip in assembler.yml#3653

Open
cotti wants to merge 2 commits into
mainfrom
fix/661-scrubber-allowlist-skip-repos
Open

Changelog scrubber: keep links to public repos marked skip in assembler.yml#3653
cotti wants to merge 2 commits into
mainfrom
fix/661-scrubber-allowlist-skip-repos

Conversation

@cotti

@cotti cotti commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Why

Bundles from private repos lose links to public repos when the changelog scrubber Lambda copies them from the private to the public S3 bucket, even when those repos are explicitly listed in the bundle's link_allow_repos. Concretely, elastic/cloud's cloud-2026-07-07.yaml bundle keeps https://github.com/elastic/roadmap/issues/39 at bundle time, but the public CDN copy has no issues at all.

Fixes elastic/docs-eng-team#661.

What

The Lambda builds its allowlist from the embedded config/assembler.yml via LinkAllowlistSanitizer.BuildAllowReposFromAssembler, which excluded every reference repository marked skip: true in addition to private: true. But skip only means "don't clone/build docs from this repo" — it says nothing about visibility. elastic/roadmap was added to assembler.yml with private: false, skip: true (#3053) precisely so changelog links to it would be recognized, and the skip flag defeated that.

The allowlist now excludes only private: true repositories. Public skip-repos (elastic/roadmap, elastic/docs-builder) become linkable; all private: true repos (which include every private team repo currently marked skip) remain scrubbed.

Note for rollout: the Lambda redeploys via the release workflow (changelog-scrubber-prod environment), and since scrubbing is S3-event-driven, already-published bundles stay scrubbed until their private-bucket objects are re-uploaded.

…ler.yml

The scrubber Lambda's allowlist excluded every reference repository marked
skip: true, conflating "publishes no docs" with "is private". Public
link-only repos such as elastic/roadmap (private: false, skip: true) had
their PR/issue links stripped from bundles during the private-to-public
bucket transition, even when explicitly listed in the bundle's
link_allow_repos. Only private: true now excludes a repo from the allowlist.

Closes elastic/docs-eng-team#661

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant