@claudexor/cli 3.4.2 → 3.6.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 (137) hide show
  1. package/dist/accounts-projection.d.ts +18 -12
  2. package/dist/accounts-projection.d.ts.map +1 -1
  3. package/dist/accounts-projection.js +63 -58
  4. package/dist/accounts-projection.js.map +1 -1
  5. package/dist/accounts-services.d.ts +134 -127
  6. package/dist/accounts-services.d.ts.map +1 -1
  7. package/dist/accounts-services.js +15 -7
  8. package/dist/accounts-services.js.map +1 -1
  9. package/dist/accounts-unified-migration.d.ts +110 -0
  10. package/dist/accounts-unified-migration.d.ts.map +1 -0
  11. package/dist/accounts-unified-migration.js +422 -0
  12. package/dist/accounts-unified-migration.js.map +1 -0
  13. package/dist/agy-quota-source.d.ts +36 -0
  14. package/dist/agy-quota-source.d.ts.map +1 -0
  15. package/dist/agy-quota-source.js +334 -0
  16. package/dist/agy-quota-source.js.map +1 -0
  17. package/dist/auth-login-harnesses.d.ts +13 -0
  18. package/dist/auth-login-harnesses.d.ts.map +1 -0
  19. package/dist/auth-login-harnesses.js +18 -0
  20. package/dist/auth-login-harnesses.js.map +1 -0
  21. package/dist/claude-oauth-usage.d.ts.map +1 -1
  22. package/dist/claude-oauth-usage.js +9 -3
  23. package/dist/claude-oauth-usage.js.map +1 -1
  24. package/dist/claude-statusline.d.ts.map +1 -1
  25. package/dist/claude-statusline.js +14 -1
  26. package/dist/claude-statusline.js.map +1 -1
  27. package/dist/claudexord.d.ts.map +1 -1
  28. package/dist/claudexord.js +25 -37
  29. package/dist/claudexord.js.map +1 -1
  30. package/dist/codex-quota-source.d.ts.map +1 -1
  31. package/dist/codex-quota-source.js +8 -3
  32. package/dist/codex-quota-source.js.map +1 -1
  33. package/dist/command-registry.d.ts.map +1 -1
  34. package/dist/command-registry.js +2 -13
  35. package/dist/command-registry.js.map +1 -1
  36. package/dist/config-dir-login-harnesses.d.ts +7 -0
  37. package/dist/config-dir-login-harnesses.d.ts.map +1 -0
  38. package/dist/config-dir-login-harnesses.js +46 -0
  39. package/dist/config-dir-login-harnesses.js.map +1 -0
  40. package/dist/control-services.d.ts +203 -185
  41. package/dist/control-services.d.ts.map +1 -1
  42. package/dist/control-services.js +39 -118
  43. package/dist/control-services.js.map +1 -1
  44. package/dist/credential-commands.d.ts.map +1 -1
  45. package/dist/credential-commands.js +51 -34
  46. package/dist/credential-commands.js.map +1 -1
  47. package/dist/credential-profile-mutations.d.ts +63 -0
  48. package/dist/credential-profile-mutations.d.ts.map +1 -0
  49. package/dist/credential-profile-mutations.js +187 -0
  50. package/dist/credential-profile-mutations.js.map +1 -0
  51. package/dist/credential-status-invalidation.d.ts +11 -0
  52. package/dist/credential-status-invalidation.d.ts.map +1 -0
  53. package/dist/credential-status-invalidation.js +36 -0
  54. package/dist/credential-status-invalidation.js.map +1 -0
  55. package/dist/daemon-admission-runtime.d.ts +5 -0
  56. package/dist/daemon-admission-runtime.d.ts.map +1 -1
  57. package/dist/daemon-admission-runtime.js +1 -0
  58. package/dist/daemon-admission-runtime.js.map +1 -1
  59. package/dist/harness-command-specs.d.ts +17 -0
  60. package/dist/harness-command-specs.d.ts.map +1 -0
  61. package/dist/harness-command-specs.js +22 -0
  62. package/dist/harness-command-specs.js.map +1 -0
  63. package/dist/harness-command.d.ts +4 -4
  64. package/dist/harness-command.d.ts.map +1 -1
  65. package/dist/harness-command.js +6 -5
  66. package/dist/harness-command.js.map +1 -1
  67. package/dist/harness-installer.d.ts +23 -10
  68. package/dist/harness-installer.d.ts.map +1 -1
  69. package/dist/harness-installer.js +93 -33
  70. package/dist/harness-installer.js.map +1 -1
  71. package/dist/mcp-run-projections.d.ts +1 -1
  72. package/dist/native-login.d.ts +10 -1
  73. package/dist/native-login.d.ts.map +1 -1
  74. package/dist/native-login.js +61 -5
  75. package/dist/native-login.js.map +1 -1
  76. package/dist/ops-commands.d.ts +1 -2
  77. package/dist/ops-commands.d.ts.map +1 -1
  78. package/dist/ops-commands.js +6 -5
  79. package/dist/ops-commands.js.map +1 -1
  80. package/dist/profile-registration.d.ts +13 -1
  81. package/dist/profile-registration.d.ts.map +1 -1
  82. package/dist/profile-registration.js +79 -4
  83. package/dist/profile-registration.js.map +1 -1
  84. package/dist/quota-refreshers.d.ts +3 -0
  85. package/dist/quota-refreshers.d.ts.map +1 -1
  86. package/dist/quota-refreshers.js +2 -0
  87. package/dist/quota-refreshers.js.map +1 -1
  88. package/dist/quota-services.d.ts +4 -2
  89. package/dist/quota-services.d.ts.map +1 -1
  90. package/dist/quota-subject-universe.d.ts.map +1 -1
  91. package/dist/quota-subject-universe.js +11 -2
  92. package/dist/quota-subject-universe.js.map +1 -1
  93. package/dist/registry.d.ts +1 -1
  94. package/dist/registry.d.ts.map +1 -1
  95. package/dist/registry.js +3 -1
  96. package/dist/registry.js.map +1 -1
  97. package/dist/run-orchestrator.d.ts +28 -0
  98. package/dist/run-orchestrator.d.ts.map +1 -0
  99. package/dist/run-orchestrator.js +43 -0
  100. package/dist/run-orchestrator.js.map +1 -0
  101. package/dist/settings-service.d.ts +1 -1
  102. package/dist/settings-service.js +3 -3
  103. package/dist/settings-service.js.map +1 -1
  104. package/dist/setup-job-store.d.ts +4 -2
  105. package/dist/setup-job-store.d.ts.map +1 -1
  106. package/dist/setup-job-support.d.ts +50 -1
  107. package/dist/setup-job-support.d.ts.map +1 -1
  108. package/dist/setup-job-support.js +93 -11
  109. package/dist/setup-job-support.js.map +1 -1
  110. package/dist/setup-jobs.d.ts +8 -4
  111. package/dist/setup-jobs.d.ts.map +1 -1
  112. package/dist/setup-jobs.js +17 -18
  113. package/dist/setup-jobs.js.map +1 -1
  114. package/dist/setup-login-completion.d.ts.map +1 -1
  115. package/dist/setup-login-completion.js +16 -0
  116. package/dist/setup-login-completion.js.map +1 -1
  117. package/dist/setup-login-io.d.ts +7 -1
  118. package/dist/setup-login-io.d.ts.map +1 -1
  119. package/dist/setup-login-io.js +43 -3
  120. package/dist/setup-login-io.js.map +1 -1
  121. package/dist/setup-login-pty.d.ts +27 -0
  122. package/dist/setup-login-pty.d.ts.map +1 -0
  123. package/dist/setup-login-pty.js +58 -0
  124. package/dist/setup-login-pty.js.map +1 -0
  125. package/dist/setup-login-runner.d.ts +1 -9
  126. package/dist/setup-login-runner.d.ts.map +1 -1
  127. package/dist/setup-login-runner.js +17 -49
  128. package/dist/setup-login-runner.js.map +1 -1
  129. package/dist/setup-login-url.d.ts +10 -0
  130. package/dist/setup-login-url.d.ts.map +1 -0
  131. package/dist/setup-login-url.js +48 -0
  132. package/dist/setup-login-url.js.map +1 -0
  133. package/dist/thread-continuity-context.d.ts +24 -0
  134. package/dist/thread-continuity-context.d.ts.map +1 -1
  135. package/dist/thread-continuity-context.js +17 -0
  136. package/dist/thread-continuity-context.js.map +1 -1
  137. package/package.json +24 -23
@@ -1,6 +1,6 @@
1
1
  import { type OperatorDecisionRecord, JournalManager, InteractionRegistry, ProjectPartitions, ProjectStore, ResourceStore, QuotaRegistry } from "@claudexor/daemon";
2
2
  import { listTrustService, updateTrustService } from "./trust-services.js";
3
- import { type ResourceAttachmentRef, type CredentialProfile, type ControlRunStartRequest } from "@claudexor/schema";
3
+ import { type ResourceAttachmentRef, type ControlRunStartRequest } from "@claudexor/schema";
4
4
  import { AuthReadinessService } from "@claudexor/gateway";
5
5
  import { type HarnessListInput } from "./accounts-services.js";
6
6
  import { createSetupJobManager } from "./setup-jobs.js";
@@ -18,6 +18,178 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
18
18
  finishedAt?: string;
19
19
  params?: unknown;
20
20
  }>>): {
21
+ credentialProfiles: (input?: {
22
+ snapshot?: boolean;
23
+ }) => Promise<{
24
+ profiles: {
25
+ profile: import("@claudexor/schema").CredentialProfile;
26
+ status: import("@claudexor/schema").CredentialProfileStatus;
27
+ identity: import("@claudexor/schema").AccountIdentity | null;
28
+ }[];
29
+ harnessAccounts: never[];
30
+ accountPools: {
31
+ harness_id: string;
32
+ next_up: {
33
+ kind: "profile";
34
+ profileId: string;
35
+ } | {
36
+ kind: "api_key_route";
37
+ } | {
38
+ kind: "none";
39
+ reason: string;
40
+ };
41
+ }[];
42
+ } | {
43
+ profiles: {
44
+ profile: import("@claudexor/schema").CredentialProfile;
45
+ status: import("@claudexor/schema").CredentialProfileStatus;
46
+ identity: import("@claudexor/schema").AccountIdentity | null;
47
+ }[];
48
+ harnessAccounts: never[];
49
+ accountPools: {
50
+ harness_id: string;
51
+ next_up: {
52
+ kind: "profile";
53
+ profileId: string;
54
+ } | {
55
+ kind: "api_key_route";
56
+ } | {
57
+ kind: "none";
58
+ reason: string;
59
+ };
60
+ }[];
61
+ harnesses: {
62
+ id: string;
63
+ available: boolean;
64
+ status: "ok" | "degraded" | "unavailable";
65
+ manifest: import("@claudexor/schema").HarnessManifest | null;
66
+ enabledIntents: import("@claudexor/schema").Intent[];
67
+ routableIntents: import("@claudexor/schema").Intent[];
68
+ disabledIntents: import("@claudexor/schema").Intent[];
69
+ checks: import("@claudexor/schema").ConformanceCheck[];
70
+ reasons: string[];
71
+ authSources: import("@claudexor/schema").AuthSourceReadiness[];
72
+ configuredModel: string | null;
73
+ configuredModelCheck: {
74
+ status: "ok" | "rejected";
75
+ message?: string | null;
76
+ } | null;
77
+ delegation: {
78
+ available: boolean;
79
+ reason: "manifest_unsupported" | "ready" | "runtime_unavailable";
80
+ remediation: string | null;
81
+ requiresFullAccess: boolean;
82
+ };
83
+ readiness: {
84
+ id: string;
85
+ kind: "auth" | "binary" | "model" | "probe" | "smoke";
86
+ title: string;
87
+ status: "fail" | "pass" | "skip";
88
+ detail: string | null;
89
+ }[];
90
+ }[];
91
+ git: {
92
+ status: "available" | "developer_tools_stub" | "failed" | "missing";
93
+ version: string | null;
94
+ detail: string | null;
95
+ remediation: string | null;
96
+ };
97
+ quota: {
98
+ snapshots: {
99
+ subject: {
100
+ harness: string;
101
+ credential_route: "local" | "managed_api_key" | "vendor_native";
102
+ plan_label: string | null;
103
+ subject_id: string | null;
104
+ };
105
+ constraints: {
106
+ id: string;
107
+ label: string;
108
+ applies_to_models?: string[] | null | undefined;
109
+ applies_to_unspecified_model?: boolean | undefined;
110
+ used_ratio: number | null;
111
+ window_seconds: number | null;
112
+ resets_at: string | null;
113
+ cooldown_until: string | null;
114
+ }[];
115
+ source: "agy_command_usage" | "claude_api_retry" | "claude_oauth_usage" | "claude_statusline" | "codex_app_server" | "codex_rollout" | "cursor_rate_limit";
116
+ observed_at: string;
117
+ freshness: "fresh" | "stale" | "unknown";
118
+ availability?: {
119
+ state: "available" | "cooldown" | "exhausted";
120
+ blocking_constraints: string[];
121
+ resets_at: string | null;
122
+ model_scoped_exhaustions: {
123
+ constraint_id: string;
124
+ applies_to_models: string[];
125
+ resets_at: string | null;
126
+ }[];
127
+ } | undefined;
128
+ }[];
129
+ absences: {
130
+ subject: {
131
+ harness: string;
132
+ credential_route: "local" | "managed_api_key" | "vendor_native";
133
+ plan_label: string | null;
134
+ subject_id: string | null;
135
+ };
136
+ reason: "auth_revoked" | "no_source" | "not_logged_in" | "platform_unsupported" | "refresh_failed" | "transport_unavailable";
137
+ detail: string | null;
138
+ observed_at: string;
139
+ }[];
140
+ refreshed_at: string | null;
141
+ };
142
+ quotaEventCursor: string;
143
+ }>;
144
+ accountPools: () => Promise<{
145
+ accountPools: {
146
+ harness_id: string;
147
+ next_up: {
148
+ kind: "profile";
149
+ profileId: string;
150
+ } | {
151
+ kind: "api_key_route";
152
+ } | {
153
+ kind: "none";
154
+ reason: string;
155
+ };
156
+ }[];
157
+ }>;
158
+ updateCredentialProfile: (input: unknown) => Promise<{
159
+ profile: {
160
+ profile_id: string;
161
+ harness_id: string;
162
+ display_name: string;
163
+ credential_kind: "api_key" | "config_dir_login" | "oauth_token";
164
+ isolation_locator: string | null;
165
+ secret_ref: string | null;
166
+ enabled: boolean;
167
+ created_at: string | null;
168
+ };
169
+ status: {
170
+ profile_id: string;
171
+ harness_id: string;
172
+ availability: "available" | "unavailable" | "unknown";
173
+ verification: "failed" | "not_run" | "passed";
174
+ verification_source: "local_store" | "vendor";
175
+ detail?: string | undefined;
176
+ last_verified_at: string | null;
177
+ };
178
+ }>;
179
+ deleteCredentialProfile: (input: unknown) => Promise<{
180
+ profile: {
181
+ profile_id: string;
182
+ harness_id: string;
183
+ display_name: string;
184
+ credential_kind: "api_key" | "config_dir_login" | "oauth_token";
185
+ isolation_locator: string | null;
186
+ secret_ref: string | null;
187
+ enabled: boolean;
188
+ created_at: string | null;
189
+ };
190
+ removed: boolean;
191
+ credentialCleanup: "config_dir_removed" | "none" | "secret_deleted";
192
+ }>;
21
193
  quota: () => Promise<{
22
194
  snapshots: {
23
195
  subject: {
@@ -30,12 +202,13 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
30
202
  id: string;
31
203
  label: string;
32
204
  applies_to_models?: string[] | null | undefined;
205
+ applies_to_unspecified_model?: boolean | undefined;
33
206
  used_ratio: number | null;
34
207
  window_seconds: number | null;
35
208
  resets_at: string | null;
36
209
  cooldown_until: string | null;
37
210
  }[];
38
- source: "claude_api_retry" | "claude_oauth_usage" | "claude_statusline" | "codex_app_server" | "codex_rollout";
211
+ source: "agy_command_usage" | "claude_api_retry" | "claude_oauth_usage" | "claude_statusline" | "codex_app_server" | "codex_rollout" | "cursor_rate_limit";
39
212
  observed_at: string;
40
213
  freshness: "fresh" | "stale" | "unknown";
41
214
  availability?: {
@@ -74,12 +247,13 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
74
247
  id: string;
75
248
  label: string;
76
249
  applies_to_models?: string[] | null | undefined;
250
+ applies_to_unspecified_model?: boolean | undefined;
77
251
  used_ratio: number | null;
78
252
  window_seconds: number | null;
79
253
  resets_at: string | null;
80
254
  cooldown_until: string | null;
81
255
  }[];
82
- source: "claude_api_retry" | "claude_oauth_usage" | "claude_statusline" | "codex_app_server" | "codex_rollout";
256
+ source: "agy_command_usage" | "claude_api_retry" | "claude_oauth_usage" | "claude_statusline" | "codex_app_server" | "codex_rollout" | "cursor_rate_limit";
83
257
  observed_at: string;
84
258
  freshness: "fresh" | "stale" | "unknown";
85
259
  availability?: {
@@ -709,13 +883,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
709
883
  clientId: string;
710
884
  }) => Promise<{
711
885
  jobId: string;
712
- harness: "claude" | "codex" | "cursor";
886
+ harness: "agy" | "claude" | "codex" | "cursor";
713
887
  action: "login";
714
888
  transport: "client_pty" | "daemon";
715
889
  profileId: string | null;
716
890
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
717
891
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
718
892
  deadlineAt?: string | undefined;
893
+ deadlineFixed?: boolean | undefined;
719
894
  outcome?: {
720
895
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
721
896
  exitCode?: number | null | undefined;
@@ -892,13 +1067,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
892
1067
  listSetupJobs: (input?: unknown) => Promise<{
893
1068
  jobs: {
894
1069
  jobId: string;
895
- harness: "claude" | "codex" | "cursor";
1070
+ harness: "agy" | "claude" | "codex" | "cursor";
896
1071
  action: "login";
897
1072
  transport: "client_pty" | "daemon";
898
1073
  profileId: string | null;
899
1074
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
900
1075
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
901
1076
  deadlineAt?: string | undefined;
1077
+ deadlineFixed?: boolean | undefined;
902
1078
  outcome?: {
903
1079
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
904
1080
  exitCode?: number | null | undefined;
@@ -1075,13 +1251,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
1075
1251
  }>;
1076
1252
  setupJobStatus: (input: unknown) => Promise<{
1077
1253
  jobId: string;
1078
- harness: "claude" | "codex" | "cursor";
1254
+ harness: "agy" | "claude" | "codex" | "cursor";
1079
1255
  action: "login";
1080
1256
  transport: "client_pty" | "daemon";
1081
1257
  profileId: string | null;
1082
1258
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
1083
1259
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
1084
1260
  deadlineAt?: string | undefined;
1261
+ deadlineFixed?: boolean | undefined;
1085
1262
  outcome?: {
1086
1263
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
1087
1264
  exitCode?: number | null | undefined;
@@ -1259,13 +1436,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
1259
1436
  deviceCode?: undefined;
1260
1437
  job: {
1261
1438
  jobId: string;
1262
- harness: "claude" | "codex" | "cursor";
1439
+ harness: "agy" | "claude" | "codex" | "cursor";
1263
1440
  action: "login";
1264
1441
  transport: "client_pty" | "daemon";
1265
1442
  profileId: string | null;
1266
1443
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
1267
1444
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
1268
1445
  deadlineAt?: string | undefined;
1446
+ deadlineFixed?: boolean | undefined;
1269
1447
  outcome?: {
1270
1448
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
1271
1449
  exitCode?: number | null | undefined;
@@ -1444,13 +1622,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
1444
1622
  } | {
1445
1623
  job: {
1446
1624
  jobId: string;
1447
- harness: "claude" | "codex" | "cursor";
1625
+ harness: "agy" | "claude" | "codex" | "cursor";
1448
1626
  action: "login";
1449
1627
  transport: "client_pty" | "daemon";
1450
1628
  profileId: string | null;
1451
1629
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
1452
1630
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
1453
1631
  deadlineAt?: string | undefined;
1632
+ deadlineFixed?: boolean | undefined;
1454
1633
  outcome?: {
1455
1634
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
1456
1635
  exitCode?: number | null | undefined;
@@ -1644,13 +1823,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
1644
1823
  message: string;
1645
1824
  job: {
1646
1825
  jobId: string;
1647
- harness: "claude" | "codex" | "cursor";
1826
+ harness: "agy" | "claude" | "codex" | "cursor";
1648
1827
  action: "login";
1649
1828
  transport: "client_pty" | "daemon";
1650
1829
  profileId: string | null;
1651
1830
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
1652
1831
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
1653
1832
  deadlineAt?: string | undefined;
1833
+ deadlineFixed?: boolean | undefined;
1654
1834
  outcome?: {
1655
1835
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
1656
1836
  exitCode?: number | null | undefined;
@@ -1835,13 +2015,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
1835
2015
  message: string;
1836
2016
  job: {
1837
2017
  jobId: string;
1838
- harness: "claude" | "codex" | "cursor";
2018
+ harness: "agy" | "claude" | "codex" | "cursor";
1839
2019
  action: "login";
1840
2020
  transport: "client_pty" | "daemon";
1841
2021
  profileId: string | null;
1842
2022
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
1843
2023
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
1844
2024
  deadlineAt?: string | undefined;
2025
+ deadlineFixed?: boolean | undefined;
1845
2026
  outcome?: {
1846
2027
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
1847
2028
  exitCode?: number | null | undefined;
@@ -2023,13 +2204,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
2023
2204
  })[]>;
2024
2205
  cancelSetupJob: (input: unknown) => Promise<{
2025
2206
  jobId: string;
2026
- harness: "claude" | "codex" | "cursor";
2207
+ harness: "agy" | "claude" | "codex" | "cursor";
2027
2208
  action: "login";
2028
2209
  transport: "client_pty" | "daemon";
2029
2210
  profileId: string | null;
2030
2211
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
2031
2212
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
2032
2213
  deadlineAt?: string | undefined;
2214
+ deadlineFixed?: boolean | undefined;
2033
2215
  outcome?: {
2034
2216
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
2035
2217
  exitCode?: number | null | undefined;
@@ -2205,13 +2387,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
2205
2387
  }>;
2206
2388
  setupJobInput: (input: unknown) => Promise<{
2207
2389
  jobId: string;
2208
- harness: "claude" | "codex" | "cursor";
2390
+ harness: "agy" | "claude" | "codex" | "cursor";
2209
2391
  action: "login";
2210
2392
  transport: "client_pty" | "daemon";
2211
2393
  profileId: string | null;
2212
2394
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
2213
2395
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
2214
2396
  deadlineAt?: string | undefined;
2397
+ deadlineFixed?: boolean | undefined;
2215
2398
  outcome?: {
2216
2399
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
2217
2400
  exitCode?: number | null | undefined;
@@ -2387,13 +2570,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
2387
2570
  }>;
2388
2571
  reconcileSetupJob: (input: unknown) => Promise<{
2389
2572
  jobId: string;
2390
- harness: "claude" | "codex" | "cursor";
2573
+ harness: "agy" | "claude" | "codex" | "cursor";
2391
2574
  action: "login";
2392
2575
  transport: "client_pty" | "daemon";
2393
2576
  profileId: string | null;
2394
2577
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
2395
2578
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
2396
2579
  deadlineAt?: string | undefined;
2580
+ deadlineFixed?: boolean | undefined;
2397
2581
  outcome?: {
2398
2582
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
2399
2583
  exitCode?: number | null | undefined;
@@ -2569,13 +2753,14 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
2569
2753
  }>;
2570
2754
  extendSetupJob: (input: unknown) => Promise<{
2571
2755
  jobId: string;
2572
- harness: "claude" | "codex" | "cursor";
2756
+ harness: "agy" | "claude" | "codex" | "cursor";
2573
2757
  action: "login";
2574
2758
  transport: "client_pty" | "daemon";
2575
2759
  profileId: string | null;
2576
2760
  state: "cancelled" | "failed" | "interrupted_unknown" | "not_supported" | "queued" | "running" | "succeeded" | "timed_out" | "waiting_for_input";
2577
2761
  phase: "awaiting_user" | "cancelling" | "completed" | "launching" | "preparing" | "verifying";
2578
2762
  deadlineAt?: string | undefined;
2763
+ deadlineFixed?: boolean | undefined;
2579
2764
  outcome?: {
2580
2765
  reason: "auth_not_ready" | "cancelled_by_user" | "cancelled_on_restart" | "capability_verification_failed" | "command_failed" | "completed" | "credential_route_mismatch" | "interrupted" | "interrupted_unknown" | "launch_failed" | "not_supported" | "termination_unconfirmed" | "timed_out";
2581
2766
  exitCode?: number | null | undefined;
@@ -2877,179 +3062,12 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
2877
3062
  fallbackModel: string | null;
2878
3063
  web: "auto" | "cached" | "live" | "off";
2879
3064
  authPreference: "api_key" | "auto" | "subscription";
2880
- profileLimitAction: "ask" | "fail" | "rotate";
3065
+ profileLimitAction: "ask" | "auto" | "fail" | "rotate";
2881
3066
  };
2882
3067
  };
2883
3068
  }>;
2884
- credentialProfiles: (input?: {
2885
- snapshot?: boolean;
2886
- }) => Promise<{
2887
- profiles: {
2888
- profile: CredentialProfile;
2889
- status: import("@claudexor/schema").CredentialProfileStatus;
2890
- identity: import("@claudexor/schema").AccountIdentity | null;
2891
- }[];
2892
- harnessAccounts: {
2893
- harness_id: string;
2894
- native_credentials_enabled: boolean;
2895
- native_login_detected: boolean;
2896
- identity: {
2897
- email?: string | undefined;
2898
- plan?: string | undefined;
2899
- } | null;
2900
- next_up: {
2901
- kind: "profile";
2902
- profileId: string;
2903
- } | {
2904
- kind: "native";
2905
- route?: "api_key" | "local_session" | undefined;
2906
- } | {
2907
- kind: "none";
2908
- reason: string;
2909
- };
2910
- }[];
2911
- } | {
2912
- profiles: {
2913
- profile: CredentialProfile;
2914
- status: import("@claudexor/schema").CredentialProfileStatus;
2915
- identity: import("@claudexor/schema").AccountIdentity | null;
2916
- }[];
2917
- harnessAccounts: {
2918
- harness_id: string;
2919
- native_credentials_enabled: boolean;
2920
- native_login_detected: boolean;
2921
- identity: {
2922
- email?: string | undefined;
2923
- plan?: string | undefined;
2924
- } | null;
2925
- next_up: {
2926
- kind: "profile";
2927
- profileId: string;
2928
- } | {
2929
- kind: "native";
2930
- route?: "api_key" | "local_session" | undefined;
2931
- } | {
2932
- kind: "none";
2933
- reason: string;
2934
- };
2935
- }[];
2936
- harnesses: {
2937
- id: string;
2938
- available: boolean;
2939
- status: "ok" | "degraded" | "unavailable";
2940
- manifest: import("@claudexor/schema").HarnessManifest | null;
2941
- enabledIntents: import("@claudexor/schema").Intent[];
2942
- routableIntents: import("@claudexor/schema").Intent[];
2943
- disabledIntents: import("@claudexor/schema").Intent[];
2944
- checks: import("@claudexor/schema").ConformanceCheck[];
2945
- reasons: string[];
2946
- authSources: import("@claudexor/schema").AuthSourceReadiness[];
2947
- configuredModel: string | null;
2948
- configuredModelCheck: {
2949
- status: "ok" | "rejected";
2950
- message?: string | null;
2951
- } | null;
2952
- delegation: {
2953
- available: boolean;
2954
- reason: "manifest_unsupported" | "ready" | "runtime_unavailable";
2955
- remediation: string | null;
2956
- requiresFullAccess: boolean;
2957
- };
2958
- readiness: {
2959
- id: string;
2960
- kind: "auth" | "binary" | "model" | "probe" | "smoke";
2961
- title: string;
2962
- status: "fail" | "pass" | "skip";
2963
- detail: string | null;
2964
- }[];
2965
- }[];
2966
- git: {
2967
- status: "available" | "developer_tools_stub" | "failed" | "missing";
2968
- version: string | null;
2969
- detail: string | null;
2970
- remediation: string | null;
2971
- };
2972
- quota: {
2973
- snapshots: {
2974
- subject: {
2975
- harness: string;
2976
- credential_route: "local" | "managed_api_key" | "vendor_native";
2977
- plan_label: string | null;
2978
- subject_id: string | null;
2979
- };
2980
- constraints: {
2981
- id: string;
2982
- label: string;
2983
- applies_to_models?: string[] | null | undefined;
2984
- used_ratio: number | null;
2985
- window_seconds: number | null;
2986
- resets_at: string | null;
2987
- cooldown_until: string | null;
2988
- }[];
2989
- source: "claude_api_retry" | "claude_oauth_usage" | "claude_statusline" | "codex_app_server" | "codex_rollout";
2990
- observed_at: string;
2991
- freshness: "fresh" | "stale" | "unknown";
2992
- availability?: {
2993
- state: "available" | "cooldown" | "exhausted";
2994
- blocking_constraints: string[];
2995
- resets_at: string | null;
2996
- model_scoped_exhaustions: {
2997
- constraint_id: string;
2998
- applies_to_models: string[];
2999
- resets_at: string | null;
3000
- }[];
3001
- } | undefined;
3002
- }[];
3003
- absences: {
3004
- subject: {
3005
- harness: string;
3006
- credential_route: "local" | "managed_api_key" | "vendor_native";
3007
- plan_label: string | null;
3008
- subject_id: string | null;
3009
- };
3010
- reason: "auth_revoked" | "no_source" | "not_logged_in" | "platform_unsupported" | "refresh_failed" | "transport_unavailable";
3011
- detail: string | null;
3012
- observed_at: string;
3013
- }[];
3014
- refreshed_at: string | null;
3015
- };
3016
- quotaEventCursor: string;
3017
- }>;
3018
- updateCredentialProfile: (input: unknown) => Promise<{
3019
- profile: {
3020
- profile_id: string;
3021
- harness_id: string;
3022
- display_name: string;
3023
- credential_kind: "api_key" | "config_dir_login" | "oauth_token";
3024
- isolation_locator: string | null;
3025
- secret_ref: string | null;
3026
- enabled: boolean;
3027
- created_at: string | null;
3028
- };
3029
- status: {
3030
- profile_id: string;
3031
- harness_id: string;
3032
- availability: "available" | "unavailable" | "unknown";
3033
- verification: "failed" | "not_run" | "passed";
3034
- verification_source: "local_store" | "vendor";
3035
- detail?: string | undefined;
3036
- last_verified_at: string | null;
3037
- };
3038
- }>;
3039
- deleteCredentialProfile: (input: unknown) => Promise<{
3040
- profile: {
3041
- profile_id: string;
3042
- harness_id: string;
3043
- display_name: string;
3044
- credential_kind: "api_key" | "config_dir_login" | "oauth_token";
3045
- isolation_locator: string | null;
3046
- secret_ref: string | null;
3047
- enabled: boolean;
3048
- created_at: string | null;
3049
- };
3050
- removed: boolean;
3051
- credentialCleanup: "config_dir_removed" | "none" | "secret_deleted";
3052
- cleanupWarning?: string | undefined;
3069
+ rollbackAccountsMigration: (input: unknown) => Promise<{
3070
+ rolledBack: import("./accounts-unified-migration.js").AccountsRollbackReceipt[];
3053
3071
  }>;
3054
3072
  createCredentialProfile: (input: unknown) => Promise<{
3055
3073
  profile: {
@@ -3118,7 +3136,7 @@ resources: () => ResourceStore, quotaRegistry: () => QuotaRegistry, daemonJobs:
3118
3136
  fallbackModel: string | null;
3119
3137
  web: "auto" | "cached" | "live" | "off";
3120
3138
  authPreference: "api_key" | "auto" | "subscription";
3121
- profileLimitAction: "ask" | "fail" | "rotate";
3139
+ profileLimitAction: "ask" | "auto" | "fail" | "rotate";
3122
3140
  };
3123
3141
  };
3124
3142
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"control-services.d.ts","sourceRoot":"","sources":["../src/control-services.ts"],"names":[],"mappings":"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;;;;;;;;8BACL,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BACP,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BACR,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BACH,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BACV,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BACJ,MAAM,gBAAgB,MAAM;;;;;;;;0CAEjB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;2CACL,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yCACR,MAAM;;;;;;;;;6CAEF,MAAM,SAAS,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAmB9B,OAAO;;;;;;;;;;;;;;;;;;;;;qCAuCP,OAAO;;;;;;;;;;;;;;;qCAgFP,OAAO;;;;;;;;;;;;;;;;;;;;;4BAgBhB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAgBZ,OAAO;;;;;;yBAuBL,MAAM;;;;EAMpC"}
1
+ {"version":3,"file":"control-services.d.ts","sourceRoot":"","sources":["../src/control-services.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BACL,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BACP,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BACR,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BACH,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BACV,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BACJ,MAAM,gBAAgB,MAAM;;;;;;;;0CAEjB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;2CACL,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yCACR,MAAM;;;;;;;;;6CAEF,MAAM,SAAS,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCAmC5B,OAAO;;;qCAaT,OAAO;;;;;;;;;;;;;;;;;;;;;4BAgBhB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAgBZ,OAAO;;;;;;yBAuBL,MAAM;;;;EAMpC"}