Skip to content

Record why the host tooling carries no linter category, or decide that it should #671

Description

@ptr727

Neither host-setup/linux/install-tools.sh nor the new host-setup/windows/install-tools.ps1 manages markdownlint, cspell, actionlint, editorconfig-checker, shellcheck, PSScriptAnalyzer or ruff, and nothing in the tree states that as a decision. A reader can only reach it by inference.

The reasoning is sound and currently lives nowhere durable. Every one of those runs as a pinned container image, or through uvx for the Python toolchain, which is what keeps a local run and CI the same check: the image tag fixes the version. Installing native copies through apt or winget would put a second, unpinned version of each on the host, and a local run would then differ from CI, which is the exact property the pinned images exist to guarantee. So the only host requirements the whole linter surface creates are docker and uv, and docs/host-setup.md already carries both.

host-setup/windows/README.md now states this under "Why There Is No Linter Category", but it states it for Windows only. The question is whether it belongs in docs/host-setup.md as a fleet fact instead, so the Linux tooling is covered by the same sentence rather than by silence, and so a future contributor adding a "linters" category to install-tools.sh finds the answer before writing it rather than after.

Either outcome closes this. What should not persist is the current state, where the absence is correct and undocumented.

Raised while building the Windows host tooling, where the same absence had to be justified from scratch because nothing recorded the existing justification.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions