Skip to content

deps: bump knative.dev/pkg to fix OTel schema URL conflict panic - #2044

Merged
cpanato merged 1 commit into
sigstore:mainfrom
cpanato:fix-knative-otel-semconv
Nov 9, 2026
Merged

cpanato merged 1 commit into
sigstore:mainfrom
cpanato:fix-knative-otel-semconv

Conversation

@cpanato

@cpanato cpanato commented Nov 9, 2026

Copy link
Copy Markdown
Member

Xref: #2018 #2019 #2020 #2021 #2042

Summary

Bumping go.opentelemetry.io/otel/sdk past v1.44 makes the policy-controller webhook crash on startup, which is why every e2e job fails on the open otel and minor-patch dependabot PRs:

panic: conflicting Schema URL: https://opentelemetry.io/schemas/1.43.0 and https://opentelemetry.io/schemas/1.41.0
knative.dev/pkg/observability/resource.Default (default.go:66)

The pinned knative.dev/pkg merges its resource using semconv v1.41.0, while newer otel SDKs use v1.43.0. knative.dev/pkg main has moved to semconv v1.43.0, so this bumps it. That also pulls otel to v1.47.0 and k8s to v0.36.5.

The new knative.dev/pkg marks ConditionManager.MarkFalse as printf-like, so go vet/lint flag passing msg as the format string. Those calls now use "%s", msg, which also stops a % in an error message from being mangled.

Testing

  • resource.Default(...) no longer panics and returns schema 1.43.0.
  • go build ./..., go vet, golangci-lint run (0 issues), and ./hack/update-codegen.sh (no diff) pass.
  • go test ./... passes except pkg/policy, which hangs fetching the public TUF root from my machine. It hangs the same way on main, so it's environmental.

Not covered here

🤖 Generated with Claude Code

@cpanato
cpanato requested a review from a team as a code owner November 9, 2026 10:24
@codecov

codecov Bot commented Nov 9, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 8 lines in your changes missing coverage. Please review.
✅ Project coverage is 34.81%. Comparing base (45f4f1e) to head (6dfac7e).
⚠️ Report is 7 commits behind head on main.

Files with missing lines Patch % Lines
...is/policy/v1alpha1/clusterimagepolicy_lifecycle.go 0.00% 3 Missing ⚠️
...pis/policy/v1beta1/clusterimagepolicy_lifecycle.go 0.00% 3 Missing ⚠️
pkg/apis/policy/v1alpha1/trustroot_lifecycle.go 0.00% 2 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2044   +/-   ##
=======================================
  Coverage   34.81%   34.81%           
=======================================
  Files         127      127           
  Lines        6870     6870           
=======================================
  Hits         2392     2392           
  Misses       4478     4478           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Any bump of go.opentelemetry.io/otel/sdk past v1.44 makes the webhook
crash on startup:

  panic: conflicting Schema URL: https://opentelemetry.io/schemas/1.43.0
  and https://opentelemetry.io/schemas/1.41.0
  knative.dev/pkg/observability/resource.Default

knative.dev/pkg builds its resource with semconv v1.41.0 while newer
otel SDKs use v1.43.0. knative.dev/pkg main has moved to semconv
v1.43.0, so bump it (which also pulls otel to v1.47.0).

The new knative.dev/pkg marks ConditionManager.MarkFalse as printf-like,
so pass the message through "%s" instead of as the format string.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Carlos Panato <ctadeu@gmail.com>
@cpanato
cpanato force-pushed the fix-knative-otel-semconv branch from 9588c06 to 6dfac7e Compare November 9, 2026 13:48
@cpanato
cpanato merged commit 58bf6ec into sigstore:main Nov 9, 2026
57 of 58 checks passed
@cpanato
cpanato deleted the fix-knative-otel-semconv branch November 9, 2026 14:12
@github-actions github-actions Bot added this to the v1 milestone Nov 9, 2026
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