agent-relay 4.0.30 → 4.0.31

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.
Files changed (137) hide show
  1. package/README.md +88 -48
  2. package/bin/agent-relay-broker-darwin-arm64 +0 -0
  3. package/bin/agent-relay-broker-darwin-x64 +0 -0
  4. package/bin/agent-relay-broker-linux-arm64 +0 -0
  5. package/bin/agent-relay-broker-linux-x64 +0 -0
  6. package/dist/index.cjs +99 -54
  7. package/dist/src/cli/bootstrap.d.ts +2 -1
  8. package/dist/src/cli/bootstrap.d.ts.map +1 -1
  9. package/dist/src/cli/bootstrap.js +223 -17
  10. package/dist/src/cli/bootstrap.js.map +1 -1
  11. package/dist/src/cli/commands/agent-management.d.ts.map +1 -1
  12. package/dist/src/cli/commands/agent-management.js +1 -3
  13. package/dist/src/cli/commands/agent-management.js.map +1 -1
  14. package/dist/src/cli/commands/auth.d.ts.map +1 -1
  15. package/dist/src/cli/commands/auth.js +32 -3
  16. package/dist/src/cli/commands/auth.js.map +1 -1
  17. package/dist/src/cli/commands/cloud.d.ts.map +1 -1
  18. package/dist/src/cli/commands/cloud.js +242 -144
  19. package/dist/src/cli/commands/cloud.js.map +1 -1
  20. package/dist/src/cli/commands/core.d.ts.map +1 -1
  21. package/dist/src/cli/commands/core.js +11 -6
  22. package/dist/src/cli/commands/core.js.map +1 -1
  23. package/dist/src/cli/commands/messaging.d.ts.map +1 -1
  24. package/dist/src/cli/commands/messaging.js +1 -3
  25. package/dist/src/cli/commands/messaging.js.map +1 -1
  26. package/dist/src/cli/commands/monitoring.d.ts.map +1 -1
  27. package/dist/src/cli/commands/monitoring.js +5 -4
  28. package/dist/src/cli/commands/monitoring.js.map +1 -1
  29. package/dist/src/cli/commands/on.d.ts.map +1 -1
  30. package/dist/src/cli/commands/on.js +1 -3
  31. package/dist/src/cli/commands/on.js.map +1 -1
  32. package/dist/src/cli/commands/setup.d.ts.map +1 -1
  33. package/dist/src/cli/commands/setup.js +62 -7
  34. package/dist/src/cli/commands/setup.js.map +1 -1
  35. package/dist/src/cli/commands/swarm.d.ts.map +1 -1
  36. package/dist/src/cli/commands/swarm.js +34 -4
  37. package/dist/src/cli/commands/swarm.js.map +1 -1
  38. package/dist/src/cli/index.js +9 -1
  39. package/dist/src/cli/index.js.map +1 -1
  40. package/dist/src/cli/lib/exit.d.ts +49 -0
  41. package/dist/src/cli/lib/exit.d.ts.map +1 -0
  42. package/dist/src/cli/lib/exit.js +73 -0
  43. package/dist/src/cli/lib/exit.js.map +1 -0
  44. package/dist/src/cli/lib/telemetry-helpers.d.ts +20 -0
  45. package/dist/src/cli/lib/telemetry-helpers.d.ts.map +1 -0
  46. package/dist/src/cli/lib/telemetry-helpers.js +31 -0
  47. package/dist/src/cli/lib/telemetry-helpers.js.map +1 -0
  48. package/node_modules/@agent-relay/cloud/package.json +2 -2
  49. package/node_modules/@agent-relay/config/package.json +1 -1
  50. package/node_modules/@agent-relay/hooks/package.json +4 -4
  51. package/node_modules/@agent-relay/sdk/dist/workflows/file-db.d.ts +62 -12
  52. package/node_modules/@agent-relay/sdk/dist/workflows/file-db.d.ts.map +1 -1
  53. package/node_modules/@agent-relay/sdk/dist/workflows/file-db.js +137 -47
  54. package/node_modules/@agent-relay/sdk/dist/workflows/file-db.js.map +1 -1
  55. package/node_modules/@agent-relay/sdk/package.json +2 -2
  56. package/node_modules/@agent-relay/telemetry/dist/client.d.ts +14 -2
  57. package/node_modules/@agent-relay/telemetry/dist/client.d.ts.map +1 -1
  58. package/node_modules/@agent-relay/telemetry/dist/client.js +22 -4
  59. package/node_modules/@agent-relay/telemetry/dist/client.js.map +1 -1
  60. package/node_modules/@agent-relay/telemetry/dist/events.d.ts +217 -10
  61. package/node_modules/@agent-relay/telemetry/dist/events.d.ts.map +1 -1
  62. package/node_modules/@agent-relay/telemetry/dist/events.js +11 -0
  63. package/node_modules/@agent-relay/telemetry/dist/events.js.map +1 -1
  64. package/node_modules/@agent-relay/telemetry/dist/index.d.ts +2 -2
  65. package/node_modules/@agent-relay/telemetry/dist/index.d.ts.map +1 -1
  66. package/node_modules/@agent-relay/telemetry/dist/index.js.map +1 -1
  67. package/node_modules/@agent-relay/telemetry/package.json +2 -2
  68. package/node_modules/@agent-relay/trajectory/package.json +2 -2
  69. package/node_modules/@agent-relay/user-directory/package.json +2 -2
  70. package/node_modules/@agent-relay/utils/package.json +2 -2
  71. package/node_modules/@relaycast/sdk/dist/version.d.ts +1 -1
  72. package/node_modules/@relaycast/sdk/dist/version.js +1 -1
  73. package/node_modules/@relaycast/sdk/node_modules/@relaycast/types/package.json +1 -1
  74. package/node_modules/@relaycast/sdk/package.json +2 -2
  75. package/node_modules/axios/CHANGELOG.md +166 -0
  76. package/node_modules/axios/README.md +210 -204
  77. package/node_modules/axios/dist/axios.js +92 -63
  78. package/node_modules/axios/dist/axios.js.map +1 -1
  79. package/node_modules/axios/dist/axios.min.js +2 -2
  80. package/node_modules/axios/dist/axios.min.js.map +1 -1
  81. package/node_modules/axios/dist/browser/axios.cjs +140 -101
  82. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  83. package/node_modules/axios/dist/esm/axios.js +140 -101
  84. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  85. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  86. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  87. package/node_modules/axios/dist/node/axios.cjs +199 -75
  88. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  89. package/node_modules/axios/index.d.cts +14 -28
  90. package/node_modules/axios/index.d.ts +132 -226
  91. package/node_modules/axios/lib/adapters/fetch.js +21 -6
  92. package/node_modules/axios/lib/adapters/http.js +88 -6
  93. package/node_modules/axios/lib/core/AxiosError.js +34 -33
  94. package/node_modules/axios/lib/core/AxiosHeaders.js +24 -25
  95. package/node_modules/axios/lib/core/buildFullPath.js +1 -1
  96. package/node_modules/axios/lib/core/mergeConfig.js +5 -3
  97. package/node_modules/axios/lib/defaults/index.js +13 -8
  98. package/node_modules/axios/lib/env/data.js +1 -1
  99. package/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +1 -2
  100. package/node_modules/axios/lib/helpers/formDataToJSON.js +3 -1
  101. package/node_modules/axios/lib/helpers/formDataToStream.js +2 -1
  102. package/node_modules/axios/lib/helpers/progressEventReducer.js +5 -5
  103. package/node_modules/axios/lib/helpers/resolveConfig.js +11 -3
  104. package/node_modules/axios/lib/helpers/shouldBypassProxy.js +48 -1
  105. package/node_modules/axios/lib/helpers/toFormData.js +10 -2
  106. package/node_modules/axios/lib/utils.js +10 -10
  107. package/node_modules/axios/package.json +4 -4
  108. package/package.json +9 -9
  109. package/packages/cloud/package.json +2 -2
  110. package/packages/config/package.json +1 -1
  111. package/packages/hooks/package.json +4 -4
  112. package/packages/sdk/dist/workflows/file-db.d.ts +62 -12
  113. package/packages/sdk/dist/workflows/file-db.d.ts.map +1 -1
  114. package/packages/sdk/dist/workflows/file-db.js +137 -47
  115. package/packages/sdk/dist/workflows/file-db.js.map +1 -1
  116. package/packages/sdk/package.json +2 -2
  117. package/packages/telemetry/dist/client.d.ts +14 -2
  118. package/packages/telemetry/dist/client.d.ts.map +1 -1
  119. package/packages/telemetry/dist/client.js +22 -4
  120. package/packages/telemetry/dist/client.js.map +1 -1
  121. package/packages/telemetry/dist/events.d.ts +217 -10
  122. package/packages/telemetry/dist/events.d.ts.map +1 -1
  123. package/packages/telemetry/dist/events.js +11 -0
  124. package/packages/telemetry/dist/events.js.map +1 -1
  125. package/packages/telemetry/dist/index.d.ts +2 -2
  126. package/packages/telemetry/dist/index.d.ts.map +1 -1
  127. package/packages/telemetry/dist/index.js.map +1 -1
  128. package/packages/telemetry/package.json +2 -2
  129. package/packages/trajectory/package.json +2 -2
  130. package/packages/user-directory/package.json +2 -2
  131. package/packages/utils/package.json +2 -2
  132. package/node_modules/@clack/prompts/node_modules/is-unicode-supported/index.d.ts +0 -12
  133. package/node_modules/@clack/prompts/node_modules/is-unicode-supported/index.js +0 -17
  134. package/node_modules/@clack/prompts/node_modules/is-unicode-supported/license +0 -9
  135. package/node_modules/@clack/prompts/node_modules/is-unicode-supported/package.json +0 -43
  136. package/node_modules/@clack/prompts/node_modules/is-unicode-supported/readme.md +0 -35
  137. package/node_modules/color-convert/CHANGELOG.md +0 -54
