@agent-inspect/langchain 6.7.4 → 6.8.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/dist/index.d.cts CHANGED
@@ -47,12 +47,17 @@ interface LangChainStreamingOptions {
47
47
  }
48
48
  interface AgentInspectCallbackOptions extends LangChainStreamingOptions {
49
49
  runName?: string;
50
+ /** Trace directory for JSONL. When set and `persist` is omitted, persistence is enabled. */
50
51
  traceDir?: string;
51
52
  silent?: boolean;
52
53
  capture?: CaptureMode;
53
54
  redact?: RedactionRule[];
54
55
  maxPreviewChars?: number;
55
- /** When true, persist callback lifecycle as schemaVersion "0.1" JSONL (default false). */
56
+ /**
57
+ * Persist callback lifecycle as schemaVersion "0.1" JSONL.
58
+ * When omitted: enabled if `traceDir` is set, otherwise in-memory only.
59
+ * Explicit `false` forces in-memory even when `traceDir` is set.
60
+ */
56
61
  persist?: boolean;
57
62
  /** Optional run id for standalone persisted runs (defaults to generated id). */
58
63
  runId?: string;
@@ -72,9 +77,58 @@ type RetrieverDocuments = Parameters<NonNullable<BaseCallbackHandler["handleRetr
72
77
  declare class AgentInspectCallback extends BaseCallbackHandler {
73
78
  #private;
74
79
  name: string;
80
+ /**
81
+ * Ensure LangGraph/LangChain awaits async handler work (persistence) before
82
+ * invoke/stream settles. Required for deterministic standalone envelopes.
83
+ */
84
+ awaitHandlers: boolean;
75
85
  constructor(options?: AgentInspectCallbackOptions);
76
86
  getEvents(): InspectEvent[];
77
87
  clear(): void;
88
+ /**
89
+ * Bounded adapter diagnostics for the current invocation (counts only).
90
+ * Safe for CLI/MCP summaries — no absolute paths or payloads.
91
+ *
92
+ * @experimental
93
+ */
94
+ getDiagnostics(): {
95
+ lateEventCount: number;
96
+ activeRunCount: number;
97
+ endedRunCount: number;
98
+ pendingRelationshipCount: number;
99
+ knownRelationshipCount: number;
100
+ syntheticGroupCount: number;
101
+ envelopeStarted: boolean;
102
+ finalized: boolean;
103
+ completionGeneration: number;
104
+ hasTerminalError: boolean;
105
+ inMemoryEventCount: number;
106
+ deferredPersistStartCount: number;
107
+ };
108
+ /**
109
+ * Drain deferred completion work (microtask finalization).
110
+ * Idempotent. Failures are isolated and never thrown to user code.
111
+ *
112
+ * @experimental Additive finalization API for serverless / unusual callback shapes.
113
+ */
114
+ flush(): Promise<void>;
115
+ /**
116
+ * Complete the standalone envelope when started. Fallback when automatic
117
+ * completion cannot run (e.g. process shutdown). Idempotent.
118
+ * Failures are isolated and never thrown to user code.
119
+ *
120
+ * @experimental Additive finalization API for serverless / unusual callback shapes.
121
+ */
122
+ finalize(options?: {
123
+ status?: "success" | "error";
124
+ errorMessage?: string;
125
+ }): Promise<void>;
126
+ /**
127
+ * `flush()` then `finalize()`. Idempotent. Failures are isolated.
128
+ *
129
+ * @experimental Additive finalization API for serverless / unusual callback shapes.
130
+ */
131
+ close(): Promise<void>;
78
132
  handleChainStart(chain: Serialized, inputs: ChainValues, runId: string, runType?: string, tags?: string[], metadata?: Record<string, unknown>, runName?: string, parentRunId?: string, _extra?: Record<string, unknown>): Promise<void>;
79
133
  handleChainEnd(outputs: ChainValues, runId: string, parentRunId?: string, tags?: string[], _kwargs?: {
80
134
  inputs?: Record<string, unknown>;
@@ -92,7 +146,7 @@ declare class AgentInspectCallback extends BaseCallbackHandler {
92
146
  }): void | Promise<void>;
93
147
  handleLLMEnd(output: LLMResult, runId: string, parentRunId?: string, tags?: string[], _extraParams?: Record<string, unknown>): Promise<void>;
94
148
  handleLLMError(err: unknown, runId: string, parentRunId?: string, tags?: string[], _extraParams?: Record<string, unknown>): Promise<void>;
95
- handleToolStart(tool: Serialized, input: string, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, runName?: string, _toolCallId?: string): Promise<void>;
149
+ handleToolStart(tool: Serialized, input: string, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, runName?: string, toolCallId?: string): Promise<void>;
96
150
  handleToolEnd(output: unknown, runId: string, parentRunId?: string, tags?: string[]): Promise<void>;
97
151
  handleToolError(err: unknown, runId: string, parentRunId?: string, tags?: string[]): Promise<void>;
98
152
  handleRetrieverStart(retriever: Serialized, _query: string, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, name?: string): Promise<void>;
@@ -102,6 +156,26 @@ declare class AgentInspectCallback extends BaseCallbackHandler {
102
156
  handleAgentEnd(finish: AgentFinish, runId: string, parentRunId?: string, tags?: string[]): Promise<void>;
103
157
  }
104
158
 
159
+ /** Options for explicit envelope finalization (serverless / unusual callback shapes). */
160
+ interface FinalizeOptions {
161
+ status?: "success" | "error";
162
+ errorMessage?: string;
163
+ endTime?: number;
164
+ }
165
+ /** Bounded persistence diagnostics (no absolute paths / customer payloads). */
166
+ interface AdapterPersistenceDiagnostics {
167
+ readonly lateEventCount: number;
168
+ readonly activeRunCount: number;
169
+ readonly endedRunCount: number;
170
+ readonly pendingRelationshipCount: number;
171
+ readonly knownRelationshipCount: number;
172
+ readonly syntheticGroupCount: number;
173
+ readonly envelopeStarted: boolean;
174
+ readonly finalized: boolean;
175
+ readonly completionGeneration: number;
176
+ readonly hasTerminalError: boolean;
177
+ }
178
+
105
179
  interface TokenUsage {
106
180
  input?: number;
107
181
  output?: number;
@@ -116,4 +190,4 @@ declare function safePreview(value: unknown, maxChars: number): string | undefin
116
190
  /** Shallow plain metadata: drops functions/symbols; avoids deep nesting. Never throws. */
117
191
  declare function toPlainMetadata(value: unknown): Record<string, unknown>;
118
192
 
119
- export { AgentInspectCallback, type AgentInspectCallbackOptions, type CaptureMode, type LangChainRunMetadata, type LangChainStreamingOptions, type TokenUsage, extractModelName, extractTokenUsage, safePreview, toPlainMetadata };
193
+ export { type AdapterPersistenceDiagnostics, AgentInspectCallback, type AgentInspectCallbackOptions, type CaptureMode, type FinalizeOptions, type LangChainRunMetadata, type LangChainStreamingOptions, type TokenUsage, extractModelName, extractTokenUsage, safePreview, toPlainMetadata };
package/dist/index.d.ts CHANGED
@@ -47,12 +47,17 @@ interface LangChainStreamingOptions {
47
47
  }
48
48
  interface AgentInspectCallbackOptions extends LangChainStreamingOptions {
49
49
  runName?: string;
50
+ /** Trace directory for JSONL. When set and `persist` is omitted, persistence is enabled. */
50
51
  traceDir?: string;
51
52
  silent?: boolean;
52
53
  capture?: CaptureMode;
53
54
  redact?: RedactionRule[];
54
55
  maxPreviewChars?: number;
55
- /** When true, persist callback lifecycle as schemaVersion "0.1" JSONL (default false). */
56
+ /**
57
+ * Persist callback lifecycle as schemaVersion "0.1" JSONL.
58
+ * When omitted: enabled if `traceDir` is set, otherwise in-memory only.
59
+ * Explicit `false` forces in-memory even when `traceDir` is set.
60
+ */
56
61
  persist?: boolean;
57
62
  /** Optional run id for standalone persisted runs (defaults to generated id). */
58
63
  runId?: string;
@@ -72,9 +77,58 @@ type RetrieverDocuments = Parameters<NonNullable<BaseCallbackHandler["handleRetr
72
77
  declare class AgentInspectCallback extends BaseCallbackHandler {
73
78
  #private;
74
79
  name: string;
80
+ /**
81
+ * Ensure LangGraph/LangChain awaits async handler work (persistence) before
82
+ * invoke/stream settles. Required for deterministic standalone envelopes.
83
+ */
84
+ awaitHandlers: boolean;
75
85
  constructor(options?: AgentInspectCallbackOptions);
76
86
  getEvents(): InspectEvent[];
77
87
  clear(): void;
88
+ /**
89
+ * Bounded adapter diagnostics for the current invocation (counts only).
90
+ * Safe for CLI/MCP summaries — no absolute paths or payloads.
91
+ *
92
+ * @experimental
93
+ */
94
+ getDiagnostics(): {
95
+ lateEventCount: number;
96
+ activeRunCount: number;
97
+ endedRunCount: number;
98
+ pendingRelationshipCount: number;
99
+ knownRelationshipCount: number;
100
+ syntheticGroupCount: number;
101
+ envelopeStarted: boolean;
102
+ finalized: boolean;
103
+ completionGeneration: number;
104
+ hasTerminalError: boolean;
105
+ inMemoryEventCount: number;
106
+ deferredPersistStartCount: number;
107
+ };
108
+ /**
109
+ * Drain deferred completion work (microtask finalization).
110
+ * Idempotent. Failures are isolated and never thrown to user code.
111
+ *
112
+ * @experimental Additive finalization API for serverless / unusual callback shapes.
113
+ */
114
+ flush(): Promise<void>;
115
+ /**
116
+ * Complete the standalone envelope when started. Fallback when automatic
117
+ * completion cannot run (e.g. process shutdown). Idempotent.
118
+ * Failures are isolated and never thrown to user code.
119
+ *
120
+ * @experimental Additive finalization API for serverless / unusual callback shapes.
121
+ */
122
+ finalize(options?: {
123
+ status?: "success" | "error";
124
+ errorMessage?: string;
125
+ }): Promise<void>;
126
+ /**
127
+ * `flush()` then `finalize()`. Idempotent. Failures are isolated.
128
+ *
129
+ * @experimental Additive finalization API for serverless / unusual callback shapes.
130
+ */
131
+ close(): Promise<void>;
78
132
  handleChainStart(chain: Serialized, inputs: ChainValues, runId: string, runType?: string, tags?: string[], metadata?: Record<string, unknown>, runName?: string, parentRunId?: string, _extra?: Record<string, unknown>): Promise<void>;
79
133
  handleChainEnd(outputs: ChainValues, runId: string, parentRunId?: string, tags?: string[], _kwargs?: {
80
134
  inputs?: Record<string, unknown>;
@@ -92,7 +146,7 @@ declare class AgentInspectCallback extends BaseCallbackHandler {
92
146
  }): void | Promise<void>;
93
147
  handleLLMEnd(output: LLMResult, runId: string, parentRunId?: string, tags?: string[], _extraParams?: Record<string, unknown>): Promise<void>;
94
148
  handleLLMError(err: unknown, runId: string, parentRunId?: string, tags?: string[], _extraParams?: Record<string, unknown>): Promise<void>;
95
- handleToolStart(tool: Serialized, input: string, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, runName?: string, _toolCallId?: string): Promise<void>;
149
+ handleToolStart(tool: Serialized, input: string, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, runName?: string, toolCallId?: string): Promise<void>;
96
150
  handleToolEnd(output: unknown, runId: string, parentRunId?: string, tags?: string[]): Promise<void>;
97
151
  handleToolError(err: unknown, runId: string, parentRunId?: string, tags?: string[]): Promise<void>;
98
152
  handleRetrieverStart(retriever: Serialized, _query: string, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, name?: string): Promise<void>;
@@ -102,6 +156,26 @@ declare class AgentInspectCallback extends BaseCallbackHandler {
102
156
  handleAgentEnd(finish: AgentFinish, runId: string, parentRunId?: string, tags?: string[]): Promise<void>;
103
157
  }
104
158
 
159
+ /** Options for explicit envelope finalization (serverless / unusual callback shapes). */
160
+ interface FinalizeOptions {
161
+ status?: "success" | "error";
162
+ errorMessage?: string;
163
+ endTime?: number;
164
+ }
165
+ /** Bounded persistence diagnostics (no absolute paths / customer payloads). */
166
+ interface AdapterPersistenceDiagnostics {
167
+ readonly lateEventCount: number;
168
+ readonly activeRunCount: number;
169
+ readonly endedRunCount: number;
170
+ readonly pendingRelationshipCount: number;
171
+ readonly knownRelationshipCount: number;
172
+ readonly syntheticGroupCount: number;
173
+ readonly envelopeStarted: boolean;
174
+ readonly finalized: boolean;
175
+ readonly completionGeneration: number;
176
+ readonly hasTerminalError: boolean;
177
+ }
178
+
105
179
  interface TokenUsage {
106
180
  input?: number;
107
181
  output?: number;
@@ -116,4 +190,4 @@ declare function safePreview(value: unknown, maxChars: number): string | undefin
116
190
  /** Shallow plain metadata: drops functions/symbols; avoids deep nesting. Never throws. */
117
191
  declare function toPlainMetadata(value: unknown): Record<string, unknown>;
118
192
 
119
- export { AgentInspectCallback, type AgentInspectCallbackOptions, type CaptureMode, type LangChainRunMetadata, type LangChainStreamingOptions, type TokenUsage, extractModelName, extractTokenUsage, safePreview, toPlainMetadata };
193
+ export { type AdapterPersistenceDiagnostics, AgentInspectCallback, type AgentInspectCallbackOptions, type CaptureMode, type FinalizeOptions, type LangChainRunMetadata, type LangChainStreamingOptions, type TokenUsage, extractModelName, extractTokenUsage, safePreview, toPlainMetadata };