@opencode-ai/schema 0.0.0-dev-17872 → 0.0.0-dev-17880

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.
@@ -727,6 +727,58 @@ export declare const ServerDefinitions: readonly [Schema.Struct<{
727
727
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
728
728
  };
729
729
  }>;
730
+ }, Schema.Struct<{
731
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
732
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
733
+ };
734
+ readonly created: Schema.Finite;
735
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
736
+ readonly type: Schema.Literal<"session.viewed">;
737
+ readonly durable: Schema.Struct<{
738
+ readonly aggregateID: Schema.String;
739
+ readonly seq: Schema.brand<Schema.Int, "Event.Seq">;
740
+ readonly version: Schema.decodeTo<Schema.toType<Schema.brand<Schema.Int, "Event.Version">>, Schema.Literal<number>, never, never>;
741
+ }>;
742
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
743
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
744
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
745
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
746
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
747
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
748
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
749
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
750
+ }>, never, never>;
751
+ }>>>, Schema.optionalKey<Schema.Struct<{
752
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
753
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
754
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
755
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
756
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
757
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
758
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
759
+ }>, never, never>;
760
+ }>>, never, never>;
761
+ readonly data: Schema.Struct<{
762
+ readonly idle: Schema.Finite;
763
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
764
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
765
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
766
+ };
767
+ }>;
768
+ }> & {
769
+ type: "session.viewed";
770
+ durability: "durable";
771
+ durable: {
772
+ readonly version: number;
773
+ readonly aggregate: string;
774
+ };
775
+ data: Schema.Struct<{
776
+ readonly idle: Schema.Finite;
777
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
778
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
779
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
780
+ };
781
+ }>;
730
782
  }, Schema.Struct<{
731
783
  readonly id: Schema.brand<Schema.String, "Event.ID"> & {
732
784
  create: () => string & import("effect/Brand").Brand<"Event.ID">;
@@ -893,6 +945,15 @@ export declare const ServerDefinitions: readonly [Schema.Struct<{
893
945
  };
894
946
  }>]>;
895
947
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
948
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
949
+ readonly removed: Schema.Boolean;
950
+ readonly key: Schema.String;
951
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
952
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
953
+ readonly removed: Schema.Boolean;
954
+ readonly key: Schema.String;
955
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
956
+ }>>>, never, never>;
896
957
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
897
958
  create: () => string & import("effect/Brand").Brand<"SessionID">;
898
959
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -924,6 +985,15 @@ export declare const ServerDefinitions: readonly [Schema.Struct<{
924
985
  };
925
986
  }>]>;
926
987
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
988
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
989
+ readonly removed: Schema.Boolean;
990
+ readonly key: Schema.String;
991
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
992
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
993
+ readonly removed: Schema.Boolean;
994
+ readonly key: Schema.String;
995
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
996
+ }>>>, never, never>;
927
997
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
928
998
  create: () => string & import("effect/Brand").Brand<"SessionID">;
929
999
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -6149,6 +6219,58 @@ export declare const Definitions: readonly [Schema.Struct<{
6149
6219
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
6150
6220
  };
6151
6221
  }>;
6222
+ }, Schema.Struct<{
6223
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
6224
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
6225
+ };
6226
+ readonly created: Schema.Finite;
6227
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
6228
+ readonly type: Schema.Literal<"session.viewed">;
6229
+ readonly durable: Schema.Struct<{
6230
+ readonly aggregateID: Schema.String;
6231
+ readonly seq: Schema.brand<Schema.Int, "Event.Seq">;
6232
+ readonly version: Schema.decodeTo<Schema.toType<Schema.brand<Schema.Int, "Event.Version">>, Schema.Literal<number>, never, never>;
6233
+ }>;
6234
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
6235
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
6236
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
6237
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
6238
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
6239
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
6240
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
6241
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
6242
+ }>, never, never>;
6243
+ }>>>, Schema.optionalKey<Schema.Struct<{
6244
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
6245
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
6246
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
6247
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
6248
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
6249
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
6250
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
6251
+ }>, never, never>;
6252
+ }>>, never, never>;
6253
+ readonly data: Schema.Struct<{
6254
+ readonly idle: Schema.Finite;
6255
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
6256
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
6257
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
6258
+ };
6259
+ }>;
6260
+ }> & {
6261
+ type: "session.viewed";
6262
+ durability: "durable";
6263
+ durable: {
6264
+ readonly version: number;
6265
+ readonly aggregate: string;
6266
+ };
6267
+ data: Schema.Struct<{
6268
+ readonly idle: Schema.Finite;
6269
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
6270
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
6271
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
6272
+ };
6273
+ }>;
6152
6274
  }, Schema.Struct<{
6153
6275
  readonly id: Schema.brand<Schema.String, "Event.ID"> & {
6154
6276
  create: () => string & import("effect/Brand").Brand<"Event.ID">;
@@ -6315,6 +6437,15 @@ export declare const Definitions: readonly [Schema.Struct<{
6315
6437
  };
6316
6438
  }>]>;
6317
6439
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
6440
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
6441
+ readonly removed: Schema.Boolean;
6442
+ readonly key: Schema.String;
6443
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
6444
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
6445
+ readonly removed: Schema.Boolean;
6446
+ readonly key: Schema.String;
6447
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
6448
+ }>>>, never, never>;
6318
6449
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
6319
6450
  create: () => string & import("effect/Brand").Brand<"SessionID">;
