Skip to content

build(markdown): exempt the generated CHANGELOG from MD012 (RIG-3669) - #1116

Merged
trunk-io[bot] merged 1 commit into
mainfrom
compass-repo/rig-3669-changelog-md012
Sep 12, 2026
Merged

trunk-io[bot] merged 1 commit into
mainfrom
compass-repo/rig-3669-changelog-md012

Conversation

@rigel-mintaka

Copy link
Copy Markdown
Contributor

release-please's CHANGELOG.md template emits a double blank line under each version heading, which trips MD012 and fails the root:markdownlint gate. It first fires on compass's very first release PR (#1032, chore(main): release 0.2.0), where the file is created — there was no CHANGELOG before, so the gate has never seen it.

The fix has to live in config rather than in the file: release-please regenerates CHANGELOG.md on every version bump, so a hand-fix (or a rumdl fmt pass) is overwritten at the next release and CI goes red again on each one.

What changed

  • .rumdl.toml [per-file-ignores] gains "CHANGELOG.md" = ["MD012"].

Scoped to MD012 alone, not a [global] exclude, so every other rule stays live on the file — a genuinely broken fence or heading in the changelog is still caught. This matches the block's existing posture of per-file scoping in preference to disabling a rule outright.

The file is generated output rather than authored prose, which is the same basis as the agent-context payloads already carved out in [global] exclude.

Verification

Red/green against the real generated file from #1032's branch:

  • Without the exemption: rc=1, MD012 at CHANGELOG.md:5, :193, :268 — the exact three findings CI reported.
  • With the exemption: rc=0, Success: No issues found.
  • Repo-wide rumdl check .: Success: No issues found in 212 files.

Stacked on #1094 (RIG-3663), which introduces .rumdl.toml; this change has no meaning before that lands.

Ledger-impact: none — a lint-config carve-out, no design decision.

Refs RIG-3669

Co-authored-by: Matt Wilkinson matt@rigel.build

@linear-code

linear-code Bot commented Sep 11, 2026

Copy link
Copy Markdown

RIG-3663

RIG-3669

@trunk-io

trunk-io Bot commented Sep 11, 2026

Copy link
Copy Markdown

😎 Stack merged successfully - details.

@rigel-mintaka rigel-mintaka changed the title build(markdown): swap the markdown gate from markdownlint-cli2 to rumdl (RIG-3663) build(markdown): exempt the generated CHANGELOG from MD012 (RIG-3669) Sep 11, 2026
@rigel-mintaka
rigel-mintaka changed the base branch from main to compass3663/rig-3663-rumdl-markdown-gate September 11, 2026 20:31
@github-actions

github-actions Bot commented Sep 11, 2026

Copy link
Copy Markdown

Compass engineering docs preview: https://compass-repo-rig-3669-change.compass-eng-docs.pages.dev

Deployed from compass-repo/rig-3669-changelog-md012 at 65b28c1.

@mattwilkinsonn
mattwilkinsonn added this pull request to stack #1127 September 12, 2026 01:19
Base automatically changed from compass3663/rig-3663-rumdl-markdown-gate to main September 12, 2026 02:02
release-please regenerates CHANGELOG.md on every release, and its template
emits a double blank line under each version heading. That trips MD012 and
fails the markdown gate, first firing on compass's very first release (PR
1032, 0.2.0).

The exemption belongs in config rather than the file: a hand-fix or a
`rumdl fmt` pass is overwritten at the next version bump. Scoped to the one
violated rule via per-file-ignores, leaving every other rule live on the
CHANGELOG, matching how the MD057 carve-outs above are scoped.

Ledger-impact: none — build config only.

Refs RIG-3669
@rigel-mintaka
rigel-mintaka force-pushed the compass-repo/rig-3669-changelog-md012 branch from f6ee468 to 65b28c1 Compare September 12, 2026 13:43
@trunk-io
trunk-io Bot merged commit bf157d9 into main Sep 12, 2026
15 checks passed
@trunk-io
trunk-io Bot deleted the compass-repo/rig-3669-changelog-md012 branch September 12, 2026 14:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants