From 85eaa5b58bb9c78f164d9a1cb5303977dfebb4b4 Mon Sep 17 00:00:00 2001 From: Dax Date: Fri, 8 Aug 2025 20:20:01 -0400 Subject: [PATCH] Remove unused OpenTelemetry tracing and fix overlapping highlights (#1738) Co-authored-by: opencode --- .opencode/agent/docs.md | 2 +- packages/opencode/package.json | 7 ------- packages/opencode/src/index.ts | 2 -- packages/opencode/src/trace/index.ts | 17 ----------------- .../tui/internal/components/chat/message.go | 19 +++++++++++++++++++ 5 files changed, 20 insertions(+), 27 deletions(-) delete mode 100644 packages/opencode/src/trace/index.ts diff --git a/.opencode/agent/docs.md b/.opencode/agent/docs.md index ca317e00..8ba4b52d 100644 --- a/.opencode/agent/docs.md +++ b/.opencode/agent/docs.md @@ -1,5 +1,5 @@ --- -description: You MUST use this agent when writing documentation +description: ALWAYS use this when writing docs --- You are an expert technical documentation writer diff --git a/packages/opencode/package.json b/packages/opencode/package.json index d27727d7..bfd67487 100644 --- a/packages/opencode/package.json +++ b/packages/opencode/package.json @@ -38,13 +38,6 @@ "@openauthjs/openauth": "0.4.3", "@opencode-ai/plugin": "workspace:*", "@opencode-ai/sdk": "workspace:*", - "@opentelemetry/auto-instrumentations-node": "0.62.0", - "@opentelemetry/exporter-jaeger": "2.0.1", - "@opentelemetry/exporter-otlp-http": "0.26.0", - "@opentelemetry/exporter-trace-otlp-http": "0.203.0", - "@opentelemetry/instrumentation-fetch": "0.203.0", - "@opentelemetry/sdk-node": "0.203.0", - "@opentelemetry/sdk-trace-node": "2.0.1", "@standard-schema/spec": "1.0.0", "@zip.js/zip.js": "2.7.62", "ai": "catalog:", diff --git a/packages/opencode/src/index.ts b/packages/opencode/src/index.ts index 8ef14e57..d2d52d0b 100644 --- a/packages/opencode/src/index.ts +++ b/packages/opencode/src/index.ts @@ -1,6 +1,4 @@ import "zod-openapi/extend" -import { Trace } from "./trace" -Trace.init() import yargs from "yargs" import { hideBin } from "yargs/helpers" import { RunCommand } from "./cli/cmd/run" diff --git a/packages/opencode/src/trace/index.ts b/packages/opencode/src/trace/index.ts deleted file mode 100644 index 06b849d6..00000000 --- a/packages/opencode/src/trace/index.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { NodeSDK } from "@opentelemetry/sdk-node" -import { FetchInstrumentation } from "@opentelemetry/instrumentation-fetch" -import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http" - -export namespace Trace { - export function init() { - const sdk = new NodeSDK({ - serviceName: "opencode", - instrumentations: [new FetchInstrumentation()], - traceExporter: new OTLPTraceExporter({ - url: "http://localhost:4318/v1/traces", // or your OTLP endpoint - }), - }) - - sdk.start() - } -} diff --git a/packages/tui/internal/components/chat/message.go b/packages/tui/internal/components/chat/message.go index 60d0fab5..6dcdcc98 100644 --- a/packages/tui/internal/components/chat/message.go +++ b/packages/tui/internal/components/chat/message.go @@ -268,7 +268,26 @@ func renderText( return 0 }) + // Merge overlapping highlights to prevent duplication + merged := make([]highlightPart, 0) for _, part := range highlights { + if len(merged) == 0 { + merged = append(merged, part) + continue + } + + last := &merged[len(merged)-1] + // If current part overlaps with the last one, merge them + if part.start <= last.end { + if part.end > last.end { + last.end = part.end + } + } else { + merged = append(merged, part) + } + } + + for _, part := range merged { highlight := base.Foreground(part.color) start, end := part.start, part.end