Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Development

Use Koyal’s local workflow to rehearse CI and release-sensitive checks before a pull request.

cp .env.example .env
direnv allow
cargo test --all --locked
scripts/dev/install-hooks.sh
scripts/dev/act-local.sh --list
dev/ci.sh all

.envrc enters the Nix flake dev shell when direnv is enabled.

The hooks run a staged secret scan when gitleaks is installed, then run Rust and config gates before push. Optional pre-push checks:

KOYAL_DOCS_CHECK=1 git push
KOYAL_PRECHECK_READINESS=1 git push
KOYAL_PREFLIGHT=1 git push

Dependabot covers Cargo, GitHub Actions, and Docker updates. CODEOWNERS routes release-sensitive changes to maintainers, while PR and issue templates collect validation, safety, compatibility, and private security-reporting context.

.github/actionlint.yaml keeps actionlint runner-label handling stable. .vscode/tasks.json and .zed/settings.json provide checked editor tasks and formatting defaults for release, benchmark, and launch-readiness work. dev/ci.sh all wraps Rust, config, docs, package metadata, Cargo package file-list, and non-strict readiness checks for local maintainer rehearsal.

scripts/ci/check_dev_contract.sh keeps the environment template, hooks, local act rehearsal, Dependabot, review templates, and docs aligned.