1.8 KiB
1.8 KiB
Project notes for agents
AGENT RULES
- you MUST never do
git push, unless you're explicitly told to - you MUST always run formatting tools such as
cargo fmtafter you changed the contents of a file - you MUST use conventional commits when committing (
feat,fix,perf,refactor,chore,docs), with!and aBREAKING CHANGE:footer for API breaks - you MUST end commit messages with the trailer
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> - you MUST inform the user about commits or any other changes to git, including the commit message
- you SHOULD commit your changes after every step, but only when
cargo clippyandcargo testpass - you SHOULD commit formatting-only changes separately from functional changes
Commands
cargo build --workspace --all-targets
cargo test --workspace
cargo clippy --workspace --all-targets -- -D warnings # must stay clean
cargo fmt --all
The server build runs build.rs, which builds ui/ for wasm32-unknown-unknown
and embeds the generated assets; there is no separate UI packaging step. See
README.md for setup and run instructions.
Project Context
src/main.rshosts the Axum API and simulation thread;src/world.rsowns world behavior and snapshots;src/storage.rspersists snapshots.config.rndefines the Rune simulation defaults and agent behavior. Runtime script edits are not written back to this file; see the README before changing reset or persistence behavior.ui/is the Leptos/Wasm frontend. Keep its API/model changes aligned with the server payloads insrc/main.rs.
Conventions
- Comment only code that needs clarification.
- Warnings are treated as errors (
-D warnings). - After Rust changes, run
cargo fmt --all; formatting is not needed for documentation-only changes.