sandcastle: populate CODING_STANDARDS.md (Rust, evie-specific) #12
Labels
No labels
in-review
ready-for-agent
ready-for-human
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
weiwen/evie#12
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Blocked by: #9, #10
Why
.sandcastle/CODING_STANDARDS.mdis loaded by the reviewer agent (@.sandcastle/CODING_STANDARDS.md) but is still the empty template — and its examples are JS/TS (camelCase, "named exports"), actively misleading for a Rust codebase.Design decisions (settled)
review-prompt.mdalready carries generic craft guidance (nesting, ternaries, redundancy, security). This file must NOT repeat it — only evie-specific, opinionated rules grounded insrc/.clippy/rustfmtenforce.What to write
Rewrite the file with these sections:
nix develop .#ci -c just check; fmt/clippy/test failures are findings. Don't hand-review anything a linter owns.anyhow::Result+.context()on app/binary paths;thiserrorenums (SessionError,ApiError) only at interface surfaces callers match on. No new error enum whereanyhowsuffices.CONTEXT.md(Session, Chat ID, Stream Buffer, …) and avoid the listed synonyms. Link toCONTEXT.md; do not restate it.README.md, andCONTEXT.mdin the same change.CONTEXT.md's architecture map assigns to that concern; keep pure logic (e.g.markdown.rs) pure andpub(super).2bacb57 refactor: extract RPC parser for testability). The exemption is not a license to leave untestable logic in handlers..awaitinSessionManager.Keep it short and high-signal. Every rule must be checkable against a diff.
Acceptance criteria
review-prompt.md's generic guidance.Note
Depends on #10 (so
just checkexists) and #9; only fully real once #11 rebuilds the image. The doc can be authored ahead of the image rebuild.