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.
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/developerscurrently ships.rumdl.toml,.gitignore, apackage-lock.json, and.github/workflows/markdown_lint.yml, but has no.githooks/pre-pushand nopackage.json. The actual pre-push hook only lives inholdex/partners:As a result, new repos (including internal
holdex/client-*repos) are set up by hand: some lack the pre-push markdown lint, some commitnode_modules, and.gitignorecoverage varies.Proposal
Make
holdex/developersthe source of truth for generic repo hygiene so all repos inherit it:.githooks/pre-pushrunningrumdl check --fixon changed markdown.package.jsonpinningrumdland wiring the hook viapostinstall(git config core.hooksPath .githooks)..gitignoreexcludesnode_modules/, macOS, and Windows junk.docs/CONTRIBUTING.mdso 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.