1@README.md
2
3## Notes for agents
4
5- **Change the art here, never in Kotlin.** `android/.../art/GreyScenes.kt` is generated (gitignored)
6  by `tools/build-core.sh`. Only the evaluator (`Motion.kt`, `Flatten.kt`) is hand-written Kotlin,
7  and it must give the numbers `motion.rs` and `flatten.rs` give.
8- **A new `Motion` variant needs its Kotlin twin in `art/Motion.kt`** with the same name (the
9  generator writes `Motion.<Debug name>`), or the app does not compile.
10- **After a deliberate change to the art or a motion:** bless the fixture
11  (`WHISKERS_ART_BLESS=1 cargo test -p whiskers-art --test frames`), run the app's unit tests,
12  re-record the screenshots and look at them.
13- Instants in the fixture sit away from every step boundary on purpose; a test checks it. Keep any
14  new stepping motion off them.
15- Moods are the core's (`whiskers_pet::Mood`). `scene::MOODS` has a test with an exhaustive match:
16  a mood added to the core does not compile here until it is drawn.
17- The crate has one dependency, `whiskers-pet`, and compiles to wasm. No I/O, no clock.