t3code-cli 0.10.0 → 0.11.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.
Files changed (124) hide show
  1. package/README.md +33 -1
  2. package/dist/application.js +2 -2
  3. package/dist/auth.js +1 -1
  4. package/dist/bin.js +1566 -351
  5. package/dist/cli.js +1 -1
  6. package/dist/config.js +1 -1
  7. package/dist/connection.js +1 -11
  8. package/dist/index.js +1 -1
  9. package/dist/layout.js +1 -1
  10. package/dist/node.js +2 -0
  11. package/dist/orchestration.js +2 -2
  12. package/dist/rpc.js +2 -2
  13. package/dist/runtime.js +1 -1
  14. package/dist/scope.js +1 -1
  15. package/dist/shared.js +1740 -767
  16. package/dist/src/application/index.d.ts +3 -2
  17. package/dist/src/application/layer.d.ts +82 -841
  18. package/dist/src/application/model-selection.d.ts +15 -0
  19. package/dist/src/application/models.d.ts +1 -87
  20. package/dist/src/application/project-commands.d.ts +9 -0
  21. package/dist/src/application/projects.d.ts +13 -135
  22. package/dist/src/application/service.d.ts +84 -5
  23. package/dist/src/application/shell-sequence.d.ts +2 -12
  24. package/dist/src/application/terminals.d.ts +66 -0
  25. package/dist/src/application/thread-commands.d.ts +47 -0
  26. package/dist/src/application/thread-update.d.ts +8 -0
  27. package/dist/src/application/thread-wait.d.ts +3 -14
  28. package/dist/src/application/threads.d.ts +21 -50
  29. package/dist/src/cli/flags.d.ts +3 -0
  30. package/dist/src/cli/output-format.d.ts +2 -0
  31. package/dist/src/domain/error.d.ts +14 -1
  32. package/dist/src/domain/helpers.d.ts +0 -9
  33. package/dist/src/domain/model-config.d.ts +29 -3
  34. package/dist/src/domain/thread-lifecycle.d.ts +2 -10
  35. package/dist/src/node/index.d.ts +2 -0
  36. package/dist/src/orchestration/index.d.ts +1 -0
  37. package/dist/src/orchestration/layer.d.ts +177 -1032
  38. package/dist/src/orchestration/service.d.ts +1 -0
  39. package/dist/src/rpc/error.d.ts +4 -2
  40. package/dist/src/rpc/index.d.ts +5 -0
  41. package/dist/src/rpc/layer.d.ts +1097 -499
  42. package/dist/src/rpc/operation.d.ts +5752 -0
  43. package/dist/src/rpc/ws-group.d.ts +327 -147
  44. package/dist/src/runtime/layer.d.ts +1 -1
  45. package/dist/t3tools.js +2 -2
  46. package/dist/upstream-t3code/packages/contracts/src/environmentHttp.d.ts +10 -33
  47. package/dist/upstream-t3code/packages/contracts/src/ipc.d.ts +0 -6
  48. package/dist/upstream-t3code/packages/contracts/src/orchestration.d.ts +1 -657
  49. package/dist/upstream-t3code/packages/contracts/src/provider.d.ts +0 -14
  50. package/dist/upstream-t3code/packages/contracts/src/providerRuntime.d.ts +1 -175
  51. package/dist/upstream-t3code/packages/contracts/src/rpc.d.ts +0 -492
  52. package/dist/upstream-t3code/packages/contracts/src/server.d.ts +0 -45
  53. package/dist/upstream-t3code/packages/contracts/src/settings.d.ts +0 -21
  54. package/dist/upstream-t3code/packages/contracts/src/terminal.d.ts +3 -6
  55. package/package.json +6 -2
  56. package/src/application/index.ts +28 -2
  57. package/src/application/layer.ts +34 -5
  58. package/src/application/model-selection.ts +68 -2
  59. package/src/application/models.ts +14 -14
  60. package/src/application/project-commands.ts +15 -0
  61. package/src/application/projects.ts +43 -13
  62. package/src/application/service.ts +196 -77
  63. package/src/application/shell-sequence.ts +5 -7
  64. package/src/application/terminals.ts +207 -0
  65. package/src/application/thread-commands.test.ts +43 -0
  66. package/src/application/thread-commands.ts +81 -0
  67. package/src/application/thread-update.ts +72 -0
  68. package/src/application/thread-wait.ts +46 -47
  69. package/src/application/threads.test.ts +166 -0
  70. package/src/application/threads.ts +123 -40
  71. package/src/bin.ts +2 -0
  72. package/src/cli/app.ts +2 -0
  73. package/src/cli/confirm.ts +31 -0
  74. package/src/cli/error.ts +26 -3
  75. package/src/cli/flags.ts +15 -0
  76. package/src/cli/input/layer.ts +20 -0
  77. package/src/cli/input/service.ts +1 -0
  78. package/src/cli/output-format.ts +6 -2
  79. package/src/cli/project-format.ts +7 -0
  80. package/src/cli/project.ts +2 -1
  81. package/src/cli/projects/delete.ts +50 -0
  82. package/src/cli/self-action.ts +34 -0
  83. package/src/cli/terminal/attach.ts +32 -0
  84. package/src/cli/terminal/commands.test.ts +101 -0
  85. package/src/cli/terminal/create.ts +54 -0
  86. package/src/cli/terminal/destroy.ts +60 -0
  87. package/src/cli/terminal/encoding.test.ts +63 -0
  88. package/src/cli/terminal/encoding.ts +23 -0
  89. package/src/cli/terminal/error.ts +14 -0
  90. package/src/cli/terminal/io-node-layer.ts +82 -0
  91. package/src/cli/terminal/io-service.ts +25 -0
  92. package/src/cli/terminal/list.ts +35 -0
  93. package/src/cli/terminal/read.ts +102 -0
  94. package/src/cli/terminal/scope.ts +30 -0
  95. package/src/cli/terminal/shared.ts +250 -0
  96. package/src/cli/terminal/stream.ts +64 -0
  97. package/src/cli/terminal/wait.test.ts +146 -0
  98. package/src/cli/terminal/wait.ts +222 -0
  99. package/src/cli/terminal/write.ts +132 -0
  100. package/src/cli/terminal-format.ts +167 -0
  101. package/src/cli/terminal.ts +26 -0
  102. package/src/cli/thread-format.test.ts +32 -0
  103. package/src/cli/thread-format.ts +8 -1
  104. package/src/cli/thread.ts +8 -0
  105. package/src/cli/threads/archive.ts +11 -18
  106. package/src/cli/threads/delete.ts +61 -0
  107. package/src/cli/threads/interrupt.ts +52 -0
  108. package/src/cli/threads/list.test.ts +69 -0
  109. package/src/cli/threads/list.ts +15 -3
  110. package/src/cli/threads/send.ts +22 -2
  111. package/src/cli/threads/unarchive.ts +44 -0
  112. package/src/cli/threads/update.ts +150 -0
  113. package/src/domain/error.ts +20 -1
  114. package/src/domain/model-config.ts +4 -0
  115. package/src/domain/thread-lifecycle.ts +14 -0
  116. package/src/node/index.ts +2 -0
  117. package/src/orchestration/index.ts +1 -0
  118. package/src/orchestration/layer.ts +33 -85
  119. package/src/orchestration/service.ts +4 -0
  120. package/src/rpc/error.ts +10 -0
  121. package/src/rpc/index.ts +5 -0
  122. package/src/rpc/operation.ts +83 -0
  123. package/src/rpc/ws-group.ts +24 -0
  124. package/src/runtime/layer.ts +7 -2
