@ellipsis-dev/sdk 0.20.0 → 0.21.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.
@@ -528,7 +528,7 @@ interface paths {
528
528
  * @description List the GitHub organization roster.
529
529
  *
530
530
  * (Or the account itself for a personal workspace) — the universe of author_id values for
531
- * /sessions and /sessions/search.
531
+ * /sessions.
532
532
  *
533
533
  * Members carry their linked Slack identity when a Slack-GitHub
534
534
  * link exists, and /slack/members carries the reverse link.
@@ -742,33 +742,6 @@ interface paths {
742
742
  patch?: never;
743
743
  trace?: never;
744
744
  };
745
- '/v1/models': {
746
- parameters: {
747
- query?: never;
748
- header?: never;
749
- path?: never;
750
- cookie?: never;
751
- };
752
- /**
753
- * List Supported Models
754
- * @description List selectable agent models.
755
- *
756
- * Most expensive first, with the platform default flagged.
757
- *
758
- * Reads the same registry as the dashboard's rate table, so a
759
- * client's model picker can never drift from what's offered.
760
- * Behind auth but not account-scoped — the selectable set is
761
- * global.
762
- */
763
- get: operations['list_supported_models'];
764
- put?: never;
765
- post?: never;
766
- delete?: never;
767
- options?: never;
768
- head?: never;
769
- patch?: never;
770
- trace?: never;
771
- };
772
745
  '/v1/reviews': {
773
746
  parameters: {
774
747
  query?: never;
@@ -928,34 +901,6 @@ interface paths {
928
901
  patch?: never;
929
902
  trace?: never;
930
903
  };
931
- '/v1/sessions/search': {
932
- parameters: {
933
- query?: never;
934
- header?: never;
935
- path?: never;
936
- cookie?: never;
937
- };
938
- /**
939
- * Search Agent Sessions
940
- * @description Search sessions over steps, recaps, and pull requests.
941
- *
942
- * Grouped by session, over everything a session left behind: step text, recap text, created
943
- * PRs, and recap-embedding similarity.
944
- *
945
- * This is how an agent answers "did Tony look into X?": resolve
946
- * the author via /github/members, search, then read the winning
947
- * session via /sessions/{id} (recap) and /sessions/{id}/records
948
- * (transcript).
949
- */
950
- get: operations['search_sessions'];
951
- put?: never;
952
- post?: never;
953
- delete?: never;
954
- options?: never;
955
- head?: never;
956
- patch?: never;
957
- trace?: never;
958
- };
959
904
  '/v1/sessions/{session_id}': {
960
905
  parameters: {
961
906
  query?: never;
@@ -983,33 +928,6 @@ interface paths {
983
928
  patch?: never;
984
929
  trace?: never;
985
930
  };
986
- '/v1/sessions/{session_id}/executions': {
987
- parameters: {
988
- query?: never;
989
- header?: never;
990
- path?: never;
991
- cookie?: never;
992
- };
993
- /**
994
- * Get Agent Session Executions
995
- * @description Return the session's executions and launch context.
996
- *
997
- * Most notably system_prompt_append, the text Ellipsis appends to
998
- * Claude Code's default system prompt (platform section + response
999
- * instructions + the config's own instructions).
1000
- *
1001
- * Per execution because each cold wake persists its own launch
1002
- * config (a config edit between wakes changes it).
1003
- */
1004
- get: operations['get_agent_session_executions'];
1005
- put?: never;
1006
- post?: never;
1007
- delete?: never;
1008
- options?: never;
1009
- head?: never;
1010
- patch?: never;
1011
- trace?: never;
1012
- };
1013
931
  '/v1/sessions/{session_id}/export': {
1014
932
  parameters: {
1015
933
  query?: never;
@@ -1103,9 +1021,9 @@ interface paths {
1103
1021
  *
1104
1022
  * Pagination is opt-in (cursor/limit); a bare call returns the
1105
1023
  * full retained transcript. Available to sandbox tokens too: an
1106
- * agent answering "did X look into Y?" needs to read the session
1107
- * it found via /sessions/search, and any org member sees the same
1108
- * transcript in the dashboard.
1024
+ * agent answering "did X look into Y?" needs to read the sessions
1025
+ * it finds, and any org member sees the same transcript in the
1026
+ * dashboard.
1109
1027
  */
1110
1028
  get: operations['get_agent_session_records'];
1111
1029
  put?: never;
@@ -3304,14 +3222,6 @@ interface components {
3304
3222
  ErrorResponse: {
3305
3223
  error: components['schemas']['ErrorInfo'];
3306
3224
  };
3307
- /**
3308
- * ExecutionStatus
3309
- * @description Per-execution status ladder (was AgentProcessStatus). Distinct from the
3310
- * session's durable `session_state` and from `agent_sessions.status`, which
3311
- * remains the atomic claim/dispatch guard.
3312
- * @enum {string}
3313
- */
3314
- ExecutionStatus: 'running' | 'failed' | 'done';
3315
3225
  /**
3316
3226
  * File
3317
3227
  * @description A file's metadata — the file itself is fetched via a separate
@@ -4269,50 +4179,6 @@ interface components {
4269
4179
  /** @description The credential that last wrote the memory. */
4270
4180
  updated_by: components['schemas']['MemoryActor'];
4271
4181
  };
4272
- /** Model */
4273
- Model: {
4274
- /** Display Name */
4275
- display_name: string;
4276
- /** Id */
4277
- id: string;
4278
- /** Is Default Agent Model */
4279
- is_default_agent_model: boolean;
4280
- manufacturer: components['schemas']['ModelManufacturer'];
4281
- rate_card: components['schemas']['ModelRateCardApi'];
4282
- };
4283
- /**
4284
- * ModelManufacturer
4285
- * @description Who BUILT a model. Never who serves it.
4286
- *
4287
- * Serving path is irrelevant here. Anthropic built every Claude model, so all of
4288
- * them are ANTHROPIC even though OpenRouter is what actually serves them.
4289
- * Likewise the `gpt-5.6-*` rows are OPENAI (OpenAI's models, resold to us by
4290
- * OpenRouter), and GLM is ZAI (Z.ai's model, served by DeepInfra via
4291
- * OpenRouter).
4292
- *
4293
- * So this is deliberately NOT derived from `EgressRoute.provider`: routing is an
4294
- * infrastructure fact that changes when we move a model between providers, while
4295
- * the manufacturer is a property of the model itself and never changes.
4296
- *
4297
- * The frontend renders a vendor logo per model, which is why it needs the maker.
4298
- * Keying that UI off the egress provider would put an AWS logo on a GPT model and
4299
- * an OpenAI logo on GLM.
4300
- * @enum {string}
4301
- */
4302
- ModelManufacturer: 'anthropic' | 'openai' | 'zai' | 'minimax' | 'moonshot';
4303
- /** ModelRateCardApi */
4304
- ModelRateCardApi: {
4305
- /** Cache Read Millicents Per 1M Tokens */
4306
- cache_read_millicents_per_1m_tokens: number;
4307
- /** Cache Write 1H Millicents Per 1M Tokens */
4308
- cache_write_1h_millicents_per_1m_tokens: number;
4309
- /** Cache Write 5M Millicents Per 1M Tokens */
4310
- cache_write_5m_millicents_per_1m_tokens: number;
4311
- /** Input Millicents Per 1M Tokens */
4312
- input_millicents_per_1m_tokens: number;
4313
- /** Output Millicents Per 1M Tokens */
4314
- output_millicents_per_1m_tokens: number;
4315
- };
4316
4182
  /**
4317
4183
  * ModelUsageBreakdown
4318
4184
  * @description Usage and cost for one model over the whole period, split into the four
@@ -4350,11 +4216,6 @@ interface components {
4350
4216
  */
4351
4217
  tokens: number;
4352
4218
  };
4353
- /** ModelsListResponse */
4354
- ModelsListResponse: {
4355
- /** Models */
4356
- models: components['schemas']['Model'][];
4357
- };
4358
4219
  /**
4359
4220
  * OrganizationRole
4360
4221
  * @enum {string}
@@ -4797,68 +4658,6 @@ interface components {
4797
4658
  */
4798
4659
  user_login: string;
4799
4660
  };
4800
- /**
4801
- * RecordHit
4802
- * @description One session-log record matching a search query, denormalized with just
4803
- * enough session context to render a result row and deep-link to the
4804
- * session.
4805
- */
4806
- RecordHit: {
4807
- /**
4808
- * Attribution Id
4809
- * @description The actor the session is attributed to; the key into the response's attributed_users map for github_user attributions.
4810
- */
4811
- attribution_id?: string | null;
4812
- /** @description What kind of actor the session is attributed to. Only github_user attributions appear in the response's attributed_users map. */
4813
- attribution_type?: components['schemas']['AttributionType'] | null;
4814
- /**
4815
- * Config Id
4816
- * @description The agent config the session ran from, when it ran from a stored config.
4817
- */
4818
- config_id?: string | null;
4819
- /**
4820
- * Created At
4821
- * Format: date-time
4822
- * @description When the record was written.
4823
- */
4824
- created_at: string;
4825
- /**
4826
- * Execution Id
4827
- * @description The session execution that produced the record, or null for session-scoped lifecycle records.
4828
- */
4829
- execution_id?: string | null;
4830
- /** @description What the session did to git, per repository, so a result row can show what it shipped without fetching the session. */
4831
- git?: components['schemas']['SessionGit'] | null;
4832
- /**
4833
- * Id
4834
- * @description The matching record's unique identifier.
4835
- */
4836
- id: string;
4837
- /**
4838
- * Record Type
4839
- * @description The record's event type.
4840
- */
4841
- record_type: string;
4842
- /**
4843
- * Session Id
4844
- * @description The session the record belongs to.
4845
- */
4846
- session_id: string;
4847
- /** @description Where the matching session came from. */
4848
- session_source?: components['schemas']['SessionSource'] | null;
4849
- /** @description The matching session's status. */
4850
- session_status?: components['schemas']['SessionStatus'] | null;
4851
- /**
4852
- * Snippet
4853
- * @description A short window of the indexed text around the first match.
4854
- */
4855
- snippet: string;
4856
- /**
4857
- * Stream Seq
4858
- * @description The record's position within its execution's stream.
4859
- */
4860
- stream_seq: number;
4861
- };
4862
4661
  /**
4863
4662
  * RecordSource
4864
4663
  * @description `session_records.source` — the client render switch. `lifecycle` rows are
@@ -6200,8 +5999,8 @@ interface components {
6200
5999
  stopped?: components['schemas']['SessionStopped'];
6201
6000
  /** @description The latest live summary of the session's progress while it runs, and when it was generated. */
6202
6001
  summary?: components['schemas']['SessionSummary'] | null;
6203
- /** @description The public status projection; null on list/search responses, which do not derive it. */
6204
- surface?: components['schemas']['SessionSurface'] | null;
6002
+ /** @description The public status projection: the durable conversation (`session`), the current execution (`run`), and the one derived `status` word. */
6003
+ surface: components['schemas']['SessionSurface'];
6205
6004
  /** @description The tokens the session spent and the model they went to. `total` includes the prompt-cache lanes. */
6206
6005
  tokens?: components['schemas']['SessionTokens'];
6207
6006
  /**
@@ -6330,83 +6129,6 @@ interface components {
6330
6129
  /** @description How the environment was chosen (request, agent_config, repo_default, account_default, platform_default). Null when the config carried its own inline environment. */
6331
6130
  source?: components['schemas']['EnvironmentSource'] | null;
6332
6131
  };
6333
- /**
6334
- * SessionExecution
6335
- * @description One runtime attempt of a session — the initial start, a cold wake of a
6336
- * durable conversation, or an infrastructure retry — including the launch
6337
- * context the model was actually given.
6338
- */
6339
- SessionExecution: {
6340
- /**
6341
- * Attempt Index
6342
- * @description Infrastructure-retry counter within one wake.
6343
- */
6344
- attempt_index: number;
6345
- /**
6346
- * Created At
6347
- * Format: date-time
6348
- * @description When the execution was created.
6349
- */
6350
- created_at: string;
6351
- /**
6352
- * Execution Index
6353
- * @description Monotonic position of this execution within the session, across all starts, wakes, and retries.
6354
- */
6355
- execution_index: number;
6356
- /**
6357
- * Exit Status
6358
- * @description Finer terminal reason, mirroring the session's exit_status vocabulary; null until the execution is terminal.
6359
- */
6360
- exit_status?: string | null;
6361
- /**
6362
- * Id
6363
- * @description Unique identifier of the execution.
6364
- */
6365
- id: string;
6366
- /**
6367
- * Model
6368
- * @description The model the harness was launched with, when a launch config exists.
6369
- */
6370
- model?: string | null;
6371
- /**
6372
- * Query
6373
- * @description The initial query delivered to the harness, when the trigger carried one.
6374
- */
6375
- query?: string | null;
6376
- /**
6377
- * Resumed
6378
- * @description Whether this execution resumed a prior conversation (a cold wake with the previous state restored).
6379
- */
6380
- resumed: boolean;
6381
- /**
6382
- * Session Id
6383
- * @description Identifier of the session this execution belongs to.
6384
- */
6385
- session_id: string;
6386
- /** @description Execution status. */
6387
- status: components['schemas']['ExecutionStatus'];
6388
- /**
6389
- * System Prompt Append
6390
- * @description The system-prompt text Ellipsis appends to the harness's default system prompt (the platform section, run-type instructions, and the config's own instructions) — the platform-added portion, not the complete prompt the model saw. Null when no launch config was persisted (the execution failed before provisioning finished).
6391
- */
6392
- system_prompt_append?: string | null;
6393
- /**
6394
- * Wake Index
6395
- * @description 0 on the session's fresh start; increments once per cold wake of a durable conversation.
6396
- */
6397
- wake_index: number;
6398
- };
6399
- /**
6400
- * SessionExecutionsListResponse
6401
- * @description A session's executions with the launch context each was given.
6402
- */
6403
- SessionExecutionsListResponse: {
6404
- /**
6405
- * Executions
6406
- * @description The session's executions (initial start, cold wakes, infra retries), ordered by execution_index. Each carries the launch context the harness was given: system_prompt_append (the text appended to Claude Code's default system prompt), the initial query, and the model.
6407
- */
6408
- executions: components['schemas']['SessionExecution'][];
6409
- };
6410
6132
  /**
6411
6133
  * SessionExitStatus
6412
6134
  * @description Why a terminal agent session ended — a finer-grained reason than `status`.
@@ -6523,7 +6245,7 @@ interface components {
6523
6245
  * @description The durable conversation axis (backs the surfaced `session` field).
6524
6246
  * @enum {string}
6525
6247
  */
6526
- SessionLiveness: 'alive' | 'sleeping' | 'closed';
6248
+ SessionLiveness: 'alive' | 'idle' | 'closed';
6527
6249
  /**
6528
6250
  * SessionLogSegment
6529
6251
  * @description One immutable archived segment of the session log: its feed_seq range
@@ -6710,61 +6432,6 @@ interface components {
6710
6432
  /** @description The session. */
6711
6433
  session: components['schemas']['Session'];
6712
6434
  };
6713
- /**
6714
- * SessionSearchResponse
6715
- * @description A page of session search results.
6716
- */
6717
- SessionSearchResponse: {
6718
- /**
6719
- * Attributed Users
6720
- * @description GitHub account snippets for the user attributions among the results, keyed by attribution_id, so callers can render author logins and avatars.
6721
- */
6722
- attributed_users: {
6723
- [key: string]: components['schemas']['GithubAccountSnippet'];
6724
- };
6725
- /**
6726
- * Results
6727
- * @description The matching sessions, newest first.
6728
- */
6729
- results: components['schemas']['SessionSearchResult'][];
6730
- };
6731
- /**
6732
- * SessionSearchResult
6733
- * @description One search hit: a session plus how and where the query matched it.
6734
- */
6735
- SessionSearchResult: {
6736
- /**
6737
- * Matched
6738
- * @description Which search arms matched this session: "records", "recap", "pr", and/or "similar".
6739
- */
6740
- matched: string[];
6741
- /**
6742
- * Recap Snippet
6743
- * @description A short window of the session's recap text around the first term match; null unless the recap arm matched.
6744
- */
6745
- recap_snippet?: string | null;
6746
- /**
6747
- * Record Hit Count
6748
- * @description Total record hits found for this session within the search window; may exceed the number of record_hits returned.
6749
- * @default 0
6750
- */
6751
- record_hit_count: number;
6752
- /**
6753
- * Record Hits
6754
- * @description Matching session-log entries, capped per session.
6755
- * @default []
6756
- */
6757
- record_hits: components['schemas']['RecordHit'][];
6758
- /** @description The matching session. */
6759
- session: components['schemas']['Session'];
6760
- };
6761
- /**
6762
- * SessionSearchScope
6763
- * @description What text a search query is matched against: the session log's record
6764
- * text, the session recaps (summaries), or both.
6765
- * @enum {string}
6766
- */
6767
- SessionSearchScope: 'records' | 'recaps' | 'both';
6768
6435
  /**
6769
6436
  * SessionSource
6770
6437
  * @enum {string}
@@ -9746,55 +9413,6 @@ interface operations {
9746
9413
  };
9747
9414
  };
9748
9415
  };
9749
- list_supported_models: {
9750
- parameters: {
9751
- query?: never;
9752
- header?: {
9753
- 'user-agent'?: string | null;
9754
- };
9755
- path?: never;
9756
- cookie?: never;
9757
- };
9758
- requestBody?: never;
9759
- responses: {
9760
- /** @description Successful Response */
9761
- 200: {
9762
- headers: {
9763
- [name: string]: unknown;
9764
- };
9765
- content: {
9766
- 'application/json': components['schemas']['ModelsListResponse'];
9767
- };
9768
- };
9769
- /** @description The bearer token is missing, invalid, or revoked. */
9770
- 401: {
9771
- headers: {
9772
- [name: string]: unknown;
9773
- };
9774
- content: {
9775
- 'application/json': components['schemas']['ErrorResponse'];
9776
- };
9777
- };
9778
- /** @description The credential may not perform this action, or the account is blocked. */
9779
- 403: {
9780
- headers: {
9781
- [name: string]: unknown;
9782
- };
9783
- content: {
9784
- 'application/json': components['schemas']['ErrorResponse'];
9785
- };
9786
- };
9787
- /** @description Validation Error */
9788
- 422: {
9789
- headers: {
9790
- [name: string]: unknown;
9791
- };
9792
- content: {
9793
- 'application/json': components['schemas']['HTTPValidationError'];
9794
- };
9795
- };
9796
- };
9797
- };
9798
9416
  list_reviews: {
9799
9417
  parameters: {
9800
9418
  query?: {
@@ -10182,9 +9800,9 @@ interface operations {
10182
9800
  cursor?: string | null;
10183
9801
  /** @description A GitHub account id (see GET /v1/integrations/github/members); scopes the list to sessions attributed to that developer. */
10184
9802
  author_id?: number | null;
10185
- /** @description "owner/name" (exact) or a bare repo name, matched the same way as on GET /v1/sessions/search. Sessions whose repository is named only inside their agent config — dashboard starts, cron — do not match. */
9803
+ /** @description "owner/name" (exact) or a bare repo name. Sessions whose repository is named only inside their agent config — dashboard starts, cron — do not match. */
10186
9804
  repo?: string | null;
10187
- /** @description Keep only sessions whose conversation is still going — live or sleeping — dropping the ones that completed, errored, or were stopped or cancelled. A session parked between turns counts as unfinished. */
9805
+ /** @description Keep only sessions whose conversation is still going — live or idle — dropping the ones that completed, errored, or were stopped or cancelled. A session parked between turns counts as unfinished. */
10188
9806
  unfinished?: boolean;
10189
9807
  };
10190
9808
  header?: {
@@ -10304,79 +9922,6 @@ interface operations {
10304
9922
  };
10305
9923
  };
10306
9924
  };
10307
- search_sessions: {
10308
- parameters: {
10309
- query: {
10310
- q: string;
10311
- scope?: components['schemas']['SessionSearchScope'];
10312
- source?: components['schemas']['SessionSource'][] | null;
10313
- /** @description Attributed GitHub user account ids. */
10314
- author_id?: number[] | null;
10315
- /** @description Saved agent config ids (ORed with author_id). */
10316
- config_id?: string[] | null;
10317
- session_ids?: string[] | null;
10318
- /** @description "owner/name" (exact) or a bare repo name. */
10319
- repo?: string | null;
10320
- status?: components['schemas']['SessionStatus'][] | null;
10321
- start?: string | null;
10322
- end?: string | null;
10323
- limit?: number;
10324
- };
10325
- header?: {
10326
- 'user-agent'?: string | null;
10327
- };
10328
- path?: never;
10329
- cookie?: never;
10330
- };
10331
- requestBody?: never;
10332
- responses: {
10333
- /** @description Successful Response */
10334
- 200: {
10335
- headers: {
10336
- [name: string]: unknown;
10337
- };
10338
- content: {
10339
- 'application/json': components['schemas']['SessionSearchResponse'];
10340
- };
10341
- };
10342
- /** @description The search query is too short. */
10343
- 400: {
10344
- headers: {
10345
- [name: string]: unknown;
10346
- };
10347
- content: {
10348
- 'application/json': components['schemas']['ErrorResponse'];
10349
- };
10350
- };
10351
- /** @description The bearer token is missing, invalid, or revoked. */
10352
- 401: {
10353
- headers: {
10354
- [name: string]: unknown;
10355
- };
10356
- content: {
10357
- 'application/json': components['schemas']['ErrorResponse'];
10358
- };
10359
- };
10360
- /** @description The credential may not perform this action, or the account is blocked. */
10361
- 403: {
10362
- headers: {
10363
- [name: string]: unknown;
10364
- };
10365
- content: {
10366
- 'application/json': components['schemas']['ErrorResponse'];
10367
- };
10368
- };
10369
- /** @description Validation Error */
10370
- 422: {
10371
- headers: {
10372
- [name: string]: unknown;
10373
- };
10374
- content: {
10375
- 'application/json': components['schemas']['HTTPValidationError'];
10376
- };
10377
- };
10378
- };
10379
- };
10380
9925
  get_agent_session: {
10381
9926
  parameters: {
10382
9927
  query?: never;
@@ -10437,66 +9982,6 @@ interface operations {
10437
9982
  };
10438
9983
  };
10439
9984
  };
10440
- get_agent_session_executions: {
10441
- parameters: {
10442
- query?: never;
10443
- header?: {
10444
- 'user-agent'?: string | null;
10445
- };
10446
- path: {
10447
- session_id: string;
10448
- };
10449
- cookie?: never;
10450
- };
10451
- requestBody?: never;
10452
- responses: {
10453
- /** @description Successful Response */
10454
- 200: {
10455
- headers: {
10456
- [name: string]: unknown;
10457
- };
10458
- content: {
10459
- 'application/json': components['schemas']['SessionExecutionsListResponse'];
10460
- };
10461
- };
10462
- /** @description The bearer token is missing, invalid, or revoked. */
10463
- 401: {
10464
- headers: {
10465
- [name: string]: unknown;
10466
- };
10467
- content: {
10468
- 'application/json': components['schemas']['ErrorResponse'];
10469
- };
10470
- };
10471
- /** @description The credential may not perform this action, or the account is blocked. */
10472
- 403: {
10473
- headers: {
10474
- [name: string]: unknown;
10475
- };
10476
- content: {
10477
- 'application/json': components['schemas']['ErrorResponse'];
10478
- };
10479
- };
10480
- /** @description No such session in your account. */
10481
- 404: {
10482
- headers: {
10483
- [name: string]: unknown;
10484
- };
10485
- content: {
10486
- 'application/json': components['schemas']['ErrorResponse'];
10487
- };
10488
- };
10489
- /** @description Validation Error */
10490
- 422: {
10491
- headers: {
10492
- [name: string]: unknown;
10493
- };
10494
- content: {
10495
- 'application/json': components['schemas']['HTTPValidationError'];
10496
- };
10497
- };
10498
- };
10499
- };
10500
9985
  export_agent_session: {
10501
9986
  parameters: {
10502
9987
  query?: never;
@@ -11290,7 +10775,7 @@ type RunStatus = 'scheduled' | 'starting' | 'working' | 'waiting' | 'done' | 'fa
11290
10775
  /**
11291
10776
  * The durable conversation axis (backs the surfaced `session` field).
11292
10777
  */
11293
- type SessionLiveness = 'alive' | 'sleeping' | 'closed';
10778
+ type SessionLiveness = 'alive' | 'idle' | 'closed';
11294
10779
  /**
11295
10780
  * The first frame after the stream connects: the session plus its open
11296
10781
  * inbox. Records always arrive separately via records_append frames.
@@ -11423,10 +10908,7 @@ interface Session {
11423
10908
  * The latest live summary of the session's progress while it runs, and when it was generated.
11424
10909
  */
11425
10910
  summary: SessionSummary | null;
11426
- /**
11427
- * The public status projection; null on list/search responses, which do not derive it.
11428
- */
11429
- surface: SessionSurface | null;
10911
+ surface: SessionSurface;
11430
10912
  tokens: SessionTokens;
11431
10913
  /**
11432
10914
  * When the session was last updated.
@@ -12065,11 +11547,7 @@ interface SessionSummary {
12065
11547
  description: string;
12066
11548
  }
12067
11549
  /**
12068
- * The three fields we expose.
12069
- *
12070
- * `use_enum_values=True` (from CustomBaseModel) stores the members as their
12071
- * string values, so this serializes to `{"session": "alive", "run": "waiting",
12072
- * "status": "waiting"}` — a plain object, not enum names.
11550
+ * The public status projection: the durable conversation (`session`), the current execution (`run`), and the one derived `status` word.
12073
11551
  */
12074
11552
  interface SessionSurface {
12075
11553
  run: RunStatus | null;
@@ -12666,10 +12144,7 @@ interface Session1 {
12666
12144
  * The latest live summary of the session's progress while it runs, and when it was generated.
12667
12145
  */
12668
12146
  summary: SessionSummary | null;
12669
- /**
12670
- * The public status projection; null on list/search responses, which do not derive it.
12671
- */
12672
- surface: SessionSurface | null;
12147
+ surface: SessionSurface;
12673
12148
  tokens: SessionTokens;
12674
12149
  /**
12675
12150
  * When the session was last updated.
@@ -12758,8 +12233,6 @@ type StreamFrame = SessionStreamFrame | {
12758
12233
  };
12759
12234
  type SendSessionMessageRequest = components['schemas']['SendSessionMessageRequest'];
12760
12235
  type SessionRecordsListResponse = components['schemas']['SessionRecordsListResponse'];
12761
- type SessionExecutionsListResponse = components['schemas']['SessionExecutionsListResponse'];
12762
- type SessionExecution = components['schemas']['SessionExecution'];
12763
12236
  type SessionResponse = components['schemas']['SessionResponse'];
12764
12237
  type SessionMessageResponse = components['schemas']['SessionMessageResponse'];
12765
12238
  type SessionsListResponse = components['schemas']['SessionsListResponse'];
@@ -12777,4 +12250,4 @@ type ReviewRequester = components['schemas']['ReviewRequester'];
12777
12250
  type ReviewFinding = components['schemas']['ReviewFinding'];
12778
12251
  type Finding = ReviewFinding;
12779
12252
 
12780
- export type { SessionResponse as $, AgentConfigSource as A, BudgetSource as B, ClaudeSessionRecord as C, DeltaFrame as D, ErrorFrame as E, Finding as F, GithubAccountSnippet as G, Harness as H, SdkUserRecord as I, SendSessionMessageRequest as J, Session as K, LifecycleSessionRecord as L, SessionExecution as M, SessionExecutionsListResponse as N, SessionExitStatus as O, ParentKind as P, SessionFrame as Q, RecordsAppendFrame as R, SdkAssistantRecord as S, SessionGit as T, SessionLiveness as U, SessionMessage as V, SessionMessageResponse as W, SessionMessageStatus as X, SessionPrompting as Y, SessionRecord as Z, SessionRecordsListResponse as _, AttributionType as a, SessionSource as a0, SessionState as a1, SessionStatus as a2, SessionStreamFrame as a3, SessionSurface as a4, SessionsListResponse as a5, SnapshotFrame as a6, StreamFrame as a7, TokensInfo as a8, paths as a9, CodexFileChangeItem as aa, CodexMcpToolCallItem as ab, CodexEvent as b, components as c, CodexItem as d, CodexSessionRecord as e, CreateReviewRequest as f, DoneFrame as g, GithubAccountType as h, HeartbeatFrame as i, PromptBlockedReason as j, ResolvedReviewScope as k, Review as l, ReviewConfiguration as m, ReviewCounters as n, ReviewFinding as o, ReviewRequester as p, ReviewScope as q, ReviewScopeKind as r, ReviewStage as s, ReviewedCommit as t, ReviewsListResponse as u, SdkContentBlock as v, SdkRateLimitRecord as w, SdkRecord as x, SdkResultRecord as y, SdkSystemRecord as z };
12253
+ export type { SessionState as $, AgentConfigSource as A, BudgetSource as B, ClaudeSessionRecord as C, DeltaFrame as D, ErrorFrame as E, Finding as F, GithubAccountSnippet as G, Harness as H, SdkUserRecord as I, SendSessionMessageRequest as J, Session as K, LifecycleSessionRecord as L, SessionExitStatus as M, SessionFrame as N, SessionGit as O, ParentKind as P, SessionLiveness as Q, RecordsAppendFrame as R, SdkAssistantRecord as S, SessionMessage as T, SessionMessageResponse as U, SessionMessageStatus as V, SessionPrompting as W, SessionRecord as X, SessionRecordsListResponse as Y, SessionResponse as Z, SessionSource as _, AttributionType as a, SessionStatus as a0, SessionStreamFrame as a1, SessionSurface as a2, SessionsListResponse as a3, SnapshotFrame as a4, StreamFrame as a5, TokensInfo as a6, paths as a7, CodexFileChangeItem as a8, CodexMcpToolCallItem as a9, CodexEvent as b, components as c, CodexItem as d, CodexSessionRecord as e, CreateReviewRequest as f, DoneFrame as g, GithubAccountType as h, HeartbeatFrame as i, PromptBlockedReason as j, ResolvedReviewScope as k, Review as l, ReviewConfiguration as m, ReviewCounters as n, ReviewFinding as o, ReviewRequester as p, ReviewScope as q, ReviewScopeKind as r, ReviewStage as s, ReviewedCommit as t, ReviewsListResponse as u, SdkContentBlock as v, SdkRateLimitRecord as w, SdkRecord as x, SdkResultRecord as y, SdkSystemRecord as z };