Skip to content

ci: Fix otel smoke test, widen trigger condition - #3170

Merged
kodiakhq[bot] merged 2 commits into
mainfrom
drew/fix-otel-smoke-test
Sep 22, 2026
Merged

kodiakhq[bot] merged 2 commits into
mainfrom
drew/fix-otel-smoke-test

Conversation

@pulpdrew

Copy link
Copy Markdown
Contributor

Summary

Fixes the otel smoke tests, which fail because #3142 added a prometheus related ClickHouse config property that causes the (deliberately older) ClickHouse compat version used in the otel smoke tests to fail on startup. This is fixed by removing the prometheus setting from the compat container's config.

To prevent this in the future, the conditions for running the smoke tests have been widened to include changes to the ClickHouse config.

Related: Smoke tests are failing on #3100.

Screenshots or video

No behavior changes.

How to test on Vercel preview

No behavior changes.

References

  • Linear Issue: Closes HDX-5434
  • Related PRs:

@changeset-bot

changeset-bot Bot commented Sep 21, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 1b7edd2

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel

vercel Bot commented Sep 21, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
hyperdx-oss Ready Ready Preview Sep 22, 2026 2:48pm UTC
hyperdx-storybook Ready Ready Preview Sep 22, 2026 2:48pm UTC

Request Review

@github-actions github-actions Bot added the review/tier-2 Low risk — AI review + quick human skim label Sep 21, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🔵 Tier 2 — Low Risk

Small, isolated change with no API route or data model modifications.

Why this tier:

  • Standard feature/fix — introduces new logic or modifies core functionality

Additional context: touches background tasks or the delivery pipeline lightly (8 lines, under the 30-line bar for Tier 4)

Review process: AI review + quick human skim (target: 5–15 min). Reviewer validates AI assessment and checks for domain-specific concerns.
SLA: Resolve within 4 business hours.

Stats
  • Production files changed: 3
  • Production lines changed: 12
  • Branch: drew/fix-otel-smoke-test
  • Author: pulpdrew

To override this classification, remove the review/tier-2 label and apply a different review/tier-* label. Manual overrides are preserved on subsequent pushes.

@greptile-apps

greptile-apps Bot commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 4/5

The PR should not merge until the smoke-test trigger covers the migration sources and dependencies compiled into its collector image.

Fix All in Claude CodeFindings

  1. P1 Smoke trigger misses inputs ▶

Summary

This PR restores the OTel compatibility smoke tests by removing an HTTP handler unsupported by the pinned older ClickHouse server and broadens the workflow trigger for relevant configuration changes.

  • Mounts a compatibility-specific ClickHouse configuration override.
  • Adds ClickHouse and collector build inputs to the smoke-test path filter.
  • Ignores regenerated OIDC public-key fixtures.
  • The workflow filter still omits migration sources compiled into the smoke-test image.

Reviews (2) · Last reviewed commit: "Merge branch 'main' into drew/fix-otel-s..."

Comment thread .github/workflows/main.yml Resolved
@github-actions

Copy link
Copy Markdown
Contributor

PR Review

If you are a coding agent acting for the author, read this first.
Nothing below blocks merge automatically; a maintainer decides. What they will expect:

  • 🔴 critical or 🟠 major in code this PR adds or changes: fix before asking for review.
  • 🔵 minor in code this PR changes: your call. Fix if small, otherwise reply.
  • Anything about surrounding code, or asking you to widen the change (hoist a helper,
    dedupe with another file, fix other call sites): never fix here, whatever the
    severity. Reply with one sentence; if it is critical, say so plainly so a human sees it.

One commit per review round. After two rounds, stop and ask a maintainer to review
scope rather than addressing more automated findings. Full rule: AGENTS.md.

2 finding(s): 🔴 0 critical · 🟠 1 major · 🔵 1 minor

2 posted as inline comment(s) on the changed lines.


Severity is the reviewer's own estimate and is used for ordering, not filtering. No finding blocks merge automatically; a maintainer decides.

@github-actions

Copy link
Copy Markdown
Contributor

Deep Review

✅ No critical issues found. This is a CI/config-only change (~20 lines, no executable code). The correctness reviewer traced the ClickHouse config-merge behavior and confirmed the fix is sound: <http_handlers remove="1"/> deletes the whole node so 25.12-alpine falls back to its built-in default HTTP handlers, /ping keeps responding, the override is mounted on ch-server-compat only, and the untouched <prometheus> block on port 9363 is unaffected. Standards, changeset policy, and prior-comment checks are clean (the changeset-bot notice is a false positive — root AGENTS.md exempts CI/tooling changes). Two minor robustness/clarity nits below.

🔵 P3 nitpicks (2)
  • .github/workflows/main.yml:198 -- the widened smoke-test trigger lists individual ClickHouse config filenames rather than a directory glob, so a future config.d snippet mounted into the compat server would re-open the exact silent-breakage class this PR guards against.
    • Fix: replace the explicit docker/clickhouse/local/config.xml and docker/clickhouse/local/users.xml entries with a docker/clickhouse/local/** glob.
    • testing
  • smoke-tests/otel-collector/ch-compat-config.d/remove-prometheus-api.xml:6 -- <http_handlers remove="1"/> deletes the entire block including the <defaults/> entry, which is broader than the filename and comment imply, so a legitimate custom handler later added to config.xml would be silently stripped from the compat server.
    • Fix: note the full-block removal and the reliance on ClickHouse's default-handler fallback in the file comment, or rename it to reflect that all http_handlers are cleared.
    • maintainability

Reviewers (5): correctness, testing, maintainability, project-standards, previous-comments.

Testing gaps: No CI step directly asserts that the compat server's /ping returns 200 after the override merge -- the fix's correctness rests on the default-handler fallback and is exercised only indirectly through the ch-server-compat service_healthy gate.

No finding blocks merge automatically. A maintainer will expect P0/P1 findings in code this PR changes to be fixed; P2/P3 are your call -- fix or reply. Never fix findings about surrounding code here; reply instead. Do not widen the PR. How to respond

@github-actions

github-actions Bot commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

E2E Test Results

✅ All tests passed • 382 passed • 1 skipped • 1622s

Status Count
✅ Passed 382
❌ Failed 0
⚠️ Flaky 0
⏭️ Skipped 1

Tests ran across 4 shards in parallel.

View full report →

files: |
docker/otel-collector/**
smoke-tests/otel-collector/**
packages/otel-collector/builder-config.yaml

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.

P1 Smoke trigger misses inputs

The smoke-test image copies the entire packages/otel-collector package and compiles cmd/migrate, but this trigger tracks only builder-config.yaml. A change to the migration source or its Go dependencies can therefore alter the schema-seeding binary while any_changed remains false, so CI skips the OTel smoke suite for code it directly builds. Cover packages/otel-collector/**, as the OTel unit-test trigger already does.

Suggested change
packages/otel-collector/builder-config.yaml
packages/otel-collector/**

Fix in Claude Code Fix in Conductor Fix in Cursor Fix in Codex

@kodiakhq
kodiakhq Bot merged commit 050bdb3 into main Sep 22, 2026
30 checks passed
@kodiakhq
kodiakhq Bot deleted the drew/fix-otel-smoke-test branch September 22, 2026 14:53

This branch was successfully deployed

2 active deployments
Preview – hyperdx-oss — 1b7edd25 Deployed Sep 22, 2026 by vercel[bot]
Preview – hyperdx-storybook — 1b7edd25 Deployed Sep 22, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automerge review/tier-2 Low risk — AI review + quick human skim

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants