Skip to content

Decide the means the core speaks HTTP with: the protocol crate, not a client (#292) - #295

Closed
iderex wants to merge 1 commit into
mainfrom
the-means-the-core-speaks-http-with-292
Closed

Decide the means the core speaks HTTP with: the protocol crate, not a client (#292)#295
iderex wants to merge 1 commit into
mainfrom
the-means-the-core-speaks-http-with-292

Conversation

@iderex

@iderex iderex commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Superseded by #296.

This pull request carried commit db06b26 without the Signed-off-by trailer that the DCO sign-off check requires, and that check refused it. Adding the trailer rewrites the commit, and a pushed branch is never rewritten here, so the corrected commit was pushed under a new branch name and #296 carries it with the same body and the same tree. Nothing else was wrong with this change, and nothing from it is lost. This body carried the full evidence before this edit; it now lives on #296.

#292 is the issue, and it is closed by #296 rather than by this one.

… client (#292)

Record 0292 decides that the core writes and reads HTTP/1.1 through
`ureq-proto`, taken with `default-features = false` and the `client`
feature alone, driven over a socket the core opens and the TLS stream 0243
decided. The manifest carries the entry with the clause of 0103 that admits
it and the condition that retires it, the lockfile carries the seven
packages it resolves to, and the index in `docs/decisions/README.md` names
the record.

What goes wrong without it: the socket #27 writes is written against the
first package that compiles, and the first package that compiles for HTTP
in this ecosystem is a client. A client holds 0027's bounds as its own
settings on a clock 0102's injected source cannot reach, adds a proxy read
from the environment to the destinations 0069 fixed, and drops a cancelled
body instead of reading it to 0027's bound. None of those reversals reddens
a gate here, because the invariants register reads `src/` and judges no
dependency, so the record is the only place the reversal is refused.

I re-took every count in the record with `--locked` in the scratch crates
the readings came from and they reproduce to the package, and I re-ran
every source reading against the vendored and registry sources at the
versions named. Build, test, lint, format, invariants, decision-records,
statements, doc-paths, fixture-scrub, dependencies and all seven target
triples pass on this tree; the thread-detector leg cannot link on this
machine and is the runner's verdict alone.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant