Skip to content

fix: bump go-jose to v4.1.6 in frpc build and clear operator staticcheck - #814

Merged
ValgulNecron merged 2 commits into
masterfrom
fix/go-jose-4.1.6
Oct 30, 2026
Merged

ValgulNecron merged 2 commits into
masterfrom
fix/go-jose-4.1.6

Conversation

@ValgulNecron

@ValgulNecron ValgulNecron commented Oct 29, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Master currently fails two checks, and this PR fixes both.

1. vuln (images): go-jose v4.1.4 in frpc

The only finding comes from the tunnel-frp image:

usr/local/bin/frpc (gobinary)
github.com/go-jose/go-jose/v4 │ CVE-2026-116587 │ HIGH │ fixed │ v4.1.4 │ 4.1.6 │ Go JOSE: DoS when parsing JWKs that contain RSA keys
✗ fixed HIGH/CRITICAL vulnerabilities (or a scan error) in 1 of 12 scan(s): gameplane-test/tunnel-frp:e2e

Source: master run 40869672773 (b07e4d4). PR #768 fails with the same lines. The other 11 images scan clean.

tunnel/Dockerfile.frp builds frpc from tunnel/frpc/go.mod, and that file still pinned go-jose v4.1.4. #811 bumped only the operator, and api and operator were already on v4.1.6.

  • tunnel/frpc/go.mod: github.com/go-jose/go-jose/v4 goes from v4.1.4 to v4.1.6.
  • tunnel/frpc/go.sum: adds the v4.1.6 hashes and drops the v4.1.4 ones. go mod tidy can't run on this module because it has no .go files, so tidy would empty the require block.

2. lint (operator): staticcheck SA1019

operator/internal/controller/restore_lifecycle.go:296:25: SA1019: (sigs.k8s.io/controller-runtime.Result).Requeue is deprecated: Use `RequeueAfter` instead. (staticcheck)

This line was red on master from the moment #760 merged (7affd86). The fix replaces ctrl.Result{Requeue: true} with ctrl.Result{RequeueAfter: time.Nanosecond}, the same form the matching progressed branch in restore_controller.go:199-200 already uses.

Verification

  • frpc built locally exactly as the Dockerfile builds it (GOFLAGS=-mod=readonly go build -tags frpc,noweb github.com/fatedier/frp/cmd/frpc). go version -m shows dep github.com/go-jose/go-jose/v4 v4.1.6.
  • go build ./... and go vet ./internal/controller/ pass in operator/.
  • CI makes the final call.

🤖 Generated with Claude Code

The vuln (images) Trivy scan fails on master and every PR: the frpc
binary in the tunnel-frp image embeds github.com/go-jose/go-jose/v4
v4.1.4 (CVE-2026-116587, HIGH, fixed in 4.1.6). #811 only bumped the
operator; tunnel/frpc/go.mod still pinned 4.1.4.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Claude <noreply@anthropic.com>
@ValgulNecron ValgulNecron added area: optional-components sentinel, capture-sidecar, mcp-server, tunnel, audit-syslog-bridge, telemetry-receiver type: security Security hardening or vulnerability fix labels Oct 29, 2026 — with Claude
@coderabbitai

coderabbitai Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 12 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
Commits

Reviewing files that changed from the base of the PR and between b07e4d4 and 906f4d7.

Files ignored due to path filters: 1
  • tunnel/frpc/go.sum is excluded by !**/*.sum
Files selected for processing: 2
  • operator/internal/controller/restore_lifecycle.go
  • tunnel/frpc/go.mod
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@ValgulNecron ValgulNecron self-assigned this Oct 29, 2026

Copy link
Copy Markdown
Collaborator Author

lint (operator) fails here, but the cause isn't this PR. This PR changes only tunnel/frpc/go.mod and go.sum.

The error matches master's run 40869672773 line for line:

operator/internal/controller/restore_lifecycle.go:296:25: SA1019: (sigs.k8s.io/controller-runtime.Result).Requeue is deprecated: Use `RequeueAfter` instead. (staticcheck)

It came in with 7affd86 (merged in #760). No open PR fixes it yet. The proposed fix matches the pattern restore_controller.go:199-200 already uses:

-	return ctrl.Result{Requeue: true}, nil
+	return ctrl.Result{RequeueAfter: time.Nanosecond}, nil

I haven't applied it because it's a production code change outside this PR's scope, so it waits on the maintainer's call.


Generated by Claude Code

staticcheck SA1019 fails lint (operator) on master since #760: use
RequeueAfter: time.Nanosecond, matching restore_controller.go.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Claude <noreply@anthropic.com>
@ValgulNecron ValgulNecron added area: operator controller-runtime operator and CRDs type: fix Bug fix labels Oct 29, 2026 — with Claude
@ValgulNecron ValgulNecron changed the title fix(tunnel): bump go-jose to v4.1.6 in frpc build fix: bump go-jose to v4.1.6 in frpc build and clear operator staticcheck Oct 29, 2026
@github-actions

github-actions Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

CI Report - 906f4d7

run 40973833978 - attempt 2

0 failed - 24 passed - 9 skipped - unknown elapsed

Test selection: partial - per-suite table

Coverage

no coverage/* commit statuses found on 906f4d7

Changed

Area Files +/-
tunnel/ 2 +3/-3
operator/ 1 +1/-1

Slowest jobs

no job duration data available

e2e buckets run

bot-fast

@ValgulNecron
ValgulNecron merged commit 0becf8e into master Oct 30, 2026
219 of 220 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: operator controller-runtime operator and CRDs area: optional-components sentinel, capture-sidecar, mcp-server, tunnel, audit-syslog-bridge, telemetry-receiver type: fix Bug fix type: security Security hardening or vulnerability fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants