Repository navigation
fix(deps): security sweep — grpc x3 advisories + otel family lockstep (dependabot #89/#90/#91/#88) - #885
fix(deps): security sweep — grpc x3 advisories + otel family lockstep (dependabot #89/#90/#91/#88)#885Amperstrand wants to merge 1 commit into
Conversation
|
Full-tree |
|
Nominated to the v0.6.0 release scope (#909). If the scope holds, this is on the critical path for final — review priority requested. Deferred PRs: no action needed; the scope issue lists you for 0.6.1+. |
Amperstrand
left a comment
There was a problem hiding this comment.
Batch-2 (orchestrator sprint): clears all four remaining dependabot alerts (the repo's LAST open security alerts). The otel family-lockstep fix (stranded v1.30 → uniform v1.47) is the right resolution, not just version-bumping. Merge-ready — release-blocker class (security).
|
Verification run (agent lane, 2026-10-13): worktree @ b700f41, baseline main @ 27baf22.
Pattern: the sweep bumped root + src + scripts/token-recovery but not the nested cli/merchant/tollwallet go.mod files (tollwallet also kept grpc-gateway v2.29.0). release-check runs this gate — it blocks as-is. Fix: apply the same bumps across the nested modules (per-module |
token-recovery: grpc v1.82.1 -> v1.83.1 clears the two high advisories (xDS DoS crash, HTTP/2 DATA-frame OOM) and the medium xDS RBAC bypass (dependabot #89/#90/#91). src: the OpenTelemetry graph resolved a stale mixed family — otlptracegrpc stranded at v1.30 against everything else at v1.47 (otel requires family lockstep) — which is the graph dependabot flagged for the otlptrace URL-leak advisory (#88). Aligned uniform at v1.47.0; the same resolution swept src's grpc to v1.83.2. Verified per-module with the pinned toolchain (go 1.26.8): build, vet, and tests green (token-recovery carries no test files; src root suite 23 s). Full-tree battery follows on the PR.
|
Rebased onto current main (was CONFLICTING in |
b700f41 to
b89a473
Compare
Local CI gate — PR #885: fix(deps): security sweep — grpc x3 advisories + otel family lockstep (dependabot #89/#90/#91/#88)Run of
Verdict: 2 leg(s) RED — 4 green. What this gate does not run (no vacuous green)
failing-leg log tailscontract-fences — tailgo-battery — tail |
Evidence review — verified, with the fence red attributedVerified at head: both touched graphs build clean (token-recovery + src). The deps-sync fence red at head is main's standing 8-class drift, not this PR — proven by running the fence on plain origin/main (same DEPENDENCY DRIFT banner; that's #1034's open work). No gonuts pins touched, so the one-pin protocol is unaffected (correctly stated). The otel fix is the quiet win: the stranded v1.30 |
What
Clears all four open dependabot alerts on :
scripts/token-recovery:google.golang.org/grpcv1.82.1 → v1.83.1— inside the ranges of both high advisories (xDS DoS via crash; HTTP/2 DATA-frame OOM) and the medium one (xDS RBAC mixed-case header bypass). One bump clears all three (Feature/wifiscan #91/fix: execute UCI defaults and reload services in postinst #90/Add build-matrix targets for Archer C20 and GL-MT1300 (Beryl) #89).src: the OpenTelemetry graph was a stale mixed family —otlptracegrpcstranded at v1.30 while the rest resolved v1.47 (otel requires family lockstep, so this was already a latent bug) — and that mixed graph is what dependabot flagged for the otlptrace endpoint-URL-leak advisory (Router-to-router autopay implicitly depends on nodogsplash client registration — breaks protocol compatibility #88). Now uniform at v1.47.0; the same resolution sweptsrc's own grpc to v1.83.2 (newer than required).No gonuts-fork pins touched — this PR does not interact with the one-pin-everywhere protocol (#798).
Verification (pinned toolchain go 1.26.8, GOTOOLCHAIN=local)
scripts/token-recovery: build + vet clean (carries no test files).src: build + vet clean; root suite green (23 s,-tags testenv).make go-batteryrunning — results will be posted on this PR.Risk
Low. Both bumps are indirect/runtime dependencies with no API surface changes at call sites; token-recovery is an offline operator tool (no router deployment path), and src's grpc/otel ride the telemetry exporter chain, not the payment paths. The otel alignment fixes a latent version-skew rather than introducing one.