6320
6451
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -6346,6 +6477,15 @@ export declare const Definitions: readonly [Schema.Struct<{
6346
6477
  };
6347
6478
  }>]>;
6348
6479
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
6480
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
6481
+ readonly removed: Schema.Boolean;
6482
+ readonly key: Schema.String;
6483
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
6484
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
6485
+ readonly removed: Schema.Boolean;
6486
+ readonly key: Schema.String;
6487
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
6488
+ }>>>, never, never>;
6349
6489
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
6350
6490
  create: () => string & import("effect/Brand").Brand<"SessionID">;
6351
6491
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -13,6 +13,12 @@ export declare const Info: Schema.Struct<{
13
13
  }>;
14
14
  export interface Info extends Schema.Schema.Type<typeof Info> {
15
15
  }
16
+ export declare const Snapshot: Schema.$Array<Schema.Struct<{
17
+ readonly removed: Schema.Boolean;
18
+ readonly key: Schema.String;
19
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
20
+ }>>;
21
+ export type Snapshot = typeof Snapshot.Type;
16
22
  export declare const MaxValueBytes: number;
17
23
  declare const ValueTooLargeError_base: Schema.Class<ValueTooLargeError, Schema.TaggedStruct<"InstructionEntryValueTooLargeError", {
18
24
  readonly actualBytes: Schema.Int;
@@ -13,6 +13,10 @@ export const Info = Schema.Struct({
13
13
  key: Key,
14
14
  value: Schema.Json.annotate({ description: "JSON value attached to the session's instructions" }),
15
15
  }).annotate({ identifier: "InstructionEntry.Info" });
16
+ export const Snapshot = Schema.Array(Schema.Struct({
17
+ ...Info.fields,
18
+ removed: Schema.Boolean,
19
+ })).annotate({ identifier: "InstructionEntry.Snapshot" });
16
20
  export const MaxValueBytes = 8 * 1024;
17
21
  export class ValueTooLargeError extends Schema.TaggedError()("InstructionEntryValueTooLargeError", {
18
22
  actualBytes: Schema.Int,
@@ -580,6 +580,62 @@ export declare const Renamed: Schema.Struct<{
580
580
  }>;
581
581
  };
582
582
  export type Renamed = typeof Renamed.Type;
583
+ export declare const Viewed: Schema.Struct<{
584
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
585
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
586
+ };
587
+ readonly created: Schema.Finite;
588
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
589
+ readonly type: Schema.Literal<"session.viewed">;
590
+ readonly durable: Schema.Struct<{
591
+ readonly aggregateID: Schema.String;
592
+ readonly seq: Schema.brand<Schema.Int, "Event.Seq">;
593
+ readonly version: Schema.decodeTo<Schema.toType<Schema.brand<Schema.Int, "Event.Version">>, Schema.Literal<number>, never, never>;
594
+ }>;
595
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
596
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
597
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
598
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
599
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
600
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
601
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
602
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
603
+ }>, never, never>;
604
+ }>>>, Schema.optionalKey<Schema.Struct<{
605
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
606
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
607
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
608
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
609
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
610
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
611
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
612
+ }>, never, never>;
613
+ }>>, never, never>;
614
+ readonly data: Schema.Struct<{
615
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
616
+ readonly idle: Schema.Finite;
617
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
618
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
619
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
620
+ };
621
+ }>;
622
+ }> & {
623
+ type: "session.viewed";
624
+ durability: "durable";
625
+ durable: {
626
+ readonly version: number;
627
+ readonly aggregate: string;
628
+ };
629
+ data: Schema.Struct<{
630
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
631
+ readonly idle: Schema.Finite;
632
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
633
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
634
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
635
+ };
636
+ }>;
637
+ };
638
+ export type Viewed = typeof Viewed.Type;
583
639
  export declare const UsageRecorded: Schema.Struct<{
584
640
  readonly id: Schema.brand<Schema.String, "Event.ID"> & {
585
641
  create: () => string & import("effect/Brand").Brand<"Event.ID">;
@@ -828,6 +884,15 @@ export declare const Forked: Schema.Struct<{
828
884
  };
829
885
  }>]>;
830
886
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
887
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
888
+ readonly removed: Schema.Boolean;
889
+ readonly key: Schema.String;
890
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
891
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
892
+ readonly removed: Schema.Boolean;
893
+ readonly key: Schema.String;
894
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
895
+ }>>>, never, never>;
831
896
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
832
897
  create: () => string & import("effect/Brand").Brand<"SessionID">;
833
898
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -859,6 +924,15 @@ export declare const Forked: Schema.Struct<{
859
924
  };
860
925
  }>]>;
861
926
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
927
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
928
+ readonly removed: Schema.Boolean;
929
+ readonly key: Schema.String;
930
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
931
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
932
+ readonly removed: Schema.Boolean;
933
+ readonly key: Schema.String;
934
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
935
+ }>>>, never, never>;
862
936
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
863
937
  create: () => string & import("effect/Brand").Brand<"SessionID">;
864
938
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -4344,6 +4418,60 @@ export declare const Definitions: readonly [Schema.Struct<{
4344
4418
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
4345
4419
  };
4346
4420
  }>;
4421
+ }, Schema.Struct<{
4422
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
4423
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
4424
+ };
4425
+ readonly created: Schema.Finite;
4426
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
4427
+ readonly type: Schema.Literal<"session.viewed">;
4428
+ readonly durable: Schema.Struct<{
4429
+ readonly aggregateID: Schema.String;
4430
+ readonly seq: Schema.brand<Schema.Int, "Event.Seq">;
4431
+ readonly version: Schema.decodeTo<Schema.toType<Schema.brand<Schema.Int, "Event.Version">>, Schema.Literal<number>, never, never>;
4432
+ }>;
4433
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
4434
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
4435
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
4436
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
4437
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
4438
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
4439
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
4440
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
4441
+ }>, never, never>;
4442
+ }>>>, Schema.optionalKey<Schema.Struct<{
4443
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
4444
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
4445
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
4446
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
4447
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
4448
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
4449
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
4450
+ }>, never, never>;
4451
+ }>>, never, never>;
4452
+ readonly data: Schema.Struct<{
4453
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
4454
+ readonly idle: Schema.Finite;
4455
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
4456
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
4457
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
4458
+ };
4459
+ }>;
4460
+ }> & {
4461
+ type: "session.viewed";
4462
+ durability: "durable";
4463
+ durable: {
4464
+ readonly version: number;
4465
+ readonly aggregate: string;
4466
+ };
4467
+ data: Schema.Struct<{
4468
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
4469
+ readonly idle: Schema.Finite;
4470
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
4471
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
4472
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
4473
+ };
4474
+ }>;
4347
4475
  }, Schema.Struct<{
4348
4476
  readonly id: Schema.brand<Schema.String, "Event.ID"> & {
4349
4477
  create: () => string & import("effect/Brand").Brand<"Event.ID">;
@@ -4510,6 +4638,15 @@ export declare const Definitions: readonly [Schema.Struct<{
4510
4638
  };
4511
4639
  }>]>;
4512
4640
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
4641
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
4642
+ readonly removed: Schema.Boolean;
4643
+ readonly key: Schema.String;
4644
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
4645
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
4646
+ readonly removed: Schema.Boolean;
4647
+ readonly key: Schema.String;
4648
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
4649
+ }>>>, never, never>;
4513
4650
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
4514
4651
  create: () => string & import("effect/Brand").Brand<"SessionID">;
4515
4652
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -4541,6 +4678,15 @@ export declare const Definitions: readonly [Schema.Struct<{
4541
4678
  };
4542
4679
  }>]>;
4543
4680
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
4681
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
4682
+ readonly removed: Schema.Boolean;
4683
+ readonly key: Schema.String;
4684
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
4685
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
4686
+ readonly removed: Schema.Boolean;
4687
+ readonly key: Schema.String;
4688
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
4689
+ }>>>, never, never>;
4544
4690
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
4545
4691
  create: () => string & import("effect/Brand").Brand<"SessionID">;
4546
4692
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -7927,6 +8073,60 @@ export declare const DurableDefinitions: readonly [...((Schema.Struct<{
7927
8073
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
7928
8074
  };
7929
8075
  }>;
8076
+ }) | (Schema.Struct<{
8077
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
8078
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
8079
+ };
8080
+ readonly created: Schema.Finite;
8081
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
8082
+ readonly type: Schema.Literal<"session.viewed">;
8083
+ readonly durable: Schema.Struct<{
8084
+ readonly aggregateID: Schema.String;
8085
+ readonly seq: Schema.brand<Schema.Int, "Event.Seq">;
8086
+ readonly version: Schema.decodeTo<Schema.toType<Schema.brand<Schema.Int, "Event.Version">>, Schema.Literal<number>, never, never>;
8087
+ }>;
8088
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
8089
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
8090
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
8091
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
8092
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
8093
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
8094
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
8095
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
8096
+ }>, never, never>;
8097
+ }>>>, Schema.optionalKey<Schema.Struct<{
8098
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
8099
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
8100
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
8101
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
8102
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
8103
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
8104
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
8105
+ }>, never, never>;
8106
+ }>>, never, never>;
8107
+ readonly data: Schema.Struct<{
8108
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
8109
+ readonly idle: Schema.Finite;
8110
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
8111
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
8112
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
8113
+ };
8114
+ }>;
8115
+ }> & {
8116
+ type: "session.viewed";
8117
+ durability: "durable";
8118
+ durable: {
8119
+ readonly version: number;
8120
+ readonly aggregate: string;
8121
+ };
8122
+ data: Schema.Struct<{
8123
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
8124
+ readonly idle: Schema.Finite;
8125
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
8126
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
8127
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
8128
+ };
8129
+ }>;
7930
8130
  }) | (Schema.Struct<{
7931
8131
  readonly id: Schema.brand<Schema.String, "Event.ID"> & {
7932
8132
  create: () => string & import("effect/Brand").Brand<"Event.ID">;
@@ -8027,6 +8227,15 @@ export declare const DurableDefinitions: readonly [...((Schema.Struct<{
8027
8227
  };
8028
8228
  }>]>;
8029
8229
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
8230
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
8231
+ readonly removed: Schema.Boolean;
8232
+ readonly key: Schema.String;
8233
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
8234
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
8235
+ readonly removed: Schema.Boolean;
8236
+ readonly key: Schema.String;
8237
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
8238
+ }>>>, never, never>;
8030
8239
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
8031
8240
  create: () => string & import("effect/Brand").Brand<"SessionID">;
8032
8241
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -8058,6 +8267,15 @@ export declare const DurableDefinitions: readonly [...((Schema.Struct<{
8058
8267
  };
8059
8268
  }>]>;
8060
8269
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
8270
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
8271
+ readonly removed: Schema.Boolean;
8272
+ readonly key: Schema.String;
8273
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
8274
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
8275
+ readonly removed: Schema.Boolean;
8276
+ readonly key: Schema.String;
8277
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
8278
+ }>>>, never, never>;
8061
8279
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
8062
8280
  create: () => string & import("effect/Brand").Brand<"SessionID">;
8063
8281
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -11587,6 +11805,60 @@ export declare const Durable: Schema.Union<readonly [...((Schema.Struct<{
11587
11805
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
11588
11806
  };
11589
11807
  }>;
11808
+ }) | (Schema.Struct<{
11809
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
11810
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
11811
+ };
11812
+ readonly created: Schema.Finite;
11813
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
11814
+ readonly type: Schema.Literal<"session.viewed">;
11815
+ readonly durable: Schema.Struct<{
11816
+ readonly aggregateID: Schema.String;
11817
+ readonly seq: Schema.brand<Schema.Int, "Event.Seq">;
11818
+ readonly version: Schema.decodeTo<Schema.toType<Schema.brand<Schema.Int, "Event.Version">>, Schema.Literal<number>, never, never>;
11819
+ }>;
11820
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
11821
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
11822
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
11823
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
11824
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
11825
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
11826
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
11827
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
11828
+ }>, never, never>;
11829
+ }>>>, Schema.optionalKey<Schema.Struct<{
11830
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
11831
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
11832
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
11833
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
11834
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
11835
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
11836
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
11837
+ }>, never, never>;
11838
+ }>>, never, never>;
11839
+ readonly data: Schema.Struct<{
11840
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
11841
+ readonly idle: Schema.Finite;
11842
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
11843
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
11844
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
11845
+ };
11846
+ }>;
11847
+ }> & {
11848
+ type: "session.viewed";
11849
+ durability: "durable";
11850
+ durable: {
11851
+ readonly version: number;
11852
+ readonly aggregate: string;
11853
+ };
11854
+ data: Schema.Struct<{
11855
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
11856
+ readonly idle: Schema.Finite;
11857
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
11858
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
11859
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
11860
+ };
11861
+ }>;
11590
11862
  }) | (Schema.Struct<{
11591
11863
  readonly id: Schema.brand<Schema.String, "Event.ID"> & {
11592
11864
  create: () => string & import("effect/Brand").Brand<"Event.ID">;
@@ -11687,6 +11959,15 @@ export declare const Durable: Schema.Union<readonly [...((Schema.Struct<{
11687
11959
  };
11688
11960
  }>]>;
11689
11961
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
11962
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
11963
+ readonly removed: Schema.Boolean;
11964
+ readonly key: Schema.String;
11965
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
11966
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
11967
+ readonly removed: Schema.Boolean;
11968
+ readonly key: Schema.String;
11969
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
11970
+ }>>>, never, never>;
11690
11971
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
11691
11972
  create: () => string & import("effect/Brand").Brand<"SessionID">;
11692
11973
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -11718,6 +11999,15 @@ export declare const Durable: Schema.Union<readonly [...((Schema.Struct<{
11718
11999
  };
11719
12000
  }>]>;
11720
12001
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
12002
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
12003
+ readonly removed: Schema.Boolean;
12004
+ readonly key: Schema.String;
12005
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
12006
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
12007
+ readonly removed: Schema.Boolean;
12008
+ readonly key: Schema.String;
12009
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
12010
+ }>>>, never, never>;
11721
12011
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
11722
12012
  create: () => string & import("effect/Brand").Brand<"SessionID">;
11723
12013
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -14921,6 +15211,60 @@ export declare const All: Schema.toTaggedUnion<"type", readonly [Schema.Union<re
14921
15211
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
14922
15212
  };
14923
15213
  }>;
15214
+ }) | (Schema.Struct<{
15215
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
15216
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
15217
+ };
15218
+ readonly created: Schema.Finite;
15219
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
15220
+ readonly type: Schema.Literal<"session.viewed">;
15221
+ readonly durable: Schema.Struct<{
15222
+ readonly aggregateID: Schema.String;
15223
+ readonly seq: Schema.brand<Schema.Int, "Event.Seq">;
15224
+ readonly version: Schema.decodeTo<Schema.toType<Schema.brand<Schema.Int, "Event.Version">>, Schema.Literal<number>, never, never>;
15225
+ }>;
15226
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
15227
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
15228
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
15229
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
15230
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
15231
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
15232
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
15233
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
15234
+ }>, never, never>;
15235
+ }>>>, Schema.optionalKey<Schema.Struct<{
15236
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
15237
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
15238
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
15239
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
15240
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
15241
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
15242
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
15243
+ }>, never, never>;
15244
+ }>>, never, never>;
15245
+ readonly data: Schema.Struct<{
15246
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
15247
+ readonly idle: Schema.Finite;
15248
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
15249
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
15250
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
15251
+ };
15252
+ }>;
15253
+ }> & {
15254
+ type: "session.viewed";
15255
+ durability: "durable";
15256
+ durable: {
15257
+ readonly version: number;
15258
+ readonly aggregate: string;
15259
+ };
15260
+ data: Schema.Struct<{
15261
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
15262
+ readonly idle: Schema.Finite;
15263
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
15264
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
15265
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
15266
+ };
15267
+ }>;
14924
15268
  }) | (Schema.Struct<{
14925
15269
  readonly id: Schema.brand<Schema.String, "Event.ID"> & {
14926
15270
  create: () => string & import("effect/Brand").Brand<"Event.ID">;
@@ -15021,6 +15365,15 @@ export declare const All: Schema.toTaggedUnion<"type", readonly [Schema.Union<re
15021
15365
  };
15022
15366
  }>]>;
15023
15367
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
15368
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
15369
+ readonly removed: Schema.Boolean;
15370
+ readonly key: Schema.String;
15371
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
15372
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
15373
+ readonly removed: Schema.Boolean;
15374
+ readonly key: Schema.String;
15375
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
15376
+ }>>>, never, never>;
15024
15377
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
15025
15378
  create: () => string & import("effect/Brand").Brand<"SessionID">;
