@poncho-ai/harness 0.20.3 → 0.20.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
 
2
- > @poncho-ai/harness@0.20.3 build /home/runner/work/poncho-ai/poncho-ai/packages/harness
2
+ > @poncho-ai/harness@0.20.5 build /home/runner/work/poncho-ai/poncho-ai/packages/harness
3
3
  > tsup src/index.ts --format esm --dts
4
4
 
5
5
  CLI Building entry: src/index.ts
@@ -7,8 +7,8 @@
7
7
  CLI tsup v8.5.1
8
8
  CLI Target: es2022
9
9
  ESM Build start
10
- ESM dist/index.js 200.14 KB
11
- ESM ⚡️ Build success in 157ms
10
+ ESM dist/index.js 199.08 KB
11
+ ESM ⚡️ Build success in 126ms
12
12
  DTS Build start
13
- DTS ⚡️ Build success in 7386ms
13
+ DTS ⚡️ Build success in 6833ms
14
14
  DTS dist/index.d.ts 24.36 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @poncho-ai/harness
2
2
 
3
+ ## 0.20.5
4
+
5
+ ### Patch Changes
6
+
7
+ - [`8286e1e`](https://github.com/cesr/poncho-ai/commit/8286e1ef244208d74e1daf8ef1c2a1a3afb1459e) Thanks [@cesr](https://github.com/cesr)! - Match Latitude telemetry integration exactly to their documented Vercel AI SDK pattern — no custom constructor options.
8
+
9
+ ## 0.20.4
10
+
11
+ ### Patch Changes
12
+
13
+ - [`c35f676`](https://github.com/cesr/poncho-ai/commit/c35f676cdc548a3db9212ae7909302a5b876bc40) Thanks [@cesr](https://github.com/cesr)! - Switch Latitude telemetry to use BatchSpanProcessor (default) instead of SimpleSpanProcessor. Sends all spans from a trace together in one OTLP batch, matching Latitude's expected integration pattern.
14
+
3
15
  ## 0.20.3
4
16
 
5
17
  ### Patch Changes
package/dist/index.js CHANGED
@@ -2637,7 +2637,6 @@ var createSubagentTools = (manager, getConversationId, getOwnerId) => [
2637
2637
 
2638
2638
  // src/harness.ts
2639
2639
  import { LatitudeTelemetry } from "@latitude-data/telemetry";
2640
- import { diag, DiagLogLevel } from "@opentelemetry/api";
2641
2640
 
2642
2641
  // src/tool-dispatcher.ts
2643
2642
  var ToolDispatcher = class {
@@ -3472,42 +3471,7 @@ var AgentHarness = class {
3472
3471
  const rawProjectId = process.env[latProjectIdEnv];
3473
3472
  const latitudeProjectId = rawProjectId ? parseInt(rawProjectId, 10) : void 0;
3474
3473
  if (telemetryEnabled && latitudeApiKey && latitudeProjectId) {
3475
- diag.setLogger(
3476
- {
3477
- error: (msg, ...args) => {
3478
- if (typeof msg === "string" && msg.includes("Attempted duplicate registration")) return;
3479
- console.error(`[poncho][otel] ${msg}`, ...args);
3480
- },
3481
- warn: () => {
3482
- },
3483
- info: () => {
3484
- },
3485
- debug: () => {
3486
- },
3487
- verbose: () => {
3488
- }
3489
- },
3490
- DiagLogLevel.ERROR
3491
- );
3492
- this.latitudeTelemetry = new LatitudeTelemetry(latitudeApiKey, { disableBatch: true });
3493
- const provider2 = this.latitudeTelemetry.nodeProvider;
3494
- if (provider2?.addSpanProcessor) {
3495
- provider2.addSpanProcessor({
3496
- onStart() {
3497
- },
3498
- onEnd(span) {
3499
- console.info(
3500
- `[poncho][otel-diag] span ended: name="${span.name}" traceId=${span.spanContext().traceId} parent=${span.parentSpanId ?? "none"}`
3501
- );
3502
- },
3503
- forceFlush() {
3504
- return Promise.resolve();
3505
- },
3506
- shutdown() {
3507
- return Promise.resolve();
3508
- }
3509
- });
3510
- }
3474
+ this.latitudeTelemetry = new LatitudeTelemetry(latitudeApiKey);
3511
3475
  } else if (telemetryEnabled && latitudeBlock && (!latitudeApiKey || !latitudeProjectId)) {
3512
3476
  const missing = [];
3513
3477
  if (!latitudeApiKey) missing.push(`${latApiKeyEnv} env var`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@poncho-ai/harness",
3
- "version": "0.20.3",
3
+ "version": "0.20.5",
4
4
  "description": "Agent execution runtime - conversation loop, tool dispatch, streaming",
5
5
  "repository": {
6
6
  "type": "git",
package/src/harness.ts CHANGED
@@ -32,7 +32,6 @@ import { createSkillTools, normalizeScriptPolicyPath } from "./skill-tools.js";
32
32
  import { createSubagentTools } from "./subagent-tools.js";
33
33
  import type { SubagentManager } from "./subagent-manager.js";
34
34
  import { LatitudeTelemetry } from "@latitude-data/telemetry";
35
- import { diag, DiagLogLevel } from "@opentelemetry/api";
36
35
  import {
37
36
  isSiblingScriptsPattern,
38
37
  matchesRelativeScriptPattern,
@@ -915,34 +914,7 @@ export class AgentHarness {
915
914
  const rawProjectId = process.env[latProjectIdEnv];
916
915
  const latitudeProjectId = rawProjectId ? parseInt(rawProjectId, 10) : undefined;
917
916
  if (telemetryEnabled && latitudeApiKey && latitudeProjectId) {
918
- diag.setLogger(
919
- {
920
- error: (msg, ...args) => {
921
- if (typeof msg === "string" && msg.includes("Attempted duplicate registration")) return;
922
- console.error(`[poncho][otel] ${msg}`, ...args);
923
- },
924
- warn: () => {},
925
- info: () => {},
926
- debug: () => {},
927
- verbose: () => {},
928
- },
929
- DiagLogLevel.ERROR,
930
- );
931
- this.latitudeTelemetry = new LatitudeTelemetry(latitudeApiKey, { disableBatch: true });
932
- // Diagnostic: log every span that passes through the pipeline
933
- const provider = (this.latitudeTelemetry as unknown as { nodeProvider: { addSpanProcessor(p: unknown): void } }).nodeProvider;
934
- if (provider?.addSpanProcessor) {
935
- provider.addSpanProcessor({
936
- onStart() {},
937
- onEnd(span: { name: string; spanContext(): { traceId: string }; parentSpanId?: string }) {
938
- console.info(
939
- `[poncho][otel-diag] span ended: name="${span.name}" traceId=${span.spanContext().traceId} parent=${span.parentSpanId ?? "none"}`,
940
- );
941
- },
942
- forceFlush() { return Promise.resolve(); },
943
- shutdown() { return Promise.resolve(); },
944
- });
945
- }
917
+ this.latitudeTelemetry = new LatitudeTelemetry(latitudeApiKey);
946
918
  } else if (telemetryEnabled && latitudeBlock && (!latitudeApiKey || !latitudeProjectId)) {
947
919
  const missing: string[] = [];
948
920
  if (!latitudeApiKey) missing.push(`${latApiKeyEnv} env var`);