chore: take h2 0.4.19 for RUSTSEC-2026-0258, and two documentation fixes #4
No reviewers
Labels
No labels
waiting-on-julian
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
jlxq0/hevy-mcp!4
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "chore/h2-advisory-and-docs"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
cargo auditis a CI gate and it has been failing since the advisory publishedon 2026-08-17 — the same day this repository's last commit landed, so no CI run
has ever seen it.
h2>=0.4.16Lockfile only.
Cargo.tomlis untouched andh2stays transitive.Exposure, measured rather than assumed
h2reaches this tree three ways:reqwestfor the outbound Hevy calls,tonicfor OTLP export, and whatever
axum::servenegotiates inbound. The inbound pathis the one that would matter, and it is not open. Against the running pod, port
3000, port-forwarded:
The process does not answer h2c. The edge terminates HTTP/2 —
curl -w '%{http_version}' https://hevy-mcp.oddie.app/healthreports2— andspeaks HTTP/1 to us. What remains is a hostile or compromised server we call
outbound, which is narrower than the advisory reads on its own.
The gate is red either way, and a red gate blocks every other change, which is
why this is not deferred on the strength of the exposure being narrow.
Two documentation fixes that need no code
AGENTS.md's session protocol told every agent to readPlan.mdfirst.There is no
Plan.mdand there should not be one: anything with a state belongsin a Forgejo issue, where in a year it still says what was asked, what was
argued, what was decided and which commits did it. A file has no state, so
status written into one is always wrong. The line is replaced with the rule
rather than deleted, so that the next reader does not helpfully create the file.
CLAUDE.mddid not exist. It is one line,@AGENTS.md. Both Claude andCodex read
AGENTS.md; two instruction files means two copies and one of themwrong.
Verification
All five gates on 1.98.0, the version
ci.ymlpins as of #2, run in theworkflow's own order:
cargo +1.93.0 check --all-features --lockedpasses, so the build floor isunmoved.