@moxt-ai/mobius 0.0.291 → 0.0.293
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.
- package/dist/acp/native-history/preview-contract.d.ts +1 -0
- package/dist/acp/native-history/preview-contract.d.ts.map +1 -1
- package/dist/cli.js +122 -11
- package/dist/cli.js.map +4 -4
- package/dist/daemon/lifecycle/worker.d.ts.map +1 -1
- package/dist/daemon/lifecycle/worker.js +4 -1
- package/dist/daemon/lifecycle/worker.js.map +1 -1
- package/dist/daemon/upgrades/upgrade.d.ts +2 -1
- package/dist/daemon/upgrades/upgrade.d.ts.map +1 -1
- package/dist/daemon/upgrades/upgrade.js +101 -10
- package/dist/daemon/upgrades/upgrade.js.map +1 -1
- package/dist/runtime/command/registry/history.d.ts.map +1 -1
- package/dist/runtime/command/registry/history.js +5 -1
- package/dist/runtime/command/registry/history.js.map +1 -1
- package/dist/runtime/command/registry/prompt.d.ts.map +1 -1
- package/dist/runtime/command/registry/prompt.js +10 -0
- package/dist/runtime/command/registry/prompt.js.map +1 -1
- package/dist/runtime/engine.d.ts +2 -0
- package/dist/runtime/engine.d.ts.map +1 -1
- package/dist/runtime/engine.js +1 -0
- package/dist/runtime/engine.js.map +1 -1
- package/dist/runtime/relay/run-relay-connection.d.ts.map +1 -1
- package/dist/runtime/relay/run-relay-connection.js +2 -0
- package/dist/runtime/relay/run-relay-connection.js.map +1 -1
- package/dist/runtime/relay/session-event-publisher.d.ts +1 -0
- package/dist/runtime/relay/session-event-publisher.d.ts.map +1 -1
- package/dist/runtime/relay/session-event-publisher.js +5 -0
- package/dist/runtime/relay/session-event-publisher.js.map +1 -1
- package/dist/runtime/run.d.ts +2 -0
- package/dist/runtime/run.d.ts.map +1 -1
- package/dist/runtime/run.js +1 -0
- package/dist/runtime/run.js.map +1 -1
- package/dist/runtime.js +87 -5
- package/dist/runtime.js.map +4 -4
- package/dist/session/api/session-layer.d.ts +2 -0
- package/dist/session/api/session-layer.d.ts.map +1 -1
- package/dist/session/api/session-layer.js +1 -1
- package/dist/session/api/session-layer.js.map +1 -1
- package/dist/session/history/session-event-store.d.ts +1 -0
- package/dist/session/history/session-event-store.d.ts.map +1 -1
- package/dist/session/history/session-event-store.js +6 -0
- package/dist/session/history/session-event-store.js.map +1 -1
- package/dist/session/turn/runtime-turn-activity.d.ts +11 -0
- package/dist/session/turn/runtime-turn-activity.d.ts.map +1 -0
- package/dist/session/turn/runtime-turn-activity.js +45 -0
- package/dist/session/turn/runtime-turn-activity.js.map +1 -0
- package/dist/session/turn/session-turns.d.ts +3 -1
- package/dist/session/turn/session-turns.d.ts.map +1 -1
- package/dist/session/turn/session-turns.js +11 -2
- package/dist/session/turn/session-turns.js.map +1 -1
- package/package.json +2 -2
package/dist/runtime/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runtime/run.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runtime/run.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.js
CHANGED
|
@@ -22133,6 +22133,9 @@ var sessionEventLogPageSchema = external_exports.object({
|
|
|
22133
22133
|
nextCursor: external_exports.string().min(1).max(512).nullable(),
|
|
22134
22134
|
sessionGenerationId: identifierStringSchema,
|
|
22135
22135
|
tailCursor: external_exports.string().max(512),
|
|
22136
|
+
// The generation-scoped live position covered by this snapshot, including
|
|
22137
|
+
// coalesced and omitted events. Absent only on older Runtime versions.
|
|
22138
|
+
throughPosition: positionSchema.optional(),
|
|
22136
22139
|
truncated: external_exports.boolean(),
|
|
22137
22140
|
version: external_exports.literal(2)
|
|
22138
22141
|
}).readonly();
|
|
@@ -22569,7 +22572,7 @@ import { fetch as fetch3 } from "undici";
|
|
|
22569
22572
|
// package.json
|
|
22570
22573
|
var package_default = {
|
|
22571
22574
|
name: "@moxt-ai/mobius",
|
|
22572
|
-
version: "0.0.
|
|
22575
|
+
version: "0.0.293",
|
|
22573
22576
|
description: "Mobius CLI for pairing and running local AI agent services.",
|
|
22574
22577
|
type: "module",
|
|
22575
22578
|
bin: {
|
|
@@ -81648,6 +81651,7 @@ var ProjectedSessionEvent = class {
|
|
|
81648
81651
|
};
|
|
81649
81652
|
};
|
|
81650
81653
|
var SessionEvents = class {
|
|
81654
|
+
#throughPosition = "0";
|
|
81651
81655
|
#eventIds = [];
|
|
81652
81656
|
#eventIndexById = /* @__PURE__ */ new Map();
|
|
81653
81657
|
#cachedItemsByEventId = /* @__PURE__ */ new Map();
|
|
@@ -81659,6 +81663,7 @@ var SessionEvents = class {
|
|
|
81659
81663
|
}
|
|
81660
81664
|
apply = (event, resolve18) => {
|
|
81661
81665
|
const projected = this.#projection.apply(event, resolve18);
|
|
81666
|
+
this.#throughPosition = event.position;
|
|
81662
81667
|
if (projected.kind === "replace") {
|
|
81663
81668
|
const current = this.#cachedItemsByEventId.get(projected.replacedEventId);
|
|
81664
81669
|
if (current === void 0) {
|
|
@@ -81672,6 +81677,9 @@ var SessionEvents = class {
|
|
|
81672
81677
|
this.#cachedItemsByEventId.set(projected.event.eventId, item);
|
|
81673
81678
|
this.#eventIds.push(projected.event.eventId);
|
|
81674
81679
|
};
|
|
81680
|
+
get throughPosition() {
|
|
81681
|
+
return this.#throughPosition;
|
|
81682
|
+
}
|
|
81675
81683
|
get materializedCount() {
|
|
81676
81684
|
return this.#cachedItemsByEventId.size;
|
|
81677
81685
|
}
|
|
@@ -81759,6 +81767,7 @@ function eventPage(session, sessionGenerationId, endIndex, eventLimit, read) {
|
|
|
81759
81767
|
const startIndex = Math.max(0, endIndex - eventLimit);
|
|
81760
81768
|
return {
|
|
81761
81769
|
events: read(startIndex, endIndex),
|
|
81770
|
+
throughPosition: session.throughPosition,
|
|
81762
81771
|
nextCursor: startIndex === 0 ? null : session.cursorAt(startIndex),
|
|
81763
81772
|
sessionGenerationId,
|
|
81764
81773
|
truncated: startIndex > 0
|
|
@@ -86527,6 +86536,50 @@ var ExecutionReceipts = class {
|
|
|
86527
86536
|
};
|
|
86528
86537
|
};
|
|
86529
86538
|
|
|
86539
|
+
// src/session/turn/runtime-turn-activity.ts
|
|
86540
|
+
var RuntimeTurnActivity = class {
|
|
86541
|
+
#turns = /* @__PURE__ */ new Set();
|
|
86542
|
+
#admission = { kind: "open" };
|
|
86543
|
+
acceptsPrompts = () => this.#admission.kind !== "reserved";
|
|
86544
|
+
count = () => this.#turns.size;
|
|
86545
|
+
start = (turn) => {
|
|
86546
|
+
this.#turns.add(turn);
|
|
86547
|
+
};
|
|
86548
|
+
finish = (turn) => {
|
|
86549
|
+
this.#turns.delete(turn);
|
|
86550
|
+
if (this.#turns.size === 0 && this.#admission.kind === "waiting") {
|
|
86551
|
+
this.#admission.reserve();
|
|
86552
|
+
}
|
|
86553
|
+
};
|
|
86554
|
+
reserveWhenIdle = (signal) => {
|
|
86555
|
+
signal.throwIfAborted();
|
|
86556
|
+
if (this.#admission.kind !== "open") {
|
|
86557
|
+
throw new Error("A daemon upgrade already owns admission");
|
|
86558
|
+
}
|
|
86559
|
+
return new Promise((resolve18, reject2) => {
|
|
86560
|
+
const abort = () => {
|
|
86561
|
+
this.#admission = { kind: "open" };
|
|
86562
|
+
signal.removeEventListener("abort", abort);
|
|
86563
|
+
reject2(signal.reason);
|
|
86564
|
+
};
|
|
86565
|
+
const reserve = () => {
|
|
86566
|
+
this.#admission = { kind: "reserved" };
|
|
86567
|
+
signal.removeEventListener("abort", abort);
|
|
86568
|
+
resolve18({
|
|
86569
|
+
[Symbol.dispose]: () => {
|
|
86570
|
+
this.#admission = { kind: "open" };
|
|
86571
|
+
}
|
|
86572
|
+
});
|
|
86573
|
+
};
|
|
86574
|
+
this.#admission = { kind: "waiting", reserve };
|
|
86575
|
+
signal.addEventListener("abort", abort, { once: true });
|
|
86576
|
+
if (this.#turns.size === 0) {
|
|
86577
|
+
reserve();
|
|
86578
|
+
}
|
|
86579
|
+
});
|
|
86580
|
+
};
|
|
86581
|
+
};
|
|
86582
|
+
|
|
86530
86583
|
// src/session/turn/active-turn.ts
|
|
86531
86584
|
import { randomUUID as randomUUID14 } from "node:crypto";
|
|
86532
86585
|
var ActiveRuntimeTurn = class {
|
|
@@ -86743,9 +86796,12 @@ var SessionExecutionState = class {
|
|
|
86743
86796
|
var SessionTurns = class {
|
|
86744
86797
|
#bySessionId = /* @__PURE__ */ new Map();
|
|
86745
86798
|
#operations;
|
|
86746
|
-
|
|
86799
|
+
#activity;
|
|
86800
|
+
constructor(operations, activity2 = new RuntimeTurnActivity()) {
|
|
86747
86801
|
this.#operations = operations;
|
|
86802
|
+
this.#activity = activity2;
|
|
86748
86803
|
}
|
|
86804
|
+
acceptsPrompts = () => this.#activity.acceptsPrompts();
|
|
86749
86805
|
session = (sessionId) => {
|
|
86750
86806
|
let session = this.#bySessionId.get(sessionId);
|
|
86751
86807
|
if (session === void 0) {
|
|
@@ -86755,10 +86811,15 @@ var SessionTurns = class {
|
|
|
86755
86811
|
return session;
|
|
86756
86812
|
};
|
|
86757
86813
|
get = (commandId, sessionId) => this.#bySessionId.get(sessionId)?.get(commandId);
|
|
86758
|
-
start = (command, attemptId) =>
|
|
86814
|
+
start = (command, attemptId) => {
|
|
86815
|
+
const turn = this.session(command.sessionId).start(command, attemptId);
|
|
86816
|
+
this.#activity.start(turn);
|
|
86817
|
+
return turn;
|
|
86818
|
+
};
|
|
86759
86819
|
finish = (turn) => {
|
|
86760
86820
|
this.#bySessionId.get(turn.command.sessionId)?.finish(turn);
|
|
86761
86821
|
this.sweep();
|
|
86822
|
+
this.#activity.finish(turn);
|
|
86762
86823
|
};
|
|
86763
86824
|
recordEvent = (event) => "sessionId" in event ? this.#bySessionId.get(event.sessionId)?.recordEvent(event) ?? event : event;
|
|
86764
86825
|
recordSessionEvent = (event) => {
|
|
@@ -87000,7 +87061,7 @@ function buildSessionLayer(options) {
|
|
|
87000
87061
|
const sessionStore = new SqliteSessionStore(new AcpSessionTable(sessionDatabase), events);
|
|
87001
87062
|
const externalContent = new LocalExternalContentStore(stateDirectory);
|
|
87002
87063
|
const operations = new ExecutionReceipts();
|
|
87003
|
-
const activeSessions = new SessionTurns(operations);
|
|
87064
|
+
const activeSessions = new SessionTurns(operations, options.turnActivity);
|
|
87004
87065
|
const directories = new WorkspaceDirectoryService(bindingId, defaultWorkspace);
|
|
87005
87066
|
const manager = new SessionManager2({
|
|
87006
87067
|
observer: new SessionLayerObserver((event) => eventProjection.record(event), sink.publishInfo),
|
|
@@ -88102,8 +88163,10 @@ async function loadHistoryPage(sessionId, eventLimit, initialCursor, omitReasoni
|
|
|
88102
88163
|
let loaded = [];
|
|
88103
88164
|
let sessionGenerationId = null;
|
|
88104
88165
|
let sourceNextCursor = null;
|
|
88166
|
+
let throughPosition = null;
|
|
88105
88167
|
do {
|
|
88106
88168
|
const replay = await load(eventLimit, cursor);
|
|
88169
|
+
throughPosition ??= replay.throughPosition;
|
|
88107
88170
|
if (sessionGenerationId !== null && replay.sessionGenerationId !== sessionGenerationId) {
|
|
88108
88171
|
throw new SessionError("session_reloaded", "The Session reloaded while history was loading");
|
|
88109
88172
|
}
|
|
@@ -88129,7 +88192,7 @@ async function loadHistoryPage(sessionId, eventLimit, initialCursor, omitReasoni
|
|
|
88129
88192
|
}
|
|
88130
88193
|
cursor = sourceNextCursor;
|
|
88131
88194
|
} while (cursor !== null);
|
|
88132
|
-
if (sessionGenerationId === null) {
|
|
88195
|
+
if (sessionGenerationId === null || throughPosition === null) {
|
|
88133
88196
|
throw new SessionError("session_history_unavailable", "The Session history is unavailable");
|
|
88134
88197
|
}
|
|
88135
88198
|
const visible = omitReasoning ? omitAgentReasoning(loaded) : loaded;
|
|
@@ -88141,6 +88204,7 @@ async function loadHistoryPage(sessionId, eventLimit, initialCursor, omitReasoni
|
|
|
88141
88204
|
nextCursor,
|
|
88142
88205
|
sessionGenerationId,
|
|
88143
88206
|
tailCursor: orderedEvents.at(-1)?.event.eventId ?? "",
|
|
88207
|
+
throughPosition,
|
|
88144
88208
|
truncated: nextCursor !== null,
|
|
88145
88209
|
version: 2
|
|
88146
88210
|
},
|
|
@@ -89058,6 +89122,16 @@ var sessionPromptCommand = {
|
|
|
89058
89122
|
if (message.kind !== SESSION_PROMPT_KIND) {
|
|
89059
89123
|
throw new Error("Command kind mismatch");
|
|
89060
89124
|
}
|
|
89125
|
+
if (!context.sessionTurns.acceptsPrompts()) {
|
|
89126
|
+
send(context.socket, {
|
|
89127
|
+
code: "runtime_upgrading",
|
|
89128
|
+
requestId: message.commandId,
|
|
89129
|
+
kind: "session.operation.failed",
|
|
89130
|
+
message: "The Runtime is upgrading. Retry after it reconnects.",
|
|
89131
|
+
sessionId: message.sessionId
|
|
89132
|
+
});
|
|
89133
|
+
return;
|
|
89134
|
+
}
|
|
89061
89135
|
const receipt = context.operations.claimExecution(
|
|
89062
89136
|
message.commandId,
|
|
89063
89137
|
message.sessionId,
|
|
@@ -89863,6 +89937,7 @@ async function runRelayConnection({
|
|
|
89863
89937
|
reject2(failure2);
|
|
89864
89938
|
};
|
|
89865
89939
|
const stop = () => {
|
|
89940
|
+
publisher.flush();
|
|
89866
89941
|
diagnostics.connectionClosed(connectionEpoch, 1e3, "Daemon stopped", "daemon_stop");
|
|
89867
89942
|
closeRelaySocket(socket, 1e3, "Daemon stopped");
|
|
89868
89943
|
resolveConnection();
|
|
@@ -90018,6 +90093,11 @@ var RuntimeSessionEventPublisher = class {
|
|
|
90018
90093
|
this.#socket = null;
|
|
90019
90094
|
this.dropPendingEvents();
|
|
90020
90095
|
};
|
|
90096
|
+
flush = () => {
|
|
90097
|
+
if (this.#socket !== null) {
|
|
90098
|
+
this.flushEvents(this.#socket);
|
|
90099
|
+
}
|
|
90100
|
+
};
|
|
90021
90101
|
publishOperationFailure = (sessionId, requestId, code, message) => {
|
|
90022
90102
|
this.#send({ kind: "session.operation.failed", sessionId, requestId, code, message });
|
|
90023
90103
|
};
|
|
@@ -90151,6 +90231,7 @@ async function runRuntime(config2, parentSignal, timer = systemTimer, options =
|
|
|
90151
90231
|
);
|
|
90152
90232
|
const publisher = new RuntimeSessionEventPublisher(timer);
|
|
90153
90233
|
const layer = buildSessionLayer({
|
|
90234
|
+
...options.turnActivity === void 0 ? {} : { turnActivity: options.turnActivity },
|
|
90154
90235
|
bindingId: config2.bindingId,
|
|
90155
90236
|
channelId: config2.channelId,
|
|
90156
90237
|
defaultWorkspace: config2.defaultWorkspace,
|
|
@@ -90394,6 +90475,7 @@ var MobiusRuntimeEngine = class {
|
|
|
90394
90475
|
this.#state = new RunningMobiusRuntimeState();
|
|
90395
90476
|
try {
|
|
90396
90477
|
await runRuntime(this.#config, signal, void 0, {
|
|
90478
|
+
...this.#options.turnActivity === void 0 ? {} : { turnActivity: this.#options.turnActivity },
|
|
90397
90479
|
...this.#options.onConnectionStatus === void 0 ? {} : { onConnectionStatus: this.#options.onConnectionStatus },
|
|
90398
90480
|
...this.#options.reportUpgradeAvailability === void 0 ? {} : { reportUpgradeAvailability: this.#options.reportUpgradeAvailability },
|
|
90399
90481
|
...this.#options.processLogsDirectory === void 0 ? {} : { processLogsDirectory: this.#options.processLogsDirectory }
|