@volcengine/tls-observer-pi 0.0.1

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.
@@ -0,0 +1,35 @@
1
+ import type { PiObserverConfig } from './config';
2
+ import type { PiObservedSession } from './types';
3
+ import { type UnknownRecord } from './utils';
4
+ export declare class PiTlsTracer {
5
+ private readonly config;
6
+ private sessions;
7
+ constructor(config: PiObserverConfig);
8
+ private getSession;
9
+ private getActiveTurn;
10
+ private syncSessionModel;
11
+ private getOrCreateActiveTurn;
12
+ private findRequest;
13
+ private bindToolCallToRequest;
14
+ private getOrCreateTool;
15
+ private snapshot;
16
+ private trackPendingExport;
17
+ private exportTurn;
18
+ handleSessionStart(event: UnknownRecord, ctx?: unknown): void;
19
+ handleModelSelect(event: UnknownRecord, ctx?: unknown): void;
20
+ handleAgentStart(event: UnknownRecord, ctx?: unknown): void;
21
+ handleTurnStart(event: UnknownRecord, ctx?: unknown): void;
22
+ handleProviderRequest(event: UnknownRecord, ctx?: unknown): void;
23
+ handleProviderResponse(event: UnknownRecord, ctx?: unknown): void;
24
+ handleMessageUpdate(event: UnknownRecord, ctx?: unknown): void;
25
+ handleMessageEnd(event: UnknownRecord, ctx?: unknown): void;
26
+ handleToolStart(event: UnknownRecord, ctx?: unknown): void;
27
+ handleToolEnd(event: UnknownRecord, ctx?: unknown): void;
28
+ handleTurnEnd(event: UnknownRecord, ctx?: unknown): void;
29
+ handleAgentEnd(event: UnknownRecord, ctx?: unknown): void;
30
+ handleSessionShutdown(event: UnknownRecord, ctx?: unknown): Promise<void>;
31
+ flush(sessionID?: string): Promise<void>;
32
+ get observedSessionCount(): number;
33
+ __getSessionForTest(sessionId: string): PiObservedSession | undefined;
34
+ }
35
+ //# sourceMappingURL=tracer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../src/tracer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAgD,iBAAiB,EAAkB,MAAM,SAAS,CAAC;AAC/G,OAAO,EAiBL,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAiEjB,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAwC;gBAE3B,MAAM,EAAE,gBAAgB;IAErD,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,QAAQ;IA4BhB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,UAAU;IAqClB,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAM7D,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAK5D,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAmB3D,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAI1D,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAwBhE,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAgBjE,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAU9D,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IA6B3D,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAW1D,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAcxD,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAKxD,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;IAwBnD,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAYzE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,IAAI,oBAAoB,IAAI,MAAM,CAEjC;IAED,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;CAGtE"}
@@ -0,0 +1,41 @@
1
+ import type { PiObservedMessage, PiObservedProviderRequest, PiObservedToolCall } from '@volcengine/tls-observer-shared/agent-trace/integrations/pi';
2
+ export type { PiObservedMessage, PiObservedProviderRequest, PiObservedToolCall };
3
+ export interface PiObservedTurn {
4
+ turnId: string;
5
+ sessionId: string;
6
+ startedAt: number;
7
+ endedAt?: number;
8
+ cwd?: string;
9
+ prompt?: unknown;
10
+ images?: unknown;
11
+ context?: unknown;
12
+ model?: string;
13
+ provider?: string;
14
+ activeProviderRequestId?: string;
15
+ providerRequests: Map<string, PiObservedProviderRequest>;
16
+ providerOrder: string[];
17
+ toolCalls: Map<string, PiObservedToolCall>;
18
+ toolOrder: string[];
19
+ toolToProviderRequest: Map<string, string>;
20
+ assistantMessages: PiObservedMessage[];
21
+ messages: PiObservedMessage[];
22
+ latestAssistantOutput?: unknown;
23
+ exportState: 'open' | 'ready' | 'exporting' | 'exported';
24
+ }
25
+ export interface PiObservedSession {
26
+ sessionId: string;
27
+ cwd?: string;
28
+ agentVersion?: string;
29
+ currentModel?: string;
30
+ currentProvider?: string;
31
+ activeTurnId?: string;
32
+ turnSeq: number;
33
+ requestSeq: number;
34
+ toolSeq: number;
35
+ turns: Map<string, PiObservedTurn>;
36
+ pendingExports: Promise<unknown>[];
37
+ }
38
+ export interface PiExtensionApi {
39
+ on(eventName: string, handler: (event: Record<string, unknown>, ctx: unknown) => unknown): void;
40
+ }
41
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,yBAAyB,EACzB,kBAAkB,EACnB,MAAM,6DAA6D,CAAC;AAErE,YAAY,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,CAAC;AAEjF,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;IACzD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC3C,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;CAC1D;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACnC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,KAAK,OAAO,GAAG,IAAI,CAAC;CACjG"}
@@ -0,0 +1,49 @@
1
+ export type UnknownRecord = Record<string, unknown>;
2
+ export declare function isRecord(value: unknown): value is UnknownRecord;
3
+ export declare function stringValue(value: unknown): string | undefined;
4
+ export declare function numericValue(value: unknown): number | undefined;
5
+ export declare function nowMs(): number;
6
+ export declare function compactRecord(input: UnknownRecord): UnknownRecord;
7
+ export declare function getRequestKey(event: UnknownRecord, fallback: string): string;
8
+ export declare function getToolCallId(event: UnknownRecord): string | undefined;
9
+ export declare function getToolName(event: UnknownRecord): string;
10
+ export declare function getToolInput(event: UnknownRecord): unknown;
11
+ export declare function getProviderPayload(event: UnknownRecord): unknown;
12
+ export declare function getMessageFromEvent(event: UnknownRecord): UnknownRecord | undefined;
13
+ export declare function extractTextContent(content: unknown): string | undefined;
14
+ export declare function extractAssistantOutput(message: unknown): unknown | undefined;
15
+ export declare function extractToolCalls(messageOrEvent: unknown): Array<{
16
+ id: string;
17
+ name?: string;
18
+ arguments?: unknown;
19
+ }>;
20
+ export declare function normalizeMessage(event: UnknownRecord): {
21
+ id?: string;
22
+ role: string;
23
+ content?: unknown;
24
+ model?: string;
25
+ provider?: string;
26
+ createdAt?: number;
27
+ endedAt?: number;
28
+ providerRequestId?: string;
29
+ toolCallId?: string;
30
+ toolName?: string;
31
+ isError?: boolean;
32
+ toolCalls?: Array<{
33
+ id: string;
34
+ name?: string;
35
+ arguments?: unknown;
36
+ }>;
37
+ } | undefined;
38
+ export declare function extractUsage(messageOrEvent: UnknownRecord): {
39
+ inputTokens?: number;
40
+ outputTokens?: number;
41
+ cacheReadInputTokens?: number;
42
+ cacheCreationInputTokens?: number;
43
+ reasoningOutputTokens?: number;
44
+ totalTokens?: number;
45
+ } | undefined;
46
+ export declare function extractResponseMetadata(event: UnknownRecord): UnknownRecord;
47
+ export declare function extractToolResult(event: UnknownRecord): unknown;
48
+ export declare function sessionIdFromContext(ctx?: unknown): string | undefined;
49
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEpD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAE/D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE9D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE/D;AAED,wBAAgB,KAAK,IAAI,MAAM,CAE9B;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,CAIjE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAU5E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAGtE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CASxD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAS1D;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAEhE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,GAAG,SAAS,CAInF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWvE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAO5E;AAYD,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,OAAO,GAAG,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAgCnH;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG;IACtD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACvE,GAAG,SAAS,CAkBZ;AAED,wBAAgB,YAAY,CAAC,cAAc,EAAE,aAAa,GAAG;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,SAAS,CAkBZ;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,CAQ3E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAE/D;AAED,wBAAgB,oBAAoB,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAYtE"}
package/package.json ADDED
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "@volcengine/tls-observer-pi",
3
+ "version": "0.0.1",
4
+ "description": "Export Pi plugin telemetry to Volcengine TLS with GenAI OTEL traces.",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js"
11
+ }
12
+ },
13
+ "types": "./dist/index.d.ts",
14
+ "engines": {
15
+ "node": ">=18"
16
+ },
17
+ "keywords": [
18
+ "pi",
19
+ "observability",
20
+ "opentelemetry",
21
+ "tls"
22
+ ],
23
+ "license": "Apache-2.0",
24
+ "pi": {
25
+ "extensions": [
26
+ "./dist/index.js"
27
+ ]
28
+ },
29
+ "publishConfig": {
30
+ "access": "public"
31
+ },
32
+ "dependencies": {
33
+ "@volcengine/openapi": "^1.36.1"
34
+ }
35
+ }