Docs and Release
Commands and contracts for docs generation and release validation.
Implementation and distribution model
Distribution contract:
- canonical package index: PyPI
- canonical package name:
tqlint - canonical command:
tq - canonical install flows:
uv add,uv tool install,uvx --from tqlint tq
The build backend is maturin targeting the Rust CLI crate. Published artifacts install the compiled tq executable.
Docs generation
Manifest-backed reference artifacts are generated by tq-docsgen.
cargo run -p tq-docsgen --locked -- generate allcargo run -p tq-docsgen --locked -- generate clicargo run -p tq-docsgen --locked -- generate configcargo run -p tq-docsgen --locked -- generate rules
These commands regenerate:
docs/reference/cli.mddocs/reference/configuration.mddocs/guide/quickstart.mddocs/.vitepress/generated/rules-sidebar.tsdocs/reference/rules/index.mdand per-rule pages
Docs site build
mise run docs-build
The docs site build runs the Rust docs generator first through package.json and then builds VitePress.
Repository and release verification
Repository-policy and release artifact checks are enforced by tq-release.
cargo run -p tq-release --locked -- verify-dependabot --repo-root .cargo package --workspace --lockedcargo run -p tq-release --locked -- verify-artifact-contents --dist-dir dist
The Dependabot verifier ensures the GitHub Actions update policy covers both .github/workflows and local composite actions under .github/actions.
The artifact verifier inspects built wheels and sdists for repository-only paths such as scripts/, tests/, docs/, tmp/, and .github/. Wheel installer script locations under .data/scripts/ are allowed because that is where the packaged tq executable lives.
Release artifact shape
The CI build job builds PyPI artifacts through uv build, backed by the root pyproject.toml and the Rust CLI crate via maturin. On SemVer tags, a separate CI attestation job promotes those validated build artifacts into the final validated-dist artifact that the publish workflow consumes without rebuilding.
Current artifacts are:
- wheel:
dist/tqlint-<version>-*.whl(platform-specific) - source distribution:
dist/tqlint-<version>.tar.gz