Skip to content

fix(deps): fix replace directives overriding patched OTEL versions#17

Open
aa-replicated wants to merge 2 commits intomainfrom
fix/otel-replace-directive-vulnerabilities
Open

fix(deps): fix replace directives overriding patched OTEL versions#17
aa-replicated wants to merge 2 commits intomainfrom
fix/otel-replace-directive-vulnerabilities

Conversation

@aa-replicated
Copy link
Copy Markdown
Contributor

@aa-replicated aa-replicated commented Apr 15, 2026

Summary

Update to the recent dependabot PR fixes. Cursorbot reported that some vulnerabilities may not have been fixed. this follow up aims to patch them.

  • Fixed replace directives in replicated/go.mod and onepassword/go.mod that were overriding the patched v0.19.0 OTEL log package versions with vulnerable older versions
  • Addresses Cursor Bugbot findings from PR fix(deps): resolve all open Dependabot security vulnerabilities #16: OTLP HTTP exporter packages remaining vulnerable due to replace directives winning over require declarations
  • Updated otlploggrpc, otlploghttp, otel/log, and otel/sdk/log replace pins from v0.16.0/pre-release to v0.19.0 (patched for CVE-2026-39882)

Root Cause

Go replace directives take unconditional precedence over require entries. Both go.mod files declared v0.19.0 in require, but had replace blocks pointing to older vulnerable versions — meaning v0.16.0 was actually used at build time.

Test plan

  • Verify go mod tidy completes cleanly in both replicated/ and onepassword/
  • Confirm no remaining references to pre-v0.19.0 OTEL log packages via go list -m all

🤖 Generated with Claude Code

aa-replicated and others added 2 commits April 13, 2026 21:25
- google.golang.org/grpc: v1.71.0 → v1.80.0 (fixes critical CVE: authorization bypass via missing leading slash in :path)
- go.opentelemetry.io/otel/sdk: v1.34.0 → v1.43.0 (fixes high CVEs: PATH hijacking / arbitrary code execution)
- go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp: v1.32.0 → v1.43.0 (fixes medium CVE: unbounded HTTP response body reads)
- go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp: v0.8.0 → v0.19.0 (fixes medium CVE: unbounded HTTP response body reads)
- go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp: v1.32.0 → v1.43.0 (fixes medium CVE: unbounded HTTP response body reads)

Also removes stale replace directives that were pinning otel log packages to v0.8.0,
and updates all related otel packages to consistent v1.43.0 / v0.19.0 versions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The replace directives in replicated/go.mod and onepassword/go.mod were
pinning otlploggrpc, otlploghttp, otel/log, and otel/sdk/log to old
vulnerable versions (v0.16.0 / pre-release), overriding the patched
v0.19.0 entries in the require blocks. Go replace directives take
precedence over require, so the vulnerable versions were being used
despite the require block listing the correct patched versions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@aa-replicated aa-replicated requested a review from emosbaugh April 15, 2026 00:06
@emosbaugh
Copy link
Copy Markdown
Member

emosbaugh commented Apr 15, 2026

Dagger is prescriptive about its dependencies. We have to wait for this to be patched in the dagger project.

Copy link
Copy Markdown
Member

@emosbaugh emosbaugh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The correct way to upgrade dagger dependencies from my understanding is to upgrade dagger (i use brew) and then to run dagger develop since as soon as you run dagger develop any manual updates to the go.mod are reverted.

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.

2 participants