15026
15379
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -15052,6 +15405,15 @@ export declare const All: Schema.toTaggedUnion<"type", readonly [Schema.Union<re
15052
15405
  };
15053
15406
  }>]>;
15054
15407
  readonly instructions: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>>, Schema.optionalKey<Schema.$Record<Schema.brand<Schema.String, "Instruction.Key">, Schema.brand<Schema.String, "Instruction.Hash">>>, never, never>;
15408
+ readonly instructionEntries: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
15409
+ readonly removed: Schema.Boolean;
15410
+ readonly key: Schema.String;
15411
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
15412
+ }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
15413
+ readonly removed: Schema.Boolean;
15414
+ readonly key: Schema.String;
15415
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
15416
+ }>>>, never, never>;
15055
15417
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
15056
15418
  create: () => string & import("effect/Brand").Brand<"SessionID">;
15057
15419
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -14,6 +14,7 @@ import { Revert } from "./session-revert.js";
14
14
  import { Shell as ShellSchema } from "./shell.js";
15
15
  import { SessionError } from "./session-error.js";
16
16
  import { Instruction } from "./instruction.js";
17
+ import { InstructionEntry } from "./instruction-entry.js";
17
18
  import { Agent } from "./agent.js";
18
19
  import { Skill as SkillSchema } from "./skill.js";
