@roj-ai/sdk 0.1.35 → 0.1.36

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 (61) hide show
  1. package/dist/core/agents/agent.d.ts.map +1 -1
  2. package/dist/core/agents/agent.js +7 -3
  3. package/dist/core/agents/agent.js.map +1 -1
  4. package/dist/core/agents/state.d.ts +24 -0
  5. package/dist/core/agents/state.d.ts.map +1 -1
  6. package/dist/core/agents/state.js.map +1 -1
  7. package/dist/core/context/state.d.ts.map +1 -1
  8. package/dist/core/context/state.js +4 -0
  9. package/dist/core/context/state.js.map +1 -1
  10. package/dist/core/llm/anthropic.d.ts.map +1 -1
  11. package/dist/core/llm/anthropic.js +49 -8
  12. package/dist/core/llm/anthropic.js.map +1 -1
  13. package/dist/core/llm/model-shortlist-live.test.d.ts +35 -0
  14. package/dist/core/llm/model-shortlist-live.test.d.ts.map +1 -0
  15. package/dist/core/llm/model-shortlist-live.test.js +452 -0
  16. package/dist/core/llm/model-shortlist-live.test.js.map +1 -0
  17. package/dist/core/llm/openrouter-mapping.test.js +18 -0
  18. package/dist/core/llm/openrouter-mapping.test.js.map +1 -1
  19. package/dist/core/llm/openrouter.d.ts.map +1 -1
  20. package/dist/core/llm/openrouter.js +20 -11
  21. package/dist/core/llm/openrouter.js.map +1 -1
  22. package/dist/core/llm/provider.d.ts +34 -3
  23. package/dist/core/llm/provider.d.ts.map +1 -1
  24. package/dist/core/llm/provider.js.map +1 -1
  25. package/dist/core/llm/reasoning-details.test.d.ts +2 -0
  26. package/dist/core/llm/reasoning-details.test.d.ts.map +1 -0
  27. package/dist/core/llm/reasoning-details.test.js +144 -0
  28. package/dist/core/llm/reasoning-details.test.js.map +1 -0
  29. package/dist/core/llm/state.d.ts +2 -0
  30. package/dist/core/llm/state.d.ts.map +1 -1
  31. package/dist/core/llm/state.js +11 -0
  32. package/dist/core/llm/state.js.map +1 -1
  33. package/dist/core/llm/thinking-blocks.test.d.ts +2 -0
  34. package/dist/core/llm/thinking-blocks.test.d.ts.map +1 -0
  35. package/dist/core/llm/thinking-blocks.test.js +291 -0
  36. package/dist/core/llm/thinking-blocks.test.js.map +1 -0
  37. package/dist/core/reasoning-round-trip.integration.test.d.ts +2 -0
  38. package/dist/core/reasoning-round-trip.integration.test.d.ts.map +1 -0
  39. package/dist/core/reasoning-round-trip.integration.test.js +150 -0
  40. package/dist/core/reasoning-round-trip.integration.test.js.map +1 -0
  41. package/dist/core/sessions/state.d.ts.map +1 -1
  42. package/dist/core/sessions/state.js +5 -0
  43. package/dist/core/sessions/state.js.map +1 -1
  44. package/dist/index.d.ts +1 -0
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js.map +1 -1
  47. package/package.json +3 -3
  48. package/src/core/agents/agent.ts +9 -3
  49. package/src/core/agents/state.ts +26 -0
  50. package/src/core/context/state.ts +4 -0
  51. package/src/core/llm/anthropic.ts +71 -10
  52. package/src/core/llm/model-shortlist-live.test.ts +577 -0
  53. package/src/core/llm/openrouter-mapping.test.ts +24 -0
  54. package/src/core/llm/openrouter.ts +28 -12
  55. package/src/core/llm/provider.ts +44 -3
  56. package/src/core/llm/reasoning-details.test.ts +177 -0
  57. package/src/core/llm/state.ts +12 -0
  58. package/src/core/llm/thinking-blocks.test.ts +345 -0
  59. package/src/core/reasoning-round-trip.integration.test.ts +188 -0
  60. package/src/core/sessions/state.ts +5 -0
  61. package/src/index.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../src/core/llm/openrouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../src/core/llm/openrouter.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import type { AssistantLLMMessage, LLMMessage, SystemLLMMessage, ToolCall, ToolLLMMessage, UserLLMMessage } from '../../core/agents/state.js';
