replicas-engine 0.1.1321 → 0.1.1324

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.
@@ -8,12 +8,12 @@ import {
8
8
  listRunningCodexModels,
9
9
  restartCodexAspHost,
10
10
  restartCodexAspHostIfRunning
11
- } from "./chunk-6SXWSLFN.js";
12
- import "./chunk-NO7WE4LT.js";
13
- import "./chunk-QHVDMQNA.js";
14
- import "./chunk-CF7OT4KT.js";
11
+ } from "./chunk-5SGK3DGU.js";
12
+ import "./chunk-QM2IWXZO.js";
13
+ import "./chunk-FKYOA4XA.js";
14
+ import "./chunk-KWPZ47DZ.js";
15
15
  import "./chunk-UZSNFLDQ.js";
16
- import "./chunk-EIAP5VIF.js";
16
+ import "./chunk-HZ2R4ITB.js";
17
17
  import "./chunk-VEQXQN22.js";
18
18
  export {
19
19
  CODEX_ULTRAFAST_SERVICE_TIER,
@@ -3,7 +3,7 @@ import { createRequire as __createRequire } from 'node:module';
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  AspClient
6
- } from "./chunk-QHVDMQNA.js";
6
+ } from "./chunk-FKYOA4XA.js";
7
7
  import {
8
8
  ASTER_BASE_URL,
9
9
  ASTER_PROVIDER,
@@ -15,7 +15,7 @@ import {
15
15
  isRecord,
16
16
  readOllamaAuthEnv,
17
17
  readOpenAICompatibleAuthEnv
18
- } from "./chunk-EIAP5VIF.js";
18
+ } from "./chunk-HZ2R4ITB.js";
19
19
 
20
20
  // src/managers/codex-asp/notification-dispatch.ts
21
21
  var TURN_STARTED_METHOD = "turn/started";
@@ -10,15 +10,15 @@ import {
10
10
  resolveDiffBase,
11
11
  runGitCommand,
12
12
  setAgentCredentialSnapshot
13
- } from "./chunk-NO7WE4LT.js";
13
+ } from "./chunk-QM2IWXZO.js";
14
14
  import {
15
15
  AppServerProcess,
16
16
  buildCodexAgentEnv
17
- } from "./chunk-QHVDMQNA.js";
17
+ } from "./chunk-FKYOA4XA.js";
18
18
  import {
19
19
  SUBPROCESS_MAX_BUFFER,
20
20
  execFileAsync
21
- } from "./chunk-CF7OT4KT.js";
21
+ } from "./chunk-KWPZ47DZ.js";
22
22
  import {
23
23
  isRecord
24
24
  } from "./chunk-UZSNFLDQ.js";
@@ -56,7 +56,7 @@ import {
56
56
  resolveOpenAICompatibleModelsUrl,
57
57
  splitMothershipInstructions,
58
58
  withTimeout
59
- } from "./chunk-EIAP5VIF.js";
59
+ } from "./chunk-HZ2R4ITB.js";
60
60
 
61
61
  // src/managers/codex-token-manager.ts
62
62
  import { promises as fs } from "fs";
@@ -306,7 +306,7 @@ var CodexTokenManager = class extends BaseRefreshManager {
306
306
  await this.applyCredentialUpdate(++this.credentialGeneration, async () => {
307
307
  await this.applyCredentialsResponse(data);
308
308
  setAgentCredentialSnapshot("codex", data);
309
- const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-SLVH4EZD.js");
309
+ const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-XHHAEVFJ.js");
310
310
  await restartCodexAspHostIfRunning2();
311
311
  });
312
312
  await this.start(true);
@@ -328,7 +328,7 @@ var CodexTokenManager = class extends BaseRefreshManager {
328
328
  const accountChanged = ENGINE_ENV.REPLICAS_AGENT_CREDENTIALS.codex?.credentialId !== data.credentialId;
329
329
  await this.applyCredentialsResponse(data);
330
330
  if (restartOnChange && (accountChanged || CODEX_AUTH_ENV_KEYS.some((key, index) => process.env[key] !== previousEnv[index]))) {
331
- const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-SLVH4EZD.js");
331
+ const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-XHHAEVFJ.js");
332
332
  await restartCodexAspHostIfRunning2();
333
333
  }
334
334
  setAgentCredentialSnapshot("codex", data);
@@ -3,10 +3,10 @@ import { createRequire as __createRequire } from 'node:module';
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  execFileAsync
6
- } from "./chunk-CF7OT4KT.js";
6
+ } from "./chunk-KWPZ47DZ.js";
7
7
  import {
8
8
  isVersionBelow
9
- } from "./chunk-EIAP5VIF.js";
9
+ } from "./chunk-HZ2R4ITB.js";
10
10
 
