elastic / elastic/docs-builder

No CLI to unpublish a changelog note from a shipped bundle

Open
#4,072 1 comment 0 reactions 0 assignees View on GitHub
bug needs triage
Dominant language
C#
Stars
24
Forks
44
Avg merge
1d 7h
Merged PRs (30d)
146

Description

### What happened?

Authors can publish a changelog note (`changelog note` + `changelog upload --artifact-type changelog`) and, if the release bundle already shipped, the scrubber adds it to `{parent}.amend-notes.yaml` so it appears in published docs.

There is no docs-builder command that reverses that. `changelog remove` only deletes local YAML and does not change published bundles or the CDN pool. `changelog upload` only writes objects (`PutObject`). `changelog bundle-amend --remove` writes a numbered sidecar, but if the note YAML is still in the pool the scrubber can treat it as a late note and put it back in `.amend-notes`.

Authors are not assumed to have S3 console access. Expected: an author who can upload can also take a note off a shipped release without hand-deleting bucket objects.

### How can we reproduce it?

1. Create and upload a `note-*.yml` after the product version’s bundle is already on the CDN (`changelog note`, then `changelog upload --artifact-type changelog`). Confirm the scrubber wrote `{parent}.amend-notes.yaml` and the note renders.
2. Run `changelog remove` on the local file (and/or `changelog bundle-amend --remove` + upload `amend-N`).
3. Observe: the pool object is still published; a later scrubber reconcile can restore the note via `.amend-notes`. There is no `changelog` subcommand whose documented effect is deleting `changelog/{org}/{repo}/{branch}/{file}` from the private bucket so the Lambda can drop the public copy.

### Version or commit

1.56.0+1da7c32f8561d7cbc1fc5ff1aa2dd52ebb34bb9c

Contributor guide

Open the contributing guide

Research direction

Start by tracing the implementations of `changelog remove`, `changelog upload --artifact-type changelog`, and `changelog bundle-amend --remove`, then inspect the scrubber behavior described in the issue. Define the command's deletion effect for the private pool object and verify that a later reconcile cannot restore the removed note; add or run the relevant CLI and scrubber tests if they exist.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
cli, cloud
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.