- mirror go-standards: structure, linters/formatters, tests, commits/MR, pre-MR checklist - ecosystem defaults (clippy/rustfmt, eslint/prettier/tsc, ruff/mypy/pytest); company specifics marked TODO - verified all four *-standards skills load via pi RPC get_commands
3.1 KiB
3.1 KiB
name, description
| name | description |
|---|---|
| rust-standards | Используй при написании, ревью и проверке кода на Rust в наших сервисах — структура crate/workspace, запуск clippy/rustfmt, тесты, формат коммитов и merge request. Применяй всегда, когда пишешь или правишь Rust-код, готовишь MR, а также в командах /bugfix, /feature и /review для Rust-репозиториев. |
Стандарты Rust
Один из наших языков — Rust. Ниже — общепринятые дефолты экосистемы; специфичное для
компании помечено TODO — уточняй, не выдумывай.
Структура
Ориентир (уточняется под компанию):
Cargo.toml # crate или [workspace]
src/
main.rs / lib.rs
<module>/
tests/ # интеграционные тесты
benches/ # бенчмарки (если есть)
Линтеры и форматирование
- Форматирование:
cargo fmt --all(проверка в CI —cargo fmt --all -- --check). - Линтер: clippy —
cargo clippy --all-targets --all-features -- -D warnings. Настройки — вclippy.toml/ атрибутах crate.
Тесты
- Прогон:
cargo test --all-features. - Для workspace:
cargo test --workspace. - Требования к покрытию / обязательные виды тестов:
<!-- TODO -->.
Сборка и зависимости
- Сборка:
cargo build(релиз —cargo build --release). - Аудит зависимостей:
cargo audit(если подключён). Cargo.lockкоммитим для бинарников/сервисов.
Коммиты и MR
- Формат коммитов:
<!-- TODO: например Conventional Commits или свой -->. - MR обязателен (см. корпоративные правила из контекста сессии). Прямой push в защищённые
ветки запрещён — расширение
permission-gateдополнительно переспросит. - Перед MR:
cargo fmt --check,cargo clippy -D warnings,cargo test— всё зелёное. - Описание MR: что и зачем, как проверено, ссылка на тикет (скилл
jira-workflow).
Чек-лист перед MR
cargo fmt --all -- --checkчистоcargo clippy --all-targets --all-features -- -D warningsчистоcargo testзелёные- есть тесты на новую логику / фикс
- нет секретов и закоммиченных
.env - описание MR со ссылкой на тикет