19
20
  import { Money } from "./money.js";
@@ -89,6 +90,15 @@ export const Renamed = Event.durable({
89
90
  title: Schema.String,
90
91
  },
91
92
  });
93
+ export const Viewed = Event.durable({
94
+ type: "session.viewed",
95
+ ...options,
96
+ schema: {
97
+ ...Base,
98
+ /** Epoch-millisecond idle watermark the viewer observed; projection never marks a newer idle transition viewed. */
99
+ idle: Schema.Finite,
100
+ },
101
+ });
92
102
  export const UsageRecorded = Event.durable({
93
103
  type: "session.usage.recorded",
94
104
  ...options,
@@ -126,6 +136,7 @@ export const Forked = Event.durable({
126
136
  parentID: SessionID,
127
137
  boundary: SessionFork.Boundary,
128
138
  instructions: Instruction.Values.pipe(optional),
139
+ instructionEntries: InstructionEntry.Snapshot.pipe(optional),
129
140
  },
130
141
  });
131
142
  const InboxRef = {
@@ -494,7 +505,7 @@ export var RevertEvent;
494
505
  schema: { ...Base, to: SessionMessage.ID },
495
506
  });
496
507
  })(RevertEvent || (RevertEvent = {}));
497
- export const Definitions = Event.inventory(Created, AgentSelected, ModelSelected, Moved, Renamed, UsageUpdated, Deleted, Forked, InboxDelivered, InboxEnqueued, InboxCancelled, InboxDeliveryChanged, Execution.Started, Execution.Succeeded, Execution.Failed, Execution.Interrupted, InstructionsUpdated, Synthetic, Skill.Activated, Shell.Started, Shell.Ended, Step.Started, Step.Ended, Step.Failed, Text.Started, Text.Delta, Text.Ended, Reasoning.Started, Reasoning.Delta, Reasoning.Ended, Tool.Input.Started, Tool.Input.Delta, Tool.Input.Ended, Tool.Called, Tool.Progress, Tool.Success, Tool.Failed, RetryScheduled, Compaction.Started, Compaction.Delta, Compaction.Ended, Compaction.Failed, RevertEvent.Staged, RevertEvent.Cleared, RevertEvent.Committed);
508
+ export const Definitions = Event.inventory(Created, AgentSelected, ModelSelected, Moved, Renamed, Viewed, UsageUpdated, Deleted, Forked, InboxDelivered, InboxEnqueued, InboxCancelled, InboxDeliveryChanged, Execution.Started, Execution.Succeeded, Execution.Failed, Execution.Interrupted, InstructionsUpdated, Synthetic, Skill.Activated, Shell.Started, Shell.Ended, Step.Started, Step.Ended, Step.Failed, Text.Started, Text.Delta, Text.Ended, Reasoning.Started, Reasoning.Delta, Reasoning.Ended, Tool.Input.Started, Tool.Input.Delta, Tool.Input.Ended, Tool.Called, Tool.Progress, Tool.Success, Tool.Failed, RetryScheduled, Compaction.Started, Compaction.Delta, Compaction.Ended, Compaction.Failed, RevertEvent.Staged, RevertEvent.Cleared, RevertEvent.Committed);
498
509
  // UsageRecorded is durable but internal: excluded from Definitions so it never reaches the public manifest.
