@peasant-labs/schema 0.27.2 → 0.29.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.
@@ -1,8 +1,8 @@
1
1
  export declare function sessionGraphCapabilityFixtures(): {
2
2
  readonly requiredNames: {
3
- readonly derivation: readonly ["legacy-empty", "root-null", "usage-null", "model-only", "source-ref-only", "count-only-zero", "count-only-positive", "root-only", "purpose-only-interaction", "purpose-only-delegated", "purpose-only-helper", "purpose-only-unknown", "relationship-only", "main-deeper-provenance", "folded-call-provenance", "folded-result-provenance", "earlier-only", "earlier-nested-tool-native-usage-model", "navigation-only-read", "retained-accumulates-all"];
3
+ readonly derivation: readonly ["legacy-empty", "root-null", "usage-null", "model-only", "source-ref-only", "count-only-zero", "count-only-positive", "root-only", "purpose-only-interaction", "purpose-only-delegated", "purpose-only-helper", "purpose-only-unknown", "relationship-only", "main-deeper-provenance", "folded-call-provenance", "folded-result-provenance", "earlier-only", "earlier-nested-tool-native-usage-model", "navigation-only-read", "retained-accumulates-all", "thinking-level-session-seed", "thinking-level-raw-only-seed", "thinking-level-root-turn", "thinking-level-earlier-nested-turn", "thinking-level-absent-needs-no-token"];
4
4
  readonly reader: readonly ["advertisement-omitted", "advertisement-empty", "advertisement-null", "advertisement-unknown-duplicate-unordered", "advertisement-future-suffix", "advertisement-retained-duplicate"];
5
- readonly producer: readonly ["producer-canonical-four", "producer-unsorted-four", "producer-duplicate", "producer-unknown", "producer-canonical-retained", "producer-unsorted-retained", "producer-duplicate-retained"];
5
+ readonly producer: readonly ["producer-canonical-four", "producer-unsorted-four", "producer-duplicate", "producer-unknown", "producer-canonical-retained", "producer-unsorted-retained", "producer-duplicate-retained", "producer-canonical-thinking-level", "producer-unsorted-thinking-level"];
6
6
  };
7
7
  readonly derivation: {
8
8
  readonly cases: readonly [{
@@ -16,10 +16,10 @@ export declare function sessionGraphCapabilityFixtures(): {
16
16
  readonly description: "Retained evidence accumulates every existing preservation requirement";
17
17
  };
18
18
  readonly input: {
19
- readonly detailJSON: "{\"id\":\"fixture-session\",\"harness\":\"pi\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":1,\"toolCallCount\":1,\"purpose\":\"interaction\",\"turns\":[{\"index\":0,\"role\":\"assistant\",\"depth\":0,\"content\":\"\",\"timestamp\":\"2020-01-01T00:00:00Z\",\"sourceEntryRef\":\"e1\",\"observedModel\":\"provider/model\",\"usage\":{\"ownerId\":\"u1\",\"sourceEntryRef\":\"e1\",\"scope\":\"assistant\",\"completeness\":\"unknown\"},\"toolCalls\":[{\"id\":\"t1\",\"name\":\"tool\",\"namespace\":\"extension\",\"arguments\":\"\",\"result\":\"\"}]}],\"nativeMetadata\":[{\"id\":\"n1\",\"kind\":\"pi.custom.data\",\"source\":{\"entryRef\":\"custom1\",\"sourceType\":\"pi.custom\"},\"customType\":\"extension\",\"data\":{}}],\"diagnostics\":{\"partial\":true},\"retainedUnknown\":[{\"sourceRef\":\"source-0\",\"recordIndex\":2,\"position\":4,\"pointer\":\"\",\"namespace\":\"record\",\"kind\":\"future\",\"payload\":\"{\\\"type\\\":\\\"future\\\"}\"}]}";
19
+ readonly detailJSON: "{\"id\":\"fixture-session\",\"harness\":\"pi\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":1,\"toolCallCount\":1,\"purpose\":\"interaction\",\"turns\":[{\"index\":0,\"role\":\"assistant\",\"depth\":0,\"content\":\"\",\"timestamp\":\"2020-01-01T00:00:00Z\",\"sourceEntryRef\":\"e1\",\"observedModel\":\"provider/model\",\"thinkingLevel\":\"ultra\",\"thinkingLevelRaw\":\"custom\",\"usage\":{\"ownerId\":\"u1\",\"sourceEntryRef\":\"e1\",\"scope\":\"assistant\",\"completeness\":\"unknown\"},\"toolCalls\":[{\"id\":\"t1\",\"name\":\"tool\",\"namespace\":\"extension\",\"arguments\":\"\",\"result\":\"\"}]}],\"nativeMetadata\":[{\"id\":\"n1\",\"kind\":\"pi.custom.data\",\"source\":{\"entryRef\":\"custom1\",\"sourceType\":\"pi.custom\"},\"customType\":\"extension\",\"data\":{}}],\"diagnostics\":{\"partial\":true},\"retainedUnknown\":[{\"sourceRef\":\"source-0\",\"recordIndex\":2,\"position\":4,\"pointer\":\"\",\"namespace\":\"record\",\"kind\":\"future\",\"payload\":\"{\\\"type\\\":\\\"future\\\"}\"}]}";
20
20
  };
21
21
  readonly expected: {
22
- readonly capabilities: readonly ["detailed_usage_v1", "native_metadata_v1", "observed_model_v1", "retained_unknown_v1", "session_graph_provenance_v1", "tool_namespace_v1"];
22
+ readonly capabilities: readonly ["detailed_usage_v1", "native_metadata_v1", "observed_model_v1", "retained_unknown_v1", "session_graph_provenance_v1", "thinking_level_v1", "tool_namespace_v1"];
23
23
  };
24
24
  }, {
25
25
  readonly name: "legacy-empty";
@@ -315,6 +315,84 @@ export declare function sessionGraphCapabilityFixtures(): {
315
315
  readonly rejectedDurableJSON: "{\"id\":\"fixture-session\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":0,\"toolCallCount\":0,\"harness\":\"claude-code\",\"outcome\":\"resolved\",\"sessionOrigin\":\"unknown\",\"turns\":[],\"relationshipNavigation\":[]}";
316
316
  };
317
317
  readonly expected: {};
318
+ }, {
319
+ readonly name: "thinking-level-session-seed";
320
+ readonly classification: "must-pass";
321
+ readonly provenance: {
322
+ readonly source: "requirement";
323
+ readonly ref: "content-capability-negotiation thinking_level_v1";
324
+ };
325
+ readonly mutation: {
326
+ readonly description: "adds only the session-level thinking level seed";
327
+ };
328
+ readonly input: {
329
+ readonly detailJSON: "{\"id\":\"fixture-session\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":0,\"toolCallCount\":0,\"harness\":\"codex\",\"outcome\":\"resolved\",\"sessionOrigin\":\"unknown\",\"thinkingLevel\":\"high\",\"turns\":[]}";
330
+ };
331
+ readonly expected: {
332
+ readonly capabilities: readonly ["thinking_level_v1"];
333
+ };
334
+ }, {
335
+ readonly name: "thinking-level-raw-only-seed";
336
+ readonly classification: "must-pass";
337
+ readonly provenance: {
338
+ readonly source: "requirement";
339
+ readonly ref: "content-capability-negotiation thinking_level_v1";
340
+ };
341
+ readonly mutation: {
342
+ readonly description: "adds only an unmapped raw session spelling";
343
+ };
344
+ readonly input: {
345
+ readonly detailJSON: "{\"id\":\"fixture-session\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":0,\"toolCallCount\":0,\"harness\":\"codex\",\"outcome\":\"resolved\",\"sessionOrigin\":\"unknown\",\"thinkingLevelRaw\":\"custom\",\"turns\":[]}";
346
+ };
347
+ readonly expected: {
348
+ readonly capabilities: readonly ["thinking_level_v1"];
349
+ };
350
+ }, {
351
+ readonly name: "thinking-level-root-turn";
352
+ readonly classification: "must-pass";
353
+ readonly provenance: {
354
+ readonly source: "requirement";
355
+ readonly ref: "content-capability-negotiation thinking_level_v1";
356
+ };
357
+ readonly mutation: {
358
+ readonly description: "adds a level on a root assistant turn";
359
+ };
360
+ readonly input: {
361
+ readonly detailJSON: "{\"id\":\"fixture-session\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":1,\"toolCallCount\":0,\"harness\":\"codex\",\"outcome\":\"resolved\",\"sessionOrigin\":\"unknown\",\"turns\":[{\"index\":0,\"role\":\"assistant\",\"content\":\"\",\"depth\":0,\"thinkingLevel\":\"off\",\"thinkingLevelRaw\":\"none\",\"timestamp\":\"2020-01-01T00:00:00Z\"}]}";
362
+ };
363
+ readonly expected: {
364
+ readonly capabilities: readonly ["thinking_level_v1"];
365
+ };
366
+ }, {
367
+ readonly name: "thinking-level-earlier-nested-turn";
368
+ readonly classification: "must-pass";
369
+ readonly provenance: {
370
+ readonly source: "requirement";
371
+ readonly ref: "content-capability-negotiation thinking_level_v1";
372
+ };
373
+ readonly mutation: {
374
+ readonly description: "adds a level on a nested earlier-history assistant turn";
375
+ };
376
+ readonly input: {
377
+ readonly detailJSON: "{\"id\":\"fixture-session\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":0,\"toolCallCount\":0,\"harness\":\"codex\",\"outcome\":\"resolved\",\"sessionOrigin\":\"unknown\",\"turns\":[],\"earlierHistory\":[{\"state\":\"uncertain_migrated\",\"turns\":[{\"index\":0,\"role\":\"assistant\",\"content\":\"\",\"depth\":0,\"timestamp\":\"2020-01-01T00:00:00Z\"},{\"index\":1,\"role\":\"assistant\",\"content\":\"\",\"depth\":1,\"parentIndex\":0,\"thinkingLevel\":\"medium\",\"timestamp\":\"2020-01-01T00:00:00Z\"}]}]}";
378
+ };
379
+ readonly expected: {
380
+ readonly capabilities: readonly ["session_graph_provenance_v1", "thinking_level_v1"];
381
+ };
382
+ }, {
383
+ readonly name: "thinking-level-absent-needs-no-token";
384
+ readonly classification: "must-pass";
385
+ readonly provenance: {
386
+ readonly source: "requirement";
387
+ readonly ref: "content-capability-negotiation thinking_level_v1";
388
+ };
389
+ readonly mutation: {
390
+ readonly description: "omits every thinking level field";
391
+ };
392
+ readonly input: {
393
+ readonly detailJSON: "{\"id\":\"fixture-session\",\"startTime\":\"2020-01-01T00:00:00Z\",\"endTime\":\"2020-01-01T00:00:00Z\",\"durationMins\":0,\"totalTokens\":0,\"tokensIn\":0,\"tokensOut\":0,\"turnCount\":1,\"toolCallCount\":0,\"harness\":\"codex\",\"outcome\":\"resolved\",\"sessionOrigin\":\"unknown\",\"turns\":[{\"index\":0,\"role\":\"assistant\",\"content\":\"\",\"depth\":0,\"timestamp\":\"2020-01-01T00:00:00Z\"}]}";
394
+ };
395
+ readonly expected: {};
318
396
  }];
319
397
  };
320
398
  readonly reader: {
@@ -529,6 +607,38 @@ export declare function sessionGraphCapabilityFixtures(): {
529
607
  readonly expected: {
530
608
  readonly errorContains: "unknown token";
531
609
  };
610
+ }, {
611
+ readonly name: "producer-canonical-thinking-level";
612
+ readonly classification: "must-pass";
613
+ readonly provenance: {
614
+ readonly source: "requirement";
615
+ readonly ref: "content-capability-negotiation";
616
+ };
617
+ readonly mutation: {
618
+ readonly description: "Emits the full sorted inventory including thinking_level_v1";
619
+ };
620
+ readonly input: {
621
+ readonly tokens: readonly ["detailed_usage_v1", "native_metadata_v1", "observed_model_v1", "retained_unknown_v1", "session_graph_provenance_v1", "thinking_level_v1", "tool_namespace_v1"];
622
+ };
623
+ readonly expected: {
624
+ readonly accepted: true;
625
+ };
626
+ }, {
627
+ readonly name: "producer-unsorted-thinking-level";
628
+ readonly classification: "must-fail";
629
+ readonly provenance: {
630
+ readonly source: "boundary";
631
+ readonly ref: "content-capability-negotiation";
632
+ };
633
+ readonly mutation: {
634
+ readonly description: "Places thinking_level_v1 after tool_namespace_v1";
635
+ };
636
+ readonly input: {
637
+ readonly tokens: readonly ["tool_namespace_v1", "thinking_level_v1"];
638
+ };
639
+ readonly expected: {
640
+ readonly errorContains: "canonical lexicographic order";
641
+ };
532
642
  }];
533
643
  };
534
644
  };
@@ -14,6 +14,7 @@ export declare const KnownContentCapability: Readonly<{
14
14
  readonly ObservedModelV1: "observed_model_v1";
15
15
  readonly RetainedUnknownV1: "retained_unknown_v1";
16
16
  readonly SessionGraphProvenanceV1: "session_graph_provenance_v1";
17
+ readonly ThinkingLevelV1: "thinking_level_v1";
17
18
  readonly ToolNamespaceV1: "tool_namespace_v1";
18
19
  }>;
19
20
  export type KnownContentCapability = (typeof KnownContentCapability)[keyof typeof KnownContentCapability];
@@ -13,9 +13,10 @@ export const KnownContentCapability = Object.freeze({
13
13
  ObservedModelV1: "observed_model_v1",
14
14
  RetainedUnknownV1: "retained_unknown_v1",
15
15
  SessionGraphProvenanceV1: "session_graph_provenance_v1",
16
+ ThinkingLevelV1: "thinking_level_v1",
16
17
  ToolNamespaceV1: "tool_namespace_v1",
17
18
  });
18
- export const AllContentCapabilities = Object.freeze([KnownContentCapability.DetailedUsageV1, KnownContentCapability.NativeMetadataV1, KnownContentCapability.ObservedModelV1, KnownContentCapability.RetainedUnknownV1, KnownContentCapability.SessionGraphProvenanceV1, KnownContentCapability.ToolNamespaceV1]);
19
+ export const AllContentCapabilities = Object.freeze([KnownContentCapability.DetailedUsageV1, KnownContentCapability.NativeMetadataV1, KnownContentCapability.ObservedModelV1, KnownContentCapability.RetainedUnknownV1, KnownContentCapability.SessionGraphProvenanceV1, KnownContentCapability.ThinkingLevelV1, KnownContentCapability.ToolNamespaceV1]);
19
20
  export function isContentCapability(value) {
20
21
  return typeof value === "string" && AllContentCapabilities.includes(value);
21
22
  }
