Skip to content

Latest commit

 

History

History
62 lines (48 loc) · 2.42 KB

File metadata and controls

62 lines (48 loc) · 2.42 KB

tryke repository

running clippy

cargo clippy --workspace --all-targets --all-features -- -D warnings

running python tests

uv run cargo run -- test --reporter llm

logging

A single knob (-v / -q flags or TRYKE_LOG env) drives both rust and python verbosity. RUST_LOG is honored as a power-user override for the rust side only. Default is warn on rust, off for workers (no chatter unless asked). See docs/guides/configuration.md for the full precedence chain.

running rust tests

we use cargo-nextest — install once with cargo install cargo-nextest --locked, then:

uv run cargo nextest run --workspace --all-features

dev guidelines

  • all changes must be tested. if you're not testing your changes, you're not done.
  • get your tests to pass. if you didn't run the tests, your code does not work.
  • follow existing code style. check neighboring files for patterns.
  • always run uvx prek run -a at the end of a task.
  • when making changes that affect CLI output, render the ANSI output and share a screenshot with the user for review.
  • When opening a PR, use .github/pull_request_template.md and keep each section concise.
  • When opening a PR, do not add any title prefix such as [codex], [claude], or a category tag; use the plain title.
  • avoid falling back to patterns that require panic!, unreachable!, or .unwrap(). Instead, try to encode those constraints in the type system.
  • prefer let chains (if let combined with &&) over nested if let statements to reduce indentation and improve readability.
  • if you have to suppress a clippy lint, prefer to use #[expect()] over [allow()], where possible.
  • in python, always prefer strong, precise typing. use concrete types, typed protocols, dataclasses, NamedTuple, or TypedDict over object / Any / untyped dict. fix the underlying typing problem rather than reaching for # noqa, # type: ignore, cast(), getattr()/hasattr(), or other dynamic escape hatches. if a type checker complains, the first move is to tighten the types, not silence the checker.
  • use comments purposefully. don't use comments to narrate code, but do use them to explain invariants and why something unusual was done a particular way.

style guidelines