diff options
| author | main <main@swarm.moe> | 2026-06-14 23:49:59 -0400 |
|---|---|---|
| committer | main <main@swarm.moe> | 2026-06-14 23:49:59 -0400 |
| commit | f9f897b32cad3bf10fcc06774887254922eaea74 (patch) | |
| tree | f90d4800c379a6c20371a05d550c6439c3984df2 /docs/bootstrap-retrofit.md | |
| parent | 4735637ead09c4e8d4b9a0409d7ea2538eb9cb40 (diff) | |
| download | rust_starter-f9f897b32cad3bf10fcc06774887254922eaea74.zip | |
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 'docs/bootstrap-retrofit.md')
| -rw-r--r-- | docs/bootstrap-retrofit.md | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/docs/bootstrap-retrofit.md b/docs/bootstrap-retrofit.md index c099e5f..f9cc38c 100644 --- a/docs/bootstrap-retrofit.md +++ b/docs/bootstrap-retrofit.md @@ -11,6 +11,7 @@ Migrate the repo toward the `rust-starter` posture while staying diff-aware: - preserve justified local carve-outs - delete duplicated policy only after it has been re-homed into the manifest - never paste the fresh template wholesale over a living repo +- move stale hardcoded Rust versions toward the latest system toolchain unless an explicit external MSRV constraint forbids it - add or preserve project-local Cargo target-dir config under `/data/main/cargo-target/<project-slug>` - add a hard source-file line cap without erasing stricter local limits or justified generated-code exemptions @@ -26,6 +27,7 @@ Before editing, inspect all of the places the repo may already encode lint polic - any existing auto-fix or canonicalization commands - `clippy.toml` - `rust-toolchain.toml` +- active `rustc --version` and `cargo --version` - editor settings - existing oversized source files, checked-in generated code, and any current file-length checks @@ -94,9 +96,15 @@ Do not overwrite local agent instructions; merge the doctrine link into them. This is intentionally infectious. Future agents should read the Rust style doctrine by entering the target repo, not only by invoking this bootstrap skill. -### 2. Pin or refresh the toolchain +### 2. Use the latest system Rust toolchain -Add `rust-toolchain.toml` if missing. If present but floating, pin it. +Inspect the active system `rustc --version` and `cargo --version`. Do not paste +a Rust version from this starter and do not preserve a stale numeric toolchain +pin unless the target repo has an explicit external MSRV or compatibility +constraint. + +If the target records `rust-version`, derive it from the active system `rustc` +unless that explicit constraint says otherwise. ### 3. Install project-local Cargo target config @@ -191,6 +199,7 @@ If the repo wants CI to detect canonicalization drift rather than rewriting file - every member crate inherits that policy explicitly - scripts and CI no longer restate Clippy allowlists - scripts, CI, and manifest-owned command vectors do not pass `--target-dir` +- the target uses the latest system Rust toolchain unless an explicit external MSRV or compatibility constraint says otherwise - manifest-owned canonicalization exists where the repo wants auto-fixes, instead of living in shell aliases or tribal memory - valid repo-specific exceptions remain intact and justified - stricter pre-existing rules remain stricter |