fix(settings): remove markdownlint exclusion for collections/*.collection.md#1372
fix(settings): remove markdownlint exclusion for collections/*.collection.md#1372PratikWayase wants to merge 1 commit intomicrosoft:mainfrom
Conversation
|
Thanks for your contribution @PratikWayase - I believe it will be good to hold off the changes on the collection MD files until PR #1316 is merged as it touches the same files, and you may have some conflicts. FYI @WilliamBerryiii |
|
Thanks for your work on this one @PratikWayase, nothing we have a PR out that needs to be merged first, and simplifies some of the work: #1316. Then this one can be rebased and simplified: After #1316 merges, the auto-generated artifact tables will be lint-compliant by construction. The only pieces of which would still be needed are:
Thank you for your patience |
WilliamBerryiii
left a comment
There was a problem hiding this comment.
Thank you so much for picking up #1341, @PratikWayase! The em-dash cleanup, the conversion away from bold-prefix list items, and adding H1s for MD041 all landed cleanly across the 14 collection files, and that is exactly the writing-style direction we have been moving toward. We really appreciate the care you put into this.
Before we merge, we left a few inline suggestions we would love your help tightening up. Happy to pair on any of these if it would be easier.
One last small note for after we land this: please run npm run plugin:generate as the final step so the plugins/ outputs and extension/README.*.md regenerate from the updated collection bodies. Those files are generated, so they need to flow through after the source changes.
Thank you again for tackling this, @PratikWayase. The writing-style improvements here are genuinely useful, and we are looking forward to getting this merged once the items below are sorted. Let us know if you would like a hand with any of them.
| @@ -33,7 +33,6 @@ param( | |||
| 'extension/README.md', | |||
| 'extension/README.*.md', | |||
| 'extension/templates/README.template.md', | |||
There was a problem hiding this comment.
Heads up: removing collections/*.collection.md from $ExcludePaths here is the right direction, but the 14 collection files in this PR do not yet have frontmatter. FrontmatterValidation.psm1 (around line 866) will emit No frontmatter found for each one, and because package.json runs lint:frontmatter with -WarningsAsErrors, npm run lint:frontmatter and npm run lint:all will exit non-zero in CI.
Two paths forward, whichever you prefer:
- Add minimal frontmatter (
titleanddescription) to eachcollections/*.collection.mdfile. That also lets you drop the generic H1s flagged below. - Restore the
collections/*.collection.mdexclusion in both this file and.markdownlint-cli2.jsonc, and defer the frontmatter work to a follow-up.
Glad to review either approach.
| @@ -9,7 +9,6 @@ | |||
| "extension/README.md", | |||
| "extension/README.*.md", | |||
| "extension/CHANGELOG.md", | |||
There was a problem hiding this comment.
Pairs with the $ExcludePaths change in scripts/linting/Validate-MarkdownFrontmatter.ps1. If you take option 2 in that thread (restore the exclusion), please restore "collections/*.collection.md", here as well so the two stay in sync.
| @@ -1,9 +1,15 @@ | |||
| Manage Azure DevOps work items, monitor builds, create pull requests, and convert requirements documents into structured work item hierarchies — all from within VS Code. | |||
| # ado.collection | |||
There was a problem hiding this comment.
Filename-style H1s like # ado.collection, # hve-core.collection, and so on satisfy MD041, but they also become the title shown in the generated extension/README.<id>.md. If you go with option 1 on the frontmatter thread, a human-readable title: in frontmatter (for example title: ADO Collection) lets us drop the filename-style H1 entirely. Otherwise a short prose H1 like # ADO Collection would read more naturally. Same suggestion applies to the other 13 collection files.
|
|
||
| Manage Azure DevOps work items, monitor builds, create pull requests, and convert requirements documents into structured | ||
| work item hierarchies : all from within VS | ||
| Code. |
There was a problem hiding this comment.
A few of the collection files now wrap mid-phrase and leave single words or digits on their own lines (for example interaction, loops, ceremony, and the standalone 1, 2, 3 in the numbered lists elsewhere in this PR). Because these files flow through scripts/extension/Prepare-Extension.ps1 into extension/README.<id>.md, the orphan tokens show up in the published extension READMEs as well.
Two options that would both work for us:
- Relax the wrap by adding an MD013 override for
collections/*.collection.mdin.markdownlint-cli2.jsonc. - Re-flow the affected paragraphs and lists so the wrap falls on natural phrase boundaries.
| Implementation | ||
| spaces. | ||
|
|
||
| > Preview : Core features are complete and functional. Suitable for adoption with the understanding that refinements may |
There was a problem hiding this comment.
The original > **Preview** ... line became > Preview : Core features..., which renders as a plain blockquote. Since we are standardizing on GFM alerts, could we convert it to:
> [!NOTE]
> Core features are complete and functional. Suitable for adoption with the understanding that refinements may ...
Pull Request
Description
Removed the exclusion for
collections/*.collection.mdfrom markdownlint configuration and fixed all related lint violations across collection files.Changes include:
Validate-MarkdownFrontmatter.ps1to align with updated linting rulesRelated Issue(s)
Closes #1341
Type of Change
Select all that apply:
Code & Documentation:
Infrastructure & Configuration:
AI Artifacts:
prompt-builderagent and addressed all feedback.github/instructions/*.instructions.md).github/prompts/*.prompt.md).github/agents/*.agent.md).github/skills/*/SKILL.md)Other:
.ps1,.sh,.py)Testing
npx markdownlint-cli2 "collections/*.collection.md"→ 0 errorsnpm run lint:md→ 0 errorsChecklist
Required Checks
AI Artifact Contributions
/prompt-analyzeto review contributionprompt-builderreviewRequired Automated Checks
npm run lint:mdnpm run spell-checknpm run lint:frontmatternpm run validate:skillsnpm run lint:md-linksnpm run lint:psnpm run plugin:generatenpm run docs:testSecurity Considerations