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
22 changes: 15 additions & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,30 @@ green run here and a green run there are the same run:
cargo build --locked --all-targets
cargo test --locked

A fresh clone needs a Rust toolchain and a network. The manifest declares a
dependency, so the first build fetches before it compiles, and `--locked` is what
makes that restore refuse to rewrite `Cargo.lock` rather than doing it quietly.
It is in both commands for that reason. What is declared, and what it reaches, is
read rather than written here:
A fresh clone needs a Rust toolchain and a network. The manifest declares
dependencies, so the first build fetches before it compiles, and `--locked` is
what makes that restore refuse to rewrite `Cargo.lock` rather than doing it
quietly. It is in both commands for that reason. What is declared, and what it
reaches, is read rather than written here:

cargo tree -e normal

THIS PARAGRAPH SAID A FRESH CLONE NEEDED THE TOOLCHAIN AND NOTHING ELSE, ON THE
GROUND THAT THE MANIFEST DECLARED NO DEPENDENCIES. It declares one, and the
GROUND THAT THE MANIFEST DECLARED NO DEPENDENCIES. It declares some, and the
sentence saying what `--locked` would be for when that changed was left standing
above the sentence it was about, so this file went on promising that nothing is
fetched. `README.md` carries the correction already and this one did not, which
fetched. `README.md` carried the correction already and this one did not, which
is the same drift the section below names for the two commands, one paragraph
earlier and in the file that names it.

THE COUNT THAT REPLACED THE NONE WENT STALE THE WEEK AFTER IT LANDED, AND THERE
IS NO NUMBER HERE NOW. It said one. A second entry arrived on 2026-09-04 with
`docs/decisions/0292-the-means-the-core-speaks-http-with.md`, in a change about
how the core speaks HTTP that had no reason to open this paragraph, and both
this file and `README.md` went on saying one. A number here is read by nothing
that would have said so, so the count is deleted rather than corrected a second
time, and the command above is what answers it.

The toolchain version is pinned in `rust-toolchain.toml`, in one place, and no
workflow carries a copy of the number. The toolchain manager reads that file
itself, so a fresh clone compiles with the pinned version without being told to
Expand Down
16 changes: 12 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,25 @@ that depends on it exists.
## Building it

A fresh clone needs a Rust toolchain and a network. `cargo`, the formatter and
the analyser all arrive with the toolchain, and the manifest declares one
dependency, which is fetched on the first build.
the analyser all arrive with the toolchain, and what the manifest declares is
fetched before the first build compiles.

THIS PARAGRAPH SAID THERE WAS NOTHING TO FETCH AND THAT THE MANIFEST DECLARED
NONE. Both stopped being true when the cache key derivation landed:
[0041](docs/decisions/0041-how-a-cache-key-is-built.md) requires a cryptographic
digest, [0011](docs/decisions/0011-the-language-the-toolchain-and-the-binding-layer.md)
measures that the toolchain offers none, and
[0103](docs/decisions/0103-what-admits-a-dependency-and-what-is-refused.md) is
the rule that admitted one. What is there, and what it reaches, is read rather
than written here:
the rule that admitted the first entry.

THE COUNT THAT REPLACED THE NONE WENT STALE ON THE NEXT ENTRY, WHICH IS WHY
THERE IS NO NUMBER HERE NOW. It said one. A second entry arrived on 2026-09-04
with [0292](docs/decisions/0292-the-means-the-core-speaks-http-with.md), which
decides the means the core speaks HTTP with and had no reason to open this
paragraph, and the sentence above went on saying one until somebody read it
against the manifest. A number in this file is read by nothing that would have
said so, so the count is gone rather than corrected a second time. What is
there, and what it reaches, is read rather than written here:

cargo tree -e normal

Expand Down
Loading