11
11
  // src/utils/codex-agent-env.ts
12
12
  function buildCodexAgentEnv(source = process.env) {
@@ -240,7 +240,7 @@ function getCodexModelProvider(method) {
240
240
  if (method === "foundry") return "azure";
241
241
  return method === "ollama" || method === "openai-compatible" ? "replicas_openai_compatible" : "openai";
242
242
  }
243
- var ENGINE_PACKAGE_VERSION = "0.1.1321";
243
+ var ENGINE_PACKAGE_VERSION = "0.1.1324";
244
244
  var INITIALIZE_METHOD = "initialize";
245
245
  var INITIALIZED_NOTIFICATION = "initialized";
246
246
  var ACCOUNT_LOGIN_START_METHOD = "account/login/start";
@@ -5,7 +5,7 @@ import {
5
5
  extractCommandProtectionCommandText,
6
6
  isRecord,
7
7
  parseCodeHostPrUrl
8
- } from "./chunk-EIAP5VIF.js";
8
+ } from "./chunk-HZ2R4ITB.js";
9
9
 
10
10
  // src/services/published-pull-request-urls.ts
11
11
  function publishedPullRequestUrls(result) {
@@ -1981,6 +1981,14 @@ var mergePullRequestRequestSchema = z6.object({
1981
1981
  });
1982
1982
 
1983
1983
  // ../shared/src/routes/mothership.ts
1984
+ var mothershipLinearRuleSchema = z7.object({
1985
+ team_id: z7.string().min(1),
1986
+ current_cycle: z7.boolean().optional(),
1987
+ label_id: z7.string().min(1).optional(),
1988
+ project_id: z7.string().min(1).optional(),
1989
+ assignee_id: z7.string().min(1).optional()
1990
+ }).strict();
1991
+ var storedMothershipLinearRuleSchema = mothershipLinearRuleSchema.extend({ linked_at: z7.string() });
1984
1992
  var SUBAGENT_SERVICE_TIERS = ["default", "fast", "ultrafast"];
1985
1993
  function serviceTierRequestFields(tier) {
1986
1994
  return { fastMode: tier !== "default", ...tier === "ultrafast" ? { ultrafastMode: true } : {} };
@@ -8210,7 +8218,8 @@ function applyInterruptions(messages, events) {
8210
8218
  insertDisplayMessageByTimestamp(result, {
8211
8219
  id: `interruption-${event.timestamp}`,
8212
8220
  type: "interruption",
8213
- timestamp: event.timestamp
8221
+ timestamp: event.timestamp,
8222
+ ...event.payload.steered === true ? { steered: true } : {}
8214
8223
  });
8215
8224
  }
8216
8225
  let lastUserMs = null;
@@ -8229,6 +8238,7 @@ function applyInterruptions(messages, events) {
8229
8238
  }
8230
8239
  const ms = parseTimestampMs(msg.timestamp);
8231
8240
  if (lastInterruption && ms - parseTimestampMs(lastInterruption.timestamp) <= INTERRUPTION_DEDUP_WINDOW_MS) {
8241
+ if (msg.steered) lastInterruption.steered = true;
8232
8242
  continue;
8233
8243
  }
8234
8244
  lastInterruption = {
@@ -3,7 +3,7 @@ import { createRequire as __createRequire } from 'node:module';
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  HOOK_EXEC_MAX_BUFFER_BYTES
6
- } from "./chunk-EIAP5VIF.js";
6
+ } from "./chunk-HZ2R4ITB.js";
7
7
 
8
8
  // src/utils/exec.ts
9
9
  import { exec, execFile } from "child_process";
@@ -4,7 +4,7 @@ const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  SUBPROCESS_MAX_BUFFER,
6
6
  execFileAsync
7
- } from "./chunk-CF7OT4KT.js";
7
+ } from "./chunk-KWPZ47DZ.js";
8
8
  import {
9
9
  isRecord as isRecord2
10
10
  } from "./chunk-UZSNFLDQ.js";
@@ -21,7 +21,7 @@ import {
21
21
  provisionedDeviceSchema,
22
22
  readReplicasRuntimeEnv,
23
23
  serializePosixEnvFile
24
- } from "./chunk-EIAP5VIF.js";
24
+ } from "./chunk-HZ2R4ITB.js";
25
25
 
26
26
  // src/runtime-env-loader.ts
27
27
  import { readFileSync } from "fs";