499
510
  export const DurableDefinitions = Event.inventory(...Definitions.filter((definition) => definition.durability === "durable"), UsageRecorded);
500
511
  export const EphemeralDefinitions = Event.inventory(...Definitions.filter((definition) => definition.durability === "ephemeral"));
@@ -113,9 +113,12 @@ export declare const Data: Schema.Struct<{
113
113
  readonly write: Schema.Finite;
114
114
  }>;
115
115
  }>;
116
+ readonly outcome: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Literals<readonly ["succeeded", "failed", "interrupted"]>>>, Schema.optionalKey<Schema.Literals<readonly ["succeeded", "failed", "interrupted"]>>, never, never>;
116
117
  readonly time: Schema.Struct<{
117
118
  readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
118
119
  readonly updated: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
120
+ readonly idle: Schema.decodeTo<Schema.optional<Schema.toType<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>>, Schema.optionalKey<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>, never, never>;
121
+ readonly viewed: Schema.decodeTo<Schema.optional<Schema.toType<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>>, Schema.optionalKey<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>, never, never>;
119
122
  readonly archived: Schema.decodeTo<Schema.optional<Schema.toType<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>>, Schema.optionalKey<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>, never, never>;
120
123
  }>;
121
124
  readonly title: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
package/dist/session.d.ts CHANGED
@@ -147,9 +147,13 @@ export declare const Info: Schema.Struct<{
147
147
  readonly write: Schema.Finite;
148
148
  }>;
149
149
  }>;
150
+ /** Outcome of the last completed execution, recorded at `time.idle`. Absent until a run reaches a terminal transition. */
151
+ readonly outcome: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Literals<readonly ["succeeded", "failed", "interrupted"]>>>, Schema.optionalKey<Schema.Literals<readonly ["succeeded", "failed", "interrupted"]>>, never, never>;
150
152
  readonly time: Schema.Struct<{
151
153
  readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
152
154
  readonly updated: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
155
+ readonly idle: Schema.decodeTo<Schema.optional<Schema.toType<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>>, Schema.optionalKey<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>, never, never>;
156
+ readonly viewed: Schema.decodeTo<Schema.optional<Schema.toType<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>>, Schema.optionalKey<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>, never, never>;
153
157
  readonly archived: Schema.decodeTo<Schema.optional<Schema.toType<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>>, Schema.optionalKey<Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>>, never, never>;
154
158
  }>;
155
159
  readonly title: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
package/dist/session.js CHANGED
@@ -28,9 +28,13 @@ export const Info = Schema.Struct({
28
28
  model: Model.Ref.pipe(optional),
29
29
  cost: Money.USD,
30
30
  tokens: TokenUsage.Info,
31
+ /** Outcome of the last completed execution, recorded at `time.idle`. Absent until a run reaches a terminal transition. */
32
+ outcome: Schema.Literals(["succeeded", "failed", "interrupted"]).pipe(optional),
31
33
  time: Schema.Struct({
32
34
  created: DateTimeUtcFromMillis,
33
35
  updated: DateTimeUtcFromMillis,
36
+ idle: DateTimeUtcFromMillis.pipe(optional),
37
+ viewed: DateTimeUtcFromMillis.pipe(optional),
34
38
  archived: DateTimeUtcFromMillis.pipe(optional),
35
39
  }),
36
40
  title: Schema.String.pipe(optional),
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@opencode-ai/schema",
4
- "version": "0.0.0-dev-17872",
4
+ "version": "0.0.0-dev-17880",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "repository": {