Skip to content

chore(docs): apply Codacy markdownlint fixes#6284

Merged
thomhurst merged 4 commits into
mainfrom
chore/codacy-markdownlint-docs
Jun 28, 2026
Merged

chore(docs): apply Codacy markdownlint fixes#6284
thomhurst merged 4 commits into
mainfrom
chore/codacy-markdownlint-docs

Conversation

@thomhurst

@thomhurst thomhurst commented Jun 19, 2026

Copy link
Copy Markdown
Owner

Applies the Codacy code-quality patch across documentation and instruction files.

Rules applied

  • MD022 / MD032 — blank lines surrounding headings and lists (bulk of the diff)
  • MD034 — wrap bare URLs in angle brackets (copilot-instructions.md)
  • MD026 — strip trailing colons from some headings (requirements-start.md)

Scope

Docs / .claude / .github only — no source or runtime changes.

Notes (patch applied verbatim, including its inconsistencies)

  • CONTRIBUTING.md: dropped trailing period on the Legal Notice line (cosmetic, not a lint rule).
  • requirements-start.md: MD026 colon-strip applied to Full Workflow, Question Formats, Expert Questions (Phase 4), Metadata Structure but not Important Rules: / Phase Transitions: — Codacy was inconsistent. Expert Questions (Phase 4) had its colon stripped but no blank added before its code fence, so MD022 is still technically violated there.
  • Overlapping MD022+MD032 hunks were collapsed to a single blank line per gap (two blanks would trip MD012).
  • AnalyzerReleases.Shipped.md files are parsed by the RS2000 release-tracking analyzer; existing #### subheadings already build, and blank-line inserts are tolerated.

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review: chore(docs): apply Codacy markdownlint fixes

This is a clean, purely mechanical documentation improvement. All changes are consistent and correct.

Summary

The PR applies markdownlint rules uniformly across all documentation and markdown files:

  1. Blank lines after headings — adds the required blank line between a heading and the following content, which improves rendering consistency across different markdown renderers.

  2. Blank lines before lists — ensures lists are preceded by a blank line, preventing some renderers from treating list items as inline text rather than list elements.

  3. Angle brackets for bare URLs in copilot-instructions.md (e.g. https://tunit.dev<https://tunit.dev>) — this is the correct markdownlint-compliant way to make bare URLs clickable in strict CommonMark mode.

  4. Removed trailing period from the CONTRIBUTING.md legal notice sentence — minor punctuation fix that also happens to be linter-required.

  5. Added missing newlines at end of files — several files were missing a terminal newline, which is a common linter requirement and a POSIX convention.

No concerns

  • No content changes — only whitespace, blank lines, and formatting.
  • All changes follow established markdownlint conventions.
  • The fixes are consistent across files.

This is good hygiene and safe to merge.

@codacy-production

codacy-production Bot commented Jun 19, 2026

Copy link
Copy Markdown

Not up to standards ⛔

🔴 Issues 1 minor

Alerts:
⚠ 1 issue (≤ 0 issues of at least minor severity)

Results:
1 new issue

Category Results
CodeStyle 1 minor

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@thomhurst thomhurst force-pushed the chore/codacy-markdownlint-docs branch from d7bed30 to 86ae2f2 Compare June 28, 2026 11:23

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review: chore(docs): apply Codacy markdownlint fixes

This PR is a purely mechanical documentation pass applying Codacy markdownlint rules (MD022/MD032 blank lines around headings/lists, MD034 bare URLs, MD026 trailing colon stripping) across 17 doc files. The bulk of the diff is correct and improves markdown consistency; no source or runtime code is touched. Two small issues worth addressing:


1. Missing EOF newlines left unfixed in two files

.claude/commands/requirements-current.md (line 72) and .claude/commands/requirements-status.md (line 42) both still end without a trailing newline — the diff shows \ No newline at end of file for both files even after this PR's changes. Several other files in this same PR did have their missing EOF newlines corrected (e.g. TUnit.Performance.Tests/README.md, tools/speed-comparison/BENCHMARKS.md), so these two appear to have been overlooked. Since EOF newlines are a standard POSIX/git expectation and linters typically flag them, they're worth adding for consistency with the rest of the fixes in this PR.


2. Unintended content change to legal notice text

.github/CONTRIBUTING.md line 44: the trailing period was removed from the Legal Notice sentence:

-> ### Legal Notice > When contributing to this project, you must agree that you have authored 100% of the content, that you have the necessary rights to the content and that the content you contribute may be provided under the project license.
+> ### Legal Notice > When contributing to this project, you must agree that you have authored 100% of the content, that you have the necessary rights to the content and that the content you contribute may be provided under the project license

The PR description notes this as "cosmetic, not a lint rule," which is accurate — MD026 only strips colons from heading text, not periods from blockquote prose. This change wasn't required by any of the stated rules and modifies official legal wording unnecessarily. Suggest reverting the period.


Everything else looks correct. The inconsistencies in MD026 application on requirements-start.md (Important Rules: and Phase Transitions: still have colons) are acknowledged in the PR description, and since Codacy produced the patch verbatim, that's the right call to document rather than over-fix.

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

Docs-only PR applying Codacy markdownlint fixes — clean scope, no runtime risk. A few things worth noting:

Remaining inconsistencies in requirements-start.md

The PR description acknowledges that Codacy's patch was inconsistent. Two specific cases remain:

  1. MD026 applied unevenly## Important Rules: and ## Phase Transitions: still have trailing colons (MD026 violations) while sibling headings like ## Full Workflow and ## Question Formats had theirs removed. This is the most likely source of the 2 CodeStyle issues flagged by the Codacy bot.

  2. MD022 still violated after ### Expert Questions (Phase 4) — the colon was stripped from the heading, but no blank line was added before the immediately-following code fence. The PR description calls this out explicitly.

These are minor and the PR body is transparent about them, but since the purpose of this PR is lint compliance it's worth deciding: either strip the remaining colons and add the missing blank line for full consistency, or leave them as a known exception and close out the Codacy warnings with an inline ignore comment.

Positive

  • Good self-documentation in the PR body about what was changed and where the patch was inconsistent.
  • Missing newline at end of requirements-current.md and requirements-status.md is fixed as a side effect.
  • All changes are confined to docs/.claude/.github — zero risk to source, tests, or runtime behavior.
  • The CONTRIBUTING.md blank-line additions improve readability of the contribution guide.

Overall this is a low-risk, worthwhile cleanup. Addressing the two remaining lint issues before merge would make the improvement complete.

@claude

claude Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

Code Review

Docs-only PR applying Codacy markdownlint fixes — clean scope, no runtime risk. A few things worth noting:

Remaining inconsistencies in requirements-start.md

The PR description acknowledges that Codacy's patch was inconsistent. Two specific cases remain:

  1. MD026 applied unevenly## Important Rules: and ## Phase Transitions: still have trailing colons (MD026 violations) while sibling headings like ## Full Workflow and ## Question Formats had theirs removed. This is the most likely source of the 2 CodeStyle issues flagged by the Codacy bot.

  2. MD022 still violated after ### Expert Questions (Phase 4) — the colon was stripped from the heading, but no blank line was added before the immediately-following code fence. The PR description calls this out explicitly.

These are minor and the PR body is transparent about them, but since the purpose of this PR is lint compliance it's worth deciding: either strip the remaining colons and add the missing blank line for full consistency, or close out the Codacy warnings with inline ignore comments.

Positive

  • Good self-documentation in the PR body about what was changed and where the patch was inconsistent.
  • Missing newline at end of requirements-current.md and requirements-status.md is fixed as a side effect.
  • All changes are confined to docs/.claude/.github — zero risk to source, tests, or runtime behavior.
  • The CONTRIBUTING.md blank-line additions improve readability of the contribution guide.

Overall this is a low-risk, worthwhile cleanup. Addressing the two remaining lint issues before merge would make the improvement complete.

@thomhurst

Copy link
Copy Markdown
Owner Author

Addressed the two follow-up nits:

  • Added the missing EOF newline (MD047) to .claude/commands/requirements-current.md and .claude/commands/requirements-status.md.
  • Restored the trailing period on the .github/CONTRIBUTING.md Legal Notice sentence — that wording is now byte-identical to main, with only the intended markdownlint blank-line fixes remaining in the file.

Apply Codacy code-quality patch across docs and instruction files:
- MD022/MD032: blank lines surrounding headings and lists
- MD034: wrap bare URLs in angle brackets (copilot-instructions.md)
- MD026: strip trailing colons from some headings (requirements-start.md)

Docs/.claude/.github only; no source or runtime changes.
@thomhurst thomhurst force-pushed the chore/codacy-markdownlint-docs branch from 924cd0d to 572ae77 Compare June 28, 2026 12:10

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This PR applies Codacy markdownlint fixes across documentation and instruction files only — no source or runtime changes. The changes are clean and low-risk.

What's Good

  • Consistent MD022/MD032 blank-line insertions around headings and lists throughout all touched files
  • MD047 trailing-newline fixes eliminate the subtle diff noise those missing newlines cause
  • MD034 URL wrapping in copilot-instructions.md is correct (https://tunit.dev<https://tunit.dev>)
  • The CONTRIBUTING.md blockquote fix (> blank line between the intro and the list) renders properly in GitHub markdown
  • AnalyzerReleases.Shipped.md changes are safe — the RS2000 analyzer tolerates blank-line inserts around its #### subheadings

One Remaining Lint Issue

In .claude/commands/requirements-start.md, the ## Metadata Structure heading is immediately followed by a code fence with no blank line:

## Metadata Structure
```json

This is still an MD022 violation (blank line required after heading before fenced code block). The other headings that precede code fences in this file (e.g. ### Expert Questions (Phase 4)) did get a blank line added, so this one was likely missed. Worth fixing in a follow-up or squashing into this PR before merge.

Verdict

The bulk of the changes are correct and the intent is solid. Aside from the single overlooked MD022 gap above, this is good to merge.

@thomhurst

Copy link
Copy Markdown
Owner Author

Finished the remaining markdownlint issues in requirements-start.md: stripped the trailing colons from the remaining MD026-violating headings (## Important Rules, ## Phase Transitions, and ### Discovery Questions (Phase 2)) so they match their siblings, and added the missing MD022/MD031 blank line between ### Expert Questions (Phase 4) and its code fence. A ^#{1,6} .*:$ sweep confirms no heading-colon violations remain in the file.

@thomhurst thomhurst merged commit fdc8e49 into main Jun 28, 2026
13 of 14 checks passed
@thomhurst thomhurst deleted the chore/codacy-markdownlint-docs branch June 28, 2026 12:57
github-actions Bot pushed a commit to BenjaminMichaelis/TrxLib that referenced this pull request Jun 29, 2026
Updated [TUnit](https://github.com/thomhurst/TUnit) from 1.56.25 to
1.57.0.

<details>
<summary>Release notes</summary>

_Sourced from [TUnit's
releases](https://github.com/thomhurst/TUnit/releases)._

## 1.57.0

<!-- Release notes generated using configuration in .github/release.yml
at v1.57.0 -->

## What's Changed
### Other Changes
* perf(sourcegen): consolidate per-file ModuleInitializers into merged
.cctor (#​6226) by @​thomhurst in
thomhurst/TUnit#6286
* fix: resolve CS0121 IsEqualTo ambiguity on .NET 8 SDK (#​6296) by
@​thomhurst in thomhurst/TUnit#6313
* chore(docs): apply Codacy markdownlint fixes by @​thomhurst in
thomhurst/TUnit#6284
* fix(mocks): generate mock for qualified-name X.Mock() calls (#​6298)
by @​thomhurst in thomhurst/TUnit#6314
### Dependencies
* chore(deps): update tunit to 1.56.35 by @​thomhurst in
thomhurst/TUnit#6306
* chore(deps): update dependency stackexchange.redis to 3.0.7 by
@​thomhurst in thomhurst/TUnit#6307
* chore(deps): update dependency opentelemetry.instrumentation.http to
1.16.0 by @​thomhurst in thomhurst/TUnit#6308
* chore(deps): update dependency
opentelemetry.instrumentation.aspnetcore to 1.16.0 by @​thomhurst in
thomhurst/TUnit#6309
* chore(deps): update dependency qs to v6.15.3 by @​thomhurst in
thomhurst/TUnit#6310
* chore(deps): update dependency polyfill to 10.11.0 by @​thomhurst in
thomhurst/TUnit#6312
* chore(deps): update dependency polyfill to 10.11.0 by @​thomhurst in
thomhurst/TUnit#6311
* chore(deps): bump http-proxy-middleware from 2.0.9 to 2.0.10 in /docs
by @​dependabot[bot] in thomhurst/TUnit#6303


**Full Changelog**:
thomhurst/TUnit@v1.56.35...v1.57.0

## 1.56.35

<!-- Release notes generated using configuration in .github/release.yml
at v1.56.35 -->

## What's Changed
### Other Changes
* feat(aspire): tear down Aspire on test-run abort via session
cancellation token by @​thomhurst in
thomhurst/TUnit#6292
### Dependencies
* chore(deps): update tunit to 1.56.25 by @​thomhurst in
thomhurst/TUnit#6294
* chore(deps): update dependency
microsoft.visualstudio.threading.analyzers to v18 by @​thomhurst in
thomhurst/TUnit#6297
* chore(deps): update dependency microsoft.net.test.sdk to 18.7.0 by
@​thomhurst in thomhurst/TUnit#6300
* chore(deps): update dependency microsoft.playwright to 1.61.0 by
@​thomhurst in thomhurst/TUnit#6302
* chore(deps): update actions/cache action to v6 by @​thomhurst in
thomhurst/TUnit#6301
* chore(deps): update dependency azure.storage.blobs to 12.29.1 by
@​thomhurst in thomhurst/TUnit#6304


**Full Changelog**:
thomhurst/TUnit@v1.56.25...v1.56.35

Commits viewable in [compare
view](thomhurst/TUnit@v1.56.25...v1.57.0).
</details>

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=TUnit&package-manager=nuget&previous-version=1.56.25&new-version=1.57.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
github-actions Bot pushed a commit to IntelliTect/CodingGuidelines that referenced this pull request Jun 29, 2026
Updated [TUnit.Core](https://github.com/thomhurst/TUnit) from 1.56.25 to
1.57.0.

<details>
<summary>Release notes</summary>

_Sourced from [TUnit.Core's
releases](https://github.com/thomhurst/TUnit/releases)._

## 1.57.0

<!-- Release notes generated using configuration in .github/release.yml
at v1.57.0 -->

## What's Changed
### Other Changes
* perf(sourcegen): consolidate per-file ModuleInitializers into merged
.cctor (#​6226) by @​thomhurst in
thomhurst/TUnit#6286
* fix: resolve CS0121 IsEqualTo ambiguity on .NET 8 SDK (#​6296) by
@​thomhurst in thomhurst/TUnit#6313
* chore(docs): apply Codacy markdownlint fixes by @​thomhurst in
thomhurst/TUnit#6284
* fix(mocks): generate mock for qualified-name X.Mock() calls (#​6298)
by @​thomhurst in thomhurst/TUnit#6314
### Dependencies
* chore(deps): update tunit to 1.56.35 by @​thomhurst in
thomhurst/TUnit#6306
* chore(deps): update dependency stackexchange.redis to 3.0.7 by
@​thomhurst in thomhurst/TUnit#6307
* chore(deps): update dependency opentelemetry.instrumentation.http to
1.16.0 by @​thomhurst in thomhurst/TUnit#6308
* chore(deps): update dependency
opentelemetry.instrumentation.aspnetcore to 1.16.0 by @​thomhurst in
thomhurst/TUnit#6309
* chore(deps): update dependency qs to v6.15.3 by @​thomhurst in
thomhurst/TUnit#6310
* chore(deps): update dependency polyfill to 10.11.0 by @​thomhurst in
thomhurst/TUnit#6312
* chore(deps): update dependency polyfill to 10.11.0 by @​thomhurst in
thomhurst/TUnit#6311
* chore(deps): bump http-proxy-middleware from 2.0.9 to 2.0.10 in /docs
by @​dependabot[bot] in thomhurst/TUnit#6303


**Full Changelog**:
thomhurst/TUnit@v1.56.35...v1.57.0

## 1.56.35

<!-- Release notes generated using configuration in .github/release.yml
at v1.56.35 -->

## What's Changed
### Other Changes
* feat(aspire): tear down Aspire on test-run abort via session
cancellation token by @​thomhurst in
thomhurst/TUnit#6292
### Dependencies
* chore(deps): update tunit to 1.56.25 by @​thomhurst in
thomhurst/TUnit#6294
* chore(deps): update dependency
microsoft.visualstudio.threading.analyzers to v18 by @​thomhurst in
thomhurst/TUnit#6297
* chore(deps): update dependency microsoft.net.test.sdk to 18.7.0 by
@​thomhurst in thomhurst/TUnit#6300
* chore(deps): update dependency microsoft.playwright to 1.61.0 by
@​thomhurst in thomhurst/TUnit#6302
* chore(deps): update actions/cache action to v6 by @​thomhurst in
thomhurst/TUnit#6301
* chore(deps): update dependency azure.storage.blobs to 12.29.1 by
@​thomhurst in thomhurst/TUnit#6304


**Full Changelog**:
thomhurst/TUnit@v1.56.25...v1.56.35

Commits viewable in [compare
view](thomhurst/TUnit@v1.56.25...v1.57.0).
</details>

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=TUnit.Core&package-manager=nuget&previous-version=1.56.25&new-version=1.57.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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.

1 participant