1
+ import type { AssistantLLMMessage, LLMMessage, ReasoningDetails, SystemLLMMessage, ThinkingBlocks, ToolCall, ToolLLMMessage, UserLLMMessage } from '../../core/agents/state.js';
2
2
  import type { FileStore } from '../../core/file-store/types.js';
3
3
  import type { ToolResultContent } from '../../core/llm/llm-log-types.js';
4
4
  import type { ToolDefinition } from '../../core/tools/definition.js';
5
5
  import type { ToolCallId } from '../../core/tools/schema.js';
6
6
  import type { Result } from '../../lib/utils/result.js';
7
7
  import { ModelId } from './schema.js';
8
- export type { AssistantLLMMessage, LLMMessage, SystemLLMMessage, ToolCall, ToolLLMMessage, UserLLMMessage };
8
+ export type { AssistantLLMMessage, LLMMessage, ReasoningDetails, SystemLLMMessage, ThinkingBlocks, ToolCall, ToolLLMMessage, UserLLMMessage };
9
9
  /**
10
10
  * Raw tool spec without Zod dependency (for buildHttpRequest / curl export).
11
11
  */
@@ -32,9 +32,36 @@ export interface OpenRouterProviderRouting {
32
32
  /** Allowed quantizations (e.g. "bf16", "int8") */
33
33
  quantizations?: string[];
34
34
  }
