@introspection-sdk/introspection-node 0.22.0 → 0.31.0
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.
- package/README.md +430 -8
- package/dist/auth-client.d.ts +182 -0
- package/dist/auth-client.d.ts.map +1 -0
- package/dist/auth-client.js +402 -0
- package/dist/auth-client.js.map +1 -0
- package/dist/auth.d.ts +12 -2
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/client.d.ts +51 -6
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +80 -6
- package/dist/client.js.map +1 -1
- package/dist/data-plane.d.ts +69 -0
- package/dist/data-plane.d.ts.map +1 -0
- package/dist/data-plane.js +61 -0
- package/dist/data-plane.js.map +1 -0
- package/dist/http.d.ts +23 -4
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +26 -7
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +14 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -1
- package/dist/index.js.map +1 -1
- package/dist/otel/index.d.ts +3 -1
- package/dist/otel/index.d.ts.map +1 -1
- package/dist/otel/index.js +2 -1
- package/dist/otel/index.js.map +1 -1
- package/dist/otel/init.d.ts +7 -2
- package/dist/otel/init.d.ts.map +1 -1
- package/dist/otel/init.js +9 -2
- package/dist/otel/init.js.map +1 -1
- package/dist/otel/logs.d.ts +23 -6
- package/dist/otel/logs.d.ts.map +1 -1
- package/dist/otel/logs.js +56 -13
- package/dist/otel/logs.js.map +1 -1
- package/dist/resources/annotations.d.ts +28 -0
- package/dist/resources/annotations.d.ts.map +1 -0
- package/dist/resources/annotations.js +198 -0
- package/dist/resources/annotations.js.map +1 -0
- package/dist/resources/app-connections.d.ts +35 -0
- package/dist/resources/app-connections.d.ts.map +1 -0
- package/dist/resources/app-connections.js +66 -0
- package/dist/resources/app-connections.js.map +1 -0
- package/dist/resources/automations.d.ts +5 -0
- package/dist/resources/automations.d.ts.map +1 -0
- package/dist/resources/automations.js +6 -0
- package/dist/resources/automations.js.map +1 -0
- package/dist/resources/connectors.d.ts +34 -2
- package/dist/resources/connectors.d.ts.map +1 -1
- package/dist/resources/connectors.js +53 -1
- package/dist/resources/connectors.js.map +1 -1
- package/dist/resources/experiments.d.ts +6 -6
- package/dist/resources/experiments.d.ts.map +1 -1
- package/dist/resources/experiments.js +29 -6
- package/dist/resources/experiments.js.map +1 -1
- package/dist/resources/members.d.ts +33 -0
- package/dist/resources/members.d.ts.map +1 -0
- package/dist/resources/members.js +59 -0
- package/dist/resources/members.js.map +1 -0
- package/dist/resources/repositories.d.ts +52 -0
- package/dist/resources/repositories.d.ts.map +1 -0
- package/dist/resources/repositories.js +112 -0
- package/dist/resources/repositories.js.map +1 -0
- package/dist/runner.d.ts +19 -5
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +18 -3
- package/dist/runner.js.map +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +1 -1
- package/dist/utils.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +21 -16
package/dist/otel/init.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* // An installed Pi agent is wired into the shared provider automatically.
|
|
12
12
|
* ```
|
|
13
13
|
*
|
|
14
|
-
* It also exposes the `track` / `feedback` / `identify` analytics surface and a
|
|
14
|
+
* It also exposes the `logEvent` / `track` / `feedback` / `identify` analytics surface and a
|
|
15
15
|
* `conversation()` scope, proxied to a global {@link IntrospectionLogs}.
|
|
16
16
|
*/
|
|
17
17
|
import { context, propagation } from "@opentelemetry/api";
|
|
@@ -164,7 +164,7 @@ async function initOnce(options) {
|
|
|
164
164
|
/** Return the global logs client. Throws if {@link init} has not been called. */
|
|
165
165
|
export function getClient() {
|
|
166
166
|
if (!state.logs) {
|
|
167
|
-
throw new Error("introspection.init() must be called before using track / feedback / identify.");
|
|
167
|
+
throw new Error("introspection.init() must be called before using logEvent / track / feedback / identify.");
|
|
168
168
|
}
|
|
169
169
|
return state.logs;
|
|
170
170
|
}
|
|
@@ -175,6 +175,13 @@ export function getTracerProvider() {
|
|
|
175
175
|
}
|
|
176
176
|
return state.provider;
|
|
177
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* Log an app event under any custom name. Requires {@link init} first.
|
|
180
|
+
* See {@link IntrospectionLogs.logEvent}.
|
|
181
|
+
*/
|
|
182
|
+
export function logEvent(name, attributes, options) {
|
|
183
|
+
getClient().logEvent(name, attributes, options);
|
|
184
|
+
}
|
|
178
185
|
/** Track an analytics event. Requires {@link init} first. */
|
|
179
186
|
export function track(eventName, properties, options) {
|
|
180
187
|
getClient().track(eventName, properties, options);
|
package/dist/otel/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/otel/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAuB,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/otel/init.ts"],"names":[],"mappings":"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"}
|
package/dist/otel/logs.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* IntrospectionLogs — OTel logs exporter for Introspection.
|
|
3
3
|
*
|
|
4
|
-
* Owns its own `LoggerProvider` and OTLP log exporter. Provides `
|
|
5
|
-
* `feedback`, `identify`, and async-context helpers (`withBaggage`,
|
|
4
|
+
* Owns its own `LoggerProvider` and OTLP log exporter. Provides `logEvent`,
|
|
5
|
+
* `track`, `feedback`, `identify`, and async-context helpers (`withBaggage`,
|
|
6
6
|
* `withAgent`, `withConversation`, etc.) that propagate identity and
|
|
7
7
|
* gen_ai context through OpenTelemetry baggage.
|
|
8
8
|
*
|
|
@@ -28,10 +28,7 @@
|
|
|
28
28
|
* ```
|
|
29
29
|
*/
|
|
30
30
|
import { type LogRecordExporter } from "@opentelemetry/sdk-logs";
|
|
31
|
-
import { type FeedbackOptions, type UserTraits } from "../types.js";
|
|
32
|
-
/**
|
|
33
|
-
* Configuration for {@link IntrospectionLogs}.
|
|
34
|
-
*/
|
|
31
|
+
import { type FeedbackOptions, type LogEventOptions, type UserTraits } from "../types.js";
|
|
35
32
|
export interface IntrospectionLogsOptions {
|
|
36
33
|
/** Authentication token (env: INTROSPECTION_TOKEN). */
|
|
37
34
|
token?: string;
|
|
@@ -87,6 +84,26 @@ export declare class IntrospectionLogs {
|
|
|
87
84
|
private getIdentityFromContext;
|
|
88
85
|
private getTimestamp;
|
|
89
86
|
private buildAttributes;
|
|
87
|
+
/**
|
|
88
|
+
* Log an app event under any custom name, e.g. `"ark.feed.entry"`.
|
|
89
|
+
*
|
|
90
|
+
* `attributes` land under `properties.*`, which is where the platform's
|
|
91
|
+
* `introspection.track` read projection finds them; read the events back
|
|
92
|
+
* with `client.events.list({ event_name: "introspection.track" })`.
|
|
93
|
+
* Identity and gen_ai context are taken from the active baggage unless
|
|
94
|
+
* `options.identity` overrides them.
|
|
95
|
+
*
|
|
96
|
+
* Pass a stable `options.eventId` when delivery may repeat: consumers
|
|
97
|
+
* dedupe on it, so re-sending the same id is safe.
|
|
98
|
+
*
|
|
99
|
+
* @throws Error when `name` is empty or falls under a reserved namespace
|
|
100
|
+
* (`introspection.*`, `gen_ai.*`).
|
|
101
|
+
*/
|
|
102
|
+
logEvent(name: string, attributes?: Record<string, unknown>, options?: LogEventOptions): void;
|
|
103
|
+
/**
|
|
104
|
+
* Track an analytics event. A thin alias of {@link logEvent} kept for the
|
|
105
|
+
* Segment-style call shape.
|
|
106
|
+
*/
|
|
90
107
|
track(eventName: string, properties?: Record<string, unknown>, options?: {
|
|
91
108
|
eventId?: string;
|
|
92
109
|
}): void;
|
package/dist/otel/logs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/otel/logs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,EAGL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAiBjC,OAAO,
|
|
1
|
+
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/otel/logs.ts"],"names":[],"mappings":"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"}
|
package/dist/otel/logs.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* IntrospectionLogs — OTel logs exporter for Introspection.
|
|
3
3
|
*
|
|
4
|
-
* Owns its own `LoggerProvider` and OTLP log exporter. Provides `
|
|
5
|
-
* `feedback`, `identify`, and async-context helpers (`withBaggage`,
|
|
4
|
+
* Owns its own `LoggerProvider` and OTLP log exporter. Provides `logEvent`,
|
|
5
|
+
* `track`, `feedback`, `identify`, and async-context helpers (`withBaggage`,
|
|
6
6
|
* `withAgent`, `withConversation`, etc.) that propagate identity and
|
|
7
7
|
* gen_ai context through OpenTelemetry baggage.
|
|
8
8
|
*
|
|
@@ -35,7 +35,16 @@ import { ATTR_SERVICE_NAME } from "@opentelemetry/semantic-conventions";
|
|
|
35
35
|
import { propagation, context } from "@opentelemetry/api";
|
|
36
36
|
import { DEFAULT_SERVICE_NAME, exporterHeaders, logger as sdkLogger, otlpUserAgent, withOtlpHttpsProxy, } from "../utils.js";
|
|
37
37
|
import { VERSION } from "../version.js";
|
|
38
|
-
import { generateEventId, toAttributeValue, } from "../types.js";
|
|
38
|
+
import { generateEventId, reservedEventNamePrefix, toAttributeValue, } from "../types.js";
|
|
39
|
+
/**
|
|
40
|
+
* Configuration for {@link IntrospectionLogs}.
|
|
41
|
+
*/
|
|
42
|
+
const SEVERITY_NUMBERS = {
|
|
43
|
+
DEBUG: SeverityNumber.DEBUG,
|
|
44
|
+
INFO: SeverityNumber.INFO,
|
|
45
|
+
WARN: SeverityNumber.WARN,
|
|
46
|
+
ERROR: SeverityNumber.ERROR,
|
|
47
|
+
};
|
|
39
48
|
export class IntrospectionLogs {
|
|
40
49
|
loggerProvider;
|
|
41
50
|
otelLogger;
|
|
@@ -171,19 +180,53 @@ export class IntrospectionLogs {
|
|
|
171
180
|
}
|
|
172
181
|
return attributes;
|
|
173
182
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
183
|
+
/**
|
|
184
|
+
* Log an app event under any custom name, e.g. `"ark.feed.entry"`.
|
|
185
|
+
*
|
|
186
|
+
* `attributes` land under `properties.*`, which is where the platform's
|
|
187
|
+
* `introspection.track` read projection finds them; read the events back
|
|
188
|
+
* with `client.events.list({ event_name: "introspection.track" })`.
|
|
189
|
+
* Identity and gen_ai context are taken from the active baggage unless
|
|
190
|
+
* `options.identity` overrides them.
|
|
191
|
+
*
|
|
192
|
+
* Pass a stable `options.eventId` when delivery may repeat: consumers
|
|
193
|
+
* dedupe on it, so re-sending the same id is safe.
|
|
194
|
+
*
|
|
195
|
+
* @throws Error when `name` is empty or falls under a reserved namespace
|
|
196
|
+
* (`introspection.*`, `gen_ai.*`).
|
|
197
|
+
*/
|
|
198
|
+
logEvent(name, attributes, options = {}) {
|
|
199
|
+
if (!name) {
|
|
200
|
+
throw new Error("logEvent: event name must be a non-empty string.");
|
|
201
|
+
}
|
|
202
|
+
const reserved = reservedEventNamePrefix(name);
|
|
203
|
+
if (reserved) {
|
|
204
|
+
throw new Error(`logEvent: event name "${name}" is in the reserved "${reserved}*" namespace, which belongs to the platform and OpenTelemetry. Use your own prefix, e.g. "myapp.${name.slice(reserved.length)}".`);
|
|
205
|
+
}
|
|
206
|
+
const contextIdentity = this.getIdentityFromContext();
|
|
207
|
+
const severity = options.severity ?? "INFO";
|
|
179
208
|
this.otelLogger.emit({
|
|
180
|
-
timestamp: this.getTimestamp(),
|
|
209
|
+
timestamp: options.timestamp ?? this.getTimestamp(),
|
|
181
210
|
context: context.active(),
|
|
182
|
-
severityNumber:
|
|
183
|
-
severityText:
|
|
184
|
-
attributes,
|
|
211
|
+
severityNumber: SEVERITY_NUMBERS[severity],
|
|
212
|
+
severityText: severity,
|
|
213
|
+
attributes: this.buildAttributes(name, {
|
|
214
|
+
properties: attributes,
|
|
215
|
+
eventId: options.eventId,
|
|
216
|
+
identity: {
|
|
217
|
+
userId: options.identity?.userId ?? contextIdentity.userId,
|
|
218
|
+
anonymousId: options.identity?.anonymousId ?? contextIdentity.anonymousId,
|
|
219
|
+
},
|
|
220
|
+
}),
|
|
185
221
|
});
|
|
186
|
-
sdkLogger.debug(`
|
|
222
|
+
sdkLogger.debug(`Logged event: ${name}`);
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Track an analytics event. A thin alias of {@link logEvent} kept for the
|
|
226
|
+
* Segment-style call shape.
|
|
227
|
+
*/
|
|
228
|
+
track(eventName, properties, options) {
|
|
229
|
+
this.logEvent(eventName, properties, { eventId: options?.eventId });
|
|
187
230
|
}
|
|
188
231
|
feedback(name, options = {}) {
|
|
189
232
|
const { comments, conversationId, previousResponseId, eventId, ...extra } = options;
|
package/dist/otel/logs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/otel/logs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,cAAc,EAAsB,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EACL,cAAc,EACd,uBAAuB,GAExB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EACL,sBAAsB,EACtB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,MAAM,IAAI,SAAS,EACnB,aAAa,EACb,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,eAAe,EACf,gBAAgB,
|
|
1
|
+
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/otel/logs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type ProjectLabel, type ProjectLabelCreate, type ProjectLabelListParams, type ProjectLabelUpdate, type AnnotationListParams, type AnnotationEventOptions, type AnnotationMutation, type AnnotationState, type AnnotationTarget } from "@introspection-sdk/types";
|
|
2
|
+
import type { HttpClient } from "../http.js";
|
|
3
|
+
import { Paginator } from "../pagination.js";
|
|
4
|
+
/** Managed project label catalog used by annotations. */
|
|
5
|
+
export declare class ProjectLabelsApi {
|
|
6
|
+
private readonly dpHttp;
|
|
7
|
+
constructor(dpHttp: HttpClient);
|
|
8
|
+
list(params?: ProjectLabelListParams): Paginator<ProjectLabel>;
|
|
9
|
+
create(body: ProjectLabelCreate): Promise<ProjectLabel>;
|
|
10
|
+
get(slug: string): Promise<ProjectLabel>;
|
|
11
|
+
update(slug: string, body: ProjectLabelUpdate): Promise<ProjectLabel>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Member-authored span annotations. Every create call appends exactly one
|
|
15
|
+
* event; labels and reviewers are complete snapshots.
|
|
16
|
+
*/
|
|
17
|
+
export declare class AnnotationsApi {
|
|
18
|
+
private readonly cpHttp;
|
|
19
|
+
private readonly dpHttp;
|
|
20
|
+
constructor(cpHttp: HttpClient, dpHttp: HttpClient);
|
|
21
|
+
list(params?: AnnotationListParams): Paginator<AnnotationState>;
|
|
22
|
+
/** Append exactly one annotation mutation. */
|
|
23
|
+
create(target: AnnotationTarget, mutation: AnnotationMutation, options?: AnnotationEventOptions): Promise<void>;
|
|
24
|
+
private resolveReviewerIds;
|
|
25
|
+
}
|
|
26
|
+
export declare function attachAnnotations(cpHttp: HttpClient, dpHttp: HttpClient): AnnotationsApi;
|
|
27
|
+
export declare function attachProjectLabels(dpHttp: HttpClient): ProjectLabelsApi;
|
|
28
|
+
//# sourceMappingURL=annotations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../src/resources/annotations.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EAEtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAkB,MAAM,kBAAkB,CAAC;AAuD7D,yDAAyD;AACzD,qBAAa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAE/C,IAAI,CAAC,MAAM,GAAE,sBAA2B,GAAG,SAAS,CAAC,YAAY,CAAC;IAYlE,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IA2BvD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAOxC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;CAatE;AAED;;;GAGG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,UAAU;IAGrC,IAAI,CAAC,MAAM,GAAE,oBAAyB,GAAG,SAAS,CAAC,eAAe,CAAC;IAkDnE,8CAA8C;IACxC,MAAM,CACV,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,IAAI,CAAC;YAsBF,kBAAkB;CAyCjC;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,UAAU,GACjB,cAAc,CAEhB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,gBAAgB,CAExE"}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import { randomBytes } from "node:crypto";
|
|
2
|
+
import { ConflictError, NotFoundError, ValidationError, } from "@introspection-sdk/types";
|
|
3
|
+
import { cursorPaginate } from "../pagination.js";
|
|
4
|
+
function clientValidationError(message, code) {
|
|
5
|
+
return new ValidationError({
|
|
6
|
+
message,
|
|
7
|
+
status: 422,
|
|
8
|
+
code,
|
|
9
|
+
body: null,
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
/** Mint a time-ordered UUIDv7 without adding a runtime dependency. */
|
|
13
|
+
function annotationEventId(now = Date.now()) {
|
|
14
|
+
const bytes = Buffer.allocUnsafe(16);
|
|
15
|
+
let timestamp = BigInt(now);
|
|
16
|
+
for (let index = 5; index >= 0; index--) {
|
|
17
|
+
bytes[index] = Number(timestamp & 0xffn);
|
|
18
|
+
timestamp >>= 8n;
|
|
19
|
+
}
|
|
20
|
+
randomBytes(10).copy(bytes, 6);
|
|
21
|
+
bytes[6] = (bytes[6] & 0x0f) | 0x70;
|
|
22
|
+
bytes[8] = (bytes[8] & 0x3f) | 0x80;
|
|
23
|
+
const hex = bytes.toString("hex");
|
|
24
|
+
return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
|
|
25
|
+
}
|
|
26
|
+
function normalizedEmails(emails) {
|
|
27
|
+
const values = typeof emails === "string" ? [emails] : emails;
|
|
28
|
+
const normalized = [
|
|
29
|
+
...new Set(values.map((email) => email.trim().toLowerCase())),
|
|
30
|
+
];
|
|
31
|
+
if (normalized.length === 0 ||
|
|
32
|
+
normalized.some((email) => email.length === 0)) {
|
|
33
|
+
throw clientValidationError("At least one non-empty reviewer email is required", "invalid_annotation_reviewer_email");
|
|
34
|
+
}
|
|
35
|
+
if (normalized.length > 64) {
|
|
36
|
+
throw clientValidationError("At most 64 reviewer emails are allowed", "too_many_annotation_reviewers");
|
|
37
|
+
}
|
|
38
|
+
return normalized;
|
|
39
|
+
}
|
|
40
|
+
/** Managed project label catalog used by annotations. */
|
|
41
|
+
export class ProjectLabelsApi {
|
|
42
|
+
dpHttp;
|
|
43
|
+
constructor(dpHttp) {
|
|
44
|
+
this.dpHttp = dpHttp;
|
|
45
|
+
}
|
|
46
|
+
list(params = {}) {
|
|
47
|
+
return cursorPaginate((next) => this.dpHttp.request({
|
|
48
|
+
method: "GET",
|
|
49
|
+
path: "/v1/project-labels",
|
|
50
|
+
query: { ...params, next },
|
|
51
|
+
}), params.next);
|
|
52
|
+
}
|
|
53
|
+
create(body) {
|
|
54
|
+
const slug = body.slug.trim();
|
|
55
|
+
if (!slug || slug.length > 128) {
|
|
56
|
+
throw clientValidationError("Project label slug must contain 1 to 128 characters", "invalid_project_label_slug");
|
|
57
|
+
}
|
|
58
|
+
if (!/^#[0-9a-f]{6}$/i.test(body.color)) {
|
|
59
|
+
throw clientValidationError("Project label color must be a six-digit hex color such as #f97316", "invalid_project_label_color");
|
|
60
|
+
}
|
|
61
|
+
if (body.description != null && body.description.length > 2_000) {
|
|
62
|
+
throw clientValidationError("Project label description must not exceed 2000 characters", "invalid_project_label_description");
|
|
63
|
+
}
|
|
64
|
+
return this.dpHttp.request({
|
|
65
|
+
method: "POST",
|
|
66
|
+
path: "/v1/project-labels",
|
|
67
|
+
body: { ...body, slug, color: body.color.toLowerCase() },
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
get(slug) {
|
|
71
|
+
return this.dpHttp.request({
|
|
72
|
+
method: "GET",
|
|
73
|
+
path: `/v1/project-labels/${encodeURIComponent(slug)}`,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
update(slug, body) {
|
|
77
|
+
if (body.description != null && body.description.length > 2_000) {
|
|
78
|
+
throw clientValidationError("Project label description must not exceed 2000 characters", "invalid_project_label_description");
|
|
79
|
+
}
|
|
80
|
+
return this.dpHttp.request({
|
|
81
|
+
method: "PATCH",
|
|
82
|
+
path: `/v1/project-labels/${encodeURIComponent(slug)}`,
|
|
83
|
+
body,
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Member-authored span annotations. Every create call appends exactly one
|
|
89
|
+
* event; labels and reviewers are complete snapshots.
|
|
90
|
+
*/
|
|
91
|
+
export class AnnotationsApi {
|
|
92
|
+
cpHttp;
|
|
93
|
+
dpHttp;
|
|
94
|
+
constructor(cpHttp, dpHttp) {
|
|
95
|
+
this.cpHttp = cpHttp;
|
|
96
|
+
this.dpHttp = dpHttp;
|
|
97
|
+
}
|
|
98
|
+
list(params = {}) {
|
|
99
|
+
if (params.annotated_by_member_id && params.annotated_by_email) {
|
|
100
|
+
throw clientValidationError("Use annotated_by_member_id or annotated_by_email, not both", "conflicting_annotation_annotator_filters");
|
|
101
|
+
}
|
|
102
|
+
if (params.assignee_member_id && params.assigned_to_email) {
|
|
103
|
+
throw clientValidationError("Use assignee_member_id or assigned_to_email, not both", "conflicting_annotation_assignee_filters");
|
|
104
|
+
}
|
|
105
|
+
const { annotated_by_email, assigned_to_email, ...wireParams } = params;
|
|
106
|
+
let resolvedFilters;
|
|
107
|
+
const resolveFilters = () => {
|
|
108
|
+
resolvedFilters ??= (async () => {
|
|
109
|
+
const emails = [annotated_by_email, assigned_to_email].filter((email) => Boolean(email));
|
|
110
|
+
const ids = emails.length ? await this.resolveReviewerIds(emails) : [];
|
|
111
|
+
const sameEmail = annotated_by_email !== undefined &&
|
|
112
|
+
assigned_to_email !== undefined &&
|
|
113
|
+
annotated_by_email.trim().toLowerCase() ===
|
|
114
|
+
assigned_to_email.trim().toLowerCase();
|
|
115
|
+
return {
|
|
116
|
+
...wireParams,
|
|
117
|
+
...(annotated_by_email ? { annotated_by_member_id: ids[0] } : {}),
|
|
118
|
+
...(assigned_to_email
|
|
119
|
+
? {
|
|
120
|
+
assignee_member_id: ids[annotated_by_email && !sameEmail ? 1 : 0],
|
|
121
|
+
}
|
|
122
|
+
: {}),
|
|
123
|
+
};
|
|
124
|
+
})();
|
|
125
|
+
return resolvedFilters;
|
|
126
|
+
};
|
|
127
|
+
return cursorPaginate(async (next) => this.dpHttp.request({
|
|
128
|
+
method: "GET",
|
|
129
|
+
path: "/v1/annotations",
|
|
130
|
+
query: { ...(await resolveFilters()), next },
|
|
131
|
+
}), params.next);
|
|
132
|
+
}
|
|
133
|
+
/** Append exactly one annotation mutation. */
|
|
134
|
+
async create(target, mutation, options = {}) {
|
|
135
|
+
const wireMutation = mutation.reviewerEmails !== undefined
|
|
136
|
+
? {
|
|
137
|
+
assignee_member_ids: mutation.reviewerEmails.length === 0
|
|
138
|
+
? []
|
|
139
|
+
: await this.resolveReviewerIds(mutation.reviewerEmails),
|
|
140
|
+
}
|
|
141
|
+
: mutation;
|
|
142
|
+
return this.dpHttp.request({
|
|
143
|
+
method: "POST",
|
|
144
|
+
path: "/v1/annotations",
|
|
145
|
+
body: {
|
|
146
|
+
...target,
|
|
147
|
+
event_id: options.event_id ?? annotationEventId(),
|
|
148
|
+
...wireMutation,
|
|
149
|
+
},
|
|
150
|
+
expect: "empty",
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
async resolveReviewerIds(emails) {
|
|
154
|
+
const requested = normalizedEmails(emails);
|
|
155
|
+
const matches = new Map();
|
|
156
|
+
for (const email of requested)
|
|
157
|
+
matches.set(email, []);
|
|
158
|
+
const members = cursorPaginate((next) => this.cpHttp.request({
|
|
159
|
+
method: "GET",
|
|
160
|
+
path: "/v1/members",
|
|
161
|
+
query: { limit: 1000, member_type: "business", next },
|
|
162
|
+
}));
|
|
163
|
+
for await (const member of members) {
|
|
164
|
+
if (member.is_deactivated || !member.email)
|
|
165
|
+
continue;
|
|
166
|
+
matches.get(member.email.trim().toLowerCase())?.push(member);
|
|
167
|
+
}
|
|
168
|
+
const memberIds = [];
|
|
169
|
+
for (const email of requested) {
|
|
170
|
+
const candidates = matches.get(email) ?? [];
|
|
171
|
+
if (candidates.length === 0) {
|
|
172
|
+
throw new NotFoundError({
|
|
173
|
+
message: `No active domain expert found for '${email}'`,
|
|
174
|
+
status: 404,
|
|
175
|
+
code: "annotation_reviewer_not_found",
|
|
176
|
+
body: { email },
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
if (candidates.length > 1) {
|
|
180
|
+
throw new ConflictError({
|
|
181
|
+
message: `Multiple active domain experts found for '${email}'`,
|
|
182
|
+
status: 409,
|
|
183
|
+
code: "annotation_reviewer_ambiguous",
|
|
184
|
+
body: { email, member_ids: candidates.map((member) => member.id) },
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
memberIds.push(candidates[0].id);
|
|
188
|
+
}
|
|
189
|
+
return memberIds;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
export function attachAnnotations(cpHttp, dpHttp) {
|
|
193
|
+
return new AnnotationsApi(cpHttp, dpHttp);
|
|
194
|
+
}
|
|
195
|
+
export function attachProjectLabels(dpHttp) {
|
|
196
|
+
return new ProjectLabelsApi(dpHttp);
|
|
197
|
+
}
|
|
198
|
+
//# sourceMappingURL=annotations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/resources/annotations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { AppConnection, AppConnectionCreateParams, AppConnectionListParams, ConnectPage, Uuid } from "@introspection-sdk/types";
|
|
2
|
+
import type { HttpClient } from "../http.js";
|
|
3
|
+
import { Paginator } from "../pagination.js";
|
|
4
|
+
/**
|
|
5
|
+
* CRUD on `/v1/connections` (Data Plane): the apps members connected for
|
|
6
|
+
* themselves. A caller who is not an administrator sees and manages only
|
|
7
|
+
* their own. Reads need `connections:read`, `create` needs
|
|
8
|
+
* `connections:write`, `delete` needs `connections:delete`.
|
|
9
|
+
*
|
|
10
|
+
* Connections under a connector are a different resource, on the Control
|
|
11
|
+
* Plane's `client.connectors.connections`.
|
|
12
|
+
*
|
|
13
|
+
* `TCreate` narrows `create`'s params the way `TasksApi` narrows its own:
|
|
14
|
+
* the client requires `runtime`, while a runner fills in its runtime group.
|
|
15
|
+
*/
|
|
16
|
+
export declare class AppConnectionsApi<TCreate extends AppConnectionCreateParams = AppConnectionCreateParams> {
|
|
17
|
+
private readonly http;
|
|
18
|
+
private readonly defaultRuntime;
|
|
19
|
+
constructor(http: HttpClient, defaultRuntime?: () => string | null | undefined);
|
|
20
|
+
/**
|
|
21
|
+
* List connections. `await` the result for the first page, or `for await`
|
|
22
|
+
* it to stream every connection across pages. Filters ride every page.
|
|
23
|
+
*/
|
|
24
|
+
list(params?: AppConnectionListParams): Paginator<AppConnection>;
|
|
25
|
+
/**
|
|
26
|
+
* Mint a single-use connect page for one app. Send the member to
|
|
27
|
+
* `authorize_url`; the connection exists once they finish there.
|
|
28
|
+
*/
|
|
29
|
+
create(params: TCreate): Promise<ConnectPage>;
|
|
30
|
+
/** Read one connection. */
|
|
31
|
+
get(connectionId: Uuid): Promise<AppConnection>;
|
|
32
|
+
/** Remove a connection. */
|
|
33
|
+
delete(connectionId: Uuid): Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=app-connections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-connections.d.ts","sourceRoot":"","sources":["../../src/resources/app-connections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,yBAAyB,EACzB,uBAAuB,EACvB,WAAW,EAEX,IAAI,EACL,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAkB,MAAM,kBAAkB,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,qBAAa,iBAAiB,CAC5B,OAAO,SAAS,yBAAyB,GAAG,yBAAyB;IAGnE,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,IAAI,EAAE,UAAU,EAChB,cAAc,GAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAC5C;IAGb;;;OAGG;IACH,IAAI,CAAC,MAAM,GAAE,uBAA4B,GAAG,SAAS,CAAC,aAAa,CAAC;IAapE;;;OAGG;IACG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC;IAgBnD,2BAA2B;IAC3B,GAAG,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC;IAO/C,2BAA2B;IAC3B,MAAM,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAO1C"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { cursorPaginate } from "../pagination.js";
|
|
2
|
+
/**
|
|
3
|
+
* CRUD on `/v1/connections` (Data Plane): the apps members connected for
|
|
4
|
+
* themselves. A caller who is not an administrator sees and manages only
|
|
5
|
+
* their own. Reads need `connections:read`, `create` needs
|
|
6
|
+
* `connections:write`, `delete` needs `connections:delete`.
|
|
7
|
+
*
|
|
8
|
+
* Connections under a connector are a different resource, on the Control
|
|
9
|
+
* Plane's `client.connectors.connections`.
|
|
10
|
+
*
|
|
11
|
+
* `TCreate` narrows `create`'s params the way `TasksApi` narrows its own:
|
|
12
|
+
* the client requires `runtime`, while a runner fills in its runtime group.
|
|
13
|
+
*/
|
|
14
|
+
export class AppConnectionsApi {
|
|
15
|
+
http;
|
|
16
|
+
defaultRuntime;
|
|
17
|
+
constructor(http, defaultRuntime = () => undefined) {
|
|
18
|
+
this.http = http;
|
|
19
|
+
this.defaultRuntime = defaultRuntime;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* List connections. `await` the result for the first page, or `for await`
|
|
23
|
+
* it to stream every connection across pages. Filters ride every page.
|
|
24
|
+
*/
|
|
25
|
+
list(params = {}) {
|
|
26
|
+
const { next: start, ...filters } = params;
|
|
27
|
+
return cursorPaginate((next) => this.http.request({
|
|
28
|
+
method: "GET",
|
|
29
|
+
path: "/v1/connections",
|
|
30
|
+
query: { ...filters, next },
|
|
31
|
+
}), start);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Mint a single-use connect page for one app. Send the member to
|
|
35
|
+
* `authorize_url`; the connection exists once they finish there.
|
|
36
|
+
*/
|
|
37
|
+
async create(params) {
|
|
38
|
+
const runtime = params.runtime ?? this.defaultRuntime();
|
|
39
|
+
if (!runtime) {
|
|
40
|
+
throw new Error("connections.create() needs the runtime whose sessions use the " +
|
|
41
|
+
"connection: pass `runtime`, or call it on a runner whose context " +
|
|
42
|
+
"carries a runtime_group_id.");
|
|
43
|
+
}
|
|
44
|
+
return this.http.request({
|
|
45
|
+
method: "POST",
|
|
46
|
+
path: "/v1/connections",
|
|
47
|
+
body: { app: params.app, runtime },
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
/** Read one connection. */
|
|
51
|
+
get(connectionId) {
|
|
52
|
+
return this.http.request({
|
|
53
|
+
method: "GET",
|
|
54
|
+
path: `/v1/connections/${encodeURIComponent(connectionId)}`,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
/** Remove a connection. */
|
|
58
|
+
delete(connectionId) {
|
|
59
|
+
return this.http.request({
|
|
60
|
+
method: "DELETE",
|
|
61
|
+
path: `/v1/connections/${encodeURIComponent(connectionId)}`,
|
|
62
|
+
expect: "empty",
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=app-connections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-connections.js","sourceRoot":"","sources":["../../src/resources/app-connections.ts"],"names":[],"mappings":"AASA,OAAO,EAAa,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,iBAAiB;IAIT;IACA;IAFnB,YACmB,IAAgB,EAChB,iBAAkD,GAAG,EAAE,CACtE,SAAS;QAFM,SAAI,GAAJ,IAAI,CAAY;QAChB,mBAAc,GAAd,cAAc,CACpB;IACV,CAAC;IAEJ;;;OAGG;IACH,IAAI,CAAC,SAAkC,EAAE;QACvC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC;QAC3C,OAAO,cAAc,CACnB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAA2B;YAC1C,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAA6B;SACvD,CAAC,EACJ,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,MAAe;QAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,gEAAgE;gBAC9D,mEAAmE;gBACnE,6BAA6B,CAChC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAc;YACpC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE;SACnC,CAAC,CAAC;IACL,CAAC;IAED,2BAA2B;IAC3B,GAAG,CAAC,YAAkB;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAgB;YACtC,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,mBAAmB,kBAAkB,CAAC,YAAY,CAAC,EAAE;SAC5D,CAAC,CAAC;IACL,CAAC;IAED,2BAA2B;IAC3B,MAAM,CAAC,YAAkB;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAO;YAC7B,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,mBAAmB,kBAAkB,CAAC,YAAY,CAAC,EAAE;YAC3D,MAAM,EAAE,OAAO;SAChB,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automations.d.ts","sourceRoot":"","sources":["../../src/resources/automations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,cAAc,CAElE"}
|