@codexhost/cli-win32-arm64 0.9.1-test.2 → 0.9.2

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.
@@ -14528,6 +14528,61 @@ function date4(params) {
14528
14528
  // ../../../node_modules/zod/v4/classic/external.js
14529
14529
  config(en_default());
14530
14530
 
14531
+ // ../../shared-contracts/dist/credential-imports.js
14532
+ var credentialSourceSchema = external_exports.object({
14533
+ id: external_exports.string().min(1).max(256),
14534
+ harnessId: external_exports.string().min(1),
14535
+ label: external_exports.string().min(1).max(512),
14536
+ provider: external_exports.enum(["openai-codex", "xai"])
14537
+ }).strict();
14538
+ var credentialImportNameSchema = external_exports.string().regex(/^[a-z][a-z0-9-]{0,47}$/);
14539
+ var credentialImportRecordSchema = external_exports.object({
14540
+ name: credentialImportNameSchema,
14541
+ source: credentialSourceSchema,
14542
+ importedAt: external_exports.string()
14543
+ }).strict();
14544
+ var credentialImportsRequestSchema = external_exports.discriminatedUnion("action", [
14545
+ external_exports.object({ action: external_exports.literal("list") }).strict(),
14546
+ external_exports.object({
14547
+ action: external_exports.literal("import"),
14548
+ sourceId: external_exports.string().min(1).max(256),
14549
+ name: credentialImportNameSchema,
14550
+ confirmed: external_exports.literal(true)
14551
+ }).strict(),
14552
+ external_exports.object({
14553
+ action: external_exports.literal("reimport"),
14554
+ sourceId: external_exports.string().min(1).max(256),
14555
+ name: credentialImportNameSchema,
14556
+ confirmed: external_exports.literal(true)
14557
+ }).strict(),
14558
+ external_exports.object({
14559
+ action: external_exports.literal("remove"),
14560
+ name: credentialImportNameSchema,
14561
+ confirmed: external_exports.literal(true)
14562
+ }).strict()
14563
+ ]);
14564
+ var credentialOtherLoginSchema = external_exports.object({
14565
+ provider: external_exports.string().min(1).max(128),
14566
+ type: external_exports.enum(["oauth", "api_key", "unknown"]),
14567
+ /** Best-effort account label (e.g. the email in a Codex token), derived locally when present. */
14568
+ label: external_exports.string().min(1).max(512).optional(),
14569
+ /** Recognized credential vendor, derived from the OAuth token issuer. Absent when unknown. */
14570
+ vendor: external_exports.enum(["openai-codex", "xai"]).optional()
14571
+ }).strict();
14572
+ var credentialImportsResultSchema = external_exports.object({
14573
+ sources: external_exports.array(credentialSourceSchema),
14574
+ targets: external_exports.array(external_exports.object({
14575
+ harnessId: external_exports.string(),
14576
+ providers: external_exports.array(external_exports.enum(["openai-codex", "xai"])),
14577
+ imports: external_exports.array(credentialImportRecordSchema),
14578
+ others: external_exports.array(credentialOtherLoginSchema).default([])
14579
+ }).strict())
14580
+ }).strict();
14581
+ var credentialImportsParamsSchema = external_exports.object({
14582
+ targetHarnessId: external_exports.string().min(1).max(128).optional(),
14583
+ request: credentialImportsRequestSchema
14584
+ }).strict();
14585
+
14531
14586
  // ../../shared-contracts/dist/version.js
14532
14587
  var WORKSPACE_CONTRACT_VERSION = 1;
14533
14588
 
@@ -15056,6 +15111,8 @@ var pluginPresentationShape = {
15056
15111
  id: harnessPluginIdSchema,
15057
15112
  name: external_exports.string().trim().min(1).max(128),
15058
15113
  version: external_exports.string().min(1).max(128),
15114
+ /** The factory accepts a persisted local entrypoint through its construction context. */
15115
+ launchCommand: external_exports.literal(true).optional(),
15059
15116
  links: external_exports.object({
15060
15117
  documentation: documentationUrlSchema.optional(),
15061
15118
  installation: documentationUrlSchema.optional()
@@ -15093,6 +15150,19 @@ var harnessPluginRouteSchema = external_exports.object({
15093
15150
  permissionModeId: harnessPermissionModeIdSchema.optional()
15094
15151
  }).strict();
15095
15152
 
15153
+ // ../../shared-contracts/dist/harness-launch-settings.js
15154
+ var harnessLaunchPathSchema = external_exports.string().trim().min(1).max(4096).refine((value) => !/[\u0000\r\n]/u.test(value), "Invalid entrypoint path");
15155
+ var harnessLaunchSettingsGetSchema = external_exports.object({
15156
+ harnessId: harnessPluginIdSchema
15157
+ }).strict();
15158
+ var harnessLaunchSettingsSetSchema = harnessLaunchSettingsGetSchema.extend({
15159
+ path: harnessLaunchPathSchema.nullable()
15160
+ });
15161
+ var harnessLaunchSettingsSchema = external_exports.object({
15162
+ path: harnessLaunchPathSchema.nullable(),
15163
+ restartRequired: external_exports.boolean()
15164
+ }).strict();
15165
+
15096
15166
  // ../../shared-contracts/dist/codex-accounts.js
15097
15167
  var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
15098
15168
  var nonBlankTextSchema3 = external_exports.string().trim().min(1);
@@ -17772,6 +17842,7 @@ var infoSchema = external_exports.object({
17772
17842
  });
17773
17843
  var AntigravitySubagents = class {
17774
17844
  #states = /* @__PURE__ */ new Map();
17845
+ #lastObservedAt = /* @__PURE__ */ new Map();
17775
17846
  #transcripts = /* @__PURE__ */ new Map();
17776
17847
  #items = /* @__PURE__ */ new Map();
17777
17848
  #options;
@@ -17867,18 +17938,27 @@ var AntigravitySubagents = class {
17867
17938
  return;
17868
17939
  const parentId = this.#options.parentId();
17869
17940
  const port = await this.#options.port();
17870
- if (!parentId || port === null)
17941
+ if (!parentId || port === null) {
17942
+ for (const id of this.#states.keys())
17943
+ this.#expireUnobserved(id);
17944
+ if (this.#ended && !this.running)
17945
+ this.stop();
17871
17946
  return;
17947
+ }
17872
17948
  for (const [id, previous] of this.#states) {
17873
17949
  if (this.#stopped)
17874
17950
  return;
17875
17951
  let status = previous.status;
17952
+ let statusObserved = false;
17876
17953
  try {
17877
17954
  const value = await subagentRpc(port, id, "GetCascadeTrajectory");
17878
17955
  const observed = subagentRunStatus(value, parentId);
17879
17956
  if (observed !== "completed" || status !== "interrupted" && status !== "failed") {
17880
17957
  status = observed ?? status;
17881
17958
  }
17959
+ statusObserved = observed !== null;
17960
+ if (statusObserved)
17961
+ this.#lastObservedAt.set(id, Date.now());
17882
17962
  } catch {
17883
17963
  }
17884
17964
  const transcript = await readSubagentTranscript({
@@ -17909,6 +17989,8 @@ var AntigravitySubagents = class {
17909
17989
  this.#options.emit({ type: "subagent.transcript.changed", nativeSubagentId: id });
17910
17990
  }
17911
17991
  }
17992
+ if (!statusObserved)
17993
+ this.#expireUnobserved(id);
17912
17994
  }
17913
17995
  if (this.#ended && !this.running)
17914
17996
  this.stop();
@@ -17919,9 +18001,35 @@ var AntigravitySubagents = class {
17919
18001
  this.#complete(delegation, outcome);
17920
18002
  }
17921
18003
  this.#ended = true;
18004
+ const now = Date.now();
18005
+ for (const [id, state] of this.#states) {
18006
+ if (state.status === "running" || state.status === "pending") {
18007
+ this.#lastObservedAt.set(id, now);
18008
+ }
18009
+ }
17922
18010
  if (!this.running)
17923
18011
  this.stop();
17924
18012
  }
18013
+ #expireUnobserved(id) {
18014
+ if (!this.#ended || this.#stopped)
18015
+ return;
18016
+ const state = this.#states.get(id);
18017
+ if (!state || state.status !== "running" && state.status !== "pending")
18018
+ return;
18019
+ const now = Date.now();
18020
+ if (now - (this.#lastObservedAt.get(id) ?? now) < this.#options.observationTimeoutMs)
18021
+ return;
18022
+ const resultSummary = "Observation timed out; native Subagent completion could not be confirmed.";
18023
+ this.#states.set(id, { ...state, status: "interrupted", resultSummary });
18024
+ this.#options.emit({
18025
+ type: "subagent.state.changed",
18026
+ nativeSubagentId: id,
18027
+ status: "interrupted",
18028
+ resultSummary
18029
+ });
18030
+ this.#options.emit({ type: "subagent.transcript.changed", nativeSubagentId: id });
18031
+ this.#lastObservedAt.delete(id);
18032
+ }
17925
18033
  cancel() {
17926
18034
  return this.#cancellation ??= this.#cancelNative();
17927
18035
  }
@@ -17973,6 +18081,7 @@ var AntigravitySubagents = class {
17973
18081
  stop() {
17974
18082
  this.#stopped = true;
17975
18083
  clearInterval(this.#timer);
18084
+ this.#lastObservedAt.clear();
17976
18085
  this.#settled?.();
17977
18086
  }
17978
18087
  #watch() {
@@ -18006,6 +18115,7 @@ var antigravityHarnessId = harnessIdSchema.parse("antigravity");
18006
18115
  var DEFAULT_INSPECT_TIMEOUT_MS = 2e4;
18007
18116
  var DEFAULT_PRINT_TIMEOUT = "30m";
18008
18117
  var DEFAULT_TOOL_OUTPUT_LIMIT = 64e3;
18118
+ var DEFAULT_SUBAGENT_OBSERVATION_TIMEOUT_MS = 3e4;
18009
18119
  var CONTEXT_USAGE_TIMEOUT_MS = 8e3;
18010
18120
  var CONTEXT_USAGE_RETRY_MS = 100;
18011
18121
  var TRAJECTORY_TIMEOUT_MS = 2e3;
@@ -18251,6 +18361,7 @@ var AntigravitySession = class {
18251
18361
  #onClosed;
18252
18362
  #printTimeout;
18253
18363
  #toolOutputLimit;
18364
+ #subagentObservationTimeoutMs;
18254
18365
  #history;
18255
18366
  #subagentObservers = /* @__PURE__ */ new Set();
18256
18367
  #active = null;
@@ -18274,6 +18385,7 @@ var AntigravitySession = class {
18274
18385
  this.#printTimeout = input.printTimeout;
18275
18386
  this.#thinkingOptionId = input.thinkingOptionId ?? input.history.thinkingOptionId;
18276
18387
  this.#toolOutputLimit = input.toolOutputLimit;
18388
+ this.#subagentObservationTimeoutMs = input.subagentObservationTimeoutMs;
18277
18389
  this.#onClosed = input.onClosed;
18278
18390
  this.initialState = this.#state();
18279
18391
  this.outputs = this.#channel.outputs;
@@ -18437,6 +18549,7 @@ var AntigravitySession = class {
18437
18549
  port: () => this.#languageServerPort(active),
18438
18550
  cwd: this.#cwd,
18439
18551
  outputLimit: this.#toolOutputLimit,
18552
+ observationTimeoutMs: this.#subagentObservationTimeoutMs,
18440
18553
  initialStates: this.#history.snapshot().flatMap((turn) => turn.items.flatMap(({ item }) => item.type === "subagentDelegation" ? item.subagents : [])),
18441
18554
  emit: (event) => {
18442
18555
  if (event.type === "subagent.state.changed") {
@@ -19048,6 +19161,7 @@ var AntigravityAdapter = class {
19048
19161
  #printTimeout;
19049
19162
  #sessions = /* @__PURE__ */ new Set();
19050
19163
  #toolOutputLimit;
19164
+ #subagentObservationTimeoutMs;
19051
19165
  #closed = false;
19052
19166
  #quota = null;
19053
19167
  #quotaCwd = null;
@@ -19059,6 +19173,11 @@ var AntigravityAdapter = class {
19059
19173
  this.#inspectTimeoutMs = options.inspectTimeoutMs ?? DEFAULT_INSPECT_TIMEOUT_MS;
19060
19174
  this.#printTimeout = options.printTimeout ?? DEFAULT_PRINT_TIMEOUT;
19061
19175
  this.#toolOutputLimit = options.toolOutputLimit ?? DEFAULT_TOOL_OUTPUT_LIMIT;
19176
+ const subagentObservationTimeoutMs = options.subagentObservationTimeoutMs ?? DEFAULT_SUBAGENT_OBSERVATION_TIMEOUT_MS;
19177
+ if (!Number.isFinite(subagentObservationTimeoutMs) || subagentObservationTimeoutMs <= 0) {
19178
+ throw new RangeError("subagentObservationTimeoutMs must be a finite positive number");
19179
+ }
19180
+ this.#subagentObservationTimeoutMs = subagentObservationTimeoutMs;
19062
19181
  }
19063
19182
  async inspect(input = {}) {
19064
19183
  if (this.#closed) {
@@ -19241,6 +19360,7 @@ var AntigravityAdapter = class {
19241
19360
  printTimeout: this.#printTimeout,
19242
19361
  ...params.thinkingOptionId ? { thinkingOptionId: params.thinkingOptionId } : {},
19243
19362
  toolOutputLimit: this.#toolOutputLimit,
19363
+ subagentObservationTimeoutMs: this.#subagentObservationTimeoutMs,
19244
19364
  onClosed: () => this.#sessions.delete(session2)
19245
19365
  });
19246
19366
  this.#sessions.add(session2);
@@ -19276,6 +19396,7 @@ var AntigravityAdapter = class {
19276
19396
  printTimeout: this.#printTimeout,
19277
19397
  ...params.thinkingOptionId ? { thinkingOptionId: params.thinkingOptionId } : {},
19278
19398
  toolOutputLimit: this.#toolOutputLimit,
19399
+ subagentObservationTimeoutMs: this.#subagentObservationTimeoutMs,
19279
19400
  onClosed: () => this.#sessions.delete(session2)
19280
19401
  });
19281
19402
  this.#sessions.add(session2);
@@ -19332,6 +19453,7 @@ var AntigravityAdapter = class {
19332
19453
  printTimeout: this.#printTimeout,
19333
19454
  ...thinkingOptionId ? { thinkingOptionId } : {},
19334
19455
  toolOutputLimit: this.#toolOutputLimit,
19456
+ subagentObservationTimeoutMs: this.#subagentObservationTimeoutMs,
19335
19457
  onClosed: () => this.#sessions.delete(session)
19336
19458
  });
19337
19459
  this.#sessions.add(session);