@@ -1,8 +1,9 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import * as Layer from "effect/Layer";
3
3
  import * as Stream from "effect/Stream";
4
+ import { type OrchestrationThreadStreamItem } from "#t3tools/contracts";
4
5
  import { RpcError } from "../rpc/error.ts";
5
- import { T3Rpc } from "../rpc/service.ts";
6
+ import { T3RpcOperations } from "../rpc/operation.ts";
6
7
  import { T3Orchestration } from "./service.ts";
7
8
  export declare const makeT3Orchestration: () => Effect.Effect<{
8
9
  dispatch: (command: {
@@ -138,20 +139,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
138
139
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
139
140
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
140
141
  readonly createdAt: string;
141
- } | {
142
- readonly type: "thread.goal.request";
143
- readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
144
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
145
- readonly request: {
146
- readonly kind: "status";
147
- } | {
148
- readonly kind: "control";
149
- readonly action: "pause" | "resume" | "clear";
150
- } | {
151
- readonly kind: "set";
152
- readonly objective: string;
153
- };
154
- readonly createdAt: string;
155
142
  } | {
156
143
  readonly type: "thread.turn.start";
157
144
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
@@ -333,7 +320,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
333
320
  readonly groupKey: string;
334
321
  } | undefined;
335
322
  readonly showInteractionModeToggle?: boolean | undefined;
336
- readonly requiresNewThreadForModelChange?: boolean | undefined;
337
323
  readonly message?: string | undefined;
338
324
  readonly availability?: "available" | "unavailable" | undefined;
339
325
  readonly unavailableReason?: string | undefined;
@@ -397,11 +383,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
397
383
  readonly apiEndpoint: string;
398
384
  readonly customModels: readonly string[];
399
385
  };
400
- readonly grok: {
401
- readonly enabled: boolean;
402
- readonly binaryPath: string;
403
- readonly customModels: readonly string[];
404
- };
405
386
  readonly opencode: {
406
387
  readonly enabled: boolean;
407
388
  readonly binaryPath: string;
@@ -497,7 +478,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
497
478
  readonly groupKey: string;
498
479
  } | undefined;
499
480
  readonly showInteractionModeToggle?: boolean | undefined;
500
- readonly requiresNewThreadForModelChange?: boolean | undefined;
501
481
  readonly message?: string | undefined;
502
482
  readonly availability?: "available" | "unavailable" | undefined;
503
483
  readonly unavailableReason?: string | undefined;
@@ -597,14 +577,90 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
597
577
  readonly updatedAt: string;
598
578
  readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
599
579
  } | null;
600
- readonly goal: {
601
- readonly objective: string;
602
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
603
- readonly tokensUsed: number;
604
- readonly tokenBudget: number | null;
605
- readonly timeUsedSeconds: number;
606
- readonly createdAt: string;
580
+ readonly latestUserMessageAt: string | null;
581
+ readonly hasPendingApprovals: boolean;
582
+ readonly hasPendingUserInput: boolean;
583
+ readonly hasActionableProposedPlan: boolean;
584
+ }[];
585
+ readonly updatedAt: string;
586
+ }, RpcError, never>;
587
+ getArchivedShellSnapshot: () => Effect.Effect<{
588
+ readonly snapshotSequence: number;
589
+ readonly projects: readonly {
590
+ readonly id: string & import("effect/Brand").Brand<"ProjectId">;
591
+ readonly title: string;
592
+ readonly workspaceRoot: string;
593
+ readonly defaultModelSelection: {
594
+ readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
595
+ readonly model: string;
596
+ readonly options?: readonly {
597
+ readonly id: string;
598
+ readonly value: string | boolean;
599
+ }[];
600
+ } | null;
601
+ readonly scripts: readonly {
602
+ readonly id: string;
603
+ readonly name: string;
604
+ readonly command: string;
605
+ readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
606
+ readonly runOnWorktreeCreate: boolean;
607
+ }[];
608
+ readonly createdAt: string;
609
+ readonly updatedAt: string;
610
+ readonly repositoryIdentity?: {
611
+ readonly canonicalKey: string;
612
+ readonly locator: {
613
+ readonly source: "git-remote";
614
+ readonly remoteName: string;
615
+ readonly remoteUrl: string;
616
+ };
617
+ readonly rootPath?: string;
618
+ readonly displayName?: string;
619
+ readonly provider?: string;
620
+ readonly owner?: string;
621
+ readonly name?: string;
622
+ } | null | undefined;
623
+ }[];
624
+ readonly threads: readonly {
625
+ readonly id: string & import("effect/Brand").Brand<"ThreadId">;
626
+ readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
627
+ readonly title: string;
628
+ readonly modelSelection: {
629
+ readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
630
+ readonly model: string;
631
+ readonly options?: readonly {
632
+ readonly id: string;
633
+ readonly value: string | boolean;
634
+ }[];
635
+ };
636
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
637
+ readonly interactionMode: "default" | "plan";
638
+ readonly branch: string | null;
639
+ readonly worktreePath: string | null;
640
+ readonly latestTurn: {
641
+ readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
642
+ readonly state: "error" | "running" | "interrupted" | "completed";
643
+ readonly requestedAt: string;
644
+ readonly startedAt: string | null;
645
+ readonly completedAt: string | null;
646
+ readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
647
+ readonly sourceProposedPlan?: {
648
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
649
+ readonly planId: string;
650
+ } | undefined;
651
+ } | null;
652
+ readonly createdAt: string;
653
+ readonly updatedAt: string;
654
+ readonly archivedAt: string | null;
655
+ readonly session: {
656
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
657
+ readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
658
+ readonly providerName: string | null;
659
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
660
+ readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
661
+ readonly lastError: string | null;
607
662
  readonly updatedAt: string;
663
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
608
664
  } | null;
609
665
  readonly latestUserMessageAt: string | null;
610
666
  readonly hasPendingApprovals: boolean;
@@ -645,15 +701,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
645
701
  readonly updatedAt: string;
646
702
  readonly archivedAt: string | null;
647
703
  readonly deletedAt: string | null;
648
- readonly goal: {
649
- readonly objective: string;
650
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
651
- readonly tokensUsed: number;
652
- readonly tokenBudget: number | null;
653
- readonly timeUsedSeconds: number;
654
- readonly createdAt: string;
655
- readonly updatedAt: string;
656
- } | null;
657
704
  readonly messages: readonly {
658
705
  readonly id: string & import("effect/Brand").Brand<"MessageId">;
659
706
  readonly role: "user" | "assistant" | "system";
@@ -714,116 +761,102 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
714
761
  readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
715
762
  } | null;
716
763
  }, RpcError, never>;
717
- watchShellSequence: () => Stream.Stream<number, RpcError, never>;
718
- watchThreadItems: (threadId: string) => Stream.Stream<{
719
- readonly kind: "snapshot";
720
- readonly snapshot: {
721
- readonly snapshotSequence: number;
722
- readonly thread: {
723
- readonly id: string & import("effect/Brand").Brand<"ThreadId">;
724
- readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
725
- readonly title: string;
726
- readonly modelSelection: {
727
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
728
- readonly model: string;
729
- readonly options?: readonly {
730
- readonly id: string;
731
- readonly value: string | boolean;
732
- }[];
733
- };
734
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
735
- readonly interactionMode: "default" | "plan";
736
- readonly branch: string | null;
737
- readonly worktreePath: string | null;
738
- readonly latestTurn: {
739
- readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
740
- readonly state: "error" | "running" | "interrupted" | "completed";
741
- readonly requestedAt: string;
742
- readonly startedAt: string | null;
743
- readonly completedAt: string | null;
744
- readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
745
- readonly sourceProposedPlan?: {
746
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
747
- readonly planId: string;
748
- } | undefined;
749
- } | null;
764
+ watchShellSequence: () => Stream.Stream<number, import("./service.ts").OrchestrationError, import("effect/Scope").Scope>;
765
+ watchThreadItems: (threadId: string) => Stream.Stream<OrchestrationThreadStreamItem, import("./service.ts").OrchestrationError, import("effect/Scope").Scope>;
766
+ openThread: (threadId: string) => Effect.Effect<{
767
+ snapshot: {
768
+ readonly id: string & import("effect/Brand").Brand<"ThreadId">;
769
+ readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
770
+ readonly title: string;
771
+ readonly modelSelection: {
772
+ readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
773
+ readonly model: string;
774
+ readonly options?: readonly {
775
+ readonly id: string;
776
+ readonly value: string | boolean;
777
+ }[];
778
+ };
779
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
780
+ readonly interactionMode: "default" | "plan";
781
+ readonly branch: string | null;
782
+ readonly worktreePath: string | null;
783
+ readonly latestTurn: {
784
+ readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
785
+ readonly state: "error" | "running" | "interrupted" | "completed";
786
+ readonly requestedAt: string;
787
+ readonly startedAt: string | null;
788
+ readonly completedAt: string | null;
789
+ readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
790
+ readonly sourceProposedPlan?: {
791
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
792
+ readonly planId: string;
793
+ } | undefined;
794
+ } | null;
795
+ readonly createdAt: string;
796
+ readonly updatedAt: string;
797
+ readonly archivedAt: string | null;
798
+ readonly deletedAt: string | null;
799
+ readonly messages: readonly {
800
+ readonly id: string & import("effect/Brand").Brand<"MessageId">;
801
+ readonly role: "user" | "assistant" | "system";
802
+ readonly text: string;
803
+ readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
804
+ readonly streaming: boolean;
750
805
  readonly createdAt: string;
751
806
  readonly updatedAt: string;
752
- readonly archivedAt: string | null;
753
- readonly deletedAt: string | null;
754
- readonly goal: {
755
- readonly objective: string;
756
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
757
- readonly tokensUsed: number;
758
- readonly tokenBudget: number | null;
759
- readonly timeUsedSeconds: number;
760
- readonly createdAt: string;
761
- readonly updatedAt: string;
762
- } | null;
763
- readonly messages: readonly {
764
- readonly id: string & import("effect/Brand").Brand<"MessageId">;
765
- readonly role: "user" | "assistant" | "system";
766
- readonly text: string;
767
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
768
- readonly streaming: boolean;
769
- readonly createdAt: string;
770
- readonly updatedAt: string;
771
- readonly attachments?: readonly {
772
- readonly type: "image";
773
- readonly id: string;
774
- readonly name: string;
775
- readonly mimeType: string;
776
- readonly sizeBytes: number;
777
- }[] | undefined;
778
- }[];
779
- readonly proposedPlans: readonly {
807
+ readonly attachments?: readonly {
808
+ readonly type: "image";
780
809
  readonly id: string;
781
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
782
- readonly planMarkdown: string;
783
- readonly implementedAt: string | null;
784
- readonly implementationThreadId: (string & import("effect/Brand").Brand<"ThreadId">) | null;
785
- readonly createdAt: string;
786
- readonly updatedAt: string;
787
- }[];
788
- readonly activities: readonly {
789
- readonly id: string & import("effect/Brand").Brand<"EventId">;
790
- readonly tone: "error" | "info" | "tool" | "approval";
810
+ readonly name: string;
811
+ readonly mimeType: string;
812
+ readonly sizeBytes: number;
813
+ }[] | undefined;
814
+ }[];
815
+ readonly proposedPlans: readonly {
816
+ readonly id: string;
817
+ readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
818
+ readonly planMarkdown: string;
819
+ readonly implementedAt: string | null;
820
+ readonly implementationThreadId: (string & import("effect/Brand").Brand<"ThreadId">) | null;
821
+ readonly createdAt: string;
822
+ readonly updatedAt: string;
823
+ }[];
824
+ readonly activities: readonly {
825
+ readonly id: string & import("effect/Brand").Brand<"EventId">;
826
+ readonly tone: "error" | "info" | "tool" | "approval";
827
+ readonly kind: string;
828
+ readonly summary: string;
829
+ readonly payload: unknown;
830
+ readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
831
+ readonly createdAt: string;
832
+ readonly sequence?: number | undefined;
833
+ }[];
834
+ readonly checkpoints: readonly {
835
+ readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
836
+ readonly checkpointTurnCount: number;
837
+ readonly checkpointRef: string & import("effect/Brand").Brand<"CheckpointRef">;
838
+ readonly status: "error" | "ready" | "missing";
839
+ readonly files: readonly {
840
+ readonly path: string;
791
841
  readonly kind: string;
792
- readonly summary: string;
793
- readonly payload: unknown;
794
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
795
- readonly createdAt: string;
796
- readonly sequence?: number | undefined;
797
- }[];
798
- readonly checkpoints: readonly {
799
- readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
800
- readonly checkpointTurnCount: number;
801
- readonly checkpointRef: string & import("effect/Brand").Brand<"CheckpointRef">;
802
- readonly status: "error" | "ready" | "missing";
803
- readonly files: readonly {
804
- readonly path: string;
805
- readonly kind: string;
806
- readonly additions: number;
807
- readonly deletions: number;
808
- }[];
809
- readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
810
- readonly completedAt: string;
842
+ readonly additions: number;
843
+ readonly deletions: number;
811
844
  }[];
812
- readonly session: {
813
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
814
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
815
- readonly providerName: string | null;
816
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
817
- readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
818
- readonly lastError: string | null;
819
- readonly updatedAt: string;
820
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
821
- } | null;
822
- };
845
+ readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
846
+ readonly completedAt: string;
847
+ }[];
848
+ readonly session: {
849
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
850
+ readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
851
+ readonly providerName: string | null;
852
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
853
+ readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
854
+ readonly lastError: string | null;
855
+ readonly updatedAt: string;
856
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
857
+ } | null;
823
858
  };
824
- } | {
825
- readonly kind: "event";
826
- readonly event: {
859
+ events: Stream.Stream<{
827
860
  readonly type: "project.created";
828
861
  readonly payload: {
829
862
  readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
@@ -1358,894 +1391,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1358
1391
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1359
1392
  readonly ingestedAt?: string | undefined;
1360
1393
  };
1361
- } | {
1362
- readonly type: "thread.goal-requested";
1363
- readonly payload: {
1364
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1365
- readonly request: {
1366
- readonly kind: "status";
1367
- } | {
1368
- readonly kind: "control";
1369
- readonly action: "pause" | "resume" | "clear";
1370
- } | {
1371
- readonly kind: "set";
1372
- readonly objective: string;
1373
- };
1374
- readonly createdAt: string;
1375
- };
1376
- readonly sequence: number;
1377
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1378
- readonly aggregateKind: "project" | "thread";
1379
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1380
- readonly occurredAt: string;
1381
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1382
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1383
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1384
- readonly metadata: {
1385
- readonly providerTurnId?: string | undefined;
1386
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1387
- readonly adapterKey?: string | undefined;
1388
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1389
- readonly ingestedAt?: string | undefined;
1390
- };
1391
- } | {
1392
- readonly type: "thread.goal-updated";
1393
- readonly payload: {
1394
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1395
- readonly goal: {
1396
- readonly objective: string;
1397
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
1398
- readonly tokensUsed: number;
1399
- readonly tokenBudget: number | null;
1400
- readonly timeUsedSeconds: number;
1401
- readonly createdAt: string;
1402
- readonly updatedAt: string;
1403
- };
1404
- };
1405
- readonly sequence: number;
1406
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1407
- readonly aggregateKind: "project" | "thread";
1408
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1409
- readonly occurredAt: string;
1410
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1411
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1412
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1413
- readonly metadata: {
1414
- readonly providerTurnId?: string | undefined;
1415
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1416
- readonly adapterKey?: string | undefined;
1417
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1418
- readonly ingestedAt?: string | undefined;
1419
- };
1420
- } | {
1421
- readonly type: "thread.goal-cleared";
1422
- readonly payload: {
1423
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1424
- };
1425
- readonly sequence: number;
1426
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1427
- readonly aggregateKind: "project" | "thread";
1428
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1429
- readonly occurredAt: string;
1430
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1431
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1432
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1433
- readonly metadata: {
1434
- readonly providerTurnId?: string | undefined;
1435
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1436
- readonly adapterKey?: string | undefined;
1437
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1438
- readonly ingestedAt?: string | undefined;
1439
- };
1440
- } | {
1441
- readonly type: "thread.proposed-plan-upserted";
1442
- readonly payload: {
1443
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1444
- readonly proposedPlan: {
1445
- readonly id: string;
1446
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1447
- readonly planMarkdown: string;
1448
- readonly implementedAt: string | null;
1449
- readonly implementationThreadId: (string & import("effect/Brand").Brand<"ThreadId">) | null;
1450
- readonly createdAt: string;
1451
- readonly updatedAt: string;
1452
- };
1453
- };
1454
- readonly sequence: number;
1455
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1456
- readonly aggregateKind: "project" | "thread";
1457
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1458
- readonly occurredAt: string;
1459
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1460
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1461
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1462
- readonly metadata: {
1463
- readonly providerTurnId?: string | undefined;
1464
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1465
- readonly adapterKey?: string | undefined;
1466
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1467
- readonly ingestedAt?: string | undefined;
1468
- };
1469
- } | {
1470
- readonly type: "thread.turn-diff-completed";
1471
- readonly payload: {
1472
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1473
- readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
1474
- readonly checkpointTurnCount: number;
1475
- readonly checkpointRef: string & import("effect/Brand").Brand<"CheckpointRef">;
1476
- readonly status: "error" | "ready" | "missing";
1477
- readonly files: readonly {
1478
- readonly path: string;
1479
- readonly kind: string;
1480
- readonly additions: number;
1481
- readonly deletions: number;
1482
- }[];
1483
- readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
1484
- readonly completedAt: string;
1485
- };
1486
- readonly sequence: number;
1487
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1488
- readonly aggregateKind: "project" | "thread";
1489
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1490
- readonly occurredAt: string;
1491
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1492
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1493
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1494
- readonly metadata: {
1495
- readonly providerTurnId?: string | undefined;
1496
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1497
- readonly adapterKey?: string | undefined;
1498
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1499
- readonly ingestedAt?: string | undefined;
1500
- };
1501
- } | {
1502
- readonly type: "thread.activity-appended";
1503
- readonly payload: {
1504
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1505
- readonly activity: {
1506
- readonly id: string & import("effect/Brand").Brand<"EventId">;
1507
- readonly tone: "error" | "info" | "tool" | "approval";
1508
- readonly kind: string;
1509
- readonly summary: string;
1510
- readonly payload: unknown;
1511
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1512
- readonly createdAt: string;
1513
- readonly sequence?: number | undefined;
1514
- };
1515
- };
1516
- readonly sequence: number;
1517
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1518
- readonly aggregateKind: "project" | "thread";
1519
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1520
- readonly occurredAt: string;
1521
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1522
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1523
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1524
- readonly metadata: {
1525
- readonly providerTurnId?: string | undefined;
1526
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1527
- readonly adapterKey?: string | undefined;
1528
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1529
- readonly ingestedAt?: string | undefined;
1530
- };
1531
- };
1532
- }, RpcError, never>;
1533
- openThread: (threadId: string) => Effect.Effect<{
1534
- snapshot: {
1535
- readonly id: string & import("effect/Brand").Brand<"ThreadId">;
1536
- readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
1537
- readonly title: string;
1538
- readonly modelSelection: {
1539
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
1540
- readonly model: string;
1541
- readonly options?: readonly {
1542
- readonly id: string;
1543
- readonly value: string | boolean;
1544
- }[];
1545
- };
1546
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1547
- readonly interactionMode: "default" | "plan";
1548
- readonly branch: string | null;
1549
- readonly worktreePath: string | null;
1550
- readonly latestTurn: {
1551
- readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
1552
- readonly state: "error" | "running" | "interrupted" | "completed";
1553
- readonly requestedAt: string;
1554
- readonly startedAt: string | null;
1555
- readonly completedAt: string | null;
1556
- readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
1557
- readonly sourceProposedPlan?: {
1558
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1559
- readonly planId: string;
1560
- } | undefined;
1561
- } | null;
1562
- readonly createdAt: string;
1563
- readonly updatedAt: string;
1564
- readonly archivedAt: string | null;
1565
- readonly deletedAt: string | null;
1566
- readonly goal: {
1567
- readonly objective: string;
1568
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
1569
- readonly tokensUsed: number;
1570
- readonly tokenBudget: number | null;
1571
- readonly timeUsedSeconds: number;
1572
- readonly createdAt: string;
1573
- readonly updatedAt: string;
1574
- } | null;
1575
- readonly messages: readonly {
1576
- readonly id: string & import("effect/Brand").Brand<"MessageId">;
1577
- readonly role: "user" | "assistant" | "system";
1578
- readonly text: string;
1579
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1580
- readonly streaming: boolean;
1581
- readonly createdAt: string;
1582
- readonly updatedAt: string;
1583
- readonly attachments?: readonly {
1584
- readonly type: "image";
1585
- readonly id: string;
1586
- readonly name: string;
1587
- readonly mimeType: string;
1588
- readonly sizeBytes: number;
1589
- }[] | undefined;
1590
- }[];
1591
- readonly proposedPlans: readonly {
1592
- readonly id: string;
1593
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1594
- readonly planMarkdown: string;
1595
- readonly implementedAt: string | null;
1596
- readonly implementationThreadId: (string & import("effect/Brand").Brand<"ThreadId">) | null;
1597
- readonly createdAt: string;
1598
- readonly updatedAt: string;
1599
- }[];
1600
- readonly activities: readonly {
1601
- readonly id: string & import("effect/Brand").Brand<"EventId">;
1602
- readonly tone: "error" | "info" | "tool" | "approval";
1603
- readonly kind: string;
1604
- readonly summary: string;
1605
- readonly payload: unknown;
1606
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1607
- readonly createdAt: string;
1608
- readonly sequence?: number | undefined;
1609
- }[];
1610
- readonly checkpoints: readonly {
1611
- readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
1612
- readonly checkpointTurnCount: number;
1613
- readonly checkpointRef: string & import("effect/Brand").Brand<"CheckpointRef">;
1614
- readonly status: "error" | "ready" | "missing";
1615
- readonly files: readonly {
1616
- readonly path: string;
1617
- readonly kind: string;
1618
- readonly additions: number;
1619
- readonly deletions: number;
1620
- }[];
1621
- readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
1622
- readonly completedAt: string;
1623
- }[];
1624
- readonly session: {
1625
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1626
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
1627
- readonly providerName: string | null;
1628
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1629
- readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1630
- readonly lastError: string | null;
1631
- readonly updatedAt: string;
1632
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
1633
- } | null;
1634
- };
1635
- events: Stream.Stream<{
1636
- readonly type: "project.created";
1637
- readonly payload: {
1638
- readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
1639
- readonly title: string;
1640
- readonly workspaceRoot: string;
1641
- readonly defaultModelSelection: {
1642
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
1643
- readonly model: string;
1644
- readonly options?: readonly {
1645
- readonly id: string;
1646
- readonly value: string | boolean;
1647
- }[];
1648
- } | null;
1649
- readonly scripts: readonly {
1650
- readonly id: string;
1651
- readonly name: string;
1652
- readonly command: string;
1653
- readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
1654
- readonly runOnWorktreeCreate: boolean;
1655
- }[];
1656
- readonly createdAt: string;
1657
- readonly updatedAt: string;
1658
- readonly repositoryIdentity?: {
1659
- readonly canonicalKey: string;
1660
- readonly locator: {
1661
- readonly source: "git-remote";
1662
- readonly remoteName: string;
1663
- readonly remoteUrl: string;
1664
- };
1665
- readonly rootPath?: string;
1666
- readonly displayName?: string;
1667
- readonly provider?: string;
1668
- readonly owner?: string;
1669
- readonly name?: string;
1670
- } | null | undefined;
1671
- };
1672
- readonly sequence: number;
1673
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1674
- readonly aggregateKind: "project" | "thread";
1675
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1676
- readonly occurredAt: string;
1677
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1678
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1679
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1680
- readonly metadata: {
1681
- readonly providerTurnId?: string | undefined;
1682
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1683
- readonly adapterKey?: string | undefined;
1684
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1685
- readonly ingestedAt?: string | undefined;
1686
- };
1687
- } | {
1688
- readonly type: "project.meta-updated";
1689
- readonly payload: {
1690
- readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
1691
- readonly updatedAt: string;
1692
- readonly title?: string | undefined;
1693
- readonly workspaceRoot?: string | undefined;
1694
- readonly repositoryIdentity?: {
1695
- readonly canonicalKey: string;
1696
- readonly locator: {
1697
- readonly source: "git-remote";
1698
- readonly remoteName: string;
1699
- readonly remoteUrl: string;
1700
- };
1701
- readonly rootPath?: string;
1702
- readonly displayName?: string;
1703
- readonly provider?: string;
1704
- readonly owner?: string;
1705
- readonly name?: string;
1706
- } | null | undefined;
1707
- readonly defaultModelSelection?: {
1708
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
1709
- readonly model: string;
1710
- readonly options?: readonly {
1711
- readonly id: string;
1712
- readonly value: string | boolean;
1713
- }[];
1714
- } | null | undefined;
1715
- readonly scripts?: readonly {
1716
- readonly id: string;
1717
- readonly name: string;
1718
- readonly command: string;
1719
- readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
1720
- readonly runOnWorktreeCreate: boolean;
1721
- }[] | undefined;
1722
- };
1723
- readonly sequence: number;
1724
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1725
- readonly aggregateKind: "project" | "thread";
1726
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1727
- readonly occurredAt: string;
1728
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1729
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1730
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1731
- readonly metadata: {
1732
- readonly providerTurnId?: string | undefined;
1733
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1734
- readonly adapterKey?: string | undefined;
1735
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1736
- readonly ingestedAt?: string | undefined;
1737
- };
1738
- } | {
1739
- readonly type: "project.deleted";
1740
- readonly payload: {
1741
- readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
1742
- readonly deletedAt: string;
1743
- };
1744
- readonly sequence: number;
1745
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1746
- readonly aggregateKind: "project" | "thread";
1747
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1748
- readonly occurredAt: string;
1749
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1750
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1751
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1752
- readonly metadata: {
1753
- readonly providerTurnId?: string | undefined;
1754
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1755
- readonly adapterKey?: string | undefined;
1756
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1757
- readonly ingestedAt?: string | undefined;
1758
- };
1759
- } | {
1760
- readonly type: "thread.created";
1761
- readonly payload: {
1762
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1763
- readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
1764
- readonly title: string;
1765
- readonly modelSelection: {
1766
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
1767
- readonly model: string;
1768
- readonly options?: readonly {
1769
- readonly id: string;
1770
- readonly value: string | boolean;
1771
- }[];
1772
- };
1773
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1774
- readonly interactionMode: "default" | "plan";
1775
- readonly branch: string | null;
1776
- readonly worktreePath: string | null;
1777
- readonly createdAt: string;
1778
- readonly updatedAt: string;
1779
- };
1780
- readonly sequence: number;
1781
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1782
- readonly aggregateKind: "project" | "thread";
1783
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1784
- readonly occurredAt: string;
1785
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1786
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1787
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1788
- readonly metadata: {
1789
- readonly providerTurnId?: string | undefined;
1790
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1791
- readonly adapterKey?: string | undefined;
1792
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1793
- readonly ingestedAt?: string | undefined;
1794
- };
1795
- } | {
1796
- readonly type: "thread.deleted";
1797
- readonly payload: {
1798
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1799
- readonly deletedAt: string;
1800
- };
1801
- readonly sequence: number;
1802
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1803
- readonly aggregateKind: "project" | "thread";
1804
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1805
- readonly occurredAt: string;
1806
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1807
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1808
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1809
- readonly metadata: {
1810
- readonly providerTurnId?: string | undefined;
1811
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1812
- readonly adapterKey?: string | undefined;
1813
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1814
- readonly ingestedAt?: string | undefined;
1815
- };
1816
- } | {
1817
- readonly type: "thread.archived";
1818
- readonly payload: {
1819
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1820
- readonly archivedAt: string;
1821
- readonly updatedAt: string;
1822
- };
1823
- readonly sequence: number;
1824
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1825
- readonly aggregateKind: "project" | "thread";
1826
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1827
- readonly occurredAt: string;
1828
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1829
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1830
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1831
- readonly metadata: {
1832
- readonly providerTurnId?: string | undefined;
1833
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1834
- readonly adapterKey?: string | undefined;
1835
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1836
- readonly ingestedAt?: string | undefined;
1837
- };
1838
- } | {
1839
- readonly type: "thread.unarchived";
1840
- readonly payload: {
1841
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1842
- readonly updatedAt: string;
1843
- };
1844
- readonly sequence: number;
1845
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1846
- readonly aggregateKind: "project" | "thread";
1847
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1848
- readonly occurredAt: string;
1849
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1850
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1851
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1852
- readonly metadata: {
1853
- readonly providerTurnId?: string | undefined;
1854
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1855
- readonly adapterKey?: string | undefined;
1856
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1857
- readonly ingestedAt?: string | undefined;
1858
- };
1859
- } | {
1860
- readonly type: "thread.meta-updated";
1861
- readonly payload: {
1862
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1863
- readonly updatedAt: string;
1864
- readonly title?: string | undefined;
1865
- readonly modelSelection?: {
1866
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
1867
- readonly model: string;
1868
- readonly options?: readonly {
1869
- readonly id: string;
1870
- readonly value: string | boolean;
1871
- }[];
1872
- } | undefined;
1873
- readonly branch?: string | null | undefined;
1874
- readonly worktreePath?: string | null | undefined;
1875
- };
1876
- readonly sequence: number;
1877
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1878
- readonly aggregateKind: "project" | "thread";
1879
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1880
- readonly occurredAt: string;
1881
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1882
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1883
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1884
- readonly metadata: {
1885
- readonly providerTurnId?: string | undefined;
1886
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1887
- readonly adapterKey?: string | undefined;
1888
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1889
- readonly ingestedAt?: string | undefined;
1890
- };
1891
- } | {
1892
- readonly type: "thread.runtime-mode-set";
1893
- readonly payload: {
1894
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1895
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1896
- readonly updatedAt: string;
1897
- };
1898
- readonly sequence: number;
1899
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1900
- readonly aggregateKind: "project" | "thread";
1901
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1902
- readonly occurredAt: string;
1903
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1904
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1905
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1906
- readonly metadata: {
1907
- readonly providerTurnId?: string | undefined;
1908
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1909
- readonly adapterKey?: string | undefined;
1910
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1911
- readonly ingestedAt?: string | undefined;
1912
- };
1913
- } | {
1914
- readonly type: "thread.interaction-mode-set";
1915
- readonly payload: {
1916
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1917
- readonly interactionMode: "default" | "plan";
1918
- readonly updatedAt: string;
1919
- };
1920
- readonly sequence: number;
1921
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1922
- readonly aggregateKind: "project" | "thread";
1923
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1924
- readonly occurredAt: string;
1925
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1926
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1927
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1928
- readonly metadata: {
1929
- readonly providerTurnId?: string | undefined;
1930
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1931
- readonly adapterKey?: string | undefined;
1932
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1933
- readonly ingestedAt?: string | undefined;
1934
- };
1935
- } | {
1936
- readonly type: "thread.message-sent";
1937
- readonly payload: {
1938
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1939
- readonly messageId: string & import("effect/Brand").Brand<"MessageId">;
1940
- readonly role: "user" | "assistant" | "system";
1941
- readonly text: string;
1942
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1943
- readonly streaming: boolean;
1944
- readonly createdAt: string;
1945
- readonly updatedAt: string;
1946
- readonly attachments?: readonly {
1947
- readonly type: "image";
1948
- readonly id: string;
1949
- readonly name: string;
1950
- readonly mimeType: string;
1951
- readonly sizeBytes: number;
1952
- }[] | undefined;
1953
- };
1954
- readonly sequence: number;
1955
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1956
- readonly aggregateKind: "project" | "thread";
1957
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1958
- readonly occurredAt: string;
1959
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1960
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1961
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1962
- readonly metadata: {
1963
- readonly providerTurnId?: string | undefined;
1964
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1965
- readonly adapterKey?: string | undefined;
1966
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1967
- readonly ingestedAt?: string | undefined;
1968
- };
1969
- } | {
1970
- readonly type: "thread.turn-start-requested";
1971
- readonly payload: {
1972
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1973
- readonly messageId: string & import("effect/Brand").Brand<"MessageId">;
1974
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1975
- readonly interactionMode: "default" | "plan";
1976
- readonly createdAt: string;
1977
- readonly modelSelection?: {
1978
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
1979
- readonly model: string;
1980
- readonly options?: readonly {
1981
- readonly id: string;
1982
- readonly value: string | boolean;
1983
- }[];
1984
- } | undefined;
1985
- readonly titleSeed?: string | undefined;
1986
- readonly sourceProposedPlan?: {
1987
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1988
- readonly planId: string;
1989
- } | undefined;
1990
- };
1991
- readonly sequence: number;
1992
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1993
- readonly aggregateKind: "project" | "thread";
1994
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1995
- readonly occurredAt: string;
1996
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1997
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1998
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1999
- readonly metadata: {
2000
- readonly providerTurnId?: string | undefined;
2001
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2002
- readonly adapterKey?: string | undefined;
2003
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2004
- readonly ingestedAt?: string | undefined;
2005
- };
2006
- } | {
2007
- readonly type: "thread.turn-interrupt-requested";
2008
- readonly payload: {
2009
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2010
- readonly createdAt: string;
2011
- readonly turnId?: (string & import("effect/Brand").Brand<"TurnId">) | undefined;
2012
- };
2013
- readonly sequence: number;
2014
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2015
- readonly aggregateKind: "project" | "thread";
2016
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2017
- readonly occurredAt: string;
2018
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2019
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2020
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2021
- readonly metadata: {
2022
- readonly providerTurnId?: string | undefined;
2023
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2024
- readonly adapterKey?: string | undefined;
2025
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2026
- readonly ingestedAt?: string | undefined;
2027
- };
2028
- } | {
2029
- readonly type: "thread.approval-response-requested";
2030
- readonly payload: {
2031
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2032
- readonly requestId: string & import("effect/Brand").Brand<"ApprovalRequestId">;
2033
- readonly decision: "accept" | "acceptForSession" | "decline" | "cancel";
2034
- readonly createdAt: string;
2035
- };
2036
- readonly sequence: number;
2037
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2038
- readonly aggregateKind: "project" | "thread";
2039
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2040
- readonly occurredAt: string;
2041
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2042
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2043
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2044
- readonly metadata: {
2045
- readonly providerTurnId?: string | undefined;
2046
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2047
- readonly adapterKey?: string | undefined;
2048
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2049
- readonly ingestedAt?: string | undefined;
2050
- };
2051
- } | {
2052
- readonly type: "thread.user-input-response-requested";
2053
- readonly payload: {
2054
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2055
- readonly requestId: string & import("effect/Brand").Brand<"ApprovalRequestId">;
2056
- readonly answers: {
2057
- readonly [x: string]: unknown;
2058
- };
2059
- readonly createdAt: string;
2060
- };
2061
- readonly sequence: number;
2062
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2063
- readonly aggregateKind: "project" | "thread";
2064
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2065
- readonly occurredAt: string;
2066
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2067
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2068
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2069
- readonly metadata: {
2070
- readonly providerTurnId?: string | undefined;
2071
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2072
- readonly adapterKey?: string | undefined;
2073
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2074
- readonly ingestedAt?: string | undefined;
2075
- };
2076
- } | {
2077
- readonly type: "thread.checkpoint-revert-requested";
2078
- readonly payload: {
2079
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2080
- readonly turnCount: number;
2081
- readonly createdAt: string;
2082
- };
2083
- readonly sequence: number;
2084
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2085
- readonly aggregateKind: "project" | "thread";
2086
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2087
- readonly occurredAt: string;
2088
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2089
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2090
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2091
- readonly metadata: {
2092
- readonly providerTurnId?: string | undefined;
2093
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2094
- readonly adapterKey?: string | undefined;
2095
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2096
- readonly ingestedAt?: string | undefined;
2097
- };
2098
- } | {
2099
- readonly type: "thread.reverted";
2100
- readonly payload: {
2101
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2102
- readonly turnCount: number;
2103
- };
2104
- readonly sequence: number;
2105
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2106
- readonly aggregateKind: "project" | "thread";
2107
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2108
- readonly occurredAt: string;
2109
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2110
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2111
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2112
- readonly metadata: {
2113
- readonly providerTurnId?: string | undefined;
2114
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2115
- readonly adapterKey?: string | undefined;
2116
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2117
- readonly ingestedAt?: string | undefined;
2118
- };
2119
- } | {
2120
- readonly type: "thread.session-stop-requested";
2121
- readonly payload: {
2122
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2123
- readonly createdAt: string;
2124
- };
2125
- readonly sequence: number;
2126
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2127
- readonly aggregateKind: "project" | "thread";
2128
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2129
- readonly occurredAt: string;
2130
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2131
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2132
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2133
- readonly metadata: {
2134
- readonly providerTurnId?: string | undefined;
2135
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2136
- readonly adapterKey?: string | undefined;
2137
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2138
- readonly ingestedAt?: string | undefined;
2139
- };
2140
- } | {
2141
- readonly type: "thread.session-set";
2142
- readonly payload: {
2143
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2144
- readonly session: {
2145
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2146
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
2147
- readonly providerName: string | null;
2148
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
2149
- readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
2150
- readonly lastError: string | null;
2151
- readonly updatedAt: string;
2152
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
2153
- };
2154
- };
2155
- readonly sequence: number;
2156
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2157
- readonly aggregateKind: "project" | "thread";
2158
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2159
- readonly occurredAt: string;
2160
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2161
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2162
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2163
- readonly metadata: {
2164
- readonly providerTurnId?: string | undefined;
2165
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2166
- readonly adapterKey?: string | undefined;
2167
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2168
- readonly ingestedAt?: string | undefined;
2169
- };
2170
- } | {
2171
- readonly type: "thread.goal-requested";
2172
- readonly payload: {
2173
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2174
- readonly request: {
2175
- readonly kind: "status";
2176
- } | {
2177
- readonly kind: "control";
2178
- readonly action: "pause" | "resume" | "clear";
2179
- } | {
2180
- readonly kind: "set";
2181
- readonly objective: string;
2182
- };
2183
- readonly createdAt: string;
2184
- };
2185
- readonly sequence: number;
2186
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2187
- readonly aggregateKind: "project" | "thread";
2188
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2189
- readonly occurredAt: string;
2190
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2191
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2192
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2193
- readonly metadata: {
2194
- readonly providerTurnId?: string | undefined;
2195
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2196
- readonly adapterKey?: string | undefined;
2197
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2198
- readonly ingestedAt?: string | undefined;
2199
- };
2200
- } | {
2201
- readonly type: "thread.goal-updated";
2202
- readonly payload: {
2203
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2204
- readonly goal: {
2205
- readonly objective: string;
2206
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
2207
- readonly tokensUsed: number;
2208
- readonly tokenBudget: number | null;
2209
- readonly timeUsedSeconds: number;
2210
- readonly createdAt: string;
2211
- readonly updatedAt: string;
2212
- };
2213
- };
2214
- readonly sequence: number;
2215
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2216
- readonly aggregateKind: "project" | "thread";
2217
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2218
- readonly occurredAt: string;
2219
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2220
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2221
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2222
- readonly metadata: {
2223
- readonly providerTurnId?: string | undefined;
2224
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2225
- readonly adapterKey?: string | undefined;
2226
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2227
- readonly ingestedAt?: string | undefined;
2228
- };
2229
- } | {
2230
- readonly type: "thread.goal-cleared";
2231
- readonly payload: {
2232
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2233
- };
2234
- readonly sequence: number;
2235
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
2236
- readonly aggregateKind: "project" | "thread";
2237
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
2238
- readonly occurredAt: string;
2239
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2240
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
2241
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
2242
- readonly metadata: {
2243
- readonly providerTurnId?: string | undefined;
2244
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
2245
- readonly adapterKey?: string | undefined;
2246
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
2247
- readonly ingestedAt?: string | undefined;
2248
- };
2249
1394
  } | {
2250
1395
  readonly type: "thread.proposed-plan-upserted";
2251
1396
  readonly payload: {
@@ -2339,5 +1484,5 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
2339
1484
  };
2340
1485
  }, RpcError, never>;
2341
1486
  }, RpcError, import("effect/Scope").Scope>;
2342
- }, never, T3Rpc>;
2343
- export declare const T3OrchestrationLive: Layer.Layer<T3Orchestration, never, T3Rpc>;
1487
+ }, never, T3RpcOperations>;
1488
+ export declare const T3OrchestrationLive: Layer.Layer<T3Orchestration, never, T3RpcOperations>;