35
+ /**
36
+ * Reasoning controls.
37
+ *
38
+ * Without these the model's own default applies, and several of the defaults are expensive:
39
+ * `high` on Claude Sonnet 5, Opus 5 and Grok 4.5, `max` on Kimi K3. Reasoning is also
40
+ * `mandatory` on Gemini 3.6 Flash, Grok 4.5 and Kimi K2.7 Code — those cannot be turned off,
41
+ * only turned down.
42
+ *
43
+ * **Which efforts a model accepts differs per model.** The catalog's
44
+ * `reasoning.supported_efforts` is the authority: Kimi K3 has no `medium`, `minimal` exists
45
+ * only on Gemini, `xhigh`/`none` only on the OpenAI and newer Anthropic models. The union here
46
+ * is every value seen across them, not a set any single model takes.
47
+ *
48
+ * @see https://openrouter.ai/docs/use-cases/reasoning-tokens
49
+ */
50
+ export interface OpenRouterReasoningOptions {
51
+ /** Relative budget. Mutually exclusive with `max_tokens` — set one. */
52
+ effort?: 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh' | 'max';
53
+ /** Absolute token budget, for models that take one instead of an effort. */
54
+ max_tokens?: number;
55
+ /** Explicitly enable reasoning at the model's default effort. */
56
+ enabled?: boolean;
57
+ /** Reason, but omit the blocks from the response. Note this breaks the round trip. */
58
+ exclude?: boolean;
59
+ }
35
60
  export interface OpenRouterRequestOptions {
36
61
  /** Provider routing preferences */
37
62
  providers?: OpenRouterProviderRouting;
63
+ /** Reasoning budget. Omitted: the model's own default, which is often `high`. */
64
+ reasoning?: OpenRouterReasoningOptions;
38
65
  /** Routing strategy */
39
66
  route?: 'fallback';
40
67
  /** Model transforms */
@@ -118,8 +145,12 @@ export interface InferenceResponse {
118
145
  metrics: LLMMetrics;
119
146
  /** Provider-specific request ID (e.g., OpenRouter generation ID for fetching stats) */
120
147
  providerRequestId?: string;
121
- /** Extended thinking / reasoning content (for models that support it) */
148
+ /** Extended thinking / reasoning content (for models that support it) — human-readable, for logs and the debug UI. */
122
149
  reasoning?: string;
150
+ /** Opaque reasoning blocks to echo back on the next request. Absent for models that do not reason. */
151
+ reasoningDetails?: ReasoningDetails;
152
+ /** Anthropic thinking blocks to replay on the next request. Absent unless extended thinking is enabled. */
153
+ thinkingBlocks?: ThinkingBlocks;
123
154
  }
124
155
  /**
125
156
  * Metriky z LLM volání
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/core/llm/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/core/llm/provider.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/core/llm/provider.ts"],"names":[],"mappings":"AA6NA,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAChC,IAAI,EAAE,CAAC,OAAe,EAAkB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAEtE,SAAS,EAAE,CAAC,OAAe,EAAE,SAAsB,EAAuB,EAAE,CAAC,CAAC;QAC7E,IAAI,EAAE,WAAW;QACjB,OAAO;QACP,SAAS;KACT,CAAC;IAEF,UAAU,EAAE,CAAC,UAAsB,EAAE,OAA0B,EAAkB,EAAE,CAAC,CAAC;QACpF,IAAI,EAAE,MAAM;QACZ,OAAO;QACP,UAAU;KACV,CAAC;IAEF,MAAM,EAAE,CAAC,OAAe,EAAoB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;CAC5E,CAAA"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/core/llm/provider.ts"],"names":[],"mappings":"AAsQA,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAChC,IAAI,EAAE,CAAC,OAAe,EAAkB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAEtE,SAAS,EAAE,CAAC,OAAe,EAAE,SAAsB,EAAuB,EAAE,CAAC,CAAC;QAC7E,IAAI,EAAE,WAAW;QACjB,OAAO;QACP,SAAS;KACT,CAAC;IAEF,UAAU,EAAE,CAAC,UAAsB,EAAE,OAA0B,EAAkB,EAAE,CAAC,CAAC;QACpF,IAAI,EAAE,MAAM;QACZ,OAAO;QACP,UAAU;KACV,CAAC;IAEF,MAAM,EAAE,CAAC,OAAe,EAAoB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;CAC5E,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=reasoning-details.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning-details.test.d.ts","sourceRoot":"","sources":["../../../src/core/llm/reasoning-details.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,144 @@
1
+ import { describe, expect, test } from 'bun:test';
2
+ import { isOk } from '../../lib/utils/result.js';
3
+ import { ToolCallId } from '../../core/tools/schema.js';
4
+ import { OpenRouterProvider } from './openrouter.js';
5
+ import { ModelId } from './schema.js';
6
+ // ============================================================================
7
+ // reasoning_details round trip
8
+ // ============================================================================
9
+ //
10
+ // OpenRouter returns `reasoning_details` on an assistant message and expects the
11
+ // exact sequence back on the following requests, or a reasoning model loses its
12
+ // chain of thought at every tool call. The blocks are opaque, so what matters is
13
+ // that they come back byte-identical — and that a model which never reasons
14
+ // keeps producing the same request bytes, since the prompt cache is keyed on them.
15
+ const testModel = ModelId('openai/gpt-5.6-luna');
16
+ /** Shape taken from the OpenRouter docs; treated as opaque everywhere in the SDK. */
17
+ const REASONING_DETAILS = [
18
+ {
19
+ type: 'reasoning.summary',
20
+ summary: 'Analyzed the problem by breaking it into components',
21
+ id: 'reasoning-summary-1',
22
+ format: 'anthropic-claude-v1',
23
+ index: 0,
24
+ },
25
+ {
26
+ type: 'reasoning.encrypted',
27
+ data: 'EroBCkYIBRgCKkCr0hZ0opaque',
28
+ id: 'reasoning-encrypted-1',
29
+ format: 'openai-responses-v1',
30
+ index: 1,
31
+ },
32
+ ];
33
+ const createProvider = (fetchFn) => new OpenRouterProvider({
34
+ apiKey: 'test-key',
35
+ imageProcessor: { resolveContent: async (content) => content },
36
+ defaultModel: String(testModel),
37
+ fetch: fetchFn,
38
+ });
39
+ const respondWith = (message) => async () => new Response(JSON.stringify({
40
+ id: 'gen-1',
41
+ model: String(testModel),
42
+ choices: [{ message, finish_reason: 'stop' }],
43
+ usage: { prompt_tokens: 10, completion_tokens: 5, total_tokens: 15 },
44
+ }), { status: 200, headers: { 'content-type': 'application/json' } });
45
+ const inferenceRequest = () => ({
46
+ model: testModel,
47
+ systemPrompt: 'You are helpful.',
48
+ messages: [{ role: 'user', content: 'What is the weather?' }],
49
+ });
50
+ const rawRequest = (messages) => ({
51
+ model: testModel,
52
+ systemPrompt: 'You are helpful.',
53
+ messages,
54
+ });
55
+ describe('OpenRouter reasoning_details capture', () => {
56
+ test('captures the blocks and the plaintext reasoning from a response', async () => {
57
+ const provider = createProvider(respondWith({
58
+ content: 'It is sunny.',
59
+ reasoning: 'The user asked about weather, so I check the tool first.',
60
+ reasoning_details: REASONING_DETAILS,
61
+ }));
62
+ const result = await provider.inference(inferenceRequest());
63
+ expect(isOk(result)).toBe(true);
64
+ if (!isOk(result))
65
+ return;
66
+ expect(result.value.reasoningDetails).toEqual(REASONING_DETAILS);
67
+ expect(result.value.reasoning).toBe('The user asked about weather, so I check the tool first.');
68
+ });
69
+ test('leaves both fields unset for a model that does not reason', async () => {
70
+ const provider = createProvider(respondWith({ content: 'It is sunny.' }));
71
+ const result = await provider.inference(inferenceRequest());
72
+ expect(isOk(result)).toBe(true);
73
+ if (!isOk(result))
74
+ return;
75
+ expect(result.value.reasoningDetails).toBeUndefined();
76
+ expect(result.value.reasoning).toBeUndefined();
77
+ });
78
+ test('normalizes an empty block list to undefined, so nothing is echoed back', async () => {
79
+ const provider = createProvider(respondWith({ content: 'It is sunny.', reasoning_details: [] }));
80
+ const result = await provider.inference(inferenceRequest());
81
+ expect(isOk(result)).toBe(true);
82
+ if (!isOk(result))
83
+ return;
84
+ expect(result.value.reasoningDetails).toBeUndefined();
85
+ });
86
+ });
87
+ describe('OpenRouter reasoning_details echo', () => {
88
+ test('sends the blocks back verbatim on the assistant message', async () => {
89
+ const http = await createProvider().buildHttpRequest(rawRequest([
90
+ { role: 'user', content: 'What is the weather?' },
91
+ {
92
+ role: 'assistant',
93
+ content: '',
94
+ toolCalls: [{ id: ToolCallId('call_1'), name: 'get_weather', input: { city: 'Prague' } }],
95
+ reasoningDetails: REASONING_DETAILS,
96
+ },
97
+ { role: 'tool', toolCallId: ToolCallId('call_1'), content: 'Sunny' },
98
+ ]));
99
+ // Serialized comparison, because "verbatim" is a claim about the bytes on the
100
+ // wire — a deep-equal check would pass even if the blocks were rebuilt.
101
+ const assistant = '{"role":"assistant","content":"","tool_calls":['
102
+ + '{"id":"call_1","type":"function","function":{"name":"get_weather","arguments":"{\\"city\\":\\"Prague\\"}"}}'
103
+ + `],"reasoning_details":${JSON.stringify(REASONING_DETAILS)}}`;
104
+ expect(JSON.stringify(http.body)).toContain(assistant);
105
+ });
106
+ test('echoes the blocks on an assistant message that made no tool call', async () => {
107
+ const http = await createProvider().buildHttpRequest(rawRequest([
108
+ { role: 'user', content: 'Think about it.' },
109
+ { role: 'assistant', content: 'Thought about it.', reasoningDetails: REASONING_DETAILS },
110
+ { role: 'user', content: 'And now?' },
111
+ ]));
112
+ expect(JSON.stringify(http.body)).toContain(`{"role":"assistant","content":"Thought about it.","reasoning_details":${JSON.stringify(REASONING_DETAILS)}}`);
113
+ });
114
+ });
115
+ describe('OpenRouter request bytes without reasoning', () => {
116
+ // The prompt cache is keyed on the serialized prefix, so a key that appears
117
+ // even as `null`/`undefined` for a non-reasoning model would rewrite it.
118
+ test('adds nothing to a plain assistant message', async () => {
119
+ const http = await createProvider().buildHttpRequest(rawRequest([
120
+ { role: 'user', content: 'What is 2+2?' },
121
+ { role: 'assistant', content: '4' },
122
+ { role: 'user', content: 'And 3+3?' },
123
+ ]));
124
+ const body = JSON.stringify(http.body);
125
+ expect(body).toContain('{"role":"assistant","content":"4"}');
126
+ expect(body).not.toContain('reasoning');
127
+ });
128
+ test('adds nothing to an assistant message with tool calls', async () => {
129
+ const http = await createProvider().buildHttpRequest(rawRequest([
130
+ { role: 'user', content: 'What is the weather?' },
131
+ {
132
+ role: 'assistant',
133
+ content: '',
134
+ toolCalls: [{ id: ToolCallId('call_1'), name: 'get_weather', input: { city: 'Prague' } }],
135
+ },
136
+ { role: 'tool', toolCallId: ToolCallId('call_1'), content: 'Sunny' },
137
+ ]));
138
+ const body = JSON.stringify(http.body);
139
+ expect(body).toContain('{"role":"assistant","content":"","tool_calls":['
140
+ + '{"id":"call_1","type":"function","function":{"name":"get_weather","arguments":"{\\"city\\":\\"Prague\\"}"}}]}');
141
+ expect(body).not.toContain('reasoning');
142
+ });
143
+ });
144
+ //# sourceMappingURL=reasoning-details.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning-details.test.js","sourceRoot":"","sources":["../../../src/core/llm/reasoning-details.test.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,8 @@ export declare const llmEvents: import("../../core/events/types").EventsFactory<
47
47
  name: z4.ZodString;
48
48
  input: z4.ZodUnknown;
49
49
  }, z4.core.$strip>>;
