swarm repositories / source
aboutsummaryrefslogtreecommitdiff
path: root/skills/rust-bootstrap
diff options
context:
space:
mode:
authormain <main@swarm.moe>2026-06-14 23:49:59 -0400
committermain <main@swarm.moe>2026-06-14 23:49:59 -0400
commitf9f897b32cad3bf10fcc06774887254922eaea74 (patch)
treef90d4800c379a6c20371a05d550c6439c3984df2 /skills/rust-bootstrap
parent4735637ead09c4e8d4b9a0409d7ea2538eb9cb40 (diff)
downloadrust_starter-main.zip
Scrub hardcoded Rust toolchain defaultsHEADmain
Teach rust-bootstrap to use the latest system Rust toolchain, derive rust-version only from active rustc when needed, and initialize Git before applying the fresh template in an empty directory.
Diffstat (limited to 'skills/rust-bootstrap')
-rw-r--r--skills/rust-bootstrap/SKILL.md9
1 files changed, 8 insertions, 1 deletions
diff --git a/skills/rust-bootstrap/SKILL.md b/skills/rust-bootstrap/SKILL.md
index e29e1c6..a77c7ce 100644
--- a/skills/rust-bootstrap/SKILL.md
+++ b/skills/rust-bootstrap/SKILL.md
@@ -15,6 +15,9 @@ Then choose exactly one surface.
Use this when the target repo is blank or when you are setting up Rust linting from scratch.
+If the target directory is empty and is not already inside a Git worktree, run
+`git init` before applying the template.
+
Read:
- [docs/bootstrap-fresh.md](/home/main/programming/projects/rust_starter/docs/bootstrap-fresh.md)
@@ -23,8 +26,10 @@ Read:
Apply the template deliberately:
-- replace placeholder members, names, and version/toolchain values
+- replace placeholder members and names
- replace the placeholder Cargo target-dir slug in `.cargo/config.toml`
+- use the latest system Rust toolchain; never choose or copy a hardcoded Rust version from the starter
+- if the target records `rust-version`, derive it from the active system `rustc --version`
- keep repo-wide policy in root `Cargo.toml`
- keep Cargo target-dir policy in project-local `.cargo/config.toml`, not runner flags
- keep `clippy.toml` tiny or delete it
@@ -47,6 +52,7 @@ Retrofit is diff-aware ratchet work:
- do not paste the fresh template wholesale
- preserve stricter local policy
- preserve justified local exceptions
+- use the latest system Rust toolchain unless the target repo has an explicit external MSRV constraint
- move duplicated script or CI flags into manifest-owned policy
- delete duplicate policy copies only after the manifest is authoritative
- add or preserve a target `AGENTS.md` link to the canonical Rust style doctrine
@@ -55,6 +61,7 @@ Retrofit is diff-aware ratchet work:
## Guardrails
- Re-open the repo docs when details matter; do not rely on memory.
+- Never infer a Rust version from these docs or templates; inspect the active system toolchain.
- Install style inheritance through target `AGENTS.md`; do not assume future agents will remember this skill.
- Install Cargo target-dir posture through target `.cargo/config.toml`; do not rely on wrappers or mutate global Cargo config.
- Use [docs/rust-linting-proposal.md](/home/main/programming/projects/rust_starter/docs/rust-linting-proposal.md) for rationale, not as a paste target.