Skip to content

Problem: new repos don't inherit standard lint tooling #119

Description

@zolotokrylin

Problem

Every Holdex repo is expected to lint markdown on push, but the tooling that enforces it is not standardized at the parent-guidelines level, so each repo reinvents it and they drift.

holdex/developers currently ships .rumdl.toml, .gitignore, a package-lock.json, and .github/workflows/markdown_lint.yml, but has no .githooks/pre-push and no package.json. The actual pre-push hook only lives in holdex/partners:

As a result, new repos (including internal holdex/client-* repos) are set up by hand: some lack the pre-push markdown lint, some commit node_modules, and .gitignore coverage varies.

Proposal

Make holdex/developers the source of truth for generic repo hygiene so all repos inherit it:

  • Add .githooks/pre-push running rumdl check --fix on changed markdown.
  • Add package.json pinning rumdl and wiring the hook via postinstall (git config core.hooksPath .githooks).
  • Ensure .gitignore excludes node_modules/, macOS, and Windows junk.
  • Document a "Repository setup" step in docs/CONTRIBUTING.md so new repos are scaffolded from this convention rather than ad hoc.

This is the generic half of a split: the client-repo-specific README convention is being handled separately as a rule in holdex/partners.

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