Skip to content

conformance: per-surface lint architecture (editorconfig action + VS Code lint tasks) - #262

Merged
ptr727 merged 5 commits into
developfrom
feature/lint-architecture
Jul 11, 2026
Merged

conformance: per-surface lint architecture (editorconfig action + VS Code lint tasks)#262
ptr727 merged 5 commits into
developfrom
feature/lint-architecture

Conversation

@ptr727

@ptr727 ptr727 commented Jul 11, 2026

Copy link
Copy Markdown
Owner

Converges LanguageTags onto the fleet lint architecture (ProjectTemplate #276). CI already ran the doc linters as action wrappers and the hook was already language-only, so this closes the last gaps:

  • validate-task.yml: editorconfig-checker runs via docker run mstruebing/editorconfig-checker:latest (the doc linters run as pinned action wrappers; editorconfig-checker's action is install-only, so Docker runs it in one step).
  • .vscode/tasks.json: add the Lint group (full doc-lint set via Docker :latest), the on-demand local surface the repo was missing.
  • .husky/pre-commit: language-only comment + if guard, matching the fleet snippet.

codecov.yml is already present and repo-tailored, left as-is. Supersedes #256 (the old docker-in-hook lint-parity approach). All linters pass locally.

🤖 Generated with Claude Code

- validate-task.yml: editorconfig-checker runs via its action wrapper, so all four
  CI linters are pinned actions.
- .vscode/tasks.json: add the Lint group (full doc-lint set via Docker :latest).
- .husky/pre-commit: language-only comment and the if guard, matching the fleet snippet.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@codecov

codecov Bot commented Jul 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 87.43%. Comparing base (ebec6e9) to head (3a06c03).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #262   +/-   ##
========================================
  Coverage    87.43%   87.43%           
========================================
  Files           11       11           
  Lines         1973     1973           
  Branches       243      243           
========================================
  Hits          1725     1725           
  Misses         166      166           
  Partials        82       82           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copilot AI 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.

Pull request overview

This PR aligns LanguageTags’ lint surfaces (CI, VS Code tasks, and pre-commit) with the “per-surface” lint architecture by moving editorconfig checking into an action, adding a local on-demand VS Code lint surface, and narrowing the pre-commit hook to language-only checks.

Changes:

  • Switch editorconfig-checker in CI from an inline docker run to the editorconfig-checker/action-editorconfig-checker action.
  • Add VS Code “Lint:” tasks (line endings, workflows, markdown, spelling) plus an aggregate “Lint: All”.
  • Update the Husky pre-commit hook to run .NET checks only when dotnet is available, with documentation clarifying that full lint runs elsewhere.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
.vscode/tasks.json Adds on-demand local lint tasks for doc/workflow checks via Docker.
.husky/pre-commit Makes pre-commit language-only and conditional on dotnet being present.
.github/workflows/validate-task.yml Replaces the editorconfig-checker Docker invocation with the action wrapper.

Comment thread .vscode/tasks.json Outdated
Comment thread .vscode/tasks.json
Comment thread .husky/pre-commit
Spell-checking targets user-facing docs only; the governance docs are hub-vetted
and tech-heavy. Keeps the local task consistent with the CI cspell scope.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 11, 2026 03:52

Copilot AI 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.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 7 comments.

Comment thread .github/workflows/validate-task.yml Outdated
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .husky/pre-commit
editorconfig-checker/action-editorconfig-checker only installs the CLI (its own
example adds a separate run step), so 'uses:' alone never ran the check and CI
passed without validating line endings. Revert to the Docker invocation, which
runs the check in one step (and matches the VS Code Lint task).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 11, 2026 03:56

Copilot AI 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.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.

Comment thread .github/workflows/validate-task.yml
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Local Docker linters and the VS Code Lint tasks run :latest; CI runs
markdownlint/cspell/actionlint as pinned action wrappers and editorconfig-checker
via Docker :latest. Replaces the stale 'pinned to validate-task.yml versions' note.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 11, 2026 04:09

Copilot AI 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.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

Comment thread .github/workflows/validate-task.yml
Comment thread .vscode/tasks.json
Comment thread AGENTS.md Outdated
The cspell image entrypoint is cspell, so 'cspell README.md HISTORY.md' passes
'cspell' as a file glob. The image runs without it, matching the VS Code task.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 11, 2026 04:16

Copilot AI 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.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

Comment thread .github/workflows/validate-task.yml

Copilot AI 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.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.

Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .vscode/tasks.json
Comment thread .github/workflows/validate-task.yml
@ptr727
ptr727 merged commit 94f5701 into develop Jul 11, 2026
14 checks passed
@ptr727
ptr727 deleted the feature/lint-architecture branch July 11, 2026 04:24
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