Skip to content

S44 deps: triage the 5 open Dependabot PRs — #253 breaks the tokio hold - #255

Open
hyperxpro wants to merge 1 commit into
mainfrom
s44-deps-triage
Open

S44 deps: triage the 5 open Dependabot PRs — #253 breaks the tokio hold#255
hyperxpro wants to merge 1 commit into
mainfrom
s44-deps-triage

Conversation

@hyperxpro

Copy link
Copy Markdown
Member

Documentation only — no source or gate changes. Versions checked against crates.io, not against the handoff's numbers.

Headline: #253 must not merge as-is, and CI would not catch why

PR #253 (21-crate group) widens the workspace constraint and crosses the tokio hold:

-tokio = { version = ">=1.51, <1.52", features = ["full"] }
+tokio = { version = ">=1.51, <1.54", features = ["full"] }
 name = "tokio"
-version = "1.51.1"
+version = "1.53.1"

That <1.52 bound is the guard rail for the measured ~10× H2→H3 relay throughput collapse on 1.52.x (CF-S37-D-TOKIO-1.52-RELAY).

The dangerous part is that CI would go green. The regression is a throughput collapse; there is no perf gate among the 16 CI jobs, and the canary (h2h3_fcap1 ~30 MiB stall) only appears in the perf/soak lane, which does not run per-PR.

#253 currently fails for an unrelated reason — a genuine aya 0.14 breaking change:

error[E0432]: unresolved import `aya::programs::XdpFlags`
error[E0061]: this method takes 2 arguments but 1 argument was supplied

So if someone fixed only the compile error, a 10× relay regression would ship behind a full green checkmark.

Recommend: close #253, re-open split with tokio excluded, and add a Dependabot ignore rule for tokio so automation cannot widen the bound again. The hold has survived since S37 on discipline alone.

Most of the other red is STALE — measured, not assumed

PR base behind main S43 fixes in base? reds
#253 e9df7cca 1 yes REAL
#251 1a4e4fae 5 no stale
#246 1a4e4fae 5 no stale
#238 ffac8705 9 no stale
#237 ffac8705 9 no stale

The stale reds are exactly the three S43 closed (both RUSTSEC advisories, the nightly fetch_update fuzz break) plus the Coverage coin flip that #254 corrects. Rebase before reading any of these verdicts — their current results carry no information about the bumps themselves.

quiche

Both quiche PRs target the stale 0.29.2 when 0.29.3 is out. Recommend closing both for a single 0.29.1 → 0.29.3 bump covering the workspace and /fuzz, gated on h3spec staying at 12 named waivers — S31 showed a quiche bump can move h3spec.

hyper

hyper 1.11.0 is deliberately not treated as a routine bump here. It is the CF-S27-2 WS-H2 un-gate and needs its own session with the S30 repro, R8/R13 evidence, and h2spec 146/1/0 as a hard blocker.

Full detail, including recommended sequencing: audit/ci/s44-deps-triage.md.

…ld and CI cannot catch it

Versions checked against crates.io, not against the handoff's numbers.

The important finding is #253 (21-crate group). It widens the workspace
constraint from `tokio = ">=1.51, <1.52"` to `"<1.54"` and moves the lock from
1.51.1 to 1.53.1, crossing the boundary the hold exists to defend. That bound
is the guard rail for the measured ~10x H2->H3 relay throughput collapse on
1.52.x (CF-S37-D-TOKIO-1.52-RELAY).

The dangerous part is that CI would go GREEN. The regression is a throughput
collapse, there is no perf gate among the 16 CI jobs, and the canary
(h2h3_fcap1 ~30MiB stall) only appears in the perf/soak lane, which does not
run per-PR. #253 currently fails for an unrelated reason -- a genuine aya
0.14 breaking change (E0432 unresolved import aya::programs::XdpFlags, E0061
arity) -- so if someone fixed only the compile error, a 10x relay regression
would ship behind a full green checkmark.

Recommend closing #253 and re-opening it split, with tokio excluded, plus a
Dependabot ignore rule for tokio so automation cannot widen the bound again.
The hold has survived since S37 on discipline alone.

Also measured: four of the five PRs are based on pre-S43 commits (5 to 9
behind main), so their reds are STALE -- they are the same three S43 already
closed (the two RUSTSEC advisories and the nightly fetch_update fuzz break)
plus the Coverage coin flip that PR #254 corrects. Their current check results
carry no information about the bumps themselves; rebase before reading them.

Both quiche PRs (#238, #237) target the stale 0.29.2 when 0.29.3 is out;
recommend closing both for a single 0.29.1 -> 0.29.3 bump covering the
workspace and /fuzz together, gated on h3spec staying at 12 named waivers
(S31 showed a quiche bump can move h3spec).

hyper 1.11.0 is deliberately NOT treated as a routine bump here -- it is the
CF-S27-2 WS-H2 un-gate and needs its own session with the S30 repro, R8/R13
evidence, and h2spec 146/1/0 as a hard blocker.
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