Summary
Edge-harvest, recipe, MST, and invariant changes have strong tests, but the new poison-recovery paths (PoisonError::into_inner usages) and the CI/Makefile Whitaker lint wiring lack direct regression coverage.
Required changes
- Add focused unit tests that deliberately poison the touched mutexes/locks (e.g.
DistanceCache, chutoro-test-support/src/lib.rs::RecordingLayer, chutoro-core/src/session/clock.rs::FixedMonotonicClock, chutoro-cli/src/logging.rs::init_logging) and assert recovery behaviour.
- Add contract tests (or CI smoke checks) for the new
lint-clippy/lint-whitaker Makefile targets, the whitaker-installer install/cache steps in .github/workflows/ci.yml, and the dataset_recipe_phase_order nextest timeout overrides in .config/nextest.toml.
Affected areas
chutoro-core/src/hnsw/distance_cache.rs
chutoro-core/src/session/clock.rs
chutoro-cli/src/logging.rs
chutoro-test-support/src/lib.rs
Makefile, .github/workflows/ci.yml, .config/nextest.toml
Acceptance criteria
- New tests exercise poisoned-lock recovery for each touched mutex and pass.
- CI/Makefile lint wiring has an automated check (e.g. a CI job step or script) verifying the targets/steps run as expected.
References
- PR: $pr_url
- Requested by: @$assignee
Summary
Edge-harvest, recipe, MST, and invariant changes have strong tests, but the new poison-recovery paths (
PoisonError::into_innerusages) and the CI/Makefile Whitaker lint wiring lack direct regression coverage.Required changes
DistanceCache,chutoro-test-support/src/lib.rs::RecordingLayer,chutoro-core/src/session/clock.rs::FixedMonotonicClock,chutoro-cli/src/logging.rs::init_logging) and assert recovery behaviour.lint-clippy/lint-whitakerMakefile targets, thewhitaker-installerinstall/cache steps in.github/workflows/ci.yml, and thedataset_recipe_phase_ordernextest timeout overrides in.config/nextest.toml.Affected areas
chutoro-core/src/hnsw/distance_cache.rschutoro-core/src/session/clock.rschutoro-cli/src/logging.rschutoro-test-support/src/lib.rsMakefile,.github/workflows/ci.yml,.config/nextest.tomlAcceptance criteria
References