zcode-acp-server 0.36.0 → 0.37.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.
- package/README.md +1 -1
- package/assets/martty-plugins/quota-dock/plugin.json +3 -3
- package/dist/code-fingerprint.json +1 -1
- package/dist/config/options.d.ts +8 -6
- package/dist/config/options.d.ts.map +1 -1
- package/dist/config/options.js +44 -16
- package/dist/config/options.js.map +1 -1
- package/dist/handlers/session.d.ts.map +1 -1
- package/dist/handlers/session.js +56 -36
- package/dist/handlers/session.js.map +1 -1
- package/dist/quota/format.d.ts +14 -2
- package/dist/quota/format.d.ts.map +1 -1
- package/dist/quota/format.js +43 -7
- package/dist/quota/format.js.map +1 -1
- package/dist/quota/live.d.ts.map +1 -1
- package/dist/quota/live.js +9 -2
- package/dist/quota/live.js.map +1 -1
- package/dist/remote/hub-server.d.ts.map +1 -1
- package/dist/remote/hub-server.js +7 -3
- package/dist/remote/hub-server.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -239,7 +239,7 @@ Thanks to everyone who has contributed (updated automatically from the
|
|
|
239
239
|
<a href="https://github.com/william0wang/zcode-acp/graphs/contributors">
|
|
240
240
|
<!-- release-please re-stamps &v= on every release: the new URL busts the
|
|
241
241
|
contrib.rocks and GitHub camo image caches. -->
|
|
242
|
-
<img src="https://contrib.rocks/image?repo=william0wang/zcode-acp&v=0.
|
|
242
|
+
<img src="https://contrib.rocks/image?repo=william0wang/zcode-acp&v=0.37.1" alt="Contributors" /> <!-- x-release-please-version -->
|
|
243
243
|
</a>
|
|
244
244
|
|
|
245
245
|
## Related Projects
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
"id": "zcode-acp-quota",
|
|
4
4
|
"kind": "ui",
|
|
5
5
|
"name": "zcode-acp quota dock",
|
|
6
|
-
"purpose": "Reads the read-only quota config option and session
|
|
6
|
+
"purpose": "Reads the read-only quota config option and session stats and renders them in the composer dock.",
|
|
7
7
|
"source": {
|
|
8
8
|
"pluginId": "plugin-zcode-acp-quota",
|
|
9
|
-
"packageId": "pkg-zcode-acp-quota-
|
|
9
|
+
"packageId": "pkg-zcode-acp-quota-4"
|
|
10
10
|
},
|
|
11
11
|
"code": {
|
|
12
|
-
"client": "// zcode-acp quota-dock plugin
|
|
12
|
+
"client": "// zcode-acp quota-dock plugin v4 (seeded by zcode-acp-server, ADR-0021)\n// v2: sticky last-known quota text (a mid-turn options push without the\n// quota option no longer drops the node) + order:-1 so compact width\n// truncation sacrifices trailing stats sections before QUOTA.\n// v3: per-turn TPS — diff of usage.output / stats.llmMillis between stats\n// snapshots (both cumulative, both land at turn end), so the segment shows\n// the LAST turn's throughput, not a session-wide average.\n// v4: drop the ctx segment — martty's own UI shows context stats, so the\n// dock renders quota + TPS only.\nreturn {\n inject: [\"tuiSlots\", \"acpSessionConfig\", \"acpSessionStats\"],\n apply: (ctx) => {\n let panel\n let quotaText = null\n let tps = null\n let prevStats = null\n const readQuota = (options) => {\n const list = options || ctx.acpSessionConfig.list()\n const found = (list || []).filter((o) => o && o.id === \"quota\")[0]\n if (!found || typeof found.currentValue !== \"string\") return\n // Sticky: only an explicit empty string clears; a missing option keeps\n // the last-known text so full-replace pushes without quota cannot\n // erase the dock line.\n quotaText = found.currentValue.length > 0 ? found.currentValue : null\n }\n const readStats = () => {\n const cur = ctx.acpSessionStats.current ? ctx.acpSessionStats.current() : null\n const output = cur && cur.usage && typeof cur.usage.output === \"number\" ? cur.usage.output : null\n const llm = cur && cur.stats && typeof cur.stats.llmMillis === \"number\" ? cur.stats.llmMillis : null\n if (output !== null && llm !== null) {\n if (prevStats && llm > prevStats.llm && output >= prevStats.output) {\n const tok = output - prevStats.output\n const sec = (llm - prevStats.llm) / 1000\n if (tok > 0 && sec > 0) tps = Math.round(tok / sec)\n }\n prevStats = { output, llm }\n }\n }\n const nodes = () => {\n const parts = []\n if (quotaText) parts.push(quotaText)\n if (tps !== null) parts.push(tps + \" tok/s\")\n if (parts.length === 0) return []\n return [{ id: \"zcode-acp-quota-gauge\", kind: \"generic\", title: parts.join(\" · \"), body: \"\" }]\n }\n const render = () => { if (panel) { try { panel.update(nodes()) } catch (err) {} } }\n const stopSlot = ctx.tuiSlots.inject(\"conversation.composer.dock\", () => {\n panel = ctx.tuiSlots.register({ name: \"conversation.composer.dock\", id: \"zcode-acp-quota\", order: -1 }, nodes())\n return () => panel.dispose()\n })\n readQuota()\n readStats()\n const stopSub = ctx.acpSessionConfig.subscribe((snap) => { readQuota(snap && snap.options); render() })\n let stopStats = null\n if (ctx.acpSessionStats.subscribe) stopStats = ctx.acpSessionStats.subscribe(() => { readStats(); render() })\n return () => { stopSub && stopSub(); stopStats && stopStats(); stopSlot && stopSlot() }\n },\n}"
|
|
13
13
|
}
|
|
14
14
|
}
|
package/dist/config/options.d.ts
CHANGED
|
@@ -57,17 +57,19 @@ export declare function isBuiltinProvider(providerId: string): boolean;
|
|
|
57
57
|
/**
|
|
58
58
|
* Encode a provider+model pair into a configOption `value` string.
|
|
59
59
|
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
* modelIds (`/`-separated) never contain it.
|
|
60
|
+
* Always `providerId\modelId` — builtins included. A collision-only prefix
|
|
61
|
+
* would advertise different id shapes depending on how many coding plans the
|
|
62
|
+
* user has enabled. `\` is unambiguous because providerIds (UUIDs / builtin:
|
|
63
|
+
* slugs) and modelIds (`/`-separated) never contain it.
|
|
64
|
+
*
|
|
65
|
+
* Inbound, `parseModelValue` still accepts a legacy bare modelId.
|
|
64
66
|
*/
|
|
65
67
|
export declare function formatModelValue(providerId: string, modelId: string): string;
|
|
66
68
|
/**
|
|
67
69
|
* Parse a configOption `value` back into { providerId, modelId }.
|
|
68
70
|
*
|
|
69
|
-
* A value without `\` is a
|
|
70
|
-
*
|
|
71
|
+
* A value without `\` is a legacy bare modelId → resolve to the first enabled
|
|
72
|
+
* builtin provider. A value with `\` is the current provider+model encoding.
|
|
71
73
|
*/
|
|
72
74
|
export declare function parseModelValue(value: string): {
|
|
73
75
|
providerId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/config/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAUrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAGnD,UAAU,kBAAkB;IAC1B,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,KAAK,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,SAAS,CAAC;CACjE;AAOD,0EAA0E;AAC1E,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1E,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B;AAMD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,iCAAiC,CAAC;AAClE,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAChD,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAE1C,oEAAoE;AACpE,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAkCD;;GAEG;AACH,wBAAgB,aAAa,IAAI,QAAQ,EAAE,CAmC1C;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAO3E;AAED,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAS9E;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/config/options.ts"],"names":[],"mappings":"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"}
|
package/dist/config/options.js
CHANGED
|
@@ -131,21 +131,50 @@ export function isBuiltinProvider(providerId) {
|
|
|
131
131
|
/**
|
|
132
132
|
* Encode a provider+model pair into a configOption `value` string.
|
|
133
133
|
*
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
* modelIds (`/`-separated) never contain it.
|
|
134
|
+
* Always `providerId\modelId` — builtins included. A collision-only prefix
|
|
135
|
+
* would advertise different id shapes depending on how many coding plans the
|
|
136
|
+
* user has enabled. `\` is unambiguous because providerIds (UUIDs / builtin:
|
|
137
|
+
* slugs) and modelIds (`/`-separated) never contain it.
|
|
138
|
+
*
|
|
139
|
+
* Inbound, `parseModelValue` still accepts a legacy bare modelId.
|
|
138
140
|
*/
|
|
139
141
|
export function formatModelValue(providerId, modelId) {
|
|
140
|
-
if (isBuiltinProvider(providerId))
|
|
141
|
-
return modelId;
|
|
142
142
|
return `${providerId}\\${modelId}`;
|
|
143
143
|
}
|
|
144
|
+
function collidingModelIds(models) {
|
|
145
|
+
const counts = new Map();
|
|
146
|
+
for (const model of models) {
|
|
147
|
+
counts.set(model.modelId, (counts.get(model.modelId) ?? 0) + 1);
|
|
148
|
+
}
|
|
149
|
+
const colliding = new Set();
|
|
150
|
+
for (const [modelId, count] of counts) {
|
|
151
|
+
if (count > 1)
|
|
152
|
+
colliding.add(modelId);
|
|
153
|
+
}
|
|
154
|
+
return colliding;
|
|
155
|
+
}
|
|
156
|
+
function buildModelSelectOptions(models) {
|
|
157
|
+
const collidingIds = collidingModelIds(models);
|
|
158
|
+
const options = [];
|
|
159
|
+
const seen = new Set();
|
|
160
|
+
for (const model of models) {
|
|
161
|
+
const value = formatModelValue(model.providerId, model.modelId);
|
|
162
|
+
if (seen.has(value))
|
|
163
|
+
continue;
|
|
164
|
+
seen.add(value);
|
|
165
|
+
const qualify = collidingIds.has(model.modelId) || !isBuiltinProvider(model.providerId);
|
|
166
|
+
options.push({
|
|
167
|
+
value,
|
|
168
|
+
name: qualify ? `${model.providerName} › ${model.modelId}` : model.modelId,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
return options;
|
|
172
|
+
}
|
|
144
173
|
/**
|
|
145
174
|
* Parse a configOption `value` back into { providerId, modelId }.
|
|
146
175
|
*
|
|
147
|
-
* A value without `\` is a
|
|
148
|
-
*
|
|
176
|
+
* A value without `\` is a legacy bare modelId → resolve to the first enabled
|
|
177
|
+
* builtin provider. A value with `\` is the current provider+model encoding.
|
|
149
178
|
*/
|
|
150
179
|
export function parseModelValue(value) {
|
|
151
180
|
const idx = value.indexOf("\\");
|
|
@@ -288,14 +317,13 @@ export async function buildConfigOptions(server, zcodeSid, receiverRoot) {
|
|
|
288
317
|
// currentValue encodes provider+model so the switch handler can locate the
|
|
289
318
|
// right provider (and its apiKey). Fall back to the first enabled provider
|
|
290
319
|
// when settings omits providerId (legacy sessions).
|
|
291
|
-
const
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
//
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
}));
|
|
320
|
+
const allModels = loadAllModels();
|
|
321
|
+
const currentProvider = currentProviderId || allModels[0]?.providerId || DEFAULT_PROVIDER_ID;
|
|
322
|
+
const currentModel = formatModelValue(currentProvider, currentModelId);
|
|
323
|
+
// Model options: config.json enabled providers are authoritative. Values
|
|
324
|
+
// are always providerId\modelId. Builtin labels stay the bare modelId
|
|
325
|
+
// unless two providers ship the same id; third-party labels always qualify.
|
|
326
|
+
let modelOptions = buildModelSelectOptions(allModels);
|
|
299
327
|
if (!modelOptions.some((o) => o.value === currentModel)) {
|
|
300
328
|
// The current model isn't from an enabled provider (e.g. the session was
|
|
301
329
|
// created with a now-disabled provider). Append it so the dropdown still
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/config/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAIvC,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,GAAG,EACH,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAMjF,2EAA2E;AAC3E,SAAS,UAAU;IACjB,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAeD;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,8BAA8B,CAAC;AAClE,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAS1C;;;;;;;;;;;GAWG;AACH,SAAS,kBAAkB,CAAC,GAAW,EAAE,CAA4B;IACnE,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACrB,IAAI,iBAAiB,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpF,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC,CAAC,OAAO,EAAE,cAAc,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IACrD,OAAO,cAAc,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,4EAA4E;AAC5E,SAAS,cAAc,CAAC,GAAuB;IAC7C,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QACnC,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,KAAK,CAAC;IAC5F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,UAAU,EAAiB,CAAC;QACxC,MAAM,GAAG,GAAe,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1D,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC;gBAAE,SAAS;YAC1C,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC;YACnC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;gBAClD,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QACD,yEAAyE;QACzE,wEAAwE;QACxE,uEAAuE;QACvE,sEAAsE;QACtE,iEAAiE;QACjE,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrE,OAAO;gBACL;oBACE,UAAU,EAAE,mBAAmB;oBAC/B,YAAY,EAAE,qBAAqB;oBACnC,OAAO,EAAE,gBAAgB;iBAC1B;aACF,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL;gBACE,UAAU,EAAE,mBAAmB;gBAC/B,YAAY,EAAE,qBAAqB;gBACnC,OAAO,EAAE,gBAAgB;aAC1B;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,UAAU,EAAiB,CAAC;QACxC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,kBAAkB,CAAC,UAAkB,EAAE,OAAe;IACpE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,UAAU,EAAiB,CAAC;QACxC,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,OAAO,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,OAAe;IAClE,IAAI,iBAAiB,CAAC,UAAU,CAAC;QAAE,OAAO,OAAO,CAAC;IAClD,OAAO,GAAG,UAAU,KAAK,OAAO,EAAE,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACZ,wEAAwE;QACxE,2DAA2D;QAC3D,MAAM,YAAY,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAClF,OAAO;YACL,UAAU,EAAE,YAAY,EAAE,UAAU,IAAI,mBAAmB;YAC3D,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED;;4CAE4C;AAC5C,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAsB,EACtB,QAAuB;IAEvB,IAAI,WAAW,GAAG,MAAM,CAAC;IACzB,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAA4B,CAAC;YAClE,MAAM,OAAO,GAAI,QAAQ,CAAC,IAAgC,IAAI,EAAE,CAAC;YACjE,WAAW,GAAI,OAAO,CAAC,OAAkB,IAAI,WAAW,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IACD,OAAO;QACL,aAAa,EAAE,WAAW;QAC1B,uEAAuE;QACvE,4EAA4E;QAC5E,2BAA2B;QAC3B,cAAc,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;SACpB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,aAAa,GAAG;IACpB,KAAK;IACL,QAAQ;IACR,MAAM;IACN,OAAO;IACP,KAAK;IACL,OAAO;IACP,SAAS;IACT,UAAU;IACV,KAAK;CACN,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,QAAkB;IACrD,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;4EAM4E;AAC5E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAsB,EACtB,QAAuB,EACvB,YAAsB;IAEtB,IAAI,iBAAiB,GAAG,EAAE,CAAC;IAC3B,IAAI,cAAc,GAAG,gBAAgB,CAAC;IACtC,IAAI,WAAW,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACvD,sEAAsE;IACtE,wEAAwE;IACxE,qCAAqC;IACrC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,cAAc,GAAkD,IAAI,CAAC;IACzE,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,uEAAuE;QACvE,oEAAoE;QACpE,wEAAwE;QACxE,wEAAwE;QACxE,qEAAqE;QACrE,qEAAqE;QACrE,sBAAsB;QACtB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,GAAG,EAAE,CAAC;YACR,oEAAoE;YACpE,kEAAkE;YAClE,oEAAoE;YACpE,+DAA+D;YAC/D,mEAAmE;YACnE,8DAA8D;YAC9D,iBAAiB,GAAG,GAAG,CAAC,UAAU,CAAC;YACnC,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,UAAU,EAAiB,CAAC;gBACxC,MAAM,CAAC,GACL,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,MAMjC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACjB,MAAM,SAAS,GAAG,CAAC,EAAE,SAAS,CAAC;gBAC/B,MAAM,QAAQ,GAAG,SAAS,EAAE,QAAQ,CAAC;gBACrC,IAAI,SAAS,EAAE,OAAO,KAAK,KAAK,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpE,cAAc,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;oBAChD,cAAc,GAAG,SAAS,CAAC,cAAc,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,wDAAwD;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAA4B,CAAC;YAClE,MAAM,OAAO,GAAI,QAAQ,CAAC,IAAgC,IAAI,EAAE,CAAC;YACjE,WAAW,GAAI,OAAO,CAAC,OAAkB,IAAI,WAAW,CAAC;YACzD,MAAM,QAAQ,GAAI,QAAQ,CAAC,KAAiC,IAAI,EAAE,CAAC;YACnE,6EAA6E;YAC7E,0DAA0D;YAC1D,MAAM,GAAG,GAAI,QAAQ,CAAC,OAAqD,IAAI,EAAE,CAAC;YAClF,IAAI,GAAG,CAAC,UAAU;gBAAE,iBAAiB,GAAG,GAAG,CAAC,UAAU,CAAC;YACvD,IAAI,GAAG,CAAC,OAAO;gBAAE,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC;YAC9C,MAAM,KAAK,GAAI,QAAQ,CAAC,YAAwC,IAAI,EAAE,CAAC;YACvE,oEAAoE;YACpE,mEAAmE;YACnE,cAAc;gBACX,KAAK,CAAC,OAAkB,IAAK,KAAK,CAAC,YAAuB,IAAI,cAAc,CAAC;YAChF,MAAM,OAAO,GAAI,KAAK,CAAC,SAA2C,IAAI,EAAE,CAAC;YACzE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB;QAClB,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,YAAY,GAAG,gBAAgB,CACnC,iBAAiB,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,mBAAmB,EAC1E,cAAc,CACf,CAAC;IAEF,0EAA0E;IAC1E,wEAAwE;IACxE,0EAA0E;IAC1E,IAAI,YAAY,GAAG,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7C,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC;QAChD,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC,OAAO,EAAE;KACvF,CAAC,CAAC,CAAC;IACJ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,YAAY,CAAC,EAAE,CAAC;QACxD,yEAAyE;QACzE,yEAAyE;QACzE,8BAA8B;QAC9B,YAAY,GAAG,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,GAAG,YAAY,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,cAAc;QAAE,cAAc,GAAG,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvE,MAAM,OAAO,GAA8B;QACzC;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI;YAC5B,QAAQ,EAAE,OAA0C;YACpD,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,YAAY;SACtB;QACD;YACE,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI;YAC3B,QAAQ,EAAE,MAAyC;YACnD,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,WAAW;YACzB,OAAO,EAAE,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;SACvC;QACD;YACE,EAAE,EAAE,SAAS;YACb,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI;YAC9B,sEAAsE;YACtE,kEAAkE;YAClE,uEAAuE;YACvE,uEAAuE;YACvE,4CAA4C;YAC5C,QAAQ,EAAE,eAAkD;YAC5D,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,cAAc;YAC5B,OAAO,EAAE,cAAc;SACxB;KACF,CAAC;IAEF,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,qEAAqE;IACrE,qEAAqE;IACrE,oEAAoE;IACpE,IACE,MAAM,CAAC,SAAS;QAChB,YAAY,KAAK,SAAS;QAC1B,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC,EAC9C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC;YACX,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,uBAAuB;YAC7B,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,MAAM,CAAC,SAAS;SACO,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAsB,EACtB,QAAgB,EAChB,QAAgB,EAChB,KAAa;IAEb,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACrB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IAChD,CAAC;IACD,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;IACvC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAChC,MAAM,CAAC,MAAM,EAAE,EACf,QAAQ,CAAC,MAAM,EACf,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EACnD,KAAK,CACN,CAAC;IACF,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO,EAAE,IAAI,EAAE,QAA8B,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;;;;yDASyD;AACzD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAsB,EACtB,EAAoB,EACpB,MAAc,EACd,QAAgB,EAChB,IAAkC;IAElC,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;IACrF,MAAM,YAAY,GAAsB;QACtC,aAAa,EAAE,sBAAsB;QACrC,aAAa,EAAE,OAAO;KACvB,CAAC;IACF,MAAM,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAClD,yBAAyB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,UAAU,GAAsB;YACpC,aAAa,EAAE,qBAAqB;YACpC,aAAa,EAAE,KAAK,CAAC,aAAa;SACnC,CAAC;QACF,MAAM,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAChD,yBAAyB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,uEAAuE;QACvE,yEAAyE;QACzE,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAGlC,CAAC;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;YAC3D,0EAA0E;YAC1E,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;YACvD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;YACtF,MAAM,IAAI,GAAG,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,WAAW,GAAsB;gBACrC,aAAa,EAAE,cAAc;gBAC7B,IAAI;gBACJ,IAAI;aACL,CAAC;YACF,MAAM,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YACjD,yBAAyB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CACD,oDAAoD,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAClG,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gCAAgC;AAEhC,KAAK,UAAU,WAAW,CAAC,MAAsB,EAAE,QAAgB;IACjE,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;IACvC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAChC,MAAM,CAAC,MAAM,EAAE,EACf,cAAc,EACd,EAAE,SAAS,EAAE,QAAQ,EAAE,EACvB,IAAI,CACL,CAAC;IACF,IAAI,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAoB,CAAC;AAChD,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC"}
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/config/options.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/handlers/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAGrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,KAAK,EAGV,YAAY,EAGb,MAAM,qBAAqB,CAAC;AA0B7B,OAAO,EAEL,eAAe,EAKf,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/handlers/session.ts"],"names":[],"mappings":"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"}
|
package/dist/handlers/session.js
CHANGED
|
@@ -618,15 +618,21 @@ function isMarttyClient(server) {
|
|
|
618
618
|
* session/load and would double-render a resume replay.
|
|
619
619
|
*/
|
|
620
620
|
async function replayResumeHistory(server, cx, acpSid, zcodeSid) {
|
|
621
|
-
// Plain fetch
|
|
622
|
-
// store
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
await withReplayBatch(acpSid, () =>
|
|
628
|
-
|
|
629
|
-
|
|
621
|
+
// Plain fetch (callers only invoke this after a resume flight settled the
|
|
622
|
+
// store — see resumePreservingModel) INSIDE the batch: the guard must be
|
|
623
|
+
// held across the session/messages RPC. Fetched outside, a prompt landing
|
|
624
|
+
// in that window dispatches live turn updates through the lock-free fast
|
|
625
|
+
// path (enqueueSessionSend) and the TUI renders the new turn ABOVE the
|
|
626
|
+
// history that arrives afterwards.
|
|
627
|
+
await withReplayBatch(acpSid, async () => {
|
|
628
|
+
const messages = await fetchMessages(server, zcodeSid);
|
|
629
|
+
if (messages.length === 0)
|
|
630
|
+
return;
|
|
631
|
+
const slice = sliceTail(messages, MARTTY_RESUME_TAIL);
|
|
632
|
+
await replayMessages(cx, acpSid, slice.batch, { toolTurnWindow: MARTTY_TOOL_TURN_WINDOW });
|
|
633
|
+
log(`session/resume: replayed ${slice.meta.replayedMessages} messages for the TUI` +
|
|
634
|
+
` (tail ${MARTTY_RESUME_TAIL} of ${slice.meta.totalMessages} on record)`);
|
|
635
|
+
});
|
|
630
636
|
}
|
|
631
637
|
/**
|
|
632
638
|
* Surface a resume failure honestly, keyed on WHY the id is known. Always
|
|
@@ -825,17 +831,21 @@ export async function resumeIntoSession(server, cx, acpSid, zcodeTarget) {
|
|
|
825
831
|
warn(`/resume: adopting ${zcodeTarget} failed (${e instanceof Error ? e.message : String(e)})`);
|
|
826
832
|
return { ok: false, error: messages().slashResumeFailed };
|
|
827
833
|
}
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
834
|
+
// Fetch inside the batch (see replayResumeHistory): the guard must cover
|
|
835
|
+
// the history RPC, or a concurrent prompt renders above the replay.
|
|
836
|
+
await withReplayBatch(acpSid, async () => {
|
|
837
|
+
const history = settledHistory ?? (await fetchMessages(server, zcodeTarget));
|
|
838
|
+
if (history.length > 0)
|
|
839
|
+
server.markSessionActive(acpSid);
|
|
840
|
+
const slice = fullSlice(history);
|
|
841
|
+
await replayMessages(cx, acpSid, slice.batch, {
|
|
842
|
+
// TUI condensation (see MARTTY_TOOL_TURN_WINDOW) — an editor typing
|
|
843
|
+
// /resume keeps full-fidelity replay.
|
|
844
|
+
toolTurnWindow: isMarttyClient(server) ? MARTTY_TOOL_TURN_WINDOW : undefined,
|
|
845
|
+
});
|
|
846
|
+
log(`/resume: replayed ${slice.meta.replayedMessages} messages into ${acpSid.slice(0, 8)}` +
|
|
847
|
+
` (total ${slice.meta.totalMessages})`);
|
|
848
|
+
});
|
|
839
849
|
// Same baseline dance as session/load: mark history seen so the next turn's
|
|
840
850
|
// completion diff does not re-emit it, then emit the current todos from a
|
|
841
851
|
// throwaway differ and the initial context-usage bar.
|
|
@@ -931,35 +941,45 @@ export async function loadSession(server, params, cx, opts = {}) {
|
|
|
931
941
|
}
|
|
932
942
|
}
|
|
933
943
|
}
|
|
934
|
-
// Named `history` — a local `messages` would shadow the i18n `messages()`
|
|
935
|
-
// helper used in the error paths above (TDZ crash from the catch block).
|
|
936
|
-
// A resume flight's SETTLED snapshot is the mid-hydration guard; only an
|
|
937
|
-
// already-live session (no flight) falls back to a plain read — its store
|
|
938
|
-
// is stable.
|
|
939
|
-
const history = settledHistory ?? (await fetchMessages(server, zcodeSid));
|
|
940
|
-
// History on disk = real interaction (covers untitled sessions resumed from
|
|
941
|
-
// a previous bridge lifetime) — make the session discoverable remotely.
|
|
942
|
-
if (history.length > 0)
|
|
943
|
-
server.markSessionActive(acpSid);
|
|
944
944
|
// Tail replay (Proposal 0001): a `_meta.zcode.limit` replays only the last
|
|
945
945
|
// N messages aligned to turn boundaries — the full replay stays the default
|
|
946
946
|
// for editors that send no `_meta` (Zed path unchanged).
|
|
947
947
|
const limit = readTailLimit(params);
|
|
948
|
-
|
|
948
|
+
// Named `history` — a local `messages` would shadow the i18n `messages()`
|
|
949
|
+
// helper (TDZ crash from a catch block). A resume flight's SETTLED snapshot
|
|
950
|
+
// is the mid-hydration guard; only an already-live session (no flight) falls
|
|
951
|
+
// back to a plain read — its store is stable.
|
|
952
|
+
let slice;
|
|
949
953
|
if (opts.replayHistory === false) {
|
|
950
954
|
// Boot-resume interception (session/new): the terminal TUI client does not
|
|
951
955
|
// render replayed updates (its transcript lives in its own local store)
|
|
952
956
|
// and blocks on the response until the replay finishes — so skip the
|
|
953
957
|
// dispatch. The differ baseline below still runs, so the next turn's
|
|
954
958
|
// completion diff does not re-emit the historical messages.
|
|
959
|
+
const history = settledHistory ?? (await fetchMessages(server, zcodeSid));
|
|
960
|
+
// History on disk = real interaction (covers untitled sessions resumed from
|
|
961
|
+
// a previous bridge lifetime) — make the session discoverable remotely.
|
|
962
|
+
if (history.length > 0)
|
|
963
|
+
server.markSessionActive(acpSid);
|
|
964
|
+
slice = limit === null ? fullSlice(history) : sliceTail(history, limit);
|
|
955
965
|
log(`session/load: history replay skipped (boot-resume); ${slice.meta.totalMessages} messages on record`);
|
|
956
966
|
}
|
|
957
967
|
else {
|
|
958
|
-
|
|
959
|
-
//
|
|
960
|
-
//
|
|
961
|
-
|
|
962
|
-
|
|
968
|
+
// The whole fetch+replay runs INSIDE the batch (see replayResumeHistory):
|
|
969
|
+
// a prompt landing while the history RPC is in flight must queue behind
|
|
970
|
+
// the batch, not dispatch above the replayed history.
|
|
971
|
+
slice = await withReplayBatch(acpSid, async () => {
|
|
972
|
+
const history = settledHistory ?? (await fetchMessages(server, zcodeSid));
|
|
973
|
+
if (history.length > 0)
|
|
974
|
+
server.markSessionActive(acpSid);
|
|
975
|
+
const batchSlice = limit === null ? fullSlice(history) : sliceTail(history, limit);
|
|
976
|
+
await replayMessages(cx, acpSid, batchSlice.batch);
|
|
977
|
+
// total M always logged: a first-entry total below the session's real size
|
|
978
|
+
// is the signature of a mid-hydration read (see fetchMessagesSettled).
|
|
979
|
+
log(`session/load: replayed ${batchSlice.meta.replayedMessages} messages` +
|
|
980
|
+
` (total ${batchSlice.meta.totalMessages}${limit === null ? "" : `, tail limit ${limit}`})`);
|
|
981
|
+
return batchSlice;
|
|
982
|
+
});
|
|
963
983
|
}
|
|
964
984
|
// Replay the existing todo list as an initial plan so a loaded session shows
|
|
965
985
|
// its todos immediately.
|