50
+ reasoningDetails: z4.ZodOptional<z4.ZodArray<z4.ZodUnknown>>;
51
+ thinkingBlocks: z4.ZodOptional<z4.ZodArray<z4.ZodUnknown>>;
50
52
  }, z4.core.$strip>;
51
53
  metrics: z4.ZodObject<{
52
54
  promptTokens: z4.ZodNumber;
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/core/llm/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,QAAQ,CAAA;AAEvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAUrD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,SAAS,EAAE,WAAW,EAAE,CAAA;CACxB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;CACd,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAkBD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqBpB;;;;;;OAMG;;;;;;;;;;;;;;;;;;;;IAUH;;;;;OAKG;;;;EAKH,CAAA;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAA;AACrF,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAA;AACzF,MAAM,MAAM,gCAAgC,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,+BAA+B,CAAC,CAAA;AAC5G,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAA;AACnF,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/core/llm/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,QAAQ,CAAA;AAEvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAUrD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,SAAS,EAAE,WAAW,EAAE,CAAA;CACxB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;CACd,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAqBD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BpB;;;;;;OAMG;;;;;;;;;;;;;;;;;;;;IAUH;;;;;OAKG;;;;EAKH,CAAA;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAA;AACrF,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAA;AACzF,MAAM,MAAM,gCAAgC,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,+BAA+B,CAAC,CAAA;AAC5G,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAA;AACnF,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAA"}
@@ -7,6 +7,8 @@ import { llmCallIdSchema } from './schema.js';
7
7
  // ============================================================================
8
8
  // LLM events
9
9
  // ============================================================================
10
+ /** Opaque by design — provider chain-of-thought blocks are stored and echoed verbatim, never inspected. */
11
+ const opaqueBlocksSchema = z4.array(z4.unknown());
10
12
  const llmMetricsSchema = z4.object({
11
13
  promptTokens: z4.number(),
12
14
  completionTokens: z4.number(),
@@ -35,6 +37,15 @@ export const llmEvents = createEventsFactory({
35
37
  name: z4.string(),
36
38
  input: z4.unknown(),
37
39
  })),
40
+ /**
41
+ * Opaque provider reasoning blocks (see ReasoningDetails). Carried by the
42
+ * event, not just by the live response, because a session rebuilt from the
43
+ * log would otherwise resume without the chain of thought the provider
44
+ * expects to get back.
45
+ */
46
+ reasoningDetails: opaqueBlocksSchema.optional(),
47
+ /** Anthropic thinking blocks (see ThinkingBlocks). Carried for the same reason. */
48
+ thinkingBlocks: opaqueBlocksSchema.optional(),
38
49
  }),
