@usine/engine 0.1.0 → 0.2.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 (150) hide show
  1. package/README.md +37 -12
  2. package/dist/cursor/{store.d.ts → cursor.d.ts} +9 -7
  3. package/dist/cursor/cursor.d.ts.map +1 -0
  4. package/dist/cursor/{store.js → cursor.js} +8 -7
  5. package/dist/cursor/cursor.js.map +1 -0
  6. package/dist/cycle-budget/cycle-budget.d.ts +25 -0
  7. package/dist/cycle-budget/cycle-budget.d.ts.map +1 -0
  8. package/dist/cycle-budget/cycle-budget.js +117 -0
  9. package/dist/cycle-budget/cycle-budget.js.map +1 -0
  10. package/dist/cycle-budget/model.d.ts +26 -0
  11. package/dist/cycle-budget/model.d.ts.map +1 -0
  12. package/dist/cycle-budget/model.js +20 -0
  13. package/dist/cycle-budget/model.js.map +1 -0
  14. package/dist/cycle-budget/queries.d.ts +27 -0
  15. package/dist/cycle-budget/queries.d.ts.map +1 -0
  16. package/dist/cycle-budget/queries.js +175 -0
  17. package/dist/cycle-budget/queries.js.map +1 -0
  18. package/dist/database/database.d.ts +1 -1
  19. package/dist/database/database.d.ts.map +1 -1
  20. package/dist/database/local-sqlite.d.ts +32 -12
  21. package/dist/database/local-sqlite.d.ts.map +1 -1
  22. package/dist/database/local-sqlite.js +113 -14
  23. package/dist/database/local-sqlite.js.map +1 -1
  24. package/dist/database/schema.d.ts +254 -9
  25. package/dist/database/schema.d.ts.map +1 -1
  26. package/dist/database/schema.js +65 -12
  27. package/dist/database/schema.js.map +1 -1
  28. package/dist/engine/engine.d.ts +55 -0
  29. package/dist/engine/engine.d.ts.map +1 -0
  30. package/dist/{engine.js → engine/engine.js} +44 -30
  31. package/dist/engine/engine.js.map +1 -0
  32. package/dist/engine/error.d.ts +37 -0
  33. package/dist/engine/error.d.ts.map +1 -0
  34. package/dist/engine/error.js +41 -0
  35. package/dist/engine/error.js.map +1 -0
  36. package/dist/engine/lifecycle.d.ts +112 -0
  37. package/dist/engine/lifecycle.d.ts.map +1 -0
  38. package/dist/engine/lifecycle.js +132 -0
  39. package/dist/engine/lifecycle.js.map +1 -0
  40. package/dist/engine/shutdown.d.ts +12 -0
  41. package/dist/engine/shutdown.d.ts.map +1 -0
  42. package/dist/engine/shutdown.js +10 -0
  43. package/dist/engine/shutdown.js.map +1 -0
  44. package/dist/engine/submission.d.ts +58 -0
  45. package/dist/engine/submission.d.ts.map +1 -0
  46. package/dist/engine/submission.js +54 -0
  47. package/dist/engine/submission.js.map +1 -0
  48. package/dist/item-projection/{service.d.ts → item-projection.d.ts} +6 -6
  49. package/dist/item-projection/item-projection.d.ts.map +1 -0
  50. package/dist/item-projection/{service.js → item-projection.js} +7 -5
  51. package/dist/item-projection/item-projection.js.map +1 -0
  52. package/dist/item-projection/model.d.ts +2 -5
  53. package/dist/item-projection/model.d.ts.map +1 -1
  54. package/dist/item-projection/model.js +5 -5
  55. package/dist/item-projection/model.js.map +1 -1
  56. package/dist/loop-control/loop-control.d.ts +21 -0
  57. package/dist/loop-control/loop-control.d.ts.map +1 -0
  58. package/dist/{loop-control.js → loop-control/loop-control.js} +7 -5
  59. package/dist/loop-control/loop-control.js.map +1 -0
  60. package/dist/loop-control/model.d.ts +10 -0
  61. package/dist/loop-control/model.d.ts.map +1 -0
  62. package/dist/loop-control/model.js +9 -0
  63. package/dist/loop-control/model.js.map +1 -0
  64. package/dist/repository-label-projection/model.d.ts +12 -3
  65. package/dist/repository-label-projection/model.d.ts.map +1 -1
  66. package/dist/repository-label-projection/model.js +14 -5
  67. package/dist/repository-label-projection/model.js.map +1 -1
  68. package/dist/repository-label-projection/{service.d.ts → repository-label-projection.d.ts} +5 -5
  69. package/dist/repository-label-projection/repository-label-projection.d.ts.map +1 -0
  70. package/dist/repository-label-projection/{service.js → repository-label-projection.js} +17 -7
  71. package/dist/repository-label-projection/repository-label-projection.js.map +1 -0
  72. package/dist/run-reader/model.d.ts +46 -0
  73. package/dist/run-reader/model.d.ts.map +1 -0
  74. package/dist/run-reader/model.js +44 -0
  75. package/dist/run-reader/model.js.map +1 -0
  76. package/dist/run-reader/run-reader.d.ts +29 -0
  77. package/dist/run-reader/run-reader.d.ts.map +1 -0
  78. package/dist/run-reader/run-reader.js +44 -0
  79. package/dist/run-reader/run-reader.js.map +1 -0
  80. package/dist/step-executor.d.ts +34 -12
  81. package/dist/step-executor.d.ts.map +1 -1
  82. package/dist/step-executor.js +22 -5
  83. package/dist/step-executor.js.map +1 -1
  84. package/dist/store/codec.d.ts +104 -40
  85. package/dist/store/codec.d.ts.map +1 -1
  86. package/dist/store/codec.js +66 -44
  87. package/dist/store/codec.js.map +1 -1
  88. package/dist/store/queries.d.ts +47 -15
  89. package/dist/store/queries.d.ts.map +1 -1
  90. package/dist/store/queries.js +74 -39
  91. package/dist/store/queries.js.map +1 -1
  92. package/dist/store/store.d.ts +44 -26
  93. package/dist/store/store.d.ts.map +1 -1
  94. package/dist/store/store.js +185 -127
  95. package/dist/store/store.js.map +1 -1
  96. package/dist/transcript.d.ts +64 -0
  97. package/dist/transcript.d.ts.map +1 -0
  98. package/dist/transcript.js +59 -0
  99. package/dist/transcript.js.map +1 -0
  100. package/dist/workflow/admission.d.ts +13 -0
  101. package/dist/workflow/admission.d.ts.map +1 -0
  102. package/dist/workflow/admission.js +55 -0
  103. package/dist/workflow/admission.js.map +1 -0
  104. package/dist/workflow/command.d.ts +13 -0
  105. package/dist/workflow/command.d.ts.map +1 -0
  106. package/dist/workflow/command.js +17 -0
  107. package/dist/workflow/command.js.map +1 -0
  108. package/dist/workflow/workflow.d.ts +18 -0
  109. package/dist/workflow/workflow.d.ts.map +1 -0
  110. package/dist/workflow/workflow.js +108 -0
  111. package/dist/workflow/workflow.js.map +1 -0
  112. package/drizzle/20260903091940_queued_approved_runs/migration.sql +3 -0
  113. package/drizzle/20260903091940_queued_approved_runs/snapshot.json +1147 -0
  114. package/drizzle/20260905150403_item_cycle_budgets/migration.sql +58 -0
  115. package/drizzle/20260905150403_item_cycle_budgets/snapshot.json +1417 -0
  116. package/drizzle/20260905174009_item_run_history/migration.sql +1 -0
  117. package/drizzle/20260905174009_item_run_history/snapshot.json +1431 -0
  118. package/package.json +41 -5
  119. package/dist/cursor/model.d.ts +0 -5
  120. package/dist/cursor/model.d.ts.map +0 -1
  121. package/dist/cursor/model.js +0 -4
  122. package/dist/cursor/model.js.map +0 -1
  123. package/dist/cursor/store.d.ts.map +0 -1
  124. package/dist/cursor/store.js.map +0 -1
  125. package/dist/engine.d.ts +0 -39
  126. package/dist/engine.d.ts.map +0 -1
  127. package/dist/engine.js.map +0 -1
  128. package/dist/index.d.ts +0 -20
  129. package/dist/index.d.ts.map +0 -1
  130. package/dist/index.js +0 -20
  131. package/dist/index.js.map +0 -1
  132. package/dist/item-projection/service.d.ts.map +0 -1
  133. package/dist/item-projection/service.js.map +0 -1
  134. package/dist/loop-control.d.ts +0 -16
  135. package/dist/loop-control.d.ts.map +0 -1
  136. package/dist/loop-control.js.map +0 -1
  137. package/dist/model.d.ts +0 -185
  138. package/dist/model.d.ts.map +0 -1
  139. package/dist/model.js +0 -174
  140. package/dist/model.js.map +0 -1
  141. package/dist/repository-label-projection/service.d.ts.map +0 -1
  142. package/dist/repository-label-projection/service.js.map +0 -1
  143. package/dist/run-reader.d.ts +0 -20
  144. package/dist/run-reader.d.ts.map +0 -1
  145. package/dist/run-reader.js +0 -19
  146. package/dist/run-reader.js.map +0 -1
  147. package/dist/workflow.d.ts +0 -14
  148. package/dist/workflow.d.ts.map +0 -1
  149. package/dist/workflow.js +0 -105
  150. package/dist/workflow.js.map +0 -1