@@ -42,6 +43,8 @@ function visitTurns(turns, found) {
42
43
  for (const turn of turns ?? []) {
43
44
  if ((turn.observedModel ?? "") !== "")
44
45
  found.add(KnownContentCapability.ObservedModelV1);
46
+ if ((turn.thinkingLevel ?? "") !== "" || (turn.thinkingLevelRaw ?? "") !== "")
47
+ found.add(KnownContentCapability.ThinkingLevelV1);
45
48
  if (turn.toolCalls?.some((tool) => tool.namespace !== undefined))
46
49
  found.add(KnownContentCapability.ToolNamespaceV1);
47
50
  if (turn.usage != null || turn.toolCalls?.some((tool) => tool.usage != null))
@@ -56,6 +59,8 @@ export function requiredContentCapabilities(detail) {
56
59
  found.add(KnownContentCapability.SessionGraphProvenanceV1);
57
60
  if ((detail.nativeMetadata?.length ?? 0) > 0)
58
61
  found.add(KnownContentCapability.NativeMetadataV1);
62
+ if ((detail.thinkingLevel ?? "") !== "" || (detail.thinkingLevelRaw ?? "") !== "")
63
+ found.add(KnownContentCapability.ThinkingLevelV1);
59
64
  if ((detail.retainedUnknown?.length ?? 0) > 0 || detail.diagnostics !== undefined)
60
65
  found.add(KnownContentCapability.RetainedUnknownV1);
61
66
  visitTurns(detail.turns, found);
@@ -479,7 +479,7 @@ export type Confidence = z.infer<typeof zConfidence>;
479
479
  /**
480
480
  * Content Capability
481
481
  *
482
- * Opaque, forward-open revision token in the deployment-specific content-capability set. Clients use exact set membership, never parse _v1 as Semantic Versioning or infer ranges, ignore unknown tokens, and tolerate duplicate or unordered input. Servers emit only their pinned known inventory, reject duplicates, and serialize lexicographically; token meanings are immutable. observed_model_v1 is required iff any root or nested assistant turn has observedModel, not for session model alone, and guarantees assistant-only value validation before persistence with no invalid DB/blob side effects plus byte-exact accepted observedModel strings through storage, typed migration, rewrite, serving, and pull; JSON whitespace and key order are excluded.
482
+ * Opaque, forward-open revision token in the deployment-specific content-capability set. Clients use exact set membership, never parse _v1 as Semantic Versioning or infer ranges, ignore unknown tokens, and tolerate duplicate or unordered input. Servers emit only their pinned known inventory, reject duplicates, and serialize lexicographically; token meanings are immutable. observed_model_v1 is required iff any root or nested assistant turn has observedModel, not for session model alone, and guarantees assistant-only value validation before persistence with no invalid DB/blob side effects plus byte-exact accepted observedModel strings through storage, typed migration, rewrite, serving, and pull; JSON whitespace and key order are excluded. thinking_level_v1 is required iff the session detail carries thinkingLevel, thinkingLevelRaw, or a non-empty thinkingLevelHistory, or any main or earlier-history turn carries thinkingLevel or thinkingLevelRaw, and guarantees canonical, raw-bound, and assistant-only validation before persistence with no invalid side effects plus byte-exact preservation of the values, their history order, and their absence through storage, typed migration, rewrite, serving, and pull.
483
483
  */
484
484
  export declare const zContentCapability: z.ZodString;
485
485
  export type ContentCapability = z.infer<typeof zContentCapability>;
@@ -2236,6 +2236,7 @@ export declare const zSessionSummary: z.ZodObject<{
2236
2236
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2237
2237
  outcome: z.ZodOptional<z.ZodString>;
2238
2238
  parentSessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2239
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2239
2240
  preview: z.ZodOptional<z.ZodString>;
2240
2241
  project: z.ZodOptional<z.ZodString>;
2241
2242
  projectHash: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">>;
@@ -2305,6 +2306,7 @@ export declare const zSessionsPayload: z.ZodObject<{
2305
2306
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2306
2307
  outcome: z.ZodOptional<z.ZodString>;
2307
2308
  parentSessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2309
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2308
2310
  preview: z.ZodOptional<z.ZodString>;
2309
2311
  project: z.ZodOptional<z.ZodString>;
2310
2312
  projectHash: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">>;
@@ -2659,6 +2661,8 @@ export declare const zLocalSyncSummary: z.ZodObject<{
2659
2661
  id: z.ZodString;
2660
2662
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2661
2663
  model: z.ZodString;
2664
+ parentSessionId: z.ZodOptional<z.ZodString>;
2665
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2662
2666
  previouslyPushed: z.ZodBoolean;
2663
2667
  projectHash: z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">;
2664
2668
  projectName: z.ZodString;
@@ -2699,6 +2703,7 @@ export declare const zLocalSessionRow: z.ZodObject<{
2699
2703
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2700
2704
  outcome: z.ZodOptional<z.ZodString>;
2701
2705
  parentSessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2706
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2702
2707
  preview: z.ZodOptional<z.ZodString>;
2703
2708
  project: z.ZodOptional<z.ZodString>;
2704
2709
  projectHash: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">>;
@@ -2770,6 +2775,8 @@ export declare const zLocalSessionRow: z.ZodObject<{
2770
2775
  id: z.ZodString;
2771
2776
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2772
2777
  model: z.ZodString;
2778
+ parentSessionId: z.ZodOptional<z.ZodString>;
2779
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2773
2780
  previouslyPushed: z.ZodBoolean;
2774
2781
  projectHash: z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">;
2775
2782
  projectName: z.ZodString;
@@ -2838,6 +2845,7 @@ export declare const zLocalSessionListItem: z.ZodObject<{
2838
2845
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2839
2846
  outcome: z.ZodOptional<z.ZodString>;
2840
2847
  parentSessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2848
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2841
2849
  preview: z.ZodOptional<z.ZodString>;
2842
2850
  project: z.ZodOptional<z.ZodString>;
2843
2851
  projectHash: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">>;
@@ -2909,6 +2917,8 @@ export declare const zLocalSessionListItem: z.ZodObject<{
2909
2917
  id: z.ZodString;
2910
2918
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2911
2919
  model: z.ZodString;
2920
+ parentSessionId: z.ZodOptional<z.ZodString>;
2921
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2912
2922
  previouslyPushed: z.ZodBoolean;
2913
2923
  projectHash: z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">;
2914
2924
  projectName: z.ZodString;
@@ -2980,6 +2990,7 @@ export declare const zLocalHelperMembersPayload: z.ZodObject<{
2980
2990
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
2981
2991
  outcome: z.ZodOptional<z.ZodString>;
2982
2992
  parentSessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2993
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
2983
2994
  preview: z.ZodOptional<z.ZodString>;
2984
2995
  project: z.ZodOptional<z.ZodString>;
2985
2996
  projectHash: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">>;
@@ -3051,6 +3062,8 @@ export declare const zLocalHelperMembersPayload: z.ZodObject<{
3051
3062
  id: z.ZodString;
3052
3063
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
3053
3064
  model: z.ZodString;
3065
+ parentSessionId: z.ZodOptional<z.ZodString>;
3066
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
3054
3067
  previouslyPushed: z.ZodBoolean;
3055
3068
  projectHash: z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">;
3056
3069
  projectName: z.ZodString;
@@ -3096,6 +3109,7 @@ export declare const zLocalHelperMembersPayload: z.ZodObject<{
3096
3109
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
3097
3110
  outcome: z.ZodOptional<z.ZodString>;
3098
3111
  parentSessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3112
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
3099
3113
  preview: z.ZodOptional<z.ZodString>;
3100
3114
  project: z.ZodOptional<z.ZodString>;
3101
3115
  projectHash: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">>;
@@ -3167,6 +3181,8 @@ export declare const zLocalHelperMembersPayload: z.ZodObject<{
3167
3181
  id: z.ZodString;
3168
3182
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
3169
3183
  model: z.ZodString;
3184
+ parentSessionId: z.ZodOptional<z.ZodString>;
3185
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
3170
3186
  previouslyPushed: z.ZodBoolean;
3171
3187
  projectHash: z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">;
3172
3188
  projectName: z.ZodString;
@@ -3241,6 +3257,7 @@ export declare const zLocalSessionListPayload: z.ZodObject<{
3241
3257
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
3242
3258
  outcome: z.ZodOptional<z.ZodString>;
3243
3259
  parentSessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3260
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
3244
3261
  preview: z.ZodOptional<z.ZodString>;
3245
3262
  project: z.ZodOptional<z.ZodString>;
3246
3263
  projectHash: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">>;
@@ -3312,6 +3329,8 @@ export declare const zLocalSessionListPayload: z.ZodObject<{
3312
3329
  id: z.ZodString;
3313
3330
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
3314
3331
  model: z.ZodString;
3332
+ parentSessionId: z.ZodOptional<z.ZodString>;
3333
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
3315
3334
  previouslyPushed: z.ZodBoolean;
3316
3335
  projectHash: z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">;
3317
3336
  projectName: z.ZodString;
@@ -3354,6 +3373,8 @@ export declare const zLocalSyncSessionsPayload: z.ZodObject<{
3354
3373
  id: z.ZodString;
3355
3374
  inputSubmissionCount: z.ZodOptional<z.ZodInt>;
3356
3375
  model: z.ZodString;
3376
+ parentSessionId: z.ZodOptional<z.ZodString>;
3377
+ parentUnresolved: z.ZodOptional<z.ZodBoolean>;
3357
3378
  previouslyPushed: z.ZodBoolean;
3358
3379
  projectHash: z.core.$ZodBranded<z.ZodString, "ProjectHash", "out">;
3359
3380
  projectName: z.ZodString;
@@ -3958,6 +3979,45 @@ export declare const zProjectTasksPayload: z.ZodObject<{
3958
3979
  }, z.core.$strip>>>;
3959
3980
  }, z.core.$strip>;
3960
3981
  export type ProjectTasksPayload = z.infer<typeof zProjectTasksPayload>;
3982
+ /**
3983
+ * Thinking Level
3984
+ *
3985
+ * Canonical reasoning-effort level of assistant-generated output: off, minimal, low, medium, high, xhigh, max, ultra, ultracode. off is the single disabled state, ultra is above max, and ultracode is a distinct level. Omit the field when the level is unknown; never infer it from token budgets.
3986
+ */
3987
+ export declare const zThinkingLevel: z.ZodEnum<{
3988
+ max: "max";
3989
+ high: "high";
3990
+ low: "low";
3991
+ medium: "medium";
3992
+ off: "off";
3993
+ minimal: "minimal";
3994
+ xhigh: "xhigh";
3995
+ ultra: "ultra";
3996
+ ultracode: "ultracode";
3997
+ }>;
3998
+ export type ThinkingLevel = z.infer<typeof zThinkingLevel>;
3999
+ /**
4000
+ * Thinking Level Raw
4001
+ *
4002
+ * Exact native thinking-level spelling observed when it differs from the emitted canonical thinkingLevel, including when no canonical level could be mapped. Source evidence, never a canonical value; numeric budgets are never raw. Non-empty, valid UTF-8, at most 128 encoded UTF-8 bytes, and no Unicode White_Space code point at either edge. Omit when nothing was observed or the native spelling is canonical.
4003
+ */
4004
+ export declare const zThinkingLevelRaw: z.ZodString;
4005
+ export type ThinkingLevelRaw = z.infer<typeof zThinkingLevelRaw>;
4006
+ export declare const zThinkingLevelChange: z.ZodIntersection<z.ZodUnknown, z.ZodObject<{
4007
+ level: z.ZodOptional<z.ZodEnum<{
4008
+ max: "max";
4009
+ high: "high";
4010
+ low: "low";
4011
+ medium: "medium";
4012
+ off: "off";
4013
+ minimal: "minimal";
4014
+ xhigh: "xhigh";
4015
+ ultra: "ultra";
4016
+ ultracode: "ultracode";
4017
+ }>>;
4018
+ raw: z.ZodOptional<z.ZodString>;
4019
+ }, z.core.$strip>>;
4020
+ export type ThinkingLevelChange = z.infer<typeof zThinkingLevelChange>;
3961
4021
  export declare const zTimelineSessionRef: z.ZodObject<{
3962
4022
  harness: z.ZodEnum<{
3963
4023
  strike: "strike";
@@ -5551,6 +5611,32 @@ export declare const zUnifiedMetadata: z.ZodObject<{
5551
5611
  parentUuid: z.ZodString;
5552
5612
  sessionId: z.ZodString;
5553
5613
  }, z.core.$strip>>>;
5614
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
5615
+ max: "max";
5616
+ high: "high";
5617
+ low: "low";
5618
+ medium: "medium";
5619
+ off: "off";
5620
+ minimal: "minimal";
5621
+ xhigh: "xhigh";
5622
+ ultra: "ultra";
5623
+ ultracode: "ultracode";
5624
+ }>>;
5625
+ thinkingLevelHistory: z.ZodOptional<z.ZodArray<z.ZodIntersection<z.ZodUnknown, z.ZodObject<{
5626
+ level: z.ZodOptional<z.ZodEnum<{
5627
+ max: "max";
5628
+ high: "high";
5629
+ low: "low";
5630
+ medium: "medium";
5631
+ off: "off";
5632
+ minimal: "minimal";
5633
+ xhigh: "xhigh";
5634
+ ultra: "ultra";
5635
+ ultracode: "ultracode";
5636
+ }>>;
5637
+ raw: z.ZodOptional<z.ZodString>;
5638
+ }, z.core.$strip>>>>;
5639
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
5554
5640
  timestamp: z.ZodObject<{
5555
5641
  end: z.ZodCoercedBigInt<unknown>;
5556
5642
  ingested: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -6050,6 +6136,18 @@ export declare const zTurnDetail: z.ZodObject<{
6050
6136
  max_turn_requests: "max_turn_requests";
6051
6137
  refusal: "refusal";
6052
6138
  }>>>;
6139
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
6140
+ max: "max";
6141
+ high: "high";
6142
+ low: "low";
6143
+ medium: "medium";
6144
+ off: "off";
6145
+ minimal: "minimal";
6146
+ xhigh: "xhigh";
6147
+ ultra: "ultra";
6148
+ ultracode: "ultracode";
6149
+ }>>;
6150
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
6053
6151
  timestamp: z.ZodISODateTime;
6054
6152
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
6055
6153
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -6357,6 +6455,18 @@ export declare const zEarlierHistorySection: z.ZodObject<{
6357
6455
  max_turn_requests: "max_turn_requests";
6358
6456
  refusal: "refusal";
6359
6457
  }>>>;
6458
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
6459
+ max: "max";
6460
+ high: "high";
6461
+ low: "low";
6462
+ medium: "medium";
6463
+ off: "off";
6464
+ minimal: "minimal";
6465
+ xhigh: "xhigh";
6466
+ ultra: "ultra";
6467
+ ultracode: "ultracode";
6468
+ }>>;
6469
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
6360
6470
  timestamp: z.ZodISODateTime;
6361
6471
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
6362
6472
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -6675,6 +6785,18 @@ export declare const zSessionDetailPayload: z.ZodObject<{
6675
6785
  max_turn_requests: "max_turn_requests";
6676
6786
  refusal: "refusal";
6677
6787
  }>>>;
6788
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
6789
+ max: "max";
6790
+ high: "high";
6791
+ low: "low";
6792
+ medium: "medium";
6793
+ off: "off";
6794
+ minimal: "minimal";
6795
+ xhigh: "xhigh";
6796
+ ultra: "ultra";
6797
+ ultracode: "ultracode";
6798
+ }>>;
6799
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
6678
6800
  timestamp: z.ZodISODateTime;
6679
6801
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
6680
6802
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -6991,6 +7113,32 @@ export declare const zSessionDetailPayload: z.ZodObject<{
6991
7113
  source: z.ZodOptional<z.ZodString>;
6992
7114
  startTime: z.ZodISODateTime;
6993
7115
  status: z.ZodOptional<z.ZodString>;
7116
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
7117
+ max: "max";
7118
+ high: "high";
7119
+ low: "low";
7120
+ medium: "medium";
7121
+ off: "off";
7122
+ minimal: "minimal";
7123
+ xhigh: "xhigh";
7124
+ ultra: "ultra";
7125
+ ultracode: "ultracode";
7126
+ }>>;
7127
+ thinkingLevelHistory: z.ZodOptional<z.ZodArray<z.ZodIntersection<z.ZodUnknown, z.ZodObject<{
7128
+ level: z.ZodOptional<z.ZodEnum<{
7129
+ max: "max";
7130
+ high: "high";
7131
+ low: "low";
7132
+ medium: "medium";
7133
+ off: "off";
7134
+ minimal: "minimal";
7135
+ xhigh: "xhigh";
7136
+ ultra: "ultra";
7137
+ ultracode: "ultracode";
7138
+ }>>;
7139
+ raw: z.ZodOptional<z.ZodString>;
7140
+ }, z.core.$strip>>>>;
7141
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
6994
7142
  tokensIn: z.ZodInt;
6995
7143
  tokensOut: z.ZodInt;
6996
7144
  toolCallCount: z.ZodInt;
@@ -7080,6 +7228,18 @@ export declare const zSessionDetailPayload: z.ZodObject<{
7080
7228
  max_turn_requests: "max_turn_requests";
7081
7229
  refusal: "refusal";
7082
7230
  }>>>;
7231
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
7232
+ max: "max";
7233
+ high: "high";
7234
+ low: "low";
7235
+ medium: "medium";
7236
+ off: "off";
7237
+ minimal: "minimal";
7238
+ xhigh: "xhigh";
7239
+ ultra: "ultra";
7240
+ ultracode: "ultracode";
7241
+ }>>;
7242
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
7083
7243
  timestamp: z.ZodISODateTime;
7084
7244
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
7085
7245
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -7399,6 +7559,18 @@ export declare const zSessionDetailReadPayload: z.ZodObject<{
7399
7559
  max_turn_requests: "max_turn_requests";
7400
7560
  refusal: "refusal";
7401
7561
  }>>>;
7562
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
7563
+ max: "max";
7564
+ high: "high";
7565
+ low: "low";
7566
+ medium: "medium";
7567
+ off: "off";
7568
+ minimal: "minimal";
7569
+ xhigh: "xhigh";
7570
+ ultra: "ultra";
7571
+ ultracode: "ultracode";
7572
+ }>>;
7573
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
7402
7574
  timestamp: z.ZodISODateTime;
7403
7575
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
7404
7576
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -7740,6 +7912,32 @@ export declare const zSessionDetailReadPayload: z.ZodObject<{
7740
7912
  source: z.ZodOptional<z.ZodString>;
7741
7913
  startTime: z.ZodOptional<z.ZodISODateTime>;
7742
7914
  status: z.ZodOptional<z.ZodString>;
7915
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
7916
+ max: "max";
7917
+ high: "high";
7918
+ low: "low";
7919
+ medium: "medium";
7920
+ off: "off";
7921
+ minimal: "minimal";
7922
+ xhigh: "xhigh";
7923
+ ultra: "ultra";
7924
+ ultracode: "ultracode";
7925
+ }>>;
7926
+ thinkingLevelHistory: z.ZodOptional<z.ZodArray<z.ZodIntersection<z.ZodUnknown, z.ZodObject<{
7927
+ level: z.ZodOptional<z.ZodEnum<{
7928
+ max: "max";
7929
+ high: "high";
7930
+ low: "low";
7931
+ medium: "medium";
7932
+ off: "off";
7933
+ minimal: "minimal";
7934
+ xhigh: "xhigh";
7935
+ ultra: "ultra";
7936
+ ultracode: "ultracode";
7937
+ }>>;
7938
+ raw: z.ZodOptional<z.ZodString>;
7939
+ }, z.core.$strip>>>>;
7940
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
7743
7941
  tokensIn: z.ZodOptional<z.ZodInt>;
7744
7942
  tokensOut: z.ZodOptional<z.ZodInt>;
7745
7943
  toolCallCount: z.ZodOptional<z.ZodInt>;
@@ -7829,6 +8027,18 @@ export declare const zSessionDetailReadPayload: z.ZodObject<{
7829
8027
  max_turn_requests: "max_turn_requests";
7830
8028
  refusal: "refusal";
7831
8029
  }>>>;
8030
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
8031
+ max: "max";
8032
+ high: "high";
8033
+ low: "low";
8034
+ medium: "medium";
8035
+ off: "off";
8036
+ minimal: "minimal";
8037
+ xhigh: "xhigh";
8038
+ ultra: "ultra";
8039
+ ultracode: "ultracode";
8040
+ }>>;
8041
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
7832
8042
  timestamp: z.ZodISODateTime;
7833
8043
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
7834
8044
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -8153,6 +8363,18 @@ export declare const zTranscriptContent: z.ZodObject<{
8153
8363
  max_turn_requests: "max_turn_requests";
8154
8364
  refusal: "refusal";
8155
8365
  }>>>;
8366
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
8367
+ max: "max";
8368
+ high: "high";
8369
+ low: "low";
8370
+ medium: "medium";
8371
+ off: "off";
8372
+ minimal: "minimal";
8373
+ xhigh: "xhigh";
8374
+ ultra: "ultra";
8375
+ ultracode: "ultracode";
8376
+ }>>;
8377
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
8156
8378
  timestamp: z.ZodISODateTime;
8157
8379
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
8158
8380
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
@@ -8469,6 +8691,32 @@ export declare const zTranscriptContent: z.ZodObject<{
8469
8691
  source: z.ZodOptional<z.ZodString>;
8470
8692
  startTime: z.ZodISODateTime;
8471
8693
  status: z.ZodOptional<z.ZodString>;
8694
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
8695
+ max: "max";
8696
+ high: "high";
8697
+ low: "low";
8698
+ medium: "medium";
8699
+ off: "off";
8700
+ minimal: "minimal";
8701
+ xhigh: "xhigh";
8702
+ ultra: "ultra";
8703
+ ultracode: "ultracode";
8704
+ }>>;
8705
+ thinkingLevelHistory: z.ZodOptional<z.ZodArray<z.ZodIntersection<z.ZodUnknown, z.ZodObject<{
8706
+ level: z.ZodOptional<z.ZodEnum<{
8707
+ max: "max";
8708
+ high: "high";
8709
+ low: "low";
8710
+ medium: "medium";
8711
+ off: "off";
8712
+ minimal: "minimal";
8713
+ xhigh: "xhigh";
8714
+ ultra: "ultra";
8715
+ ultracode: "ultracode";
8716
+ }>>;
8717
+ raw: z.ZodOptional<z.ZodString>;
8718
+ }, z.core.$strip>>>>;
8719
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
8472
8720
  tokensIn: z.ZodInt;
8473
8721
  tokensOut: z.ZodInt;
8474
8722
  toolCallCount: z.ZodInt;
@@ -8558,6 +8806,18 @@ export declare const zTranscriptContent: z.ZodObject<{
8558
8806
  max_turn_requests: "max_turn_requests";
8559
8807
  refusal: "refusal";
8560
8808
  }>>>;
8809
+ thinkingLevel: z.ZodOptional<z.ZodEnum<{
8810
+ max: "max";
8811
+ high: "high";
8812
+ low: "low";
8813
+ medium: "medium";
8814
+ off: "off";
8815
+ minimal: "minimal";
8816
+ xhigh: "xhigh";
8817
+ ultra: "ultra";
8818
+ ultracode: "ultracode";
8819
+ }>>;
8820
+ thinkingLevelRaw: z.ZodOptional<z.ZodString>;
8561
8821
  timestamp: z.ZodISODateTime;
8562
8822
  tokensIn: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
8563
8823
  tokensOut: z.ZodOptional<z.ZodNullable<z.ZodInt>>;