@@ -1,40 +1,69 @@
1
- import { appendFileSync, existsSync, mkdirSync, readdirSync, readFileSync } from 'node:fs';
1
+ import { accessSync, appendFileSync, constants as fsConstants, existsSync, mkdirSync, readdirSync, readFileSync, } from 'node:fs';
2
+ import os from 'node:os';
2
3
  import path from 'node:path';
3
4
  /**
4
5
  * JSONL-backed WorkflowDb for the CLI.
5
6
  *
6
- * Each insert/update appends a line to the file. On read, we scan from the
7
- * bottom and take the last record for each ID — so updates naturally shadow
8
- * earlier inserts without rewriting the file.
7
+ * Design: the **in-memory cache is the single source of truth** for the
8
+ * process lifetime. Every mutation updates the cache synchronously and
9
+ * then best-effort appends to the jsonl file for durability / `--resume`.
9
10
  *
10
- * This makes writes O(1) and reads O(n) where n = number of lines (small for
11
- * typical workflows). Resume only reads once at startup, so the read cost is
12
- * paid once per CLI invocation.
11
+ * This matters because the runtime correctness of a running workflow
12
+ * must not depend on disk writes succeeding. If the storage path is
13
+ * unwritable (ACL-restricted workspace, full disk, ENOSPC), the workflow
14
+ * still progresses through its state machine correctly — we just lose
15
+ * the ability to resume a future process from that run.
13
16
  *
14
- * File: .agent-relay/workflow-runs.jsonl in the workflow cwd.
17
+ * Read paths used to re-snapshot the jsonl on every call, which meant
18
+ * a failed `updateRun(..., { status: 'completed' })` would leave a
19
+ * subsequent `getRun` returning the stale 'running' row from disk.
20
+ * That bug surfaced as workflows passing per-step but reporting
21
+ * `status: 'running'` to callers.
22
+ *
23
+ * Storage path resolution:
24
+ * 1. Try the caller-supplied file path. If the parent directory is
25
+ * writable, use it.
26
+ * 2. If (1) fails and `homeFallback` is true (opt-in, default false),
27
+ * try `$HOME/.agent-relay/workflow-runs-<basename>.jsonl`. This is
28
+ * outside any workspace mount in cloud sandboxes and almost always
29
+ * writable by the agent.
30
+ * 3. If both fail, run in memory-only mode. The workflow still
31
+ * executes correctly; `--resume` won't be available for this run.
32
+ *
33
+ * File: `.agent-relay/workflow-runs.jsonl` in the workflow cwd by default.
15
34
  */
16
35
  export class JsonFileWorkflowDb {
17
36
  filePath;
18
- /** Whether the storage directory is writable. False = silent no-op mode. */
37
+ /** Whether persistence is active. False = in-memory-only mode. */
19
38
  writable;
20
39
  appendFailedOnce = false;
21
- constructor(filePath) {
22
- this.filePath = filePath;
23
- let writable = false;
24
- try {
25
- mkdirSync(path.dirname(filePath), { recursive: true });
26
- writable = true;
27
- }
28
- catch {
29
- // Permission denied or read-only fs run in memory-only mode.
30
- // The workflow executes normally; resume won't be available for this run.
31
- }
40
+ onWriteFailure;
41
+ /**
42
+ * Authoritative in-memory mirror. Every mutation updates this; reads
43
+ * return from here. The jsonl file is only consulted at construction
44
+ * (to replay prior state for `--resume`) and is otherwise write-only.
45
+ */
46
+ cache;
47
+ constructor(filePathOrOptions) {
48
+ const options = typeof filePathOrOptions === 'string' ? { filePath: filePathOrOptions } : filePathOrOptions;
49
+ this.onWriteFailure = options.onWriteFailure;
50
+ const requestedPath = options.filePath ?? path.join('.agent-relay', 'workflow-runs.jsonl');
51
+ const homeFallback = options.homeFallback ?? false;
52
+ const { resolvedPath, writable } = JsonFileWorkflowDb.resolveStoragePath(requestedPath, homeFallback);
53
+ this.filePath = resolvedPath;
32
54
  this.writable = writable;
55
+ // Load existing state from disk (for --resume) once at construction.
56
+ // From this point on, the cache is authoritative.
57
+ this.cache = JsonFileWorkflowDb.loadSnapshot(this.filePath);
33
58
  }
34
- /** Returns false if the storage directory could not be created (permission error). */
59
+ /** Returns false if persistence is not active (in-memory-only mode). */
35
60
  isWritable() {
36
61
  return this.writable;
37
62
  }
63
+ /** Resolved path on disk. For tests + diagnostics. */
64
+ getStoragePath() {
65
+ return this.filePath;
66
+ }
38
67
  hasStepOutputs(runId) {
39
68
  try {
40
69
  const dir = path.join(path.dirname(this.filePath), 'step-outputs', runId);
@@ -45,30 +74,53 @@ export class JsonFileWorkflowDb {
45
74
  }
46
75
  }
47
76
  // ── Private helpers ─────────────────────────────────────────────────────
48
- append(entry) {
49
- if (!this.writable)
50
- return;
51
- try {
52
- appendFileSync(this.filePath, JSON.stringify(entry) + '\n', 'utf8');
77
+ static resolveStoragePath(requestedPath, homeFallback) {
78
+ const candidates = [requestedPath];
79
+ if (homeFallback) {
80
+ const base = path.basename(requestedPath) || 'workflow-runs.jsonl';
81
+ candidates.push(path.join(os.homedir(), '.agent-relay', `workflow-runs-${base}`));
53
82
  }
54
- catch (err) {
55
- if (!this.appendFailedOnce) {
56
- this.appendFailedOnce = true;
57
- console.warn('[workflow] warning: failed to write run state to ' +
58
- this.filePath +
59
- ' --resume will not be available for this run. Use --start-from instead. ' +
60
- 'Error: ' +
61
- (err instanceof Error ? err.message : String(err)));
83
+ for (let i = 0; i < candidates.length; i++) {
84
+ const candidate = candidates[i];
85
+ const isLastCandidate = i === candidates.length - 1;
86
+ try {
87
+ mkdirSync(path.dirname(candidate), { recursive: true });
88
+ // If there's a later fallback to try, actively probe writability
89
+ // so we know whether to move on. Two levels matter:
90
+ // 1. Directory must be writable to create the jsonl file.
91
+ // 2. If the jsonl file already exists, IT must also be writable
92
+ // — a writable directory does not guarantee a writable file.
93
+ // Relayfile-mount, for example, can sync a file and chmod it
94
+ // to 0o444 while leaving the parent dir at 0o755; the old
95
+ // dir-only check would accept the path and every append would
96
+ // then lazy-fail, bypassing the fallback.
97
+ // If this is already the last candidate, skip the probe and be
98
+ // optimistic — an unwritable path will surface as a lazy append()
99
+ // failure handled by the cache + onWriteFailure path. Matches the
100
+ // pre-cache "warn on first failure" semantic callers expect.
101
+ if (!isLastCandidate) {
102
+ accessSync(path.dirname(candidate), fsConstants.W_OK);
103
+ if (existsSync(candidate)) {
104
+ accessSync(candidate, fsConstants.W_OK);
105
+ }
106
+ }
107
+ return { resolvedPath: candidate, writable: true };
108
+ }
109
+ catch {
110
+ // Try the next candidate; if this was the last, fall through
111
+ // to memory-only.
62
112
  }
63
113
  }
114
+ // Memory-only mode. Path is reported for diagnostics but nothing
115
+ // is written to it.
116
+ return { resolvedPath: requestedPath, writable: false };
64
117
  }
65
- /** Read all lines and build the latest snapshot for each ID. */
66
- snapshot() {
118
+ static loadSnapshot(filePath) {
67
119
  const runs = new Map();
68
120
  const steps = new Map();
69
121
  let raw = '';
70
122
  try {
71
- raw = readFileSync(this.filePath, 'utf8');
123
+ raw = readFileSync(filePath, 'utf8');
72
124
  }
73
125
  catch {
74
126
  return { runs, steps };
@@ -92,34 +144,72 @@ export class JsonFileWorkflowDb {
92
144
  }
93
145
  return { runs, steps };
94
146
  }
147
+ append(entry) {
148
+ if (!this.writable)
149
+ return;
150
+ try {
151
+ appendFileSync(this.filePath, JSON.stringify(entry) + '\n', 'utf8');
152
+ }
153
+ catch (err) {
154
+ // Notify every failure so callers can aggregate / surface.
155
+ this.onWriteFailure?.(err, this.filePath);
156
+ // Warn to console once per process — subsequent failures are noise.
157
+ if (!this.appendFailedOnce) {
158
+ this.appendFailedOnce = true;
159
+ console.warn('[workflow] warning: failed to write run state to ' +
160
+ this.filePath +
161
+ ' — --resume will not be available for this run. Use --start-from instead. ' +
162
+ 'Error: ' +
163
+ (err instanceof Error ? err.message : String(err)));
164
+ }
165
+ }
166
+ }
95
167
  // ── WorkflowDb interface ─────────────────────────────────────────────────
96
168
  async insertRun(run) {
169
+ // Shallow-copy so later mutations on the caller's object don't silently
170
+ // alias into the cache. Matches InMemoryWorkflowDb semantics. The runner
171
+ // keeps inserted rows in its own stepStates map and occasionally mutates
172
+ // state.row.status directly before calling updateRun — without this copy
173
+ // the mutation would land in the cache and bypass updateRun's
174
+ // updatedAt + append path, causing exactly the observability hazard this
175
+ // cache is meant to prevent.
176
+ this.cache.runs.set(run.id, { ...run });
97
177
  this.append({ kind: 'run', row: run });
98
178
  }
99
179
  async updateRun(id, patch) {
100
- const { runs } = this.snapshot();
101
- const existing = runs.get(id);
180
+ const existing = this.cache.runs.get(id);
102
181
  if (!existing)
103
182
  return;
104
- this.append({ kind: 'run', row: { ...existing, ...patch, updatedAt: new Date().toISOString() } });
183
+ const updated = {
184
+ ...existing,
185
+ ...patch,
186
+ updatedAt: new Date().toISOString(),
187
+ };
188
+ this.cache.runs.set(id, updated);
189
+ this.append({ kind: 'run', row: updated });
105
190
  }
106
191
  async getRun(id) {
107
- const { runs } = this.snapshot();
108
- return runs.get(id) ?? null;
192
+ return this.cache.runs.get(id) ?? null;
109
193
  }
110
194
  async insertStep(step) {
195
+ // Shallow-copy to prevent caller-mutation aliasing — see insertRun.
196
+ this.cache.steps.set(step.id, { ...step });
111
197
  this.append({ kind: 'step', row: step });
112
198
  }
113
199
  async updateStep(id, patch) {
114
- const { steps } = this.snapshot();
115
- const existing = steps.get(id);
200
+ const existing = this.cache.steps.get(id);
116
201
  if (!existing)
117
202
  return;
118
- this.append({ kind: 'step', row: { ...existing, ...patch, updatedAt: new Date().toISOString() } });
203
+ const updated = {
204
+ ...existing,
205
+ ...patch,
206
+ updatedAt: new Date().toISOString(),
207
+ };
208
+ this.cache.steps.set(id, updated);
209
+ this.append({ kind: 'step', row: updated });
119
210
  }
120
211
  async getStepsByRunId(runId) {
121
- const { steps } = this.snapshot();
122
- return Array.from(steps.values()).filter((s) => s.runId === runId);
212
+ return Array.from(this.cache.steps.values()).filter((s) => s.runId === runId);
123
213
  }
124
214
  }
125
215
  //# sourceMappingURL=file-db.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-db.js","sourceRoot":"","sources":["../../src/workflows/file-db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-db.js","sourceRoot":"","sources":["../../src/workflows/file-db.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-relay/sdk",
3
- "version": "4.0.30",
3
+ "version": "4.0.31",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -134,7 +134,7 @@
134
134
  "@types/ws": "^8.5.10"
135
135
  },
136
136
  "dependencies": {
137
- "@agent-relay/config": "4.0.30",
137
+ "@agent-relay/config": "4.0.31",
138
138
  "@relaycast/sdk": "^1.1.0",
139
139
  "@relayfile/sdk": "^0.1.2",
140
140
  "@sinclair/typebox": "^0.34.48",
@@ -3,9 +3,21 @@
3
3
  */
4
4
  import { getAnonymousId } from './config.js';
5
5
  import type { TelemetryEventName, TelemetryEventMap } from './events.js';
6
- export declare function initTelemetry(options?: {
6
+ export interface InitTelemetryOptions {
7
+ /** Whether to show the first-run telemetry notice. Default: true. */
7
8
  showNotice?: boolean;
8
- }): void;
9
+ /**
10
+ * The emitter's own CLI version, e.g. the root `agent-relay` package version.
11
+ * Pass this explicitly — the fallback auto-detection resolves the *telemetry*
12
+ * package's `package.json`, not the product's.
13
+ */
14
+ cliVersion?: string;
15
+ /** Resolved `@agent-relay/sdk` version, if known. */
16
+ sdkVersion?: string;
17
+ /** `agent-relay-broker` Rust binary version, if known. */
18
+ brokerVersion?: string;
19
+ }
20
+ export declare function initTelemetry(options?: InitTelemetryOptions): void;
9
21
  export declare function track<E extends TelemetryEventName>(event: E, properties?: TelemetryEventMap[E]): void;
10
22
  export declare function shutdown(): Promise<void>;
11
23
  export declare function isEnabled(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAEL,cAAc,EAKf,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAoB,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA8D3F,wBAAgB,aAAa,CAAC,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,IAAI,CAsB1E;AAED,wBAAgB,KAAK,CAAC,CAAC,SAAS,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,IAAI,CAWrG;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAa9C;AAED,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,wBAAgB,SAAS,IAAI;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,CAQA"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAEL,cAAc,EAKf,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAoB,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAkF3F,MAAM,WAAW,oBAAoB;IACnC,qEAAqE;IACrE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,IAAI,CA0BtE;AAED,wBAAgB,KAAK,CAAC,CAAC,SAAS,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,IAAI,CAWrG;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAa9C;AAED,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,wBAAgB,SAAS,IAAI;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,CAQA"}
@@ -23,7 +23,13 @@ function findPackageJson(startDir) {
23
23
  }
24
24
  return null;
25
25
  }
26
- function getVersion() {
26
+ /**
27
+ * Fallback version reader — walks up from the telemetry package's own
28
+ * `__dirname`. In an installed layout this resolves to the telemetry
29
+ * package's `package.json`, which is NOT meaningful to the product.
30
+ * Prefer having the caller pass explicit versions via `initTelemetry()`.
31
+ */
32
+ function getFallbackVersion() {
27
33
  try {
28
34
  const __filename = fileURLToPath(import.meta.url);
29
35
  const __dirname = path.dirname(__filename);
@@ -38,9 +44,17 @@ function getVersion() {
38
44
  }
39
45
  return 'unknown';
40
46
  }
41
- function buildCommonProperties() {
47
+ function buildCommonProperties(versions) {
48
+ // The primary version depends on who's emitting: prefer CLI > broker > SDK
49
+ // > fallback. This keeps `agent_relay_version` meaningful for existing
50
+ // dashboards while the typed `cli_version`/`sdk_version`/`broker_version`
51
+ // fields carry the precise per-component versions.
52
+ const primary = versions.cliVersion ?? versions.brokerVersion ?? versions.sdkVersion ?? getFallbackVersion();
42
53
  return {
43
- agent_relay_version: getVersion(),
54
+ agent_relay_version: primary,
55
+ ...(versions.cliVersion ? { cli_version: versions.cliVersion } : {}),
56
+ ...(versions.sdkVersion ? { sdk_version: versions.sdkVersion } : {}),
57
+ ...(versions.brokerVersion ? { broker_version: versions.brokerVersion } : {}),
44
58
  os: process.platform,
45
59
  os_version: os.release(),
46
60
  node_version: process.version.slice(1),
@@ -79,7 +93,11 @@ export function initTelemetry(options = {}) {
79
93
  flushInterval: 10000,
80
94
  disableGeoip: false, // CLI runs on user's machine, so IP is correct for geo
81
95
  });
82
- commonProps = buildCommonProperties();
96
+ commonProps = buildCommonProperties({
97
+ cliVersion: options.cliVersion,
98
+ sdkVersion: options.sdkVersion,
99
+ brokerVersion: options.brokerVersion,
100
+ });
83
101
  anonymousId = getAnonymousId();
84
102
  }
85
103
  export function track(event, properties) {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}