@@ -6,7 +6,7 @@ import {
6
6
  getOriginDefaultBranch,
7
7
  monolithRequest,
8
8
  runGitCommand
9
- } from "./chunk-NO7WE4LT.js";
9
+ } from "./chunk-QM2IWXZO.js";
10
10
  import {
11
11
  extractCommandProtectionCommandText,
12
12
  findCommandProtectionGitLookups,
@@ -14,7 +14,7 @@ import {
14
14
  findPrMergeSignals,
15
15
  findScoutRepoWriteSignals,
16
16
  parseCommandProtectionRequest
17
- } from "./chunk-EIAP5VIF.js";
17
+ } from "./chunk-HZ2R4ITB.js";
18
18
 
19
19
  // src/services/command-protection-service.ts
20
20
  import { readFile, stat } from "fs/promises";
@@ -3,13 +3,13 @@ import { createRequire as __createRequire } from 'node:module';
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  evaluateCommandProtection
6
- } from "./chunk-QWRRA76L.js";
7
- import "./chunk-NO7WE4LT.js";
8
- import "./chunk-CF7OT4KT.js";
6
+ } from "./chunk-V6C6J3FS.js";
7
+ import "./chunk-QM2IWXZO.js";
8
+ import "./chunk-KWPZ47DZ.js";
9
9
  import {
10
10
  isRecord
11
11
  } from "./chunk-UZSNFLDQ.js";
12
- import "./chunk-EIAP5VIF.js";
12
+ import "./chunk-HZ2R4ITB.js";
13
13
  import "./chunk-VEQXQN22.js";
14
14
 
15
15
  // src/command-protection-hook.ts
@@ -14,12 +14,12 @@ import {
14
14
  recoverCompletedTurn,
15
15
  spawnMuseMsp,
16
16
  startMuseSession
17
- } from "./chunk-CBGAKVHI.js";
17
+ } from "./chunk-3UUWUZMK.js";
18
18
  import {
19
19
  AppServerProcess,
20
20
  buildCodexAgentEnv
21
- } from "./chunk-QHVDMQNA.js";
22
- import "./chunk-CF7OT4KT.js";
21
+ } from "./chunk-FKYOA4XA.js";
22
+ import "./chunk-KWPZ47DZ.js";
23
23
  import {
24
24
  AGENT,
25
25
  OPENCODE_GO_PROVIDER,
@@ -29,7 +29,7 @@ import {
29
29
  headlessAgentUsagePath,
30
30
  isRecord,
31
31
  withTimeout
32
- } from "./chunk-EIAP5VIF.js";
32
+ } from "./chunk-HZ2R4ITB.js";
33
33
  import "./chunk-VEQXQN22.js";
34
34
 
35
35
  // src/headless-agent.ts
package/dist/src/index.js CHANGED
@@ -27,7 +27,7 @@ import {
27
27
  evaluateCommandProtection,
28
28
  extractToolCommand,
29
29
  reportCommandProtectionBlock
30
- } from "./chunk-QWRRA76L.js";
30
+ } from "./chunk-V6C6J3FS.js";
31
31
  import {
32
32
  ACCOUNT_RATE_LIMITS_UPDATED_METHOD,
33
33
  AGENT_MESSAGE_DELTA_METHOD,
@@ -65,10 +65,10 @@ import {
65
65
  spawnMuseMsp,
66
66
  startMuseSession,
67
67
  uuidV7
68
- } from "./chunk-CBGAKVHI.js";
68
+ } from "./chunk-3UUWUZMK.js";
69
69
  import {
70
70
  publishedPullRequestUrls
71
- } from "./chunk-BMKTQMPM.js";
71
+ } from "./chunk-G5OLVFIP.js";
72
72
  import {
73
73
  ACCOUNT_RATE_LIMITS_READ_METHOD,
74
74
  AsyncLock,
@@ -143,7 +143,7 @@ import {
143
143
  timestampFromSeconds,
144
144
  upsertCredentialFileLines,
145
145
  writeSecureCredentialFile
146
- } from "./chunk-6SXWSLFN.js";
146
+ } from "./chunk-5SGK3DGU.js";
147
147
  import {
148
148
  ENGINE_ENV,
149
149
  monolithRequest,
@@ -153,15 +153,15 @@ import {
153
153
  resolveDiffBase,
154
154
  setAgentCredentialSnapshot,
155
155
  setLinearSessionId
156
- } from "./chunk-NO7WE4LT.js";
156
+ } from "./chunk-QM2IWXZO.js";
157
157
  import {
158
158
  getCodexModelProvider
159
- } from "./chunk-QHVDMQNA.js";
159
+ } from "./chunk-FKYOA4XA.js";
160
160
  import {
161
161
  SUBPROCESS_MAX_BUFFER,
162
162
  execAsync,
163
163
  execFileAsync
164
- } from "./chunk-CF7OT4KT.js";
164
+ } from "./chunk-KWPZ47DZ.js";
165
165
  import {
166
166
  isRecord as isRecord2
167
167
  } from "./chunk-UZSNFLDQ.js";
@@ -417,7 +417,7 @@ import {
417
417
  workspaceTokenRequestSchema,
418
418
  workspaceTokenResponseSchema,
419
419
  wrapInTag
420
- } from "./chunk-EIAP5VIF.js";
420
+ } from "./chunk-HZ2R4ITB.js";
421
421
  import {
422
422
  cloneMcpConfig,
423
423
  ensureCompatibilityImports,
@@ -11885,6 +11885,7 @@ ${request.message}` }, senderKey };
11885
11885
  await history.appendDurably(event);
11886
11886
  }
11887
11887
  async interrupt(persistRemoval) {
11888
+ const stoppedAt = (/* @__PURE__ */ new Date()).toISOString();
11888
11889
  const queuedMessages = this.messageQueue.drainQueue();
11889
11890
  const unreadSteers = [...this.unreadSteers.values()];
11890
11891
  const earlySteers = this.earlySteers.splice(0);
@@ -11907,7 +11908,7 @@ ${request.message}` }, senderKey };
11907
11908
  }
11908
11909
  const removed = [...unreadSteers.map(({ message }) => message), ...queuedMessages];
11909
11910
  if (removed.length > 0) await persistRemoval(removed.map(({ id }) => id));
11910
- if (isProcessing) this.recordInterrupted();
11911
+ if (isProcessing) this.recordInterrupted(stoppedAt);
11911
11912
  const queue = [];
11912
11913
  let queueChars = 0;
11913
11914
  for (const { message } of removed) {
@@ -11922,11 +11923,11 @@ ${request.message}` }, senderKey };
11922
11923
  removedMessageIds: removed.map(({ id }) => id)
11923
11924
  };
11924
11925
  }
11925
- recordInterrupted() {
11926
+ recordInterrupted(timestamp, steered = false) {
11926
11927
  const event = {
11927
- timestamp: (/* @__PURE__ */ new Date()).toISOString(),
11928
+ timestamp,
11928
11929
  type: CHAT_INTERRUPTED_EVENT_TYPE,
11929
- payload: {}
11930
+ payload: steered ? { steered: true } : {}
11930
11931
  };
11931
11932
  this.onEvent(event);
11932
11933
  this.getHistorySink()?.append(event);
@@ -12042,7 +12043,7 @@ ${note}` };
12042
12043
  const taken = this.messageQueue.takeFromQueue(messageId);
12043
12044
  if (taken) this.messageQueue.restoreToQueue(taken.message, 0);
12044
12045
  if (turnRunning) {
12045
- this.recordInterrupted();
12046
+ this.recordInterrupted((/* @__PURE__ */ new Date()).toISOString(), true);
12046
12047
  this.messageQueue.cancelActiveTurn();
12047
12048
  await this.interruptActiveTurn();
12048
12049
  }
@@ -3,13 +3,13 @@ import { createRequire as __createRequire } from 'node:module';
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  publishedPullRequestUrls
6
- } from "./chunk-BMKTQMPM.js";
6
+ } from "./chunk-G5OLVFIP.js";
7
7
  import {
8
8
  isRecord
9
9
  } from "./chunk-UZSNFLDQ.js";
10
10
  import {
11
11
  shouldRefreshPullRequests
12
- } from "./chunk-EIAP5VIF.js";
12
+ } from "./chunk-HZ2R4ITB.js";
13
13
  import "./chunk-VEQXQN22.js";
14
14
 
15
15
  // src/services/post-tool-pr-notifier.ts
@@ -11,7 +11,7 @@ import {
11
11
  spawnSubagentRequestSchema,
12
12
  subagentResponseSchema,
13
13
  waitSubagentRequestSchema
14
- } from "./chunk-EIAP5VIF.js";
14
+ } from "./chunk-HZ2R4ITB.js";
15
15
  import "./chunk-VEQXQN22.js";
16
16
 
17
17
  // src/subagent-mcp.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "replicas-engine",
3
- "version": "0.1.1321",
3
+ "version": "0.1.1324",
4
4
  "description": "Lightweight API server for Replicas workspaces",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",