Skip to content

chore: upgrade deps, fix semconv version, remove auth0| usernames#100

Merged
emsearcy merged 1 commit into
mainfrom
feat/LFXV2-2201-upgrade-deps-remove-auth0-usernames
Jun 11, 2026
Merged

chore: upgrade deps, fix semconv version, remove auth0| usernames#100
emsearcy merged 1 commit into
mainfrom
feat/LFXV2-2201-upgrade-deps-remove-auth0-usernames

Conversation

@emsearcy

@emsearcy emsearcy commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Maintenance pass covering three concerns:

1. Dependency upgrades

  • Go toolchain directive 1.26.3 → 1.26.4
  • lfx-v2-committee-service v0.2.35 → v0.4.0
  • lfx-v2-mailing-list-service v0.4.13 → v0.5.0
  • lfx-v2-member-service v0.8.0 → v0.9.0
  • lfx-v2-project-service v0.6.11 → v0.8.0
  • lfx-v2-query-service v0.4.21 → v0.4.22
  • OTel suite v1.43.0 → v1.44.0
  • goa.design/goa/v3 v3.27.0 → v3.28.0
  • Various golang.org/x/* and google.golang.org/* bumps

Contract fix: committee service v0.4.0 added four new RPCs; the NewClient call in internal/lfxv2/client.go was updated to include GetOrgCommitteeSeats, ReassignOrgCommitteeSeat (inserted after GetCommitteeMember), and GetCurrentWeeklyBrief, GenerateWeeklyBrief (appended).

2. OTel semconv version fix

otelhttp@v0.69.0 now internally imports semconv/v1.41.0, which registers SchemaURL = https://opentelemetry.io/schemas/1.41.0. Our code was still importing semconv/v1.40.0, causing a startup error:

failed to initialise OpenTelemetry SDK: conflicting Schema URL:
https://opentelemetry.io/schemas/1.41.0 and https://opentelemetry.io/schemas/1.40.0

Updated both internal/otel/tracing.go and cmd/lfx-mcp-server/main.go to semconv/v1.41.0, which is the highest sub-package present inside go.opentelemetry.io/otel@v1.44.0. The upgrade-maintenance skill now documents this rule and the command to find the correct version deterministically.

3. Remove auth0| usernames (LFXV2-1962)

Replaced auth0|testuser and auth0|alice identifiers in access_check_test.go mock data and the example in the access_check.go doc comment with plain LFID usernames. After the platform switch, the access-check endpoint returns user:<lfid-username> in its results, where the username is sourced from the http://lfx.dev/claims/username JWT claim stored in TokenInfo.Extra["username"].

Testing

  • make check — passes (0 issues)
  • make build — passes
  • ./scripts/test_server.sh — all tests pass, no OTel schema conflict error
  • go test ./internal/... — all unit tests pass

Jira: LFXV2-2201


🤖 Generated with GitHub Copilot (via OpenCode)

- Upgrade Go toolchain directive from 1.26.3 to 1.26.4
- Upgrade all Go module dependencies:
  - lfx-v2-committee-service v0.2.35 -> v0.4.0
  - lfx-v2-mailing-list-service v0.4.13 -> v0.5.0
  - lfx-v2-member-service v0.8.0 -> v0.9.0
  - lfx-v2-project-service v0.6.11 -> v0.8.0
  - lfx-v2-query-service v0.4.21 -> v0.4.22
  - OTel suite v1.43.0 -> v1.44.0 (otelhttp now uses semconv/v1.41.0)
  - goa.design/goa/v3 v3.27.0 -> v3.28.0
  - Various golang.org/x/* and google.golang.org/* bumps
- Wire new committee service RPCs into NewClient call:
  GetOrgCommitteeSeats, ReassignOrgCommitteeSeat (inserted after
  GetCommitteeMember), GetCurrentWeeklyBrief, GenerateWeeklyBrief
  (appended at end) per the v0.4.0 Goa-generated interface
- Update semconv import paths from v1.40.0 to v1.41.0 in both
  internal/otel/tracing.go and cmd/lfx-mcp-server/main.go.
  otelhttp@v0.69.0 registers SchemaURL 1.41.0 internally; keeping
  our code on v1.40.0 triggered an OTel startup conflict error.
  Rule: always use the highest semconv sub-package present inside
  the current go.opentelemetry.io/otel module version.
- Replace auth0| prefixed user identifiers in access_check.go
  comment and all access_check_test.go mock data with plain LFID
  usernames, aligning with the platform switch from Auth0 sub to
  username (LFXV2-1962). The username is sourced from the
  http://lfx.dev/claims/username JWT claim and stored in
  TokenInfo.Extra["username"].
- gofmt alignment fix in internal/tools/member.go struct fields
- upgrade-maintenance skill: add Step 1.2.1 documenting the
  semconv version selection rule and the command to find the
  correct version deterministically

Assisted-by: github-copilot:claude-sonnet-4.6
Signed-off-by: Eric Searcy <eric@linuxfoundation.org>
Copilot AI review requested due to automatic review settings June 11, 2026 22:58
Comment thread go.mod
Comment thread go.mod
Comment thread go.mod
Comment thread go.mod
Comment thread go.mod
Comment thread go.mod
Comment thread go.mod
Comment thread go.mod
Comment thread go.mod

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Maintenance-focused update that bumps core Go/OTel/LFX v2 dependencies, aligns OpenTelemetry semantic convention imports to prevent schema URL conflicts at startup, and updates access-check examples/tests to reflect LFID-style usernames (no auth0| prefix).

Changes:

  • Upgraded Go toolchain directive and multiple dependencies (LFX v2 services, OTel suite, goa, golang.org/x/*, etc.), including committee client wiring for newly added RPCs.
  • Fixed OTel schema URL startup conflict by updating semconv imports to v1.41.0.
  • Removed auth0| username prefixes from access-check docs and tests; documented the semconv-version selection rule in the upgrade skill.

Reviewed changes

Copilot reviewed 7 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
internal/tools/member.go Formatting/alignment updates to the search_members args struct.
internal/otel/tracing.go Updates OTel semconv import to v1.41.0 to match upgraded instrumentation.
internal/lfxv2/client.go Adds newly required committee-service endpoints to the generated client wiring.
internal/lfxv2/access_check.go Updates access-check parsing example to LFID-style usernames.
internal/lfxv2/access_check_test.go Updates mocked access-check results to LFID-style usernames (no `auth0
go.mod Bumps Go directive and multiple direct/indirect dependencies (LFX v2, OTel, goa, etc.).
go.sum Updates dependency checksums consistent with go.mod upgrades.
cmd/lfx-mcp-server/main.go Updates OTel semconv import to v1.41.0.
.agents/skills/upgrade-maintenance/SKILL.md Documents semconv import-version rule and how to determine it deterministically.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@emsearcy emsearcy merged commit 91237e3 into main Jun 11, 2026
8 checks passed
@emsearcy emsearcy deleted the feat/LFXV2-2201-upgrade-deps-remove-auth0-usernames branch June 11, 2026 23:56
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.

4 participants