39
50
  metrics: llmMetricsSchema,
40
51
  llmCallId: llmCallIdSchema.optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/core/llm/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,QAAQ,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAwC7C,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC;IAClC,YAAY,EAAE,EAAE,CAAC,MAAM,EAAE;IACzB,gBAAgB,EAAE,EAAE,CAAC,MAAM,EAAE;IAC7B,WAAW,EAAE,EAAE,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE;IACtB,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;IAClB,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,YAAY,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,gBAAgB,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,mBAAmB,CAAC;IAC5C,MAAM,EAAE;QACP,iBAAiB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAc,CAAC;YAC3C,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC;SAC7C,CAAC;QACF,mBAAmB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC9B,OAAO,EAAE,aAAa;YACtB,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC;YAC7C,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC;gBACnB,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC/B,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;oBAC7B,EAAE,EAAE,gBAAgB;oBACpB,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE;oBACjB,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE;iBACnB,CAAC,CAAC;aACH,CAAC;YACF,OAAO,EAAE,gBAAgB;YACzB,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;SACrC,CAAC;QACF;;;;;;WAMG;QACH,6BAA6B,EAAE,EAAE,CAAC,MAAM,CAAC;YACxC,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,gBAAgB;SACzB,CAAC;QACF,gBAAgB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC3B,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;YAClB,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;SACrC,CAAC;QACF;;;;;WAKG;QACH,iBAAiB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,aAAa;SACtB,CAAC;KACF;CACD,CAAC,CAAA"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/core/llm/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,QAAQ,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAwC7C,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,2GAA2G;AAC3G,MAAM,kBAAkB,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;AAEjD,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC;IAClC,YAAY,EAAE,EAAE,CAAC,MAAM,EAAE;IACzB,gBAAgB,EAAE,EAAE,CAAC,MAAM,EAAE;IAC7B,WAAW,EAAE,EAAE,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE;IACtB,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;IAClB,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,YAAY,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,gBAAgB,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,mBAAmB,CAAC;IAC5C,MAAM,EAAE;QACP,iBAAiB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAc,CAAC;YAC3C,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC;SAC7C,CAAC;QACF,mBAAmB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC9B,OAAO,EAAE,aAAa;YACtB,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC;YAC7C,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC;gBACnB,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC/B,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;oBAC7B,EAAE,EAAE,gBAAgB;oBACpB,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE;oBACjB,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE;iBACnB,CAAC,CAAC;gBACH;;;;;mBAKG;gBACH,gBAAgB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;gBAC/C,mFAAmF;gBACnF,cAAc,EAAE,kBAAkB,CAAC,QAAQ,EAAE;aAC7C,CAAC;YACF,OAAO,EAAE,gBAAgB;YACzB,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;SACrC,CAAC;QACF;;;;;;WAMG;QACH,6BAA6B,EAAE,EAAE,CAAC,MAAM,CAAC;YACxC,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,gBAAgB;SACzB,CAAC;QACF,gBAAgB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC3B,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;YAClB,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;SACrC,CAAC;QACF;;;;;WAKG;QACH,iBAAiB,EAAE,EAAE,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,aAAa;SACtB,CAAC;KACF;CACD,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=thinking-blocks.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thinking-blocks.test.d.ts","sourceRoot":"","sources":["../../../src/core/llm/thinking-blocks.test.ts"],"names":[],"mappings":""}