Testing
Running Tests
Recipes are namespaced per-package under the root justfile. Run from the repo root, or cd into the package and use the unqualified names.
bash
# Run all unit tests across the monorepo
just test
# CLI tests only (from repo root)
just cli::test
# Run tests in a specific directory (CLI package)
just cli::test test/llm/
# Run CLI e2e integration tests (requires: ollama + qwen3:1.7b)
just cli::e2eOr using Dart directly (from cli/):
bash
dart test
dart test test/llm/
dart test --run-skipped -t e2eTest Conventions
- Tests live in
test/mirroring thelib/src/structure - Unit tests use the standard
package:testframework - Test files are named
*_test.dart - Use descriptive
group()andtest()names - E2E tests are tagged with
@Tags(['e2e'])and skipped by default
Static Analysis
bash
just cli::analyze # dart analyze --fatal-infos
just cli::format # dart format .
just cli::check # gen-check + analyze + test + layer hygiene (CLI)
just check # Monorepo quality gate (all packages)TIP
Run just check (from the repo root) before submitting a PR to catch analysis issues and test failures across the whole monorepo.