@@ -1,6 +1,17 @@
1
- import { Agent, Attempt, AttemptChannel, Event, Run, RunState, Step, StepResult } from "@usine/core";
1
+ import { Agent } from "@usine/core/agent";
2
+ import { BrainSpec } from "@usine/core/agent/brain";
3
+ import { Attempt } from "@usine/core/attempt";
4
+ import * as AttemptChannel from "@usine/core/attempt/channel";
5
+ import { Event } from "@usine/core/event";
6
+ import { Run } from "@usine/core/run";
7
+ import { Step } from "@usine/core/step";
8
+ import * as RunState from "@usine/core/run/state";
9
+ import { StepResult } from "@usine/core/step/result";
2
10
  import { Effect, Schema } from "effect";
3
- import { RunStoreError, RunSummary, Submission, TranscriptEntry } from "../model.ts";
11
+ import { RunStoreError } from "../engine/error.ts";
12
+ import { Submission } from "../engine/submission.ts";
13
+ import { RunSummary } from "../run-reader/model.ts";
14
+ import { TranscriptEntry } from "../transcript.ts";
4
15
  export declare const EventRouteRow: Schema.Struct<{
5
16
  readonly eventId: Schema.brand<Schema.NonEmptyString, "EventId">;
6
17
  readonly dedupKey: Schema.brand<Schema.NonEmptyString, "DedupKey">;
@@ -10,27 +21,29 @@ export declare const EventRouteRow: Schema.Struct<{
10
21
  readonly loop: Schema.brand<Schema.NonEmptyString, "LoopName">;
11
22
  readonly step: Schema.brand<Schema.NonEmptyString, "StepName">;
12
23
  readonly approval: Schema.Literals<readonly ["none", "required"]>;
13
- readonly repository: Schema.brand<Schema.String, "RepoName">;
24
+ readonly cycleLimit: Schema.NullOr<Schema.brand<Schema.Int, "CycleLimit">>;
25
+ readonly cycleGeneration: Schema.brand<Schema.Int, "CycleGeneration">;
26
+ readonly repository: Schema.brand<Schema.String, "RepositoryName">;
14
27
  readonly revision: Schema.brand<Schema.String, "RepositoryRevision">;
15
28
  readonly task: Schema.brand<Schema.String, "AttemptTask">;
16
- readonly agent: typeof Agent.Agent;
29
+ readonly agent: typeof Agent;
17
30
  readonly parentModel: Schema.NullOr<Schema.brand<Schema.String, "ModelId">>;
18
31
  }>;
19
32
  export type EventRouteRow = typeof EventRouteRow.Type;
20
33
  export declare const RunRow: Schema.Struct<{
21
34
  readonly itemKey: Schema.brand<Schema.NonEmptyString, "ItemKey">;
22
- readonly repository: Schema.brand<Schema.String, "RepoName">;
35
+ readonly repository: Schema.brand<Schema.String, "RepositoryName">;
23
36
  readonly revision: Schema.brand<Schema.String, "RepositoryRevision">;
24
37
  readonly task: Schema.brand<Schema.String, "AttemptTask">;
25
- readonly agent: typeof Agent.Agent;
38
+ readonly agent: typeof Agent;
26
39
  readonly parentModel: Schema.NullOr<Schema.brand<Schema.String, "ModelId">>;
27
40
  readonly runId: Schema.brand<Schema.NonEmptyString, "RunId">;
28
41
  readonly eventId: Schema.brand<Schema.NonEmptyString, "EventId">;
29
42
  readonly loop: Schema.brand<Schema.NonEmptyString, "LoopName">;
30
- readonly state: Schema.Union<readonly [typeof RunState.Pending, typeof RunState.Waiting, typeof RunState.Running, typeof RunState.Succeeded, typeof RunState.Failed, typeof RunState.Canceled]>;
43
+ readonly state: Schema.Union<readonly [typeof RunState.Pending, typeof RunState.Waiting, typeof RunState.Queued, typeof RunState.Running, typeof RunState.Succeeded, typeof RunState.Failed, typeof RunState.Canceled]>;
31
44
  readonly openedAt: Schema.DateTimeUtcFromString;
32
45
  readonly stepName: Schema.brand<Schema.NonEmptyString, "StepName">;
33
- readonly result: Schema.NullOr<typeof StepResult.StepResult>;
46
+ readonly result: Schema.NullOr<typeof StepResult>;
34
47
  }>;
35
48
  export type RunRow = typeof RunRow.Type;
36
49
  export declare const AttemptRow: Schema.Struct<{
@@ -39,17 +52,31 @@ export declare const AttemptRow: Schema.Struct<{
39
52
  readonly stepName: Schema.brand<Schema.NonEmptyString, "StepName">;
40
53
  readonly worker: Schema.brand<Schema.String, "WorkerName">;
41
54
  readonly number: Schema.brand<Schema.Int, "AttemptNumber">;
42
- readonly brain: typeof Agent.BrainSpec;
55
+ readonly brain: typeof BrainSpec;
43
56
  readonly parentModel: Schema.NullOr<Schema.brand<Schema.String, "ModelId">>;
44
57
  readonly startedAt: Schema.DateTimeUtcFromString;
45
- readonly outcome: Schema.NullOr<Schema.Union<readonly [typeof Attempt.Succeeded, typeof Attempt.Failed, typeof Attempt.Canceled]>>;
58
+ readonly outcome: Schema.NullOr<Schema.Union<readonly [typeof import("@usine/core/attempt/outcome").AttemptSucceeded, typeof import("@usine/core/attempt/outcome").AttemptFailed, typeof import("@usine/core/attempt/outcome").AttemptCanceled]>>;
46
59
  }>;
47
60
  export type AttemptRow = typeof AttemptRow.Type;
48
61
  export declare const TranscriptRow: Schema.Struct<{
49
62
  readonly sequence: Schema.brand<Schema.Int, "TranscriptSequence">;
50
63
  readonly attemptId: Schema.brand<Schema.NonEmptyString, "AttemptId">;
51
64
  readonly direction: Schema.Literals<readonly ["inbound", "outbound"]>;
52
- readonly envelope: Schema.Union<readonly [typeof AttemptChannel.OutboundEnvelope, typeof AttemptChannel.InboundEnvelope]>;
65
+ readonly envelope: Schema.Union<readonly [Schema.Union<readonly [typeof AttemptChannel.OutboundEnvelope, typeof AttemptChannel.InboundEnvelope]>, Schema.Union<readonly [Schema.Struct<{
66
+ readonly _tag: Schema.tag<"OutboundEnvelope">;
67
+ readonly attemptId: Schema.brand<Schema.NonEmptyString, "AttemptId">;
68
+ readonly sequence: Schema.brand<Schema.Int, "AttemptChannelSequence">;
69
+ readonly sentAt: Schema.DateTimeUtcFromString;
70
+ readonly payload: Schema.Union<readonly [typeof AttemptChannel.Started, typeof AttemptChannel.SessionEvent, typeof AttemptChannel.Final, typeof AttemptChannel.Failed, typeof AttemptChannel.Interrupted]>;
71
+ readonly version: Schema.Literal<3>;
72
+ }>, Schema.Struct<{
73
+ readonly _tag: Schema.tag<"InboundEnvelope">;
74
+ readonly attemptId: Schema.brand<Schema.NonEmptyString, "AttemptId">;
75
+ readonly sequence: Schema.brand<Schema.Int, "AttemptChannelSequence">;
76
+ readonly sentAt: Schema.DateTimeUtcFromString;
77
+ readonly payload: Schema.Union<readonly [typeof AttemptChannel.Steer, typeof AttemptChannel.Interrupt]>;
78
+ readonly version: Schema.Literal<3>;
79
+ }>]>]>;
53
80
  readonly receivedAt: Schema.DateTimeUtcFromString;
54
81
  }>;
55
82
  export type TranscriptRow = typeof TranscriptRow.Type;
@@ -67,26 +94,28 @@ export declare const decodeEventRoutes: (input: unknown, options?: import("effec
67
94
  readonly loop: string & import("effect/Brand").Brand<"LoopName">;
68
95
  readonly step: string & import("effect/Brand").Brand<"StepName">;
69
96
  readonly approval: "none" | "required";
70
- readonly repository: string & import("effect/Brand").Brand<"RepoName">;
97
+ readonly cycleLimit: (number & import("effect/Brand").Brand<"CycleLimit">) | null;
98
+ readonly cycleGeneration: number & import("effect/Brand").Brand<"CycleGeneration">;
99
+ readonly repository: string & import("effect/Brand").Brand<"RepositoryName">;
71
100
  readonly revision: string & import("effect/Brand").Brand<"RepositoryRevision">;
72
101
  readonly task: string & import("effect/Brand").Brand<"AttemptTask">;
73
- readonly agent: Agent.Agent;
102
+ readonly agent: Agent;
74
103
  readonly parentModel: (string & import("effect/Brand").Brand<"ModelId">) | null;
75
104
  }[], Schema.SchemaError, never>;
76
105
  export declare const decodeRunRows: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => Effect.Effect<readonly {
77
106
  readonly itemKey: string & import("effect/Brand").Brand<"ItemKey">;
78
- readonly repository: string & import("effect/Brand").Brand<"RepoName">;
107
+ readonly repository: string & import("effect/Brand").Brand<"RepositoryName">;
79
108
  readonly revision: string & import("effect/Brand").Brand<"RepositoryRevision">;
80
109
  readonly task: string & import("effect/Brand").Brand<"AttemptTask">;
81
- readonly agent: Agent.Agent;
110
+ readonly agent: Agent;
82
111
  readonly parentModel: (string & import("effect/Brand").Brand<"ModelId">) | null;
83
112
  readonly runId: string & import("effect/Brand").Brand<"RunId">;
84
113
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
85
114
  readonly loop: string & import("effect/Brand").Brand<"LoopName">;
86
- readonly state: RunState.Canceled | RunState.Failed | RunState.Pending | RunState.Running | RunState.Succeeded | RunState.Waiting;
115
+ readonly state: RunState.Canceled | RunState.Failed | RunState.Pending | RunState.Queued | RunState.Running | RunState.Succeeded | RunState.Waiting;
87
116
  readonly openedAt: import("effect/DateTime").Utc;
88
117
  readonly stepName: string & import("effect/Brand").Brand<"StepName">;
89
- readonly result: StepResult.StepResult | null;
118
+ readonly result: StepResult | null;
90
119
  }[], Schema.SchemaError, never>;
91
120
  export declare const decodeAttemptRows: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => Effect.Effect<readonly {
92
121
  readonly attemptId: string & import("effect/Brand").Brand<"AttemptId">;
@@ -94,10 +123,10 @@ export declare const decodeAttemptRows: (input: unknown, options?: import("effec
94
123
  readonly stepName: string & import("effect/Brand").Brand<"StepName">;
95
124
  readonly worker: string & import("effect/Brand").Brand<"WorkerName">;
96
125
  readonly number: number & import("effect/Brand").Brand<"AttemptNumber">;
97
- readonly brain: Agent.BrainSpec;
126
+ readonly brain: BrainSpec;
98
127
  readonly parentModel: (string & import("effect/Brand").Brand<"ModelId">) | null;
99
128
  readonly startedAt: import("effect/DateTime").Utc;
100
- readonly outcome: Attempt.Canceled | Attempt.Failed | Attempt.Succeeded | null;
129
+ readonly outcome: import("@usine/core/attempt/outcome").AttemptCanceled | import("@usine/core/attempt/outcome").AttemptFailed | import("@usine/core/attempt/outcome").AttemptSucceeded | null;
101
130
  }[], Schema.SchemaError, never>;
102
131
  export declare const decodeRecoverableRuns: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => Effect.Effect<readonly {
103
132
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
@@ -108,13 +137,15 @@ export declare const decodeRecoverableRuns: (input: unknown, options?: import("e
108
137
  readonly loop: string & import("effect/Brand").Brand<"LoopName">;
109
138
  readonly step: string & import("effect/Brand").Brand<"StepName">;
110
139
  readonly approval: "none" | "required";
111
- readonly repository: string & import("effect/Brand").Brand<"RepoName">;
140
+ readonly cycleLimit: (number & import("effect/Brand").Brand<"CycleLimit">) | null;
141
+ readonly cycleGeneration: number & import("effect/Brand").Brand<"CycleGeneration">;
142
+ readonly repository: string & import("effect/Brand").Brand<"RepositoryName">;
112
143
  readonly revision: string & import("effect/Brand").Brand<"RepositoryRevision">;
113
144
  readonly task: string & import("effect/Brand").Brand<"AttemptTask">;
114
- readonly agent: Agent.Agent;
145
+ readonly agent: Agent;
115
146
  readonly parentModel: (string & import("effect/Brand").Brand<"ModelId">) | null;
116
147
  readonly runId: string & import("effect/Brand").Brand<"RunId">;
117
- readonly state: RunState.Canceled | RunState.Failed | RunState.Pending | RunState.Running | RunState.Succeeded | RunState.Waiting;
148
+ readonly state: RunState.Canceled | RunState.Failed | RunState.Pending | RunState.Queued | RunState.Running | RunState.Succeeded | RunState.Waiting;
118
149
  }[], Schema.SchemaError, never>;
119
150
  export declare const decodeRunIds: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => Effect.Effect<readonly {
120
151
  readonly runId: string & import("effect/Brand").Brand<"RunId">;
@@ -133,19 +164,35 @@ export declare const decodeTranscriptRows: (input: unknown, options?: import("ef
133
164
  readonly sequence: number & import("effect/Brand").Brand<"TranscriptSequence">;
134
165
  readonly attemptId: string & import("effect/Brand").Brand<"AttemptId">;
135
166
  readonly direction: "inbound" | "outbound";
136
- readonly envelope: AttemptChannel.InboundEnvelope | AttemptChannel.OutboundEnvelope;
167
+ readonly envelope: AttemptChannel.InboundEnvelope | AttemptChannel.OutboundEnvelope | {
168
+ readonly _tag: "OutboundEnvelope";
169
+ readonly attemptId: string & import("effect/Brand").Brand<"AttemptId">;
170
+ readonly sequence: number & import("effect/Brand").Brand<"AttemptChannelSequence">;
171
+ readonly sentAt: import("effect/DateTime").Utc;
172
+ readonly payload: AttemptChannel.Failed | AttemptChannel.Final | AttemptChannel.Interrupted | AttemptChannel.SessionEvent | AttemptChannel.Started;
173
+ readonly version: 3;
174
+ } | {
175
+ readonly _tag: "InboundEnvelope";
176
+ readonly attemptId: string & import("effect/Brand").Brand<"AttemptId">;
177
+ readonly sequence: number & import("effect/Brand").Brand<"AttemptChannelSequence">;
178
+ readonly sentAt: import("effect/DateTime").Utc;
179
+ readonly payload: AttemptChannel.Interrupt | AttemptChannel.Steer;
180
+ readonly version: 3;
181
+ };
137
182
  readonly receivedAt: import("effect/DateTime").Utc;
138
183
  }[], Schema.SchemaError, never>;
139
184
  export declare const encodePayload: (input: Schema.Json, options?: import("effect/SchemaAST").ParseOptions) => Schema.Json;
140
185
  export declare const encodeDateTime: (input: import("effect/DateTime").Utc, options?: import("effect/SchemaAST").ParseOptions) => string;
141
- export declare const encodeRunState: (input: RunState.Canceled | RunState.Failed | RunState.Pending | RunState.Running | RunState.Succeeded | RunState.Waiting, options?: import("effect/SchemaAST").ParseOptions) => {
186
+ export declare const encodeRunState: (input: RunState.Canceled | RunState.Failed | RunState.Pending | RunState.Queued | RunState.Running | RunState.Succeeded | RunState.Waiting, options?: import("effect/SchemaAST").ParseOptions) => {
187
+ readonly _tag: "Succeeded";
188
+ } | {
142
189
  readonly _tag: "Pending";
143
190
  } | {
144
191
  readonly _tag: "Waiting";
145
192
  } | {
146
- readonly _tag: "Running";
193
+ readonly _tag: "Queued";
147
194
  } | {
148
- readonly _tag: "Succeeded";
195
+ readonly _tag: "Running";
149
196
  } | {
150
197
  readonly _tag: "Failed";
151
198
  } | {
@@ -159,7 +206,7 @@ export declare const encodeRunState: (input: RunState.Canceled | RunState.Failed
159
206
  readonly _tag: "Revoked";
160
207
  };
161
208
  };
162
- export declare const encodeOutcome: (input: Attempt.Canceled | Attempt.Failed | Attempt.Succeeded, options?: import("effect/SchemaAST").ParseOptions) => {
209
+ export declare const encodeOutcome: (input: import("@usine/core/attempt/outcome").AttemptCanceled | import("@usine/core/attempt/outcome").AttemptFailed | import("@usine/core/attempt/outcome").AttemptSucceeded, options?: import("effect/SchemaAST").ParseOptions) => {
163
210
  readonly _tag: "Succeeded";
164
211
  } | {
165
212
  readonly _tag: "Failed";
@@ -167,17 +214,25 @@ export declare const encodeOutcome: (input: Attempt.Canceled | Attempt.Failed |
167
214
  readonly _tag: "InfraFailure";
168
215
  readonly message: string;
169
216
  readonly cause: Schema.Json;
217
+ } | {
218
+ readonly _tag: "DefectFailure";
219
+ readonly message: string;
220
+ readonly cause: Schema.Json;
170
221
  } | {
171
222
  readonly _tag: "AgentFailure";
172
223
  readonly message: string;
173
224
  } | {
174
225
  readonly _tag: "RunawayFailure";
175
226
  readonly ceiling: "tokens" | "wall-clock";
227
+ } | {
228
+ readonly _tag: "ChildSessionBudgetFailure";
229
+ readonly maxChildren: number;
230
+ readonly attemptedChildren: number;
176
231
  };
177
232
  } | {
178
233
  readonly _tag: "Canceled";
179
234
  };
180
- export declare const encodeStepResult: (input: StepResult.StepResult, options?: import("effect/SchemaAST").ParseOptions) => {
235
+ export declare const encodeStepResult: (input: StepResult, options?: import("effect/SchemaAST").ParseOptions) => {
181
236
  readonly message: string;
182
237
  readonly facts: readonly ({
183
238
  readonly _tag: "Commit";
@@ -186,15 +241,15 @@ export declare const encodeStepResult: (input: StepResult.StepResult, options?:
186
241
  } | {
187
242
  readonly _tag: "PullRequest";
188
243
  readonly number: number;
189
- readonly url: URL;
244
+ readonly url: string;
190
245
  } | {
191
246
  readonly _tag: "Comment";
192
- readonly url: URL;
247
+ readonly url: string;
193
248
  })[];
194
249
  };
195
250
  export declare const encodeEnvelope: (input: AttemptChannel.InboundEnvelope | AttemptChannel.OutboundEnvelope, options?: import("effect/SchemaAST").ParseOptions) => {
196
251
  readonly _tag: "OutboundEnvelope";
197
- readonly version: 3;
252
+ readonly version: 4;
198
253
  readonly attemptId: string;
199
254
  readonly sequence: number;
200
255
  readonly sentAt: string;
@@ -370,10 +425,10 @@ export declare const encodeEnvelope: (input: AttemptChannel.InboundEnvelope | At
370
425
  } | {
371
426
  readonly _tag: "PullRequest";
372
427
  readonly number: number;
373
- readonly url: URL;
428
+ readonly url: string;
374
429
  } | {
375
430
  readonly _tag: "Comment";
376
- readonly url: URL;
431
+ readonly url: string;
377
432
  })[];
378
433
  };
379
434
  } | {
@@ -382,19 +437,27 @@ export declare const encodeEnvelope: (input: AttemptChannel.InboundEnvelope | At
382
437
  readonly _tag: "InfraFailure";
383
438
  readonly message: string;
384
439
  readonly cause: Schema.Json;
440
+ } | {
441
+ readonly _tag: "DefectFailure";
442
+ readonly message: string;
443
+ readonly cause: Schema.Json;
385
444
  } | {
386
445
  readonly _tag: "AgentFailure";
387
446
  readonly message: string;
388
447
  } | {
389
448
  readonly _tag: "RunawayFailure";
390
449
  readonly ceiling: "tokens" | "wall-clock";
450
+ } | {
451
+ readonly _tag: "ChildSessionBudgetFailure";
452
+ readonly maxChildren: number;
453
+ readonly attemptedChildren: number;
391
454
  };
392
455
  } | {
393
456
  readonly _tag: "Interrupted";
394
457
  };
395
458
  } | {
396
459
  readonly _tag: "InboundEnvelope";
397
- readonly version: 3;
460
+ readonly version: 4;
398
461
  readonly attemptId: string;
399
462
  readonly sequence: number;
400
463
  readonly sentAt: string;
@@ -405,7 +468,7 @@ export declare const encodeEnvelope: (input: AttemptChannel.InboundEnvelope | At
405
468
  readonly _tag: "Interrupt";
406
469
  };
407
470
  };
408
- export declare const encodeAgent: (input: Agent.Agent, options?: import("effect/SchemaAST").ParseOptions) => {
471
+ export declare const encodeAgent: (input: Agent, options?: import("effect/SchemaAST").ParseOptions) => {
409
472
  readonly name: string;
410
473
  readonly brain: {
411
474
  readonly harness: "claude" | "codex" | "pi";
@@ -413,19 +476,20 @@ export declare const encodeAgent: (input: Agent.Agent, options?: import("effect/
413
476
  readonly effort: "high" | "low" | "max" | "medium" | "minimal" | "off" | "xhigh";
414
477
  };
415
478
  readonly parentModel: string | null;
479
+ readonly parentEffort?: "high" | "low" | "max" | "medium" | "minimal" | "off" | "xhigh";
416
480
  readonly persona: string;
417
481
  };
418
- export declare const encodeBrainSpec: (input: Agent.BrainSpec, options?: import("effect/SchemaAST").ParseOptions) => {
482
+ export declare const encodeBrainSpec: (input: BrainSpec, options?: import("effect/SchemaAST").ParseOptions) => {
419
483
  readonly harness: "claude" | "codex" | "pi";
420
484
  readonly model: string;
421
485
  readonly effort: "high" | "low" | "max" | "medium" | "minimal" | "off" | "xhigh";
422
486
  };
423
487
  export declare const persistence: (operation: string) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, RunStoreError, R>;
424
- export declare const eventFromRow: (row: EventRouteRow) => Event.Event;
488
+ export declare const eventFromRow: (row: EventRouteRow) => Event;
425
489
  export declare const submissionFromRow: (row: EventRouteRow) => Submission;
426
- export declare const runFromRow: (row: RunRow) => Run.Run;
427
- export declare const stepFromRow: (row: RunRow) => Step.Step;
428
- export declare const attemptFromRow: (row: AttemptRow) => Attempt.Attempt;
490
+ export declare const runFromRow: (row: RunRow) => Run;
491
+ export declare const stepFromRow: (row: RunRow) => Step;
492
+ export declare const attemptFromRow: (row: AttemptRow) => Attempt;
429
493
  export declare const runSummaryFromRow: (row: RunRow, storedAttempts: ReadonlyArray<AttemptRow>) => RunSummary;
430
494
  export declare const transcriptEntryFromRow: (row: TranscriptRow) => TranscriptEntry;
431
495
  //# sourceMappingURL=codec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/store/codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/store/codec.ts"],"names":[],"mappings":"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"}
@@ -1,63 +1,83 @@
1
- import { Agent, Attempt, AttemptChannel, Event, Item, Loop, Repository, Run, RunState, Step, StepResult, Worker, } from "@usine/core";
1
+ import { Agent } from "@usine/core/agent";
2
+ import { CycleGeneration, CycleLimit } from "@usine/core/cycle-budget";
3
+ import { BrainSpec, ModelId } from "@usine/core/agent/brain";
4
+ import { Attempt, AttemptNumber, AttemptTask, AttemptId } from "@usine/core/attempt";
5
+ import * as AttemptChannel from "@usine/core/attempt/channel";
6
+ import { AttemptOutcome } from "@usine/core/attempt/outcome";
7
+ import { Event, DedupKey, EventId } from "@usine/core/event";
8
+ import { ApprovalRequirement, LoopName } from "@usine/core/loop";
9
+ import { ItemKey } from "@usine/core/item";
10
+ import { RepositoryName, RepositoryRevision } from "@usine/core/repository";
11
+ import { RunId, Run } from "@usine/core/run";
12
+ import { StepName, Step } from "@usine/core/step";
13
+ import { WorkerName } from "@usine/core/worker";
14
+ import * as RunState from "@usine/core/run/state";
15
+ import { StepResult } from "@usine/core/step/result";
2
16
  import { Effect, Option, Schema } from "effect";
3
- import { ApprovalRequirement, EnginePersistenceError, IgnoreReason, ProjectionRevision, RunStoreError, RunSummary, Submission, TranscriptEntry, TranscriptSequence, WorkflowCommand, } from "../model.js";
17
+ import { EnginePersistenceError, RunStoreError } from "../engine/error.js";
18
+ import { IgnoreReason, Submission } from "../engine/submission.js";
19
+ import { ProjectionRevision, RunSummary } from "../run-reader/model.js";
20
+ import { TranscriptEntry, TranscriptSequence } from "../transcript.js";
21
+ import { WorkflowCommand } from "../workflow/command.js";
4
22
  export const EventRouteRow = Schema.Struct({
5
- eventId: Event.EventId,
6
- dedupKey: Event.DedupKey,
23
+ eventId: EventId,
24
+ dedupKey: DedupKey,
7
25
  payload: Schema.Json,
8
26
  receivedAt: Schema.DateTimeUtcFromString,
9
- itemKey: Item.ItemKey,
10
- loop: Loop.LoopName,
11
- step: Step.StepName,
27
+ itemKey: ItemKey,
28
+ loop: LoopName,
29
+ step: StepName,
12
30
  approval: ApprovalRequirement,
13
- repository: Repository.Name,
14
- revision: Repository.Revision,
15
- task: AttemptChannel.Task,
16
- agent: Agent.Agent,
17
- parentModel: Schema.NullOr(Agent.ModelId),
31
+ cycleLimit: Schema.NullOr(CycleLimit),
32
+ cycleGeneration: CycleGeneration,
33
+ repository: RepositoryName,
34
+ revision: RepositoryRevision,
35
+ task: AttemptTask,
36
+ agent: Agent,
37
+ parentModel: Schema.NullOr(ModelId),
18
38
  });
19
39
  export const RunRow = Schema.Struct({
20
- itemKey: Item.ItemKey,
21
- repository: Repository.Name,
22
- revision: Repository.Revision,
23
- task: AttemptChannel.Task,
24
- agent: Agent.Agent,
25
- parentModel: Schema.NullOr(Agent.ModelId),
26
- runId: Run.RunId,
27
- eventId: Event.EventId,
28
- loop: Loop.LoopName,
40
+ itemKey: ItemKey,
41
+ repository: RepositoryName,
42
+ revision: RepositoryRevision,
43
+ task: AttemptTask,
44
+ agent: Agent,
45
+ parentModel: Schema.NullOr(ModelId),
46
+ runId: RunId,
47
+ eventId: EventId,
48
+ loop: LoopName,
29
49
  state: RunState.RunState,
30
50
  openedAt: Schema.DateTimeUtcFromString,
31
- stepName: Step.StepName,
32
- result: Schema.NullOr(StepResult.StepResult),
51
+ stepName: StepName,
52
+ result: Schema.NullOr(StepResult),
33
53
  });
34
54
  export const AttemptRow = Schema.Struct({
35
- attemptId: Attempt.AttemptId,
36
- runId: Run.RunId,
37
- stepName: Step.StepName,
38
- worker: Worker.Name,
39
- number: Attempt.AttemptNumber,
40
- brain: Agent.BrainSpec,
41
- parentModel: Schema.NullOr(Agent.ModelId),
55
+ attemptId: AttemptId,
56
+ runId: RunId,
57
+ stepName: StepName,
58
+ worker: WorkerName,
59
+ number: AttemptNumber,
60
+ brain: BrainSpec,
61
+ parentModel: Schema.NullOr(ModelId),
42
62
  startedAt: Schema.DateTimeUtcFromString,
43
- outcome: Schema.NullOr(Attempt.Outcome),
63
+ outcome: Schema.NullOr(AttemptOutcome),
44
64
  });
45
65
  export const TranscriptRow = Schema.Struct({
46
66
  sequence: TranscriptSequence,
47
- attemptId: Attempt.AttemptId,
67
+ attemptId: AttemptId,
48
68
  direction: AttemptChannel.Direction,
49
- envelope: AttemptChannel.Envelope,
69
+ envelope: TranscriptEntry.fields.envelope,
50
70
  receivedAt: Schema.DateTimeUtcFromString,
51
71
  });
52
72
  const RecoverableRunRow = Schema.Struct({
53
73
  ...EventRouteRow.fields,
54
- runId: Run.RunId,
74
+ runId: RunId,
55
75
  state: RunState.RunState,
56
76
  });
57
- const RunIdRow = Schema.Struct({ runId: Run.RunId });
77
+ const RunIdRow = Schema.Struct({ runId: RunId });
58
78
  const DiscardRow = Schema.Struct({ reason: IgnoreReason });
59
79
  export const WorkflowCommandRow = Schema.Struct({
60
- runId: Run.RunId,
80
+ runId: RunId,
61
81
  command: WorkflowCommand,
62
82
  });
63
83
  const ProjectionRevisionRow = Schema.Struct({ revision: ProjectionRevision });
@@ -73,14 +93,14 @@ export const decodeTranscriptRows = Schema.decodeUnknownEffect(Schema.Array(Tran
73
93
  export const encodePayload = Schema.encodeSync(Schema.Json);
74
94
  export const encodeDateTime = Schema.encodeSync(Schema.DateTimeUtcFromString);
75
95
  export const encodeRunState = Schema.encodeSync(RunState.RunState);
76
- export const encodeOutcome = Schema.encodeSync(Attempt.Outcome);
77
- export const encodeStepResult = Schema.encodeSync(StepResult.StepResult);
96
+ export const encodeOutcome = Schema.encodeSync(AttemptOutcome);
97
+ export const encodeStepResult = Schema.encodeSync(StepResult);
78
98
  export const encodeEnvelope = Schema.encodeSync(AttemptChannel.Envelope);
79
- export const encodeAgent = Schema.encodeSync(Agent.Agent);
80
- export const encodeBrainSpec = Schema.encodeSync(Agent.BrainSpec);
99
+ export const encodeAgent = Schema.encodeSync(Agent);
100
+ export const encodeBrainSpec = Schema.encodeSync(BrainSpec);
81
101
  const isRunStoreError = Schema.is(RunStoreError);
82
102
  export const persistence = (operation) => (effect) => Effect.mapError(effect, (error) => isRunStoreError(error) ? error : new EnginePersistenceError({ operation, cause: error }));
83
- export const eventFromRow = (row) => new Event.Event({
103
+ export const eventFromRow = (row) => new Event({
84
104
  id: row.eventId,
85
105
  dedupKey: row.dedupKey,
86
106
  payload: row.payload,
@@ -92,25 +112,27 @@ export const submissionFromRow = (row) => new Submission({
92
112
  loop: row.loop,
93
113
  step: row.step,
94
114
  approval: row.approval,
115
+ cycleLimit: Option.fromNullishOr(row.cycleLimit),
116
+ cycleGeneration: row.cycleGeneration,
95
117
  repository: row.repository,
96
118
  revision: row.revision,
97
119
  task: row.task,
98
120
  agent: row.agent,
99
121
  parentModel: Option.fromNullishOr(row.parentModel),
100
122
  });
101
- export const runFromRow = (row) => new Run.Run({
123
+ export const runFromRow = (row) => new Run({
102
124
  id: row.runId,
103
125
  eventId: row.eventId,
104
126
  loop: row.loop,
105
127
  state: row.state,
106
128
  openedAt: row.openedAt,
107
129
  });
108
- export const stepFromRow = (row) => new Step.Step({
130
+ export const stepFromRow = (row) => new Step({
109
131
  runId: row.runId,
110
132
  name: row.stepName,
111
133
  result: Option.fromNullishOr(row.result),
112
134
  });
113
- export const attemptFromRow = (row) => new Attempt.Attempt({
135
+ export const attemptFromRow = (row) => new Attempt({
114
136
  id: row.attemptId,
115
137
  runId: row.runId,
116
138
  stepName: row.stepName,
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/store/codec.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,OAAO,EACP,cAAc,EACd,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,GAAG,EACH,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,MAAM,GACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,KAAK,CAAC,OAAO;IACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;IACxB,OAAO,EAAE,MAAM,CAAC,IAAI;IACpB,UAAU,EAAE,MAAM,CAAC,qBAAqB;IACxC,OAAO,EAAE,IAAI,CAAC,OAAO;IACrB,IAAI,EAAE,IAAI,CAAC,QAAQ;IACnB,IAAI,EAAE,IAAI,CAAC,QAAQ;IACnB,QAAQ,EAAE,mBAAmB;IAC7B,UAAU,EAAE,UAAU,CAAC,IAAI;IAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ;IAC7B,IAAI,EAAE,cAAc,CAAC,IAAI;IACzB,KAAK,EAAE,KAAK,CAAC,KAAK;IAClB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;CAC1C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAClC,OAAO,EAAE,IAAI,CAAC,OAAO;IACrB,UAAU,EAAE,UAAU,CAAC,IAAI;IAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ;IAC7B,IAAI,EAAE,cAAc,CAAC,IAAI;IACzB,KAAK,EAAE,KAAK,CAAC,KAAK;IAClB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;IACzC,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,OAAO,EAAE,KAAK,CAAC,OAAO;IACtB,IAAI,EAAE,IAAI,CAAC,QAAQ;IACnB,KAAK,EAAE,QAAQ,CAAC,QAAQ;IACxB,QAAQ,EAAE,MAAM,CAAC,qBAAqB;IACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;CAC7C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IACtC,SAAS,EAAE,OAAO,CAAC,SAAS;IAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC,IAAI;IACnB,MAAM,EAAE,OAAO,CAAC,aAAa;IAC7B,KAAK,EAAE,KAAK,CAAC,SAAS;IACtB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC,qBAAqB;IACvC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;CACxC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,QAAQ,EAAE,kBAAkB;IAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;IAC5B,SAAS,EAAE,cAAc,CAAC,SAAS;IACnC,QAAQ,EAAE,cAAc,CAAC,QAAQ;IACjC,UAAU,EAAE,MAAM,CAAC,qBAAqB;CACzC,CAAC,CAAC;AAGH,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC;IACtC,GAAG,aAAa,CAAC,MAAM;IACvB,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,KAAK,EAAE,QAAQ,CAAC,QAAQ;CACzB,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;AACrD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9C,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,OAAO,EAAE,eAAe;CACzB,CAAC,CAAC;AAGH,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;AACtF,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;AACnF,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;AACnG,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,mBAAmB,CAChE,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CACpC,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;AAE5F,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAC9E,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAChE,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACzE,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;AACzE,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1D,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAElE,MAAM,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;AAEjD,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,SAAiB,EAAE,EAAE,CACtB,CAAU,MAA8B,EAAsC,EAAE,CAC9E,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAChC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CACzF,CAAC;AAEN,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAe,EAAE,CAC9D,IAAI,KAAK,CAAC,KAAK,CAAC;IACd,EAAE,EAAE,GAAG,CAAC,OAAO;IACf,QAAQ,EAAE,GAAG,CAAC,QAAQ;IACtB,OAAO,EAAE,GAAG,CAAC,OAAO;IACpB,UAAU,EAAE,GAAG,CAAC,UAAU;CAC3B,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAkB,EAAc,EAAE,CAClE,IAAI,UAAU,CAAC;IACb,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC;IACxB,OAAO,EAAE,GAAG,CAAC,OAAO;IACpB,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,QAAQ,EAAE,GAAG,CAAC,QAAQ;IACtB,UAAU,EAAE,GAAG,CAAC,UAAU;IAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;IACtB,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC;CACnD,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAW,EAAE,CACjD,IAAI,GAAG,CAAC,GAAG,CAAC;IACV,EAAE,EAAE,GAAG,CAAC,KAAK;IACb,OAAO,EAAE,GAAG,CAAC,OAAO;IACpB,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;CACvB,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAa,EAAE,CACpD,IAAI,IAAI,CAAC,IAAI,CAAC;IACZ,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,IAAI,EAAE,GAAG,CAAC,QAAQ;IAClB,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC;CACzC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAe,EAAmB,EAAE,CACjE,IAAI,OAAO,CAAC,OAAO,CAAC;IAClB,EAAE,EAAE,GAAG,CAAC,SAAS;IACjB,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;IACtB,MAAM,EAAE,GAAG,CAAC,MAAM;IAClB,MAAM,EAAE,GAAG,CAAC,MAAM;IAClB,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC;IAClD,SAAS,EAAE,GAAG,CAAC,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;CAC3C,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,GAAW,EACX,cAAyC,EAC7B,EAAE,CACd,IAAI,UAAU,CAAC;IACb,OAAO,EAAE,GAAG,CAAC,OAAO;IACpB,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC;IACpB,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC;IACtB,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC;IAC5C,UAAU,EAAE,GAAG,CAAC,UAAU;IAC1B,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,KAAK,EAAE,GAAG,CAAC,KAAK;CACjB,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAkB,EAAmB,EAAE,CAC5E,IAAI,eAAe,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;IACtB,SAAS,EAAE,GAAG,CAAC,SAAS;IACxB,SAAS,EAAE,GAAG,CAAC,SAAS;IACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;IACtB,UAAU,EAAE,GAAG,CAAC,UAAU;CAC3B,CAAC,CAAC"}
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/store/codec.ts"],"names":[],"mappings":"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"}