@codexhost/cli-linux-arm64 0.9.1-test.2 → 0.9.1

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.
@@ -15056,6 +15056,8 @@ var pluginPresentationShape = {
15056
15056
  id: harnessPluginIdSchema,
15057
15057
  name: external_exports.string().trim().min(1).max(128),
15058
15058
  version: external_exports.string().min(1).max(128),
15059
+ /** The factory accepts a persisted local entrypoint through its construction context. */
15060
+ launchCommand: external_exports.literal(true).optional(),
15059
15061
  links: external_exports.object({
15060
15062
  documentation: documentationUrlSchema.optional(),
15061
15063
  installation: documentationUrlSchema.optional()
@@ -15093,6 +15095,19 @@ var harnessPluginRouteSchema = external_exports.object({
15093
15095
  permissionModeId: harnessPermissionModeIdSchema.optional()
15094
15096
  }).strict();
15095
15097
 
15098
+ // ../../shared-contracts/dist/harness-launch-settings.js
15099
+ var harnessLaunchPathSchema = external_exports.string().trim().min(1).max(4096).refine((value) => !/[\u0000\r\n]/u.test(value), "Invalid entrypoint path");
15100
+ var harnessLaunchSettingsGetSchema = external_exports.object({
15101
+ harnessId: harnessPluginIdSchema
15102
+ }).strict();
15103
+ var harnessLaunchSettingsSetSchema = harnessLaunchSettingsGetSchema.extend({
15104
+ path: harnessLaunchPathSchema.nullable()
15105
+ });
15106
+ var harnessLaunchSettingsSchema = external_exports.object({
15107
+ path: harnessLaunchPathSchema.nullable(),
15108
+ restartRequired: external_exports.boolean()
15109
+ }).strict();
15110
+
15096
15111
  // ../../shared-contracts/dist/codex-accounts.js
15097
15112
  var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
15098
15113
  var nonBlankTextSchema3 = external_exports.string().trim().min(1);
@@ -17772,6 +17787,7 @@ var infoSchema = external_exports.object({
17772
17787
  });
17773
17788
  var AntigravitySubagents = class {
17774
17789
  #states = /* @__PURE__ */ new Map();
17790
+ #lastObservedAt = /* @__PURE__ */ new Map();
17775
17791
  #transcripts = /* @__PURE__ */ new Map();
17776
17792
  #items = /* @__PURE__ */ new Map();
17777
17793
  #options;
@@ -17867,18 +17883,27 @@ var AntigravitySubagents = class {
17867
17883
  return;
17868
17884
  const parentId = this.#options.parentId();
17869
17885
  const port = await this.#options.port();
17870
- if (!parentId || port === null)
17886
+ if (!parentId || port === null) {
17887
+ for (const id of this.#states.keys())
17888
+ this.#expireUnobserved(id);
17889
+ if (this.#ended && !this.running)
17890
+ this.stop();
17871
17891
  return;
17892
+ }
17872
17893
  for (const [id, previous] of this.#states) {
17873
17894
  if (this.#stopped)
17874
17895
  return;
17875
17896
  let status = previous.status;
17897
+ let statusObserved = false;
17876
17898
  try {
17877
17899
  const value = await subagentRpc(port, id, "GetCascadeTrajectory");
17878
17900
  const observed = subagentRunStatus(value, parentId);
17879
17901
  if (observed !== "completed" || status !== "interrupted" && status !== "failed") {
17880
17902
  status = observed ?? status;
17881
17903
  }
17904
+ statusObserved = observed !== null;
17905
+ if (statusObserved)
17906
+ this.#lastObservedAt.set(id, Date.now());
17882
17907
  } catch {
17883
17908
  }
17884
17909
  const transcript = await readSubagentTranscript({
@@ -17909,6 +17934,8 @@ var AntigravitySubagents = class {
17909
17934
  this.#options.emit({ type: "subagent.transcript.changed", nativeSubagentId: id });
17910
17935
  }
17911
17936
  }
17937
+ if (!statusObserved)
17938
+ this.#expireUnobserved(id);
17912
17939
  }
17913
17940
  if (this.#ended && !this.running)
17914
17941
  this.stop();
@@ -17919,9 +17946,35 @@ var AntigravitySubagents = class {
17919
17946
  this.#complete(delegation, outcome);
17920
17947
  }
17921
17948
  this.#ended = true;
17949
+ const now = Date.now();
17950
+ for (const [id, state] of this.#states) {
17951
+ if (state.status === "running" || state.status === "pending") {
17952
+ this.#lastObservedAt.set(id, now);
17953
+ }
17954
+ }
17922
17955
  if (!this.running)
17923
17956
  this.stop();
17924
17957
  }
17958
+ #expireUnobserved(id) {
17959
+ if (!this.#ended || this.#stopped)
17960
+ return;
17961
+ const state = this.#states.get(id);
17962
+ if (!state || state.status !== "running" && state.status !== "pending")
17963
+ return;
17964
+ const now = Date.now();
17965
+ if (now - (this.#lastObservedAt.get(id) ?? now) < this.#options.observationTimeoutMs)
17966
+ return;
17967
+ const resultSummary = "Observation timed out; native Subagent completion could not be confirmed.";
17968
+ this.#states.set(id, { ...state, status: "interrupted", resultSummary });
17969
+ this.#options.emit({
17970
+ type: "subagent.state.changed",
17971
+ nativeSubagentId: id,
17972
+ status: "interrupted",
17973
+ resultSummary
17974
+ });
17975
+ this.#options.emit({ type: "subagent.transcript.changed", nativeSubagentId: id });
17976
+ this.#lastObservedAt.delete(id);
17977
+ }
17925
17978
  cancel() {
17926
17979
  return this.#cancellation ??= this.#cancelNative();
17927
17980
  }
@@ -17973,6 +18026,7 @@ var AntigravitySubagents = class {
17973
18026
  stop() {
17974
18027
  this.#stopped = true;
17975
18028
  clearInterval(this.#timer);
18029
+ this.#lastObservedAt.clear();
17976
18030
  this.#settled?.();
17977
18031
  }
17978
18032
  #watch() {
@@ -18006,6 +18060,7 @@ var antigravityHarnessId = harnessIdSchema.parse("antigravity");
18006
18060
  var DEFAULT_INSPECT_TIMEOUT_MS = 2e4;
18007
18061
  var DEFAULT_PRINT_TIMEOUT = "30m";
18008
18062
  var DEFAULT_TOOL_OUTPUT_LIMIT = 64e3;
18063
+ var DEFAULT_SUBAGENT_OBSERVATION_TIMEOUT_MS = 3e4;
18009
18064
  var CONTEXT_USAGE_TIMEOUT_MS = 8e3;
18010
18065
  var CONTEXT_USAGE_RETRY_MS = 100;
18011
18066
  var TRAJECTORY_TIMEOUT_MS = 2e3;
@@ -18251,6 +18306,7 @@ var AntigravitySession = class {
18251
18306
  #onClosed;
18252
18307
  #printTimeout;
18253
18308
  #toolOutputLimit;
18309
+ #subagentObservationTimeoutMs;
18254
18310
  #history;
18255
18311
  #subagentObservers = /* @__PURE__ */ new Set();
18256
18312
  #active = null;
@@ -18274,6 +18330,7 @@ var AntigravitySession = class {
18274
18330
  this.#printTimeout = input.printTimeout;
18275
18331
  this.#thinkingOptionId = input.thinkingOptionId ?? input.history.thinkingOptionId;
18276
18332
  this.#toolOutputLimit = input.toolOutputLimit;
18333
+ this.#subagentObservationTimeoutMs = input.subagentObservationTimeoutMs;
18277
18334
  this.#onClosed = input.onClosed;
18278
18335
  this.initialState = this.#state();
18279
18336
  this.outputs = this.#channel.outputs;
@@ -18437,6 +18494,7 @@ var AntigravitySession = class {
18437
18494
  port: () => this.#languageServerPort(active),
18438
18495
  cwd: this.#cwd,
18439
18496
  outputLimit: this.#toolOutputLimit,
18497
+ observationTimeoutMs: this.#subagentObservationTimeoutMs,
18440
18498
  initialStates: this.#history.snapshot().flatMap((turn) => turn.items.flatMap(({ item }) => item.type === "subagentDelegation" ? item.subagents : [])),
18441
18499
  emit: (event) => {
18442
18500
  if (event.type === "subagent.state.changed") {
@@ -19048,6 +19106,7 @@ var AntigravityAdapter = class {
19048
19106
  #printTimeout;
19049
19107
  #sessions = /* @__PURE__ */ new Set();
19050
19108
  #toolOutputLimit;
19109
+ #subagentObservationTimeoutMs;
19051
19110
  #closed = false;
19052
19111
  #quota = null;
19053
19112
  #quotaCwd = null;
@@ -19059,6 +19118,11 @@ var AntigravityAdapter = class {
19059
19118
  this.#inspectTimeoutMs = options.inspectTimeoutMs ?? DEFAULT_INSPECT_TIMEOUT_MS;
19060
19119
  this.#printTimeout = options.printTimeout ?? DEFAULT_PRINT_TIMEOUT;
19061
19120
  this.#toolOutputLimit = options.toolOutputLimit ?? DEFAULT_TOOL_OUTPUT_LIMIT;
19121
+ const subagentObservationTimeoutMs = options.subagentObservationTimeoutMs ?? DEFAULT_SUBAGENT_OBSERVATION_TIMEOUT_MS;
19122
+ if (!Number.isFinite(subagentObservationTimeoutMs) || subagentObservationTimeoutMs <= 0) {
19123
+ throw new RangeError("subagentObservationTimeoutMs must be a finite positive number");
19124
+ }
19125
+ this.#subagentObservationTimeoutMs = subagentObservationTimeoutMs;
19062
19126
  }
19063
19127
  async inspect(input = {}) {
19064
19128
  if (this.#closed) {
@@ -19241,6 +19305,7 @@ var AntigravityAdapter = class {
19241
19305
  printTimeout: this.#printTimeout,
19242
19306
  ...params.thinkingOptionId ? { thinkingOptionId: params.thinkingOptionId } : {},
19243
19307
  toolOutputLimit: this.#toolOutputLimit,
19308
+ subagentObservationTimeoutMs: this.#subagentObservationTimeoutMs,
19244
19309
  onClosed: () => this.#sessions.delete(session2)
19245
19310
  });
19246
19311
  this.#sessions.add(session2);
@@ -19276,6 +19341,7 @@ var AntigravityAdapter = class {
19276
19341
  printTimeout: this.#printTimeout,
19277
19342
  ...params.thinkingOptionId ? { thinkingOptionId: params.thinkingOptionId } : {},
19278
19343
  toolOutputLimit: this.#toolOutputLimit,
19344
+ subagentObservationTimeoutMs: this.#subagentObservationTimeoutMs,
19279
19345
  onClosed: () => this.#sessions.delete(session2)
19280
19346
  });
19281
19347
  this.#sessions.add(session2);
@@ -19332,6 +19398,7 @@ var AntigravityAdapter = class {
19332
19398
  printTimeout: this.#printTimeout,
19333
19399
  ...thinkingOptionId ? { thinkingOptionId } : {},
19334
19400
  toolOutputLimit: this.#toolOutputLimit,
19401
+ subagentObservationTimeoutMs: this.#subagentObservationTimeoutMs,
19335
19402
  onClosed: () => this.#sessions.delete(session)
19336
19403
  });
19337
19404
  this.#sessions.add(session);
@@ -15052,6 +15052,8 @@ var pluginPresentationShape = {
15052
15052
  id: harnessPluginIdSchema,
15053
15053
  name: external_exports.string().trim().min(1).max(128),
15054
15054
  version: external_exports.string().min(1).max(128),
15055
+ /** The factory accepts a persisted local entrypoint through its construction context. */
15056
+ launchCommand: external_exports.literal(true).optional(),
15055
15057
  links: external_exports.object({
15056
15058
  documentation: documentationUrlSchema.optional(),
15057
15059
  installation: documentationUrlSchema.optional()
@@ -15089,6 +15091,19 @@ var harnessPluginRouteSchema = external_exports.object({
15089
15091
  permissionModeId: harnessPermissionModeIdSchema.optional()
15090
15092
  }).strict();
15091
15093
 
15094
+ // ../../shared-contracts/dist/harness-launch-settings.js
15095
+ var harnessLaunchPathSchema = external_exports.string().trim().min(1).max(4096).refine((value) => !/[\u0000\r\n]/u.test(value), "Invalid entrypoint path");
15096
+ var harnessLaunchSettingsGetSchema = external_exports.object({
15097
+ harnessId: harnessPluginIdSchema
15098
+ }).strict();
15099
+ var harnessLaunchSettingsSetSchema = harnessLaunchSettingsGetSchema.extend({
15100
+ path: harnessLaunchPathSchema.nullable()
15101
+ });
15102
+ var harnessLaunchSettingsSchema = external_exports.object({
15103
+ path: harnessLaunchPathSchema.nullable(),
15104
+ restartRequired: external_exports.boolean()
15105
+ }).strict();
15106
+
15092
15107
  // ../../shared-contracts/dist/codex-accounts.js
15093
15108
  var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
15094
15109
  var nonBlankTextSchema3 = external_exports.string().trim().min(1);
@@ -42434,7 +42449,7 @@ function withNodeRuntimeOnPath(environment, runtimeExecutable = process.execPath
42434
42449
  const directories = (environment[pathKey] ?? "").split(delimiter).filter(Boolean);
42435
42450
  const equal = platform === "win32" ? (value) => value.toLowerCase() : (value) => value;
42436
42451
  if (!directories.some((directory) => equal(directory) === equal(runtimeDirectory))) {
42437
- directories.unshift(runtimeDirectory);
42452
+ directories.push(runtimeDirectory);
42438
42453
  }
42439
42454
  return { ...environment, [pathKey]: directories.join(delimiter) };
42440
42455
  }