Skip to content

changelog: restore curated bar, drop process disclaimer, let bot PRs self-land#83

Merged
jimdc merged 5 commits into
mainfrom
fm/crol-changelog-m6
Jul 20, 2026
Merged

changelog: restore curated bar, drop process disclaimer, let bot PRs self-land#83
jimdc merged 5 commits into
mainfrom
fm/crol-changelog-m6

Conversation

@jimdc

@jimdc jimdc commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

Summary

Two changes to the same changelog pipeline, per the site owner's direction:

  1. Restore the curated editorial bar. The "Recent updates" list had drifted into a
    near-mirror of the merged-PR log — every PR that carried a "What this means for you"
    section got an entry, regardless of significance, including a few whose own harvested
    text admitted they didn't belong ("No visible change to the site", "Not user-facing").
    A merged PR now needs BOTH that section AND a new changelog:major label to earn an
    entry; most PRs should not carry the label. Documented in CONTRIBUTING.md. Existing
    entries were re-curated under the new bar (33 → 22) — nothing is lost, the excluded ones
    just live on in the PR history instead of the highlights page.
  2. Remove the page's self-referential process commentary ("These lines come from the
    descriptions of merged code changes and stay in English for now") and its i18n key. The
    existing content-zone carve-out for this section already keeps the hermetic translation
    guard green on all ten shipping languages without it — verified directly, not assumed.
  3. Let the automated changelog PR land itself. It already tried to auto-enqueue into the
    merge queue, but that call was failing silently: GitHub requires a maintainer to manually
    approve workflow runs on PRs authored by the bot's own token, even on a same-repo branch,
    so the four required status checks never actually ran on the bot PR's head commit and it
    sat blocked. The workflow now dispatches CI directly on its own branch (a trigger type
    that bypasses that approval gate) and waits for the specific required checks — not the
    whole CI run, since one job in there only runs on this trigger type and is flaky — before
    enqueuing.

What this means for you

The changelog page now shows only the changes that matter to you: new features, new
languages, and real fixes to things that were visibly broken. Smaller changes stay off the
page. It no longer explains its own inner workings to you — it just tells you what's new.
It also publishes itself now. No one has to click a button to make it live.

Validation

  • New and updated fixture tests for the editorial gate (major / minor-fix / internal-tooling
    PRs, using real merged-PR bodies from this repo) and the bullet-marker extraction fix.
  • Full node --test suite (276 tests), all standards gates, the hermetic accessibility (axe)
    and stray-English/RTL guards across all six pages and all ten shipping languages, and the
    reading-level ratchet — all green locally. The ratchet was re-measured and tightened to
    changelog.html's new (lower) grade as the final step.
  • Manually verified the self-landing fix's premise against the real stuck PR (changelog: automated update #81): its head
    commit had zero check runs and mergeStateStatus: BLOCKED, and every one of its passing CI
    runs was manually re-triggered by a maintainer. The new polling logic was exercised against
    that PR's real (now-resolved) check-rollup data.
  • Rebased twice onto main mid-session to pick up two PRs that landed concurrently (including
    the very bot PR this change fixes), and re-applied the curation/hash/baseline work each time.

jimdc added 4 commits July 20, 2026 13:49
The changelog page's "Recent updates" list only shows genuinely major features
from now on — new capabilities, new languages, meaningful fixes to something
visibly broken. Smaller fixes and internal changes still ship (see the pull
request history), they just don't clutter the highlights page. The page also
no longer explains its own machinery to readers; it just shows what changed.

- A merged PR now needs both a "## What this means for you" section AND the
  new `changelog:major` label to earn a changelog entry — presence of the
  section alone stopped being a significance signal once every PR started
  carrying one by convention. Documented in CONTRIBUTING.md.
- Removed the "These lines come from the descriptions of merged code
  changes and stay in English for now" line and its i18n key — the existing
  `.chg-auto` content-zone carve-out already keeps the hermetic stray-English
  guard green without it (verified: all ten shipping languages still pass on
  changelog.html).
- Re-curated the existing entries under the new bar (33 -> fewer), and fixed
  a bullet-list-formatted marker section leaking a literal "-" into the
  rendered text.
- The automated-update workflow now dispatches CI directly on its own bot
  branch (workflow_dispatch, not pull_request) and waits for it before
  enqueuing the PR — routes around GitHub's same-repo approval gate for
  GITHUB_TOKEN-authored PRs, which is why the bot's PRs have needed a
  maintainer's manual click to land.

Tests: fixture-anchored coverage for the label gate (major/minor/internal
PRs, real PR bodies) and the bullet-marker fix; full standards + a11y + i18n
guard suite green; reading-level ratchet tightened to the new, lower grade.
…le CI run

The dispatched ci.yml run also executes the 'functional' job (Playwright
against live APIs, workflow_dispatch-only, documented as flaky) since it's
not gated to pull_request. That job isn't in main's required-checks list,
so waiting on the whole run's pass/fail (gh run watch) would let an
unrelated flake there block an otherwise-mergeable bot PR. Polling the PR's
own statusCheckRollup for the four required check names directly targets
what actually gates the merge queue.
@jimdc jimdc added the changelog:major This PR's user-impact section belongs on the public changelog page label Jul 20, 2026
@jimdc
jimdc added this pull request to the merge queue Jul 20, 2026
Merged via the queue into main with commit c1e0399 Jul 20, 2026
5 checks passed
github-actions Bot added a commit that referenced this pull request Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:major This PR's user-impact section belongs on the public changelog page

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant