# Contributor handoff — vercel/turborepo

> Canonical page: https://codevetter.com/unpack/turborepo/agent-handoff

# Contributor handoff — vercel/turborepo

Scanned commit 2540ee1d740bb96bf249459a7957ef4b380c9e43 (2026-10-02). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

This handoff is grounded in the pinned commit and a clean tracked working-tree comparison, with bounded inspection rather than exhaustive coverage. Tests and CI were inspected, not executed; commands below are documented future checks, not results. Begin at the owning crate and preserve discovery authority, hash inputs, output modes, credential routing, and completion semantics.
- Read AGENTS.md and CONTRIBUTING.md before changes: repository rules prohibit bypassing commit/push hooks and require Conventional Commit PR titles with uppercase descriptions and no scopes. — [AGENTS.md#L3-22](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/AGENTS.md#L3-L22)
- For CLI changes, keep main.rs thin and follow lib.rs → shim.rs → cli/mod.rs; the binary explicitly directs additional logic into turborepo_cli::main. — [crates/turborepo/src/main.rs#L74-98](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo/src/main.rs#L74-L98) [crates/turborepo-cli/src/lib.rs#L53-57](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-cli/src/lib.rs#L53-L57) [crates/turborepo-cli/src/shim.rs#L215-252](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-cli/src/shim.rs#L215-L252)
- Use the repository's Node 24/pnpm 12 versions and existing build:turbo script; Rust code inherits edition 2024 and workspace Clippy restrictions on expect and unwrap. — [package.json#L5-7](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/package.json#L5-L7) [package.json#L28-31](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/package.json#L28-L31) [Cargo.toml#L11-28](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/Cargo.toml#L11-L28)
- Documented focused verification is cargo test -p <module> or cargo test -p turbo --test <target>, with cargo lint for Clippy; these checks were inspected, not executed in this audit. — [CONTRIBUTING.md#L105-130](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/CONTRIBUTING.md#L105-L130) [crates/turborepo/tests/run_caching.rs#L21-24](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo/tests/run_caching.rs#L21-L24)
- When execution is authorized, manual development-binary testing requires --skip-infer; CONTRIBUTING also distinguishes deprecated run-daemon behavior from watch's daemon use. — [CONTRIBUTING.md#L134-152](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/CONTRIBUTING.md#L134-L152)
- Do not collapse scope inventory into full discovery or change hash inputs casually: contributor contracts forbid invented task knowledge and TaskHashable includes command, environment, dependency, and output semantics. — [crates/turborepo-repository/src/toolchain.rs#L543-571](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-repository/src/toolchain.rs#L543-L571) [crates/turborepo-task-hash/src/lib.rs#L652-674](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-task-hash/src/lib.rs#L652-L674)
- Preserve callback-before-cache-save ordering and JSON stdout ownership; these behaviors are explicit in the executor and run adapter and affect dependents and machine consumers. — [crates/turborepo-task-executor/src/exec.rs#L264-296](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-task-executor/src/exec.rs#L264-L296) [crates/turborepo-cli/src/commands/run.rs#L145-159](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-cli/src/commands/run.rs#L145-L159)
- A turbo invocation under a detected agent can update AGENTS.md when bundled docs and configuration permit it; maintenance uses a PID lock and refuses replacement after concurrent edits. — [crates/turborepo-cli/src/cli/mod.rs#L190-229](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-cli/src/cli/mod.rs#L190-L229) [crates/turborepo-cli/src/cli/agent_guidance.rs#L40-54](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-cli/src/cli/agent_guidance.rs#L40-L54) [crates/turborepo-cli/src/cli/agent_guidance.rs#L88-127](https://github.com/vercel/turborepo/blob/2540ee1d740bb96bf249459a7957ef4b380c9e43/crates/turborepo-cli/src/cli/agent_guidance.rs#L88-L127)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
