Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions backend/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ backend/
## Workflow

- Use `just backend::<recipe>` from the repository root. Before completing backend changes, run `format`, `clippy`, `test` and `build`.
- Development builds carry line tables only; use the `debugging` Cargo profile when you need full debug symbols.
- Follow [`dev/AGENTS.md`](../dev/AGENTS.md) for the development stack, the workspace environment and `DOTCORE_BACKEND_RUN_MODE`. Composition owns the `DOTCORE_*` variables the backend reads; `dev/workspace-environment.mjs` derives them.
- Every crate is published to crates.io, and each one must build from its own package: no build input outside its folder. `proto/dotcore` is a link to the repository's contracts for that reason; keep it a link. A new workspace crate:
- inherits the shared package fields (`version`, `license`, `repository`, `homepage`, `readme`) with `.workspace = true`, and gets a `[workspace.dependencies]` entry with its version
Expand Down
8 changes: 8 additions & 0 deletions backend/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -57,3 +57,11 @@ tracing-appender = "0.2.5"
tracing-subscriber = "0.3.23"
url = "2.5.8"
x509-parser = "0.18.0"

# Line tables only to keep target dirs small; `debugging` has full symbols.
[profile.dev]
debug = "line-tables-only"

[profile.debugging]
inherits = "dev"
debug = true
6 changes: 3 additions & 3 deletions backend/Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,9 @@ gate-hardware-coverage:
fi
echo "hardware coverage gate: OK ($(wc -l < "$dir/hw_ignored" | tr -d ' ') hardware tests, $(wc -l < "$dir/allow" | tr -d ' ') marked non-hardware ignored tests)"

# Build all backend workspace packages with locked dependencies.
build:
cargo build --locked --workspace
# Build all backend workspace packages with locked dependencies; extra arguments go to Cargo, such as a profile.
build *args:
cargo build --locked --workspace "$@"

# Remove Rust build output.
clean:
Expand Down