page-agent-sdk 3.18.0 → 3.19.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.
@@ -101,7 +101,11 @@ async function m(e, t = {}) {
101
101
  temperature: t.temperature ?? e.temperature,
102
102
  maxTokens: t.maxTokens ?? e.maxTokens,
103
103
  ...e.baseUrl ? { anthropicApiUrl: f(e.baseUrl) } : {},
104
- ...e.extraConfig ? { clientOptions: e.extraConfig } : {}
104
+ ...e.extraConfig ? { clientOptions: e.extraConfig } : {},
105
+ ...e.cacheControl ? { invocationKwargs: { cache_control: {
106
+ type: "ephemeral",
107
+ ...e.cacheControl === !0 ? {} : { ttl: e.cacheControl }
108
+ } } } : {}
105
109
  });
106
110
  }
107
111
  //#endregion
@@ -142,10 +146,14 @@ function y(e) {
142
146
  let t = _(e);
143
147
  if (!t || typeof t != "object") return null;
144
148
  let n = t, r = Number(n.prompt_tokens ?? n.promptTokens ?? n.input_tokens ?? n.inputTokens ?? 0) || 0, i = Number(n.completion_tokens ?? n.completionTokens ?? n.output_tokens ?? n.outputTokens ?? 0) || 0, a = Number(n.total_tokens ?? n.totalTokens ?? r + i) || 0;
145
- return !r && !i && !a ? null : {
149
+ if (!r && !i && !a) return null;
150
+ let o = n.input_token_details, s = Number(n.cache_read_input_tokens ?? n.cacheReadInputTokens ?? o?.cache_read ?? 0) || 0, c = Number(n.cache_creation_input_tokens ?? n.cacheCreationInputTokens ?? o?.cache_creation ?? 0) || 0;
151
+ return {
146
152
  prompt_tokens: r,
147
153
  completion_tokens: i,
148
- total_tokens: a
154
+ total_tokens: a,
155
+ ...s ? { cache_read_input_tokens: s } : {},
156
+ ...c ? { cache_creation_input_tokens: c } : {}
149
157
  };
150
158
  }
151
159
  //#endregion
@@ -161,119 +169,119 @@ process.env.NODE_ENV === "production" || Object.freeze([]);
161
169
  var S = () => {}, C = (e) => e.charCodeAt(0) === 111 && e.charCodeAt(1) === 110 && (e.charCodeAt(2) > 122 || e.charCodeAt(2) < 97), w = (e) => e.startsWith("onUpdate:"), T = Object.assign, E = (e, t) => {
162
170
  let n = e.indexOf(t);
163
171
  n > -1 && e.splice(n, 1);
164
- }, D = Object.prototype.hasOwnProperty, O = (e, t) => D.call(e, t), k = Array.isArray, A = (e) => ie(e) === "[object Map]", ee = (e) => ie(e) === "[object Set]", j = (e) => typeof e == "function", te = (e) => typeof e == "string", ne = (e) => typeof e == "symbol", M = (e) => typeof e == "object" && !!e, N = (e) => (M(e) || j(e)) && j(e.then) && j(e.catch), re = Object.prototype.toString, ie = (e) => re.call(e), ae = (e) => ie(e).slice(8, -1), P = (e) => ie(e) === "[object Object]", F = (e) => te(e) && e !== "NaN" && e[0] !== "-" && "" + parseInt(e, 10) === e, I = ((e) => {
172
+ }, D = Object.prototype.hasOwnProperty, O = (e, t) => D.call(e, t), k = Array.isArray, A = (e) => re(e) === "[object Map]", ee = (e) => re(e) === "[object Set]", j = (e) => typeof e == "function", M = (e) => typeof e == "string", te = (e) => typeof e == "symbol", N = (e) => typeof e == "object" && !!e, P = (e) => (N(e) || j(e)) && j(e.then) && j(e.catch), ne = Object.prototype.toString, re = (e) => ne.call(e), ie = (e) => re(e).slice(8, -1), F = (e) => re(e) === "[object Object]", I = (e) => M(e) && e !== "NaN" && e[0] !== "-" && "" + parseInt(e, 10) === e, L = ((e) => {
165
173
  let t = /* @__PURE__ */ Object.create(null);
166
174
  return ((n) => t[n] || (t[n] = e(n)));
167
- })((e) => e.charAt(0).toUpperCase() + e.slice(1)), L = (e, t) => !Object.is(e, t), oe = (e, t, n, r = !1) => {
175
+ })((e) => e.charAt(0).toUpperCase() + e.slice(1)), R = (e, t) => !Object.is(e, t), ae = (e, t, n, r = !1) => {
168
176
  Object.defineProperty(e, t, {
169
177
  configurable: !0,
170
178
  enumerable: !1,
171
179
  writable: r,
172
180
  value: n
173
181
  });
174
- }, se, ce = () => se ||= typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : typeof global < "u" ? global : {};
175
- function le(e) {
182
+ }, oe, se = () => oe ||= typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : typeof global < "u" ? global : {};
183
+ function ce(e) {
176
184
  if (k(e)) {
177
185
  let t = {};
178
186
  for (let n = 0; n < e.length; n++) {
179
- let r = e[n], i = te(r) ? fe(r) : le(r);
187
+ let r = e[n], i = M(r) ? de(r) : ce(r);
180
188
  if (i) for (let e in i) t[e] = i[e];
181
189
  }
182
190
  return t;
183
- } else if (te(e) || M(e)) return e;
191
+ } else if (M(e) || N(e)) return e;
184
192
  }
185
- var ue = /;(?![^(]*\))/g, de = /:([^]+)/, R = /\/\*[^]*?\*\//g;
186
- function fe(e) {
193
+ var le = /;(?![^(]*\))/g, ue = /:([^]+)/, z = /\/\*[^]*?\*\//g;
194
+ function de(e) {
187
195
  let t = {};
188
- return e.replace(R, "").split(ue).forEach((e) => {
196
+ return e.replace(z, "").split(le).forEach((e) => {
189
197
  if (e) {
190
- let n = e.split(de);
198
+ let n = e.split(ue);
191
199
  n.length > 1 && (t[n[0].trim()] = n[1].trim());
192
200
  }
193
201
  }), t;
194
202
  }
195
- function z(e) {
203
+ function B(e) {
196
204
  let t = "";
197
- if (te(e)) t = e;
205
+ if (M(e)) t = e;
198
206
  else if (k(e)) for (let n = 0; n < e.length; n++) {
199
- let r = z(e[n]);
207
+ let r = B(e[n]);
200
208
  r && (t += r + " ");
201
209
  }
202
- else if (M(e)) for (let n in e) e[n] && (t += n + " ");
210
+ else if (N(e)) for (let n in e) e[n] && (t += n + " ");
203
211
  return t.trim();
204
212
  }
205
213
  //#endregion
206
214
  //#region node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js
207
- function B(e, ...t) {
215
+ function V(e, ...t) {
208
216
  console.warn(`[Vue warn] ${e}`, ...t);
209
217
  }
210
- var pe;
211
- function me() {
212
- return pe;
218
+ var fe;
219
+ function pe() {
220
+ return fe;
213
221
  }
214
- var V, he = /* @__PURE__ */ new WeakSet(), ge = class {
222
+ var H, me = /* @__PURE__ */ new WeakSet(), he = class {
215
223
  constructor(e) {
216
- this.fn = e, this.deps = void 0, this.depsTail = void 0, this.flags = 5, this.next = void 0, this.cleanup = void 0, this.scheduler = void 0, pe && (pe.active ? pe.effects.push(this) : this.flags &= -2);
224
+ this.fn = e, this.deps = void 0, this.depsTail = void 0, this.flags = 5, this.next = void 0, this.cleanup = void 0, this.scheduler = void 0, fe && (fe.active ? fe.effects.push(this) : this.flags &= -2);
217
225
  }
218
226
  pause() {
219
227
  this.flags |= 64;
220
228
  }
221
229
  resume() {
222
- this.flags & 64 && (this.flags &= -65, he.has(this) && (he.delete(this), this.trigger()));
230
+ this.flags & 64 && (this.flags &= -65, me.has(this) && (me.delete(this), this.trigger()));
223
231
  }
224
232
  notify() {
225
- this.flags & 2 && !(this.flags & 32) || this.flags & 8 || H(this);
233
+ this.flags & 2 && !(this.flags & 32) || this.flags & 8 || U(this);
226
234
  }
227
235
  run() {
228
236
  if (!(this.flags & 1)) return this.fn();
229
- this.flags |= 2, Ae(this), Se(this);
230
- let e = V, t = W;
231
- V = this, W = !0;
237
+ this.flags |= 2, ke(this), xe(this);
238
+ let e = H, t = G;
239
+ H = this, G = !0;
232
240
  try {
233
241
  return this.fn();
234
242
  } finally {
235
- process.env.NODE_ENV !== "production" && V !== this && B("Active effect was not restored correctly - this is likely a Vue internal bug."), Ce(this), V = e, W = t, this.flags &= -3;
243
+ process.env.NODE_ENV !== "production" && H !== this && V("Active effect was not restored correctly - this is likely a Vue internal bug."), Se(this), H = e, G = t, this.flags &= -3;
236
244
  }
237
245
  }
238
246
  stop() {
239
247
  if (this.flags & 1) {
240
- for (let e = this.deps; e; e = e.nextDep) Ee(e);
241
- this.deps = this.depsTail = void 0, Ae(this), this.onStop && this.onStop(), this.flags &= -2;
248
+ for (let e = this.deps; e; e = e.nextDep) Te(e);
249
+ this.deps = this.depsTail = void 0, ke(this), this.onStop && this.onStop(), this.flags &= -2;
242
250
  }
243
251
  }
244
252
  trigger() {
245
- this.flags & 64 ? he.add(this) : this.scheduler ? this.scheduler() : this.runIfDirty();
253
+ this.flags & 64 ? me.add(this) : this.scheduler ? this.scheduler() : this.runIfDirty();
246
254
  }
247
255
  runIfDirty() {
248
- we(this) && this.run();
256
+ Ce(this) && this.run();
249
257
  }
250
258
  get dirty() {
251
- return we(this);
259
+ return Ce(this);
252
260
  }
253
- }, _e = 0, ve, ye;
254
- function H(e, t = !1) {
261
+ }, ge = 0, _e, ve;
262
+ function U(e, t = !1) {
255
263
  if (e.flags |= 8, t) {
256
- e.next = ye, ye = e;
264
+ e.next = ve, ve = e;
257
265
  return;
258
266
  }
259
- e.next = ve, ve = e;
267
+ e.next = _e, _e = e;
260
268
  }
261
- function be() {
262
- _e++;
269
+ function ye() {
270
+ ge++;
263
271
  }
264
- function xe() {
265
- if (--_e > 0) return;
266
- if (ye) {
267
- let e = ye;
268
- for (ye = void 0; e;) {
272
+ function be() {
273
+ if (--ge > 0) return;
274
+ if (ve) {
275
+ let e = ve;
276
+ for (ve = void 0; e;) {
269
277
  let t = e.next;
270
278
  e.next = void 0, e.flags &= -9, e = t;
271
279
  }
272
280
  }
273
281
  let e;
274
- for (; ve;) {
275
- let t = ve;
276
- for (ve = void 0; t;) {
282
+ for (; _e;) {
283
+ let t = _e;
284
+ for (_e = void 0; t;) {
277
285
  let n = t.next;
278
286
  if (t.next = void 0, t.flags &= -9, t.flags & 1) try {
279
287
  t.trigger();
@@ -285,127 +293,127 @@ function xe() {
285
293
  }
286
294
  if (e) throw e;
287
295
  }
288
- function Se(e) {
296
+ function xe(e) {
289
297
  for (let t = e.deps; t; t = t.nextDep) t.version = -1, t.prevActiveLink = t.dep.activeLink, t.dep.activeLink = t;
290
298
  }
291
- function Ce(e) {
299
+ function Se(e) {
292
300
  let t, n = e.depsTail, r = n;
293
301
  for (; r;) {
294
302
  let e = r.prevDep;
295
- r.version === -1 ? (r === n && (n = e), Ee(r), U(r)) : t = r, r.dep.activeLink = r.prevActiveLink, r.prevActiveLink = void 0, r = e;
303
+ r.version === -1 ? (r === n && (n = e), Te(r), W(r)) : t = r, r.dep.activeLink = r.prevActiveLink, r.prevActiveLink = void 0, r = e;
296
304
  }
297
305
  e.deps = t, e.depsTail = n;
298
306
  }
299
- function we(e) {
300
- for (let t = e.deps; t; t = t.nextDep) if (t.dep.version !== t.version || t.dep.computed && (Te(t.dep.computed) || t.dep.version !== t.version)) return !0;
307
+ function Ce(e) {
308
+ for (let t = e.deps; t; t = t.nextDep) if (t.dep.version !== t.version || t.dep.computed && (we(t.dep.computed) || t.dep.version !== t.version)) return !0;
301
309
  return !!e._dirty;
302
310
  }
303
- function Te(e) {
304
- if (e.flags & 4 && !(e.flags & 16) || (e.flags &= -17, e.globalVersion === je) || (e.globalVersion = je, !e.isSSR && e.flags & 128 && (!e.deps && !e._dirty || !we(e)))) return;
311
+ function we(e) {
312
+ if (e.flags & 4 && !(e.flags & 16) || (e.flags &= -17, e.globalVersion === Ae) || (e.globalVersion = Ae, !e.isSSR && e.flags & 128 && (!e.deps && !e._dirty || !Ce(e)))) return;
305
313
  e.flags |= 2;
306
- let t = e.dep, n = V, r = W;
307
- V = e, W = !0;
314
+ let t = e.dep, n = H, r = G;
315
+ H = e, G = !0;
308
316
  try {
309
- Se(e);
317
+ xe(e);
310
318
  let n = e.fn(e._value);
311
- (t.version === 0 || L(n, e._value)) && (e.flags |= 128, e._value = n, t.version++);
319
+ (t.version === 0 || R(n, e._value)) && (e.flags |= 128, e._value = n, t.version++);
312
320
  } catch (e) {
313
321
  throw t.version++, e;
314
322
  } finally {
315
- V = n, W = r, Ce(e), e.flags &= -3;
323
+ H = n, G = r, Se(e), e.flags &= -3;
316
324
  }
317
325
  }
318
- function Ee(e, t = !1) {
326
+ function Te(e, t = !1) {
319
327
  let { dep: n, prevSub: r, nextSub: i } = e;
320
328
  if (r && (r.nextSub = i, e.prevSub = void 0), i && (i.prevSub = r, e.nextSub = void 0), process.env.NODE_ENV !== "production" && n.subsHead === e && (n.subsHead = i), n.subs === e && (n.subs = r, !r && n.computed)) {
321
329
  n.computed.flags &= -5;
322
- for (let e = n.computed.deps; e; e = e.nextDep) Ee(e, !0);
330
+ for (let e = n.computed.deps; e; e = e.nextDep) Te(e, !0);
323
331
  }
324
332
  !t && !--n.sc && n.map && n.map.delete(n.key);
325
333
  }
326
- function U(e) {
334
+ function W(e) {
327
335
  let { prevDep: t, nextDep: n } = e;
328
336
  t && (t.nextDep = n, e.prevDep = void 0), n && (n.prevDep = t, e.nextDep = void 0);
329
337
  }
330
- var W = !0, De = [];
331
- function Oe() {
332
- De.push(W), W = !1;
338
+ var G = !0, Ee = [];
339
+ function De() {
340
+ Ee.push(G), G = !1;
333
341
  }
334
- function ke() {
335
- let e = De.pop();
336
- W = e === void 0 || e;
342
+ function Oe() {
343
+ let e = Ee.pop();
344
+ G = e === void 0 || e;
337
345
  }
338
- function Ae(e) {
346
+ function ke(e) {
339
347
  let { cleanup: t } = e;
340
348
  if (e.cleanup = void 0, t) {
341
- let e = V;
342
- V = void 0;
349
+ let e = H;
350
+ H = void 0;
343
351
  try {
344
352
  t();
345
353
  } finally {
346
- V = e;
354
+ H = e;
347
355
  }
348
356
  }
349
357
  }
350
- var je = 0, Me = class {
358
+ var Ae = 0, je = class {
351
359
  constructor(e, t) {
352
360
  this.sub = e, this.dep = t, this.version = t.version, this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0;
353
361
  }
354
- }, Ne = class {
362
+ }, Me = class {
355
363
  constructor(e) {
356
364
  this.computed = e, this.version = 0, this.activeLink = void 0, this.subs = void 0, this.map = void 0, this.key = void 0, this.sc = 0, this.__v_skip = !0, process.env.NODE_ENV !== "production" && (this.subsHead = void 0);
357
365
  }
358
366
  track(e) {
359
- if (!V || !W || V === this.computed) return;
367
+ if (!H || !G || H === this.computed) return;
360
368
  let t = this.activeLink;
361
- if (t === void 0 || t.sub !== V) t = this.activeLink = new Me(V, this), V.deps ? (t.prevDep = V.depsTail, V.depsTail.nextDep = t, V.depsTail = t) : V.deps = V.depsTail = t, Pe(t);
369
+ if (t === void 0 || t.sub !== H) t = this.activeLink = new je(H, this), H.deps ? (t.prevDep = H.depsTail, H.depsTail.nextDep = t, H.depsTail = t) : H.deps = H.depsTail = t, Ne(t);
362
370
  else if (t.version === -1 && (t.version = this.version, t.nextDep)) {
363
371
  let e = t.nextDep;
364
- e.prevDep = t.prevDep, t.prevDep && (t.prevDep.nextDep = e), t.prevDep = V.depsTail, t.nextDep = void 0, V.depsTail.nextDep = t, V.depsTail = t, V.deps === t && (V.deps = e);
372
+ e.prevDep = t.prevDep, t.prevDep && (t.prevDep.nextDep = e), t.prevDep = H.depsTail, t.nextDep = void 0, H.depsTail.nextDep = t, H.depsTail = t, H.deps === t && (H.deps = e);
365
373
  }
366
- return process.env.NODE_ENV !== "production" && V.onTrack && V.onTrack(T({ effect: V }, e)), t;
374
+ return process.env.NODE_ENV !== "production" && H.onTrack && H.onTrack(T({ effect: H }, e)), t;
367
375
  }
368
376
  trigger(e) {
369
- this.version++, je++, this.notify(e);
377
+ this.version++, Ae++, this.notify(e);
370
378
  }
371
379
  notify(e) {
372
- be();
380
+ ye();
373
381
  try {
374
382
  if (process.env.NODE_ENV !== "production") for (let t = this.subsHead; t; t = t.nextSub) t.sub.onTrigger && !(t.sub.flags & 8) && t.sub.onTrigger(T({ effect: t.sub }, e));
375
383
  for (let e = this.subs; e; e = e.prevSub) e.sub.notify() && e.sub.dep.notify();
376
384
  } finally {
377
- xe();
385
+ be();
378
386
  }
379
387
  }
380
388
  };
381
- function Pe(e) {
389
+ function Ne(e) {
382
390
  if (e.dep.sc++, e.sub.flags & 4) {
383
391
  let t = e.dep.computed;
384
392
  if (t && !e.dep.subs) {
385
393
  t.flags |= 20;
386
- for (let e = t.deps; e; e = e.nextDep) Pe(e);
394
+ for (let e = t.deps; e; e = e.nextDep) Ne(e);
387
395
  }
388
396
  let n = e.dep.subs;
389
397
  n !== e && (e.prevSub = n, n && (n.nextSub = e)), process.env.NODE_ENV !== "production" && e.dep.subsHead === void 0 && (e.dep.subsHead = e), e.dep.subs = e;
390
398
  }
391
399
  }
392
- var Fe = /* @__PURE__ */ new WeakMap(), Ie = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Object iterate"), Le = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Map keys iterate"), Re = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Array iterate");
393
- function G(e, t, n) {
394
- if (W && V) {
395
- let r = Fe.get(e);
396
- r || Fe.set(e, r = /* @__PURE__ */ new Map());
400
+ var Pe = /* @__PURE__ */ new WeakMap(), Fe = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Object iterate"), Ie = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Map keys iterate"), Le = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Array iterate");
401
+ function K(e, t, n) {
402
+ if (G && H) {
403
+ let r = Pe.get(e);
404
+ r || Pe.set(e, r = /* @__PURE__ */ new Map());
397
405
  let i = r.get(n);
398
- i || (r.set(n, i = new Ne()), i.map = r, i.key = n), process.env.NODE_ENV === "production" ? i.track() : i.track({
406
+ i || (r.set(n, i = new Me()), i.map = r, i.key = n), process.env.NODE_ENV === "production" ? i.track() : i.track({
399
407
  target: e,
400
408
  type: t,
401
409
  key: n
402
410
  });
403
411
  }
404
412
  }
405
- function ze(e, t, n, r, i, a) {
406
- let o = Fe.get(e);
413
+ function Re(e, t, n, r, i, a) {
414
+ let o = Pe.get(e);
407
415
  if (!o) {
408
- je++;
416
+ Ae++;
409
417
  return;
410
418
  }
411
419
  let s = (o) => {
@@ -418,173 +426,173 @@ function ze(e, t, n, r, i, a) {
418
426
  oldTarget: a
419
427
  }));
420
428
  };
421
- if (be(), t === "clear") o.forEach(s);
429
+ if (ye(), t === "clear") o.forEach(s);
422
430
  else {
423
- let i = k(e), a = i && F(n);
431
+ let i = k(e), a = i && I(n);
424
432
  if (i && n === "length") {
425
433
  let e = Number(r);
426
434
  o.forEach((t, n) => {
427
- (n === "length" || n === Re || !ne(n) && n >= e) && s(t);
435
+ (n === "length" || n === Le || !te(n) && n >= e) && s(t);
428
436
  });
429
- } else switch ((n !== void 0 || o.has(void 0)) && s(o.get(n)), a && s(o.get(Re)), t) {
437
+ } else switch ((n !== void 0 || o.has(void 0)) && s(o.get(n)), a && s(o.get(Le)), t) {
430
438
  case "add":
431
- i ? a && s(o.get("length")) : (s(o.get(Ie)), A(e) && s(o.get(Le)));
439
+ i ? a && s(o.get("length")) : (s(o.get(Fe)), A(e) && s(o.get(Ie)));
432
440
  break;
433
441
  case "delete":
434
- i || (s(o.get(Ie)), A(e) && s(o.get(Le)));
442
+ i || (s(o.get(Fe)), A(e) && s(o.get(Ie)));
435
443
  break;
436
444
  case "set":
437
- A(e) && s(o.get(Ie));
445
+ A(e) && s(o.get(Fe));
438
446
  break;
439
447
  }
440
448
  }
441
- xe();
449
+ be();
442
450
  }
443
- function Be(e) {
444
- let t = /* @__PURE__ */ q(e);
445
- return t === e ? t : (G(t, "iterate", Re), /* @__PURE__ */ Tt(e) ? t : t.map(Ot));
451
+ function ze(e) {
452
+ let t = /* @__PURE__ */ J(e);
453
+ return t === e ? t : (K(t, "iterate", Le), /* @__PURE__ */ wt(e) ? t : t.map(Dt));
446
454
  }
447
- function Ve(e) {
448
- return G(e = /* @__PURE__ */ q(e), "iterate", Re), e;
455
+ function Be(e) {
456
+ return K(e = /* @__PURE__ */ J(e), "iterate", Le), e;
449
457
  }
450
- function He(e, t) {
451
- return /* @__PURE__ */ wt(e) ? kt(/* @__PURE__ */ Ct(e) ? Ot(t) : t) : Ot(t);
458
+ function Ve(e, t) {
459
+ return /* @__PURE__ */ Ct(e) ? Ot(/* @__PURE__ */ St(e) ? Dt(t) : t) : Dt(t);
452
460
  }
453
- var Ue = {
461
+ var He = {
454
462
  __proto__: null,
455
463
  [Symbol.iterator]() {
456
- return We(this, Symbol.iterator, (e) => He(this, e));
464
+ return Ue(this, Symbol.iterator, (e) => Ve(this, e));
457
465
  },
458
466
  concat(...e) {
459
- return Be(this).concat(...e.map((e) => k(e) ? Be(e) : e));
467
+ return ze(this).concat(...e.map((e) => k(e) ? ze(e) : e));
460
468
  },
461
469
  entries() {
462
- return We(this, "entries", (e) => (e[1] = He(this, e[1]), e));
470
+ return Ue(this, "entries", (e) => (e[1] = Ve(this, e[1]), e));
463
471
  },
464
472
  every(e, t) {
465
- return Ke(this, "every", e, t, void 0, arguments);
473
+ return Ge(this, "every", e, t, void 0, arguments);
466
474
  },
467
475
  filter(e, t) {
468
- return Ke(this, "filter", e, t, (e) => e.map((e) => He(this, e)), arguments);
476
+ return Ge(this, "filter", e, t, (e) => e.map((e) => Ve(this, e)), arguments);
469
477
  },
470
478
  find(e, t) {
471
- return Ke(this, "find", e, t, (e) => He(this, e), arguments);
479
+ return Ge(this, "find", e, t, (e) => Ve(this, e), arguments);
472
480
  },
473
481
  findIndex(e, t) {
474
- return Ke(this, "findIndex", e, t, void 0, arguments);
482
+ return Ge(this, "findIndex", e, t, void 0, arguments);
475
483
  },
476
484
  findLast(e, t) {
477
- return Ke(this, "findLast", e, t, (e) => He(this, e), arguments);
485
+ return Ge(this, "findLast", e, t, (e) => Ve(this, e), arguments);
478
486
  },
479
487
  findLastIndex(e, t) {
480
- return Ke(this, "findLastIndex", e, t, void 0, arguments);
488
+ return Ge(this, "findLastIndex", e, t, void 0, arguments);
481
489
  },
482
490
  forEach(e, t) {
483
- return Ke(this, "forEach", e, t, void 0, arguments);
491
+ return Ge(this, "forEach", e, t, void 0, arguments);
484
492
  },
485
493
  includes(...e) {
486
- return Je(this, "includes", e);
494
+ return qe(this, "includes", e);
487
495
  },
488
496
  indexOf(...e) {
489
- return Je(this, "indexOf", e);
497
+ return qe(this, "indexOf", e);
490
498
  },
491
499
  join(e) {
492
- return Be(this).join(e);
500
+ return ze(this).join(e);
493
501
  },
494
502
  lastIndexOf(...e) {
495
- return Je(this, "lastIndexOf", e);
503
+ return qe(this, "lastIndexOf", e);
496
504
  },
497
505
  map(e, t) {
498
- return Ke(this, "map", e, t, void 0, arguments);
506
+ return Ge(this, "map", e, t, void 0, arguments);
499
507
  },
500
508
  pop() {
501
- return Ye(this, "pop");
509
+ return Je(this, "pop");
502
510
  },
503
511
  push(...e) {
504
- return Ye(this, "push", e);
512
+ return Je(this, "push", e);
505
513
  },
506
514
  reduce(e, ...t) {
507
- return qe(this, "reduce", e, t);
515
+ return Ke(this, "reduce", e, t);
508
516
  },
509
517
  reduceRight(e, ...t) {
510
- return qe(this, "reduceRight", e, t);
518
+ return Ke(this, "reduceRight", e, t);
511
519
  },
512
520
  shift() {
513
- return Ye(this, "shift");
521
+ return Je(this, "shift");
514
522
  },
515
523
  some(e, t) {
516
- return Ke(this, "some", e, t, void 0, arguments);
524
+ return Ge(this, "some", e, t, void 0, arguments);
517
525
  },
518
526
  splice(...e) {
519
- return Ye(this, "splice", e);
527
+ return Je(this, "splice", e);
520
528
  },
521
529
  toReversed() {
522
- return Be(this).toReversed();
530
+ return ze(this).toReversed();
523
531
  },
524
532
  toSorted(e) {
525
- return Be(this).toSorted(e);
533
+ return ze(this).toSorted(e);
526
534
  },
527
535
  toSpliced(...e) {
528
- return Be(this).toSpliced(...e);
536
+ return ze(this).toSpliced(...e);
529
537
  },
530
538
  unshift(...e) {
531
- return Ye(this, "unshift", e);
539
+ return Je(this, "unshift", e);
532
540
  },
533
541
  values() {
534
- return We(this, "values", (e) => He(this, e));
542
+ return Ue(this, "values", (e) => Ve(this, e));
535
543
  }
536
544
  };
537
- function We(e, t, n) {
538
- let r = Ve(e), i = r[t]();
539
- return r !== e && !/* @__PURE__ */ Tt(e) && (i._next = i.next, i.next = () => {
545
+ function Ue(e, t, n) {
546
+ let r = Be(e), i = r[t]();
547
+ return r !== e && !/* @__PURE__ */ wt(e) && (i._next = i.next, i.next = () => {
540
548
  let e = i._next();
541
549
  return e.done || (e.value = n(e.value)), e;
542
550
  }), i;
543
551
  }
544
- var Ge = Array.prototype;
545
- function Ke(e, t, n, r, i, a) {
546
- let o = Ve(e), s = o !== e && !/* @__PURE__ */ Tt(e), c = o[t];
547
- if (c !== Ge[t]) {
552
+ var We = Array.prototype;
553
+ function Ge(e, t, n, r, i, a) {
554
+ let o = Be(e), s = o !== e && !/* @__PURE__ */ wt(e), c = o[t];
555
+ if (c !== We[t]) {
548
556
  let t = c.apply(e, a);
549
- return s ? Ot(t) : t;
557
+ return s ? Dt(t) : t;
550
558
  }
551
559
  let l = n;
552
560
  o !== e && (s ? l = function(t, r) {
553
- return n.call(this, He(e, t), r, e);
561
+ return n.call(this, Ve(e, t), r, e);
554
562
  } : n.length > 2 && (l = function(t, r) {
555
563
  return n.call(this, t, r, e);
556
564
  }));
557
565
  let u = c.call(o, l, r);
558
566
  return s && i ? i(u) : u;
559
567
  }
560
- function qe(e, t, n, r) {
561
- let i = Ve(e), a = i !== e && !/* @__PURE__ */ Tt(e), o = n, s = !1;
568
+ function Ke(e, t, n, r) {
569
+ let i = Be(e), a = i !== e && !/* @__PURE__ */ wt(e), o = n, s = !1;
562
570
  i !== e && (a ? (s = r.length === 0, o = function(t, r, i) {
563
- return s && (s = !1, t = He(e, t)), n.call(this, t, He(e, r), i, e);
571
+ return s && (s = !1, t = Ve(e, t)), n.call(this, t, Ve(e, r), i, e);
564
572
  }) : n.length > 3 && (o = function(t, r, i) {
565
573
  return n.call(this, t, r, i, e);
566
574
  }));
567
575
  let c = i[t](o, ...r);
568
- return s ? He(e, c) : c;
576
+ return s ? Ve(e, c) : c;
569
577
  }
570
- function Je(e, t, n) {
571
- let r = /* @__PURE__ */ q(e);
572
- G(r, "iterate", Re);
578
+ function qe(e, t, n) {
579
+ let r = /* @__PURE__ */ J(e);
580
+ K(r, "iterate", Le);
573
581
  let i = r[t](...n);
574
- return (i === -1 || i === !1) && /* @__PURE__ */ Et(n[0]) ? (n[0] = /* @__PURE__ */ q(n[0]), r[t](...n)) : i;
582
+ return (i === -1 || i === !1) && /* @__PURE__ */ Tt(n[0]) ? (n[0] = /* @__PURE__ */ J(n[0]), r[t](...n)) : i;
575
583
  }
576
- function Ye(e, t, n = []) {
577
- Oe(), be();
578
- let r = (/* @__PURE__ */ q(e))[t].apply(e, n);
579
- return xe(), ke(), r;
584
+ function Je(e, t, n = []) {
585
+ De(), ye();
586
+ let r = (/* @__PURE__ */ J(e))[t].apply(e, n);
587
+ return be(), Oe(), r;
580
588
  }
581
- var Xe = /* @__PURE__ */ b("__proto__,__v_isRef,__isVue"), Ze = new Set(/* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((e) => e !== "arguments" && e !== "caller").map((e) => Symbol[e]).filter(ne));
582
- function Qe(e) {
583
- ne(e) || (e = String(e));
584
- let t = /* @__PURE__ */ q(this);
585
- return G(t, "has", e), t.hasOwnProperty(e);
589
+ var Ye = /* @__PURE__ */ b("__proto__,__v_isRef,__isVue"), Xe = new Set(/* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((e) => e !== "arguments" && e !== "caller").map((e) => Symbol[e]).filter(te));
590
+ function Ze(e) {
591
+ te(e) || (e = String(e));
592
+ let t = /* @__PURE__ */ J(this);
593
+ return K(t, "has", e), t.hasOwnProperty(e);
586
594
  }
587
- var $e = class {
595
+ var Qe = class {
588
596
  constructor(e = !1, t = !1) {
589
597
  this._isReadonly = e, this._isShallow = t;
590
598
  }
@@ -594,60 +602,60 @@ var $e = class {
594
602
  if (t === "__v_isReactive") return !r;
595
603
  if (t === "__v_isReadonly") return r;
596
604
  if (t === "__v_isShallow") return i;
597
- if (t === "__v_raw") return n === (r ? i ? _t : gt : i ? ht : mt).get(e) || Object.getPrototypeOf(e) === Object.getPrototypeOf(n) ? e : void 0;
605
+ if (t === "__v_raw") return n === (r ? i ? gt : ht : i ? mt : pt).get(e) || Object.getPrototypeOf(e) === Object.getPrototypeOf(n) ? e : void 0;
598
606
  let a = k(e);
599
607
  if (!r) {
600
608
  let e;
601
- if (a && (e = Ue[t])) return e;
602
- if (t === "hasOwnProperty") return Qe;
609
+ if (a && (e = He[t])) return e;
610
+ if (t === "hasOwnProperty") return Ze;
603
611
  }
604
- let o = Reflect.get(e, t, /* @__PURE__ */ J(e) ? e : n);
605
- if ((ne(t) ? Ze.has(t) : Xe(t)) || (r || G(e, "get", t), i)) return o;
606
- if (/* @__PURE__ */ J(o)) {
607
- let e = a && F(t) ? o : o.value;
608
- return r && M(e) ? /* @__PURE__ */ bt(e) : e;
612
+ let o = Reflect.get(e, t, /* @__PURE__ */ kt(e) ? e : n);
613
+ if ((te(t) ? Xe.has(t) : Ye(t)) || (r || K(e, "get", t), i)) return o;
614
+ if (/* @__PURE__ */ kt(o)) {
615
+ let e = a && I(t) ? o : o.value;
616
+ return r && N(e) ? /* @__PURE__ */ yt(e) : e;
609
617
  }
610
- return M(o) ? r ? /* @__PURE__ */ bt(o) : /* @__PURE__ */ yt(o) : o;
618
+ return N(o) ? r ? /* @__PURE__ */ yt(o) : /* @__PURE__ */ vt(o) : o;
611
619
  }
612
- }, et = class extends $e {
620
+ }, $e = class extends Qe {
613
621
  constructor(e = !1) {
614
622
  super(!1, e);
615
623
  }
616
624
  set(e, t, n, r) {
617
- let i = e[t], a = k(e) && F(t);
625
+ let i = e[t], a = k(e) && I(t);
618
626
  if (!this._isShallow) {
619
- let r = /* @__PURE__ */ wt(i);
620
- if (!/* @__PURE__ */ Tt(n) && !/* @__PURE__ */ wt(n) && (i = /* @__PURE__ */ q(i), n = /* @__PURE__ */ q(n)), !a && /* @__PURE__ */ J(i) && !/* @__PURE__ */ J(n)) return r ? (process.env.NODE_ENV !== "production" && B(`Set operation on key "${String(t)}" failed: target is readonly.`, e[t]), !0) : (i.value = n, !0);
627
+ let r = /* @__PURE__ */ Ct(i);
628
+ if (!/* @__PURE__ */ wt(n) && !/* @__PURE__ */ Ct(n) && (i = /* @__PURE__ */ J(i), n = /* @__PURE__ */ J(n)), !a && /* @__PURE__ */ kt(i) && !/* @__PURE__ */ kt(n)) return r ? (process.env.NODE_ENV !== "production" && V(`Set operation on key "${String(t)}" failed: target is readonly.`, e[t]), !0) : (i.value = n, !0);
621
629
  }
622
- let o = a ? Number(t) < e.length : O(e, t), s = Reflect.set(e, t, n, /* @__PURE__ */ J(e) ? e : r);
623
- return e === /* @__PURE__ */ q(r) && s && (o ? L(n, i) && ze(e, "set", t, n, i) : ze(e, "add", t, n)), s;
630
+ let o = a ? Number(t) < e.length : O(e, t), s = Reflect.set(e, t, n, /* @__PURE__ */ kt(e) ? e : r);
631
+ return e === /* @__PURE__ */ J(r) && s && (o ? R(n, i) && Re(e, "set", t, n, i) : Re(e, "add", t, n)), s;
624
632
  }
625
633
  deleteProperty(e, t) {
626
634
  let n = O(e, t), r = e[t], i = Reflect.deleteProperty(e, t);
627
- return i && n && ze(e, "delete", t, void 0, r), i;
635
+ return i && n && Re(e, "delete", t, void 0, r), i;
628
636
  }
629
637
  has(e, t) {
630
638
  let n = Reflect.has(e, t);
631
- return (!ne(t) || !Ze.has(t)) && G(e, "has", t), n;
639
+ return (!te(t) || !Xe.has(t)) && K(e, "has", t), n;
632
640
  }
633
641
  ownKeys(e) {
634
- return G(e, "iterate", k(e) ? "length" : Ie), Reflect.ownKeys(e);
642
+ return K(e, "iterate", k(e) ? "length" : Fe), Reflect.ownKeys(e);
635
643
  }
636
- }, tt = class extends $e {
644
+ }, et = class extends Qe {
637
645
  constructor(e = !1) {
638
646
  super(!0, e);
639
647
  }
640
648
  set(e, t) {
641
- return process.env.NODE_ENV !== "production" && B(`Set operation on key "${String(t)}" failed: target is readonly.`, e), !0;
649
+ return process.env.NODE_ENV !== "production" && V(`Set operation on key "${String(t)}" failed: target is readonly.`, e), !0;
642
650
  }
643
651
  deleteProperty(e, t) {
644
- return process.env.NODE_ENV !== "production" && B(`Delete operation on key "${String(t)}" failed: target is readonly.`, e), !0;
652
+ return process.env.NODE_ENV !== "production" && V(`Delete operation on key "${String(t)}" failed: target is readonly.`, e), !0;
645
653
  }
646
- }, nt = /* @__PURE__ */ new et(), rt = /* @__PURE__ */ new tt(), it = /* @__PURE__ */ new tt(!0), at = (e) => e, K = (e) => Reflect.getPrototypeOf(e);
647
- function ot(e, t, n) {
654
+ }, tt = /* @__PURE__ */ new $e(), nt = /* @__PURE__ */ new et(), rt = /* @__PURE__ */ new et(!0), it = (e) => e, q = (e) => Reflect.getPrototypeOf(e);
655
+ function at(e, t, n) {
648
656
  return function(...r) {
649
- let i = this.__v_raw, a = /* @__PURE__ */ q(i), o = A(a), s = e === "entries" || e === Symbol.iterator && o, c = e === "keys" && o, l = i[e](...r), u = n ? at : t ? kt : Ot;
650
- return !t && G(a, "iterate", c ? Le : Ie), T(Object.create(l), { next() {
657
+ let i = this.__v_raw, a = /* @__PURE__ */ J(i), o = A(a), s = e === "entries" || e === Symbol.iterator && o, c = e === "keys" && o, l = i[e](...r), u = n ? it : t ? Ot : Dt;
658
+ return !t && K(a, "iterate", c ? Ie : Fe), T(Object.create(l), { next() {
651
659
  let { value: e, done: t } = l.next();
652
660
  return t ? {
653
661
  value: e,
@@ -659,64 +667,64 @@ function ot(e, t, n) {
659
667
  } });
660
668
  };
661
669
  }
662
- function st(e) {
670
+ function ot(e) {
663
671
  return function(...t) {
664
672
  if (process.env.NODE_ENV !== "production") {
665
673
  let n = t[0] ? `on key "${t[0]}" ` : "";
666
- B(`${I(e)} operation ${n}failed: target is readonly.`, /* @__PURE__ */ q(this));
674
+ V(`${L(e)} operation ${n}failed: target is readonly.`, /* @__PURE__ */ J(this));
667
675
  }
668
676
  return e === "delete" ? !1 : e === "clear" ? void 0 : this;
669
677
  };
670
678
  }
671
- function ct(e, t) {
679
+ function st(e, t) {
672
680
  let n = {
673
681
  get(n) {
674
- let r = this.__v_raw, i = /* @__PURE__ */ q(r), a = /* @__PURE__ */ q(n);
675
- e || (L(n, a) && G(i, "get", n), G(i, "get", a));
676
- let { has: o } = K(i), s = t ? at : e ? kt : Ot;
682
+ let r = this.__v_raw, i = /* @__PURE__ */ J(r), a = /* @__PURE__ */ J(n);
683
+ e || (R(n, a) && K(i, "get", n), K(i, "get", a));
684
+ let { has: o } = q(i), s = t ? it : e ? Ot : Dt;
677
685
  if (o.call(i, n)) return s(r.get(n));
678
686
  if (o.call(i, a)) return s(r.get(a));
679
687
  r !== i && r.get(n);
680
688
  },
681
689
  get size() {
682
690
  let t = this.__v_raw;
683
- return !e && G(/* @__PURE__ */ q(t), "iterate", Ie), t.size;
691
+ return !e && K(/* @__PURE__ */ J(t), "iterate", Fe), t.size;
684
692
  },
685
693
  has(t) {
686
- let n = this.__v_raw, r = /* @__PURE__ */ q(n), i = /* @__PURE__ */ q(t);
687
- return e || (L(t, i) && G(r, "has", t), G(r, "has", i)), t === i ? n.has(t) : n.has(t) || n.has(i);
694
+ let n = this.__v_raw, r = /* @__PURE__ */ J(n), i = /* @__PURE__ */ J(t);
695
+ return e || (R(t, i) && K(r, "has", t), K(r, "has", i)), t === i ? n.has(t) : n.has(t) || n.has(i);
688
696
  },
689
697
  forEach(n, r) {
690
- let i = this, a = i.__v_raw, o = /* @__PURE__ */ q(a), s = t ? at : e ? kt : Ot;
691
- return !e && G(o, "iterate", Ie), a.forEach((e, t) => n.call(r, s(e), s(t), i));
698
+ let i = this, a = i.__v_raw, o = /* @__PURE__ */ J(a), s = t ? it : e ? Ot : Dt;
699
+ return !e && K(o, "iterate", Fe), a.forEach((e, t) => n.call(r, s(e), s(t), i));
692
700
  }
693
701
  };
694
702
  return T(n, e ? {
695
- add: st("add"),
696
- set: st("set"),
697
- delete: st("delete"),
698
- clear: st("clear")
703
+ add: ot("add"),
704
+ set: ot("set"),
705
+ delete: ot("delete"),
706
+ clear: ot("clear")
699
707
  } : {
700
708
  add(e) {
701
- let n = /* @__PURE__ */ q(this), r = K(n), i = /* @__PURE__ */ q(e), a = !t && !/* @__PURE__ */ Tt(e) && !/* @__PURE__ */ wt(e) ? i : e;
702
- return r.has.call(n, a) || L(e, a) && r.has.call(n, e) || L(i, a) && r.has.call(n, i) || (n.add(a), ze(n, "add", a, a)), this;
709
+ let n = /* @__PURE__ */ J(this), r = q(n), i = /* @__PURE__ */ J(e), a = !t && !/* @__PURE__ */ wt(e) && !/* @__PURE__ */ Ct(e) ? i : e;
710
+ return r.has.call(n, a) || R(e, a) && r.has.call(n, e) || R(i, a) && r.has.call(n, i) || (n.add(a), Re(n, "add", a, a)), this;
703
711
  },
704
712
  set(e, n) {
705
- !t && !/* @__PURE__ */ Tt(n) && !/* @__PURE__ */ wt(n) && (n = /* @__PURE__ */ q(n));
706
- let r = /* @__PURE__ */ q(this), { has: i, get: a } = K(r), o = i.call(r, e);
707
- o ? process.env.NODE_ENV !== "production" && pt(r, i, e) : (e = /* @__PURE__ */ q(e), o = i.call(r, e));
713
+ !t && !/* @__PURE__ */ wt(n) && !/* @__PURE__ */ Ct(n) && (n = /* @__PURE__ */ J(n));
714
+ let r = /* @__PURE__ */ J(this), { has: i, get: a } = q(r), o = i.call(r, e);
715
+ o ? process.env.NODE_ENV !== "production" && ft(r, i, e) : (e = /* @__PURE__ */ J(e), o = i.call(r, e));
708
716
  let s = a.call(r, e);
709
- return r.set(e, n), o ? L(n, s) && ze(r, "set", e, n, s) : ze(r, "add", e, n), this;
717
+ return r.set(e, n), o ? R(n, s) && Re(r, "set", e, n, s) : Re(r, "add", e, n), this;
710
718
  },
711
719
  delete(e) {
712
- let t = /* @__PURE__ */ q(this), { has: n, get: r } = K(t), i = n.call(t, e);
713
- i ? process.env.NODE_ENV !== "production" && pt(t, n, e) : (e = /* @__PURE__ */ q(e), i = n.call(t, e));
720
+ let t = /* @__PURE__ */ J(this), { has: n, get: r } = q(t), i = n.call(t, e);
721
+ i ? process.env.NODE_ENV !== "production" && ft(t, n, e) : (e = /* @__PURE__ */ J(e), i = n.call(t, e));
714
722
  let a = r ? r.call(t, e) : void 0, o = t.delete(e);
715
- return i && ze(t, "delete", e, void 0, a), o;
723
+ return i && Re(t, "delete", e, void 0, a), o;
716
724
  },
717
725
  clear() {
718
- let e = /* @__PURE__ */ q(this), t = e.size !== 0, n = process.env.NODE_ENV === "production" ? void 0 : A(e) ? new Map(e) : new Set(e), r = e.clear();
719
- return t && ze(e, "clear", void 0, void 0, n), r;
726
+ let e = /* @__PURE__ */ J(this), t = e.size !== 0, n = process.env.NODE_ENV === "production" ? void 0 : A(e) ? new Map(e) : new Set(e), r = e.clear();
727
+ return t && Re(e, "clear", void 0, void 0, n), r;
720
728
  }
721
729
  }), [
722
730
  "keys",
@@ -724,23 +732,23 @@ function ct(e, t) {
724
732
  "entries",
725
733
  Symbol.iterator
726
734
  ].forEach((r) => {
727
- n[r] = ot(r, e, t);
735
+ n[r] = at(r, e, t);
728
736
  }), n;
729
737
  }
730
- function lt(e, t) {
731
- let n = ct(e, t);
738
+ function ct(e, t) {
739
+ let n = st(e, t);
732
740
  return (t, r, i) => r === "__v_isReactive" ? !e : r === "__v_isReadonly" ? e : r === "__v_raw" ? t : Reflect.get(O(n, r) && r in t ? n : t, r, i);
733
741
  }
734
- var ut = { get: /* @__PURE__ */ lt(!1, !1) }, dt = { get: /* @__PURE__ */ lt(!0, !1) }, ft = { get: /* @__PURE__ */ lt(!0, !0) };
735
- function pt(e, t, n) {
736
- let r = /* @__PURE__ */ q(n);
742
+ var lt = { get: /* @__PURE__ */ ct(!1, !1) }, ut = { get: /* @__PURE__ */ ct(!0, !1) }, dt = { get: /* @__PURE__ */ ct(!0, !0) };
743
+ function ft(e, t, n) {
744
+ let r = /* @__PURE__ */ J(n);
737
745
  if (r !== n && t.call(e, r)) {
738
- let t = ae(e);
739
- B(`Reactive ${t} contains both the raw and reactive versions of the same object${t === "Map" ? " as keys" : ""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);
746
+ let t = ie(e);
747
+ V(`Reactive ${t} contains both the raw and reactive versions of the same object${t === "Map" ? " as keys" : ""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);
740
748
  }
741
749
  }
742
- var mt = /* @__PURE__ */ new WeakMap(), ht = /* @__PURE__ */ new WeakMap(), gt = /* @__PURE__ */ new WeakMap(), _t = /* @__PURE__ */ new WeakMap();
743
- function vt(e) {
750
+ var pt = /* @__PURE__ */ new WeakMap(), mt = /* @__PURE__ */ new WeakMap(), ht = /* @__PURE__ */ new WeakMap(), gt = /* @__PURE__ */ new WeakMap();
751
+ function _t(e) {
744
752
  switch (e) {
745
753
  case "Object":
746
754
  case "Array": return 1;
@@ -752,54 +760,54 @@ function vt(e) {
752
760
  }
753
761
  }
754
762
  // @__NO_SIDE_EFFECTS__
755
- function yt(e) {
756
- return /* @__PURE__ */ wt(e) ? e : St(e, !1, nt, ut, mt);
763
+ function vt(e) {
764
+ return /* @__PURE__ */ Ct(e) ? e : xt(e, !1, tt, lt, pt);
757
765
  }
758
766
  // @__NO_SIDE_EFFECTS__
759
- function bt(e) {
760
- return St(e, !0, rt, dt, gt);
767
+ function yt(e) {
768
+ return xt(e, !0, nt, ut, ht);
761
769
  }
762
770
  // @__NO_SIDE_EFFECTS__
763
- function xt(e) {
764
- return St(e, !0, it, ft, _t);
771
+ function bt(e) {
772
+ return xt(e, !0, rt, dt, gt);
765
773
  }
766
- function St(e, t, n, r, i) {
767
- if (!M(e)) return process.env.NODE_ENV !== "production" && B(`value cannot be made ${t ? "readonly" : "reactive"}: ${String(e)}`), e;
774
+ function xt(e, t, n, r, i) {
775
+ if (!N(e)) return process.env.NODE_ENV !== "production" && V(`value cannot be made ${t ? "readonly" : "reactive"}: ${String(e)}`), e;
768
776
  if (e.__v_raw && !(t && e.__v_isReactive) || e.__v_skip || !Object.isExtensible(e)) return e;
769
777
  let a = i.get(e);
770
778
  if (a) return a;
771
- let o = vt(ae(e));
779
+ let o = _t(ie(e));
772
780
  if (o === 0) return e;
773
781
  let s = new Proxy(e, o === 2 ? r : n);
774
782
  return i.set(e, s), s;
775
783
  }
776
784
  // @__NO_SIDE_EFFECTS__
777
- function Ct(e) {
778
- return /* @__PURE__ */ wt(e) ? /* @__PURE__ */ Ct(e.__v_raw) : !!(e && e.__v_isReactive);
785
+ function St(e) {
786
+ return /* @__PURE__ */ Ct(e) ? /* @__PURE__ */ St(e.__v_raw) : !!(e && e.__v_isReactive);
779
787
  }
780
788
  // @__NO_SIDE_EFFECTS__
781
- function wt(e) {
789
+ function Ct(e) {
782
790
  return !!(e && e.__v_isReadonly);
783
791
  }
784
792
  // @__NO_SIDE_EFFECTS__
785
- function Tt(e) {
793
+ function wt(e) {
786
794
  return !!(e && e.__v_isShallow);
787
795
  }
788
796
  // @__NO_SIDE_EFFECTS__
789
- function Et(e) {
797
+ function Tt(e) {
790
798
  return e ? !!e.__v_raw : !1;
791
799
  }
792
800
  // @__NO_SIDE_EFFECTS__
793
- function q(e) {
801
+ function J(e) {
794
802
  let t = e && e.__v_raw;
795
- return t ? /* @__PURE__ */ q(t) : e;
803
+ return t ? /* @__PURE__ */ J(t) : e;
796
804
  }
797
- function Dt(e) {
798
- return !O(e, "__v_skip") && Object.isExtensible(e) && oe(e, "__v_skip", !0), e;
805
+ function Et(e) {
806
+ return !O(e, "__v_skip") && Object.isExtensible(e) && ae(e, "__v_skip", !0), e;
799
807
  }
800
- var Ot = (e) => M(e) ? /* @__PURE__ */ yt(e) : e, kt = (e) => M(e) ? /* @__PURE__ */ bt(e) : e;
808
+ var Dt = (e) => N(e) ? /* @__PURE__ */ vt(e) : e, Ot = (e) => N(e) ? /* @__PURE__ */ yt(e) : e;
801
809
  // @__NO_SIDE_EFFECTS__
802
- function J(e) {
810
+ function kt(e) {
803
811
  return e ? e.__v_isRef === !0 : !1;
804
812
  }
805
813
  // @__NO_SIDE_EFFECTS__
@@ -811,11 +819,11 @@ function jt(e) {
811
819
  return Mt(e, !0);
812
820
  }
813
821
  function Mt(e, t) {
814
- return /* @__PURE__ */ J(e) ? e : new Nt(e, t);
822
+ return /* @__PURE__ */ kt(e) ? e : new Nt(e, t);
815
823
  }
816
824
  var Nt = class {
817
825
  constructor(e, t) {
818
- this.dep = new Ne(), this.__v_isRef = !0, this.__v_isShallow = !1, this._rawValue = t ? e : /* @__PURE__ */ q(e), this._value = t ? e : Ot(e), this.__v_isShallow = t;
826
+ this.dep = new Me(), this.__v_isRef = !0, this.__v_isShallow = !1, this._rawValue = t ? e : /* @__PURE__ */ J(e), this._value = t ? e : Dt(e), this.__v_isShallow = t;
819
827
  }
820
828
  get value() {
821
829
  return process.env.NODE_ENV === "production" ? this.dep.track() : this.dep.track({
@@ -825,8 +833,8 @@ var Nt = class {
825
833
  }), this._value;
826
834
  }
827
835
  set value(e) {
828
- let t = this._rawValue, n = this.__v_isShallow || /* @__PURE__ */ Tt(e) || /* @__PURE__ */ wt(e);
829
- e = n ? e : /* @__PURE__ */ q(e), L(e, t) && (this._rawValue = e, this._value = n ? e : Ot(e), process.env.NODE_ENV === "production" ? this.dep.trigger() : this.dep.trigger({
836
+ let t = this._rawValue, n = this.__v_isShallow || /* @__PURE__ */ wt(e) || /* @__PURE__ */ Ct(e);
837
+ e = n ? e : /* @__PURE__ */ J(e), R(e, t) && (this._rawValue = e, this._value = n ? e : Dt(e), process.env.NODE_ENV === "production" ? this.dep.trigger() : this.dep.trigger({
830
838
  target: this,
831
839
  type: "set",
832
840
  key: "value",
@@ -844,24 +852,24 @@ function Pt(e) {
844
852
  }));
845
853
  }
846
854
  function Ft(e) {
847
- return /* @__PURE__ */ J(e) ? e.value : e;
855
+ return /* @__PURE__ */ kt(e) ? e.value : e;
848
856
  }
849
857
  var It = {
850
858
  get: (e, t, n) => t === "__v_raw" ? e : Ft(Reflect.get(e, t, n)),
851
859
  set: (e, t, n, r) => {
852
860
  let i = e[t];
853
- return /* @__PURE__ */ J(i) && !/* @__PURE__ */ J(n) ? (i.value = n, !0) : Reflect.set(e, t, n, r);
861
+ return /* @__PURE__ */ kt(i) && !/* @__PURE__ */ kt(n) ? (i.value = n, !0) : Reflect.set(e, t, n, r);
854
862
  }
855
863
  };
856
864
  function Lt(e) {
857
- return /* @__PURE__ */ Ct(e) ? e : new Proxy(e, It);
865
+ return /* @__PURE__ */ St(e) ? e : new Proxy(e, It);
858
866
  }
859
867
  var Rt = class {
860
868
  constructor(e, t, n) {
861
- this.fn = e, this.setter = t, this._value = void 0, this.dep = new Ne(this), this.__v_isRef = !0, this.deps = void 0, this.depsTail = void 0, this.flags = 16, this.globalVersion = je - 1, this.next = void 0, this.effect = this, this.__v_isReadonly = !t, this.isSSR = n;
869
+ this.fn = e, this.setter = t, this._value = void 0, this.dep = new Me(this), this.__v_isRef = !0, this.deps = void 0, this.depsTail = void 0, this.flags = 16, this.globalVersion = Ae - 1, this.next = void 0, this.effect = this, this.__v_isReadonly = !t, this.isSSR = n;
862
870
  }
863
871
  notify() {
864
- if (this.flags |= 16, !(this.flags & 8) && V !== this) return H(this, !0), !0;
872
+ if (this.flags |= 16, !(this.flags & 8) && H !== this) return U(this, !0), !0;
865
873
  process.env.NODE_ENV;
866
874
  }
867
875
  get value() {
@@ -870,10 +878,10 @@ var Rt = class {
870
878
  type: "get",
871
879
  key: "value"
872
880
  });
873
- return Te(this), e && (e.version = this.dep.version), this._value;
881
+ return we(this), e && (e.version = this.dep.version), this._value;
874
882
  }
875
883
  set value(e) {
876
- this.setter ? this.setter(e) : process.env.NODE_ENV !== "production" && B("Write operation failed: computed value is readonly");
884
+ this.setter ? this.setter(e) : process.env.NODE_ENV !== "production" && V("Write operation failed: computed value is readonly");
877
885
  }
878
886
  };
879
887
  // @__NO_SIDE_EFFECTS__
@@ -888,24 +896,24 @@ function Ut(e, t = !1, n = Ht) {
888
896
  if (n) {
889
897
  let t = Vt.get(n);
890
898
  t || Vt.set(n, t = []), t.push(e);
891
- } else process.env.NODE_ENV !== "production" && !t && B("onWatcherCleanup() was called when there was no active watcher to associate with.");
899
+ } else process.env.NODE_ENV !== "production" && !t && V("onWatcherCleanup() was called when there was no active watcher to associate with.");
892
900
  }
893
901
  function Wt(e, t, n = x) {
894
902
  let { immediate: r, deep: i, once: a, scheduler: o, augmentJob: s, call: c } = n, l = (e) => {
895
- (n.onWarn || B)("Invalid watch source: ", e, "A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.");
896
- }, u = (e) => i ? e : /* @__PURE__ */ Tt(e) || i === !1 || i === 0 ? Gt(e, 1) : Gt(e), d, f, p, m, h = !1, g = !1;
897
- if (/* @__PURE__ */ J(e) ? (f = () => e.value, h = /* @__PURE__ */ Tt(e)) : /* @__PURE__ */ Ct(e) ? (f = () => u(e), h = !0) : k(e) ? (g = !0, h = e.some((e) => /* @__PURE__ */ Ct(e) || /* @__PURE__ */ Tt(e)), f = () => e.map((e) => {
898
- if (/* @__PURE__ */ J(e)) return e.value;
899
- if (/* @__PURE__ */ Ct(e)) return u(e);
903
+ (n.onWarn || V)("Invalid watch source: ", e, "A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.");
904
+ }, u = (e) => i ? e : /* @__PURE__ */ wt(e) || i === !1 || i === 0 ? Gt(e, 1) : Gt(e), d, f, p, m, h = !1, g = !1;
905
+ if (/* @__PURE__ */ kt(e) ? (f = () => e.value, h = /* @__PURE__ */ wt(e)) : /* @__PURE__ */ St(e) ? (f = () => u(e), h = !0) : k(e) ? (g = !0, h = e.some((e) => /* @__PURE__ */ St(e) || /* @__PURE__ */ wt(e)), f = () => e.map((e) => {
906
+ if (/* @__PURE__ */ kt(e)) return e.value;
907
+ if (/* @__PURE__ */ St(e)) return u(e);
900
908
  if (j(e)) return c ? c(e, 2) : e();
901
909
  process.env.NODE_ENV !== "production" && l(e);
902
910
  })) : j(e) ? f = t ? c ? () => c(e, 2) : e : () => {
903
911
  if (p) {
904
- Oe();
912
+ De();
905
913
  try {
906
914
  p();
907
915
  } finally {
908
- ke();
916
+ Oe();
909
917
  }
910
918
  }
911
919
  let t = Ht;
@@ -919,7 +927,7 @@ function Wt(e, t, n = x) {
919
927
  let e = f, t = i === !0 ? Infinity : i;
920
928
  f = () => Gt(e(), t);
921
929
  }
922
- let _ = me(), v = () => {
930
+ let _ = pe(), v = () => {
923
931
  d.stop(), _ && _.active && E(_.effects, d);
924
932
  };
925
933
  if (a && t) {
@@ -932,7 +940,7 @@ function Wt(e, t, n = x) {
932
940
  let y = g ? Array(e.length).fill(Bt) : Bt, b = (e) => {
933
941
  if (!(!(d.flags & 1) || !d.dirty && !e)) if (t) {
934
942
  let n = d.run();
935
- if (e || i || h || (g ? n.some((e, t) => L(e, y[t])) : L(n, y))) {
943
+ if (e || i || h || (g ? n.some((e, t) => R(e, y[t])) : R(n, y))) {
936
944
  p && p();
937
945
  let e = Ht;
938
946
  Ht = d;
@@ -949,7 +957,7 @@ function Wt(e, t, n = x) {
949
957
  }
950
958
  } else d.run();
951
959
  };
952
- return s && s(b), d = new ge(f), d.scheduler = o ? () => o(b, !1) : b, m = (e) => Ut(e, !1, d), p = d.onStop = () => {
960
+ return s && s(b), d = new he(f), d.scheduler = o ? () => o(b, !1) : b, m = (e) => Ut(e, !1, d), p = d.onStop = () => {
953
961
  let e = Vt.get(d);
954
962
  if (e) {
955
963
  if (c) c(e, 4);
@@ -959,13 +967,13 @@ function Wt(e, t, n = x) {
959
967
  }, process.env.NODE_ENV !== "production" && (d.onTrack = n.onTrack, d.onTrigger = n.onTrigger), t ? r ? b(!0) : y = d.run() : o ? o(b.bind(null, !0), !0) : d.run(), v.pause = d.pause.bind(d), v.resume = d.resume.bind(d), v.stop = v, v;
960
968
  }
961
969
  function Gt(e, t = Infinity, n) {
962
- if (t <= 0 || !M(e) || e.__v_skip || (n ||= /* @__PURE__ */ new Map(), (n.get(e) || 0) >= t)) return e;
963
- if (n.set(e, t), t--, /* @__PURE__ */ J(e)) Gt(e.value, t, n);
970
+ if (t <= 0 || !N(e) || e.__v_skip || (n ||= /* @__PURE__ */ new Map(), (n.get(e) || 0) >= t)) return e;
971
+ if (n.set(e, t), t--, /* @__PURE__ */ kt(e)) Gt(e.value, t, n);
964
972
  else if (k(e)) for (let r = 0; r < e.length; r++) Gt(e[r], t, n);
965
973
  else if (ee(e) || A(e)) e.forEach((e) => {
966
974
  Gt(e, t, n);
967
975
  });
968
- else if (P(e)) {
976
+ else if (F(e)) {
969
977
  for (let r in e) Gt(e[r], t, n);
970
978
  for (let r of Object.getOwnPropertySymbols(e)) Object.prototype.propertyIsEnumerable.call(e, r) && Gt(e[r], t, n);
971
979
  }
@@ -983,7 +991,7 @@ function Jt() {
983
991
  var Yt = !1;
984
992
  function Xt(e, ...t) {
985
993
  if (Yt) return;
986
- Yt = !0, Oe();
994
+ Yt = !0, De();
987
995
  let n = Kt.length ? Kt[Kt.length - 1].component : null, r = n && n.appContext.config.warnHandler, i = Zt();
988
996
  if (r) rn(r, n, 11, [
989
997
  e + t.map((e) => e.toString?.call(e) ?? JSON.stringify(e)).join(""),
@@ -995,7 +1003,7 @@ function Xt(e, ...t) {
995
1003
  let n = [`[Vue warn]: ${e}`, ...t];
996
1004
  i.length && n.push("\n", ...Qt(i)), console.warn(...n);
997
1005
  }
998
- ke(), Yt = !1;
1006
+ Oe(), Yt = !1;
999
1007
  }
1000
1008
  function Zt() {
1001
1009
  let e = Kt[Kt.length - 1];
@@ -1033,11 +1041,11 @@ function en(e) {
1033
1041
  }), n.length > 3 && t.push(" ..."), t;
1034
1042
  }
1035
1043
  function tn(e, t, n) {
1036
- return te(t) ? (t = JSON.stringify(t), n ? t : [`${e}=${t}`]) : typeof t == "number" || typeof t == "boolean" || t == null ? n ? t : [`${e}=${t}`] : /* @__PURE__ */ J(t) ? (t = tn(e, /* @__PURE__ */ q(t.value), !0), n ? t : [
1044
+ return M(t) ? (t = JSON.stringify(t), n ? t : [`${e}=${t}`]) : typeof t == "number" || typeof t == "boolean" || t == null ? n ? t : [`${e}=${t}`] : /* @__PURE__ */ kt(t) ? (t = tn(e, /* @__PURE__ */ J(t.value), !0), n ? t : [
1037
1045
  `${e}=Ref<`,
1038
1046
  t,
1039
1047
  ">"
1040
- ]) : j(t) ? [`${e}=fn${t.name ? `<${t.name}>` : ""}`] : (t = /* @__PURE__ */ q(t), n ? t : [`${e}=`, t]);
1048
+ ]) : j(t) ? [`${e}=fn${t.name ? `<${t.name}>` : ""}`] : (t = /* @__PURE__ */ J(t), n ? t : [`${e}=`, t]);
1041
1049
  }
1042
1050
  var nn = {
1043
1051
  sp: "serverPrefetch hook",
@@ -1082,7 +1090,7 @@ function rn(e, t, n, r) {
1082
1090
  function an(e, t, n, r) {
1083
1091
  if (j(e)) {
1084
1092
  let i = rn(e, t, n, r);
1085
- return i && N(i) && i.catch((e) => {
1093
+ return i && P(i) && i.catch((e) => {
1086
1094
  on(e, t, n);
1087
1095
  }), i;
1088
1096
  }
@@ -1104,11 +1112,11 @@ function on(e, t, n, r = !0) {
1104
1112
  r = r.parent;
1105
1113
  }
1106
1114
  if (a) {
1107
- Oe(), rn(a, null, 10, [
1115
+ De(), rn(a, null, 10, [
1108
1116
  e,
1109
1117
  i,
1110
1118
  o
1111
- ]), ke();
1119
+ ]), Oe();
1112
1120
  return;
1113
1121
  }
1114
1122
  }
@@ -1190,7 +1198,7 @@ function wn(e, t) {
1190
1198
  return e.set(t, n + 1), !1;
1191
1199
  }
1192
1200
  var Tn = /* @__PURE__ */ new Map();
1193
- process.env.NODE_ENV !== "production" && (ce().__VUE_HMR_RUNTIME__ = {
1201
+ process.env.NODE_ENV !== "production" && (se().__VUE_HMR_RUNTIME__ = {
1194
1202
  createRecord: Mn(Dn),
1195
1203
  rerender: Mn(kn),
1196
1204
  reload: Mn(An)
@@ -1292,7 +1300,7 @@ function Vn(e, t, n = x) {
1292
1300
  return Lr && (l ? l.push(f) : c && f()), f;
1293
1301
  }
1294
1302
  function Hn(e, t, n) {
1295
- let r = this.proxy, i = te(e) ? e.includes(".") ? Un(r, e) : () => r[e] : e.bind(r, r), a;
1303
+ let r = this.proxy, i = M(e) ? e.includes(".") ? Un(r, e) : () => r[e] : e.bind(r, r), a;
1296
1304
  j(t) ? a = t : (a = t.handler, n = t);
1297
1305
  let o = Fr(this), s = Vn(i, a.bind(r), n);
1298
1306
  return o(), s;
@@ -1309,15 +1317,15 @@ var Wn = (e) => e.__isTeleport;
1309
1317
  function Gn(e, t) {
1310
1318
  e.shapeFlag & 6 && e.component ? (e.transition = t, Gn(e.component.subTree, t)) : e.shapeFlag & 128 ? (e.ssContent.transition = t.clone(e.ssContent), e.ssFallback.transition = t.clone(e.ssFallback)) : e.transition = t;
1311
1319
  }
1312
- ce().requestIdleCallback, ce().cancelIdleCallback;
1320
+ se().requestIdleCallback, se().cancelIdleCallback;
1313
1321
  var Kn = /* @__PURE__ */ Symbol.for("v-ndc"), qn = (e) => e ? Ir(e) ? Rr(e) : qn(e.parent) : null, Jn = /* @__PURE__ */ T(/* @__PURE__ */ Object.create(null), {
1314
1322
  $: (e) => e,
1315
1323
  $el: (e) => e.vnode.el,
1316
1324
  $data: (e) => e.data,
1317
- $props: (e) => process.env.NODE_ENV === "production" ? e.props : /* @__PURE__ */ xt(e.props),
1318
- $attrs: (e) => process.env.NODE_ENV === "production" ? e.attrs : /* @__PURE__ */ xt(e.attrs),
1319
- $slots: (e) => process.env.NODE_ENV === "production" ? e.slots : /* @__PURE__ */ xt(e.slots),
1320
- $refs: (e) => process.env.NODE_ENV === "production" ? e.refs : /* @__PURE__ */ xt(e.refs),
1325
+ $props: (e) => process.env.NODE_ENV === "production" ? e.props : /* @__PURE__ */ bt(e.props),
1326
+ $attrs: (e) => process.env.NODE_ENV === "production" ? e.attrs : /* @__PURE__ */ bt(e.attrs),
1327
+ $slots: (e) => process.env.NODE_ENV === "production" ? e.slots : /* @__PURE__ */ bt(e.slots),
1328
+ $refs: (e) => process.env.NODE_ENV === "production" ? e.refs : /* @__PURE__ */ bt(e.refs),
1321
1329
  $parent: (e) => qn(e.parent),
1322
1330
  $root: (e) => qn(e.root),
1323
1331
  $host: (e) => e.ce,
@@ -1348,7 +1356,7 @@ var Kn = /* @__PURE__ */ Symbol.for("v-ndc"), qn = (e) => e ? Ir(e) ? Rr(e) : qn
1348
1356
  else Qn && (o[t] = 0);
1349
1357
  }
1350
1358
  let l = Jn[t], u, d;
1351
- if (l) return t === "$attrs" ? (G(e.attrs, "get", ""), process.env.NODE_ENV) : process.env.NODE_ENV !== "production" && t === "$slots" && G(e, "get", t), l(e);
1359
+ if (l) return t === "$attrs" ? (K(e.attrs, "get", ""), process.env.NODE_ENV) : process.env.NODE_ENV !== "production" && t === "$slots" && K(e, "get", t), l(e);
1352
1360
  if ((u = s.__cssModules) && (u = u[t])) return u;
1353
1361
  if (n !== x && O(n, t)) return o[t] = 4, n[t];
1354
1362
  if (d = c.config.globalProperties, O(d, t)) return d[t];
@@ -1377,7 +1385,7 @@ function Zn(e) {
1377
1385
  var Qn = !0;
1378
1386
  function $n(e) {
1379
1387
  let t = e.type, { mixins: n, extends: r } = t, { mixins: i, optionsCache: a, config: { optionMergeStrategies: o } } = e.appContext, s = a.get(t), c;
1380
- return s ? c = s : !i.length && !n && !r ? c = t : (c = {}, i.length && i.forEach((e) => er(c, e, o, !0)), er(c, t, o)), M(t) && a.set(t, c), c;
1388
+ return s ? c = s : !i.length && !n && !r ? c = t : (c = {}, i.length && i.forEach((e) => er(c, e, o, !0)), er(c, t, o)), N(t) && a.set(t, c), c;
1381
1389
  }
1382
1390
  function er(e, t, n, r = !1) {
1383
1391
  let { mixins: i, extends: a } = t;
@@ -1455,7 +1463,7 @@ var hr = /* @__PURE__ */ Symbol.for("v-fgt"), gr = /* @__PURE__ */ Symbol.for("v
1455
1463
  function vr(e) {
1456
1464
  return e ? e.__v_isVNode === !0 : !1;
1457
1465
  }
1458
- var yr, br = (...e) => Tr(...yr ? yr(e, In) : e), xr = ({ key: e }) => e ?? null, Sr = ({ ref: e, ref_key: t, ref_for: n }) => (typeof e == "number" && (e = "" + e), e == null ? null : te(e) || /* @__PURE__ */ J(e) || j(e) ? {
1466
+ var yr, br = (...e) => Tr(...yr ? yr(e, In) : e), xr = ({ key: e }) => e ?? null, Sr = ({ ref: e, ref_key: t, ref_for: n }) => (typeof e == "number" && (e = "" + e), e == null ? null : M(e) || /* @__PURE__ */ kt(e) || j(e) ? {
1459
1467
  i: In,
1460
1468
  r: e,
1461
1469
  k: t,
@@ -1491,7 +1499,7 @@ function Cr(e, t = null, n = null, r = 0, i = null, a = e === hr ? 0 : 1, o = !1
1491
1499
  appContext: null,
1492
1500
  ctx: In
1493
1501
  };
1494
- return s ? (Ar(c, n), a & 128 && e.normalize(c)) : n && (c.shapeFlag |= te(n) ? 8 : 16), process.env.NODE_ENV !== "production" && c.key !== c.key && Xt("VNode created with invalid key (NaN). VNode type:", c.type), c;
1502
+ return s ? (Ar(c, n), a & 128 && e.normalize(c)) : n && (c.shapeFlag |= M(n) ? 8 : 16), process.env.NODE_ENV !== "production" && c.key !== c.key && Xt("VNode created with invalid key (NaN). VNode type:", c.type), c;
1495
1503
  }
1496
1504
  var wr = process.env.NODE_ENV === "production" ? Tr : br;
1497
1505
  function Tr(e, t = null, n = null, r = 0, i = null, a = !1) {
@@ -1502,13 +1510,13 @@ function Tr(e, t = null, n = null, r = 0, i = null, a = !1) {
1502
1510
  if (Ur(e) && (e = e.__vccOpts), t) {
1503
1511
  t = Er(t);
1504
1512
  let { class: e, style: n } = t;
1505
- e && !te(e) && (t.class = z(e)), M(n) && (/* @__PURE__ */ Et(n) && !k(n) && (n = T({}, n)), t.style = le(n));
1513
+ e && !M(e) && (t.class = B(e)), N(n) && (/* @__PURE__ */ Tt(n) && !k(n) && (n = T({}, n)), t.style = ce(n));
1506
1514
  }
1507
- let o = te(e) ? 1 : pr(e) ? 128 : Wn(e) ? 64 : M(e) ? 4 : j(e) ? 2 : 0;
1508
- return process.env.NODE_ENV !== "production" && o & 4 && /* @__PURE__ */ Et(e) && (e = /* @__PURE__ */ q(e), Xt("Vue received a Component that was made a reactive object. This can lead to unnecessary performance overhead and should be avoided by marking the component with `markRaw` or using `shallowRef` instead of `ref`.", "\nComponent that was made reactive: ", e)), Cr(e, t, n, r, i, o, a, !0);
1515
+ let o = M(e) ? 1 : pr(e) ? 128 : Wn(e) ? 64 : N(e) ? 4 : j(e) ? 2 : 0;
1516
+ return process.env.NODE_ENV !== "production" && o & 4 && /* @__PURE__ */ Tt(e) && (e = /* @__PURE__ */ J(e), Xt("Vue received a Component that was made a reactive object. This can lead to unnecessary performance overhead and should be avoided by marking the component with `markRaw` or using `shallowRef` instead of `ref`.", "\nComponent that was made reactive: ", e)), Cr(e, t, n, r, i, o, a, !0);
1509
1517
  }
1510
1518
  function Er(e) {
1511
- return e ? /* @__PURE__ */ Et(e) || dr(e) ? T({}, e) : e : null;
1519
+ return e ? /* @__PURE__ */ Tt(e) || dr(e) ? T({}, e) : e : null;
1512
1520
  }
1513
1521
  function Dr(e, t, n = !1, r = !1) {
1514
1522
  let { props: i, ref: a, patchFlag: o, children: s, transition: c } = e, l = t ? jr(i || {}, t) : i, u = {
@@ -1576,8 +1584,8 @@ function jr(...e) {
1576
1584
  let t = {};
1577
1585
  for (let n = 0; n < e.length; n++) {
1578
1586
  let r = e[n];
1579
- for (let e in r) if (e === "class") t.class !== r.class && (t.class = z([t.class, r.class]));
1580
- else if (e === "style") t.style = le([t.style, r.style]);
1587
+ for (let e in r) if (e === "class") t.class !== r.class && (t.class = B([t.class, r.class]));
1588
+ else if (e === "style") t.style = ce([t.style, r.style]);
1581
1589
  else if (C(e)) {
1582
1590
  let n = t[e], i = r[e];
1583
1591
  i && n !== i && !(k(n) && n.includes(i)) ? t[e] = n ? [].concat(n, i) : i : i == null && n == null && !w(e) && (t[e] = i);
@@ -1587,7 +1595,7 @@ function jr(...e) {
1587
1595
  }
1588
1596
  var Mr = null, Nr = () => Mr || In, Pr;
1589
1597
  {
1590
- let e = ce(), t = (t, n) => {
1598
+ let e = se(), t = (t, n) => {
1591
1599
  let r;
1592
1600
  return (r = e[t]) || (r = e[t] = []), r.push(n), (e) => {
1593
1601
  r.length > 1 ? r.forEach((t) => t(e)) : r[0](e);
@@ -1607,7 +1615,7 @@ function Ir(e) {
1607
1615
  var Lr = !1;
1608
1616
  process.env.NODE_ENV;
1609
1617
  function Rr(e) {
1610
- return e.exposed ? e.exposeProxy ||= new Proxy(Lt(Dt(e.exposed)), {
1618
+ return e.exposed ? e.exposeProxy ||= new Proxy(Lt(Et(e.exposed)), {
1611
1619
  get(t, n) {
1612
1620
  if (n in t) return t[n];
1613
1621
  if (n in Jn) return Jn[n](e);
@@ -1651,16 +1659,16 @@ function Gr() {
1651
1659
  let e = { style: "color:#3ba776" }, t = { style: "color:#1677ff" }, n = { style: "color:#f5222d" }, r = { style: "color:#eb2f96" }, i = {
1652
1660
  __vue_custom_formatter: !0,
1653
1661
  header(t) {
1654
- if (!M(t)) return null;
1662
+ if (!N(t)) return null;
1655
1663
  if (t.__isVue) return [
1656
1664
  "div",
1657
1665
  e,
1658
1666
  "VueInstance"
1659
1667
  ];
1660
- if (/* @__PURE__ */ J(t)) {
1661
- Oe();
1668
+ if (/* @__PURE__ */ kt(t)) {
1669
+ De();
1662
1670
  let n = t.value;
1663
- return ke(), [
1671
+ return Oe(), [
1664
1672
  "div",
1665
1673
  {},
1666
1674
  [
@@ -1672,25 +1680,25 @@ function Gr() {
1672
1680
  s(n),
1673
1681
  ">"
1674
1682
  ];
1675
- } else if (/* @__PURE__ */ Ct(t)) return [
1683
+ } else if (/* @__PURE__ */ St(t)) return [
1676
1684
  "div",
1677
1685
  {},
1678
1686
  [
1679
1687
  "span",
1680
1688
  e,
1681
- /* @__PURE__ */ Tt(t) ? "ShallowReactive" : "Reactive"
1689
+ /* @__PURE__ */ wt(t) ? "ShallowReactive" : "Reactive"
1682
1690
  ],
1683
1691
  "<",
1684
1692
  s(t),
1685
- `>${/* @__PURE__ */ wt(t) ? " (readonly)" : ""}`
1693
+ `>${/* @__PURE__ */ Ct(t) ? " (readonly)" : ""}`
1686
1694
  ];
1687
- else if (/* @__PURE__ */ wt(t)) return [
1695
+ else if (/* @__PURE__ */ Ct(t)) return [
1688
1696
  "div",
1689
1697
  {},
1690
1698
  [
1691
1699
  "span",
1692
1700
  e,
1693
- /* @__PURE__ */ Tt(t) ? "ShallowReadonly" : "Readonly"
1701
+ /* @__PURE__ */ wt(t) ? "ShallowReadonly" : "Readonly"
1694
1702
  ],
1695
1703
  "<",
1696
1704
  s(t),
@@ -1711,7 +1719,7 @@ function Gr() {
1711
1719
  };
1712
1720
  function a(e) {
1713
1721
  let t = [];
1714
- e.type.props && e.props && t.push(o("props", /* @__PURE__ */ q(e.props))), e.setupState !== x && t.push(o("setup", e.setupState)), e.data !== x && t.push(o("data", /* @__PURE__ */ q(e.data)));
1722
+ e.type.props && e.props && t.push(o("props", /* @__PURE__ */ J(e.props))), e.setupState !== x && t.push(o("setup", e.setupState)), e.data !== x && t.push(o("data", /* @__PURE__ */ J(e.data)));
1715
1723
  let n = c(e, "computed");
1716
1724
  n && t.push(o("computed", n));
1717
1725
  let i = c(e, "inject");
@@ -1764,7 +1772,7 @@ function Gr() {
1764
1772
  "span",
1765
1773
  r,
1766
1774
  e
1767
- ] : M(e) ? ["object", { object: i ? /* @__PURE__ */ q(e) : e }] : [
1775
+ ] : N(e) ? ["object", { object: i ? /* @__PURE__ */ J(e) : e }] : [
1768
1776
  "span",
1769
1777
  n,
1770
1778
  String(e)
@@ -1779,10 +1787,10 @@ function Gr() {
1779
1787
  }
1780
1788
  function l(e, t, n) {
1781
1789
  let r = e[n];
1782
- if (k(r) && r.includes(t) || M(r) && t in r || e.extends && l(e.extends, t, n) || e.mixins && e.mixins.some((e) => l(e, t, n))) return !0;
1790
+ if (k(r) && r.includes(t) || N(r) && t in r || e.extends && l(e.extends, t, n) || e.mixins && e.mixins.some((e) => l(e, t, n))) return !0;
1783
1791
  }
1784
1792
  function u(e) {
1785
- return /* @__PURE__ */ Tt(e) ? "ShallowRef" : e.effect ? "ComputedRef" : "Ref";
1793
+ return /* @__PURE__ */ wt(e) ? "ShallowRef" : e.effect ? "ComputedRef" : "Ref";
1786
1794
  }
1787
1795
  window.devtoolsFormatters ? window.devtoolsFormatters.push(i) : window.devtoolsFormatters = [i];
1788
1796
  }
@@ -2376,32 +2384,32 @@ function Ui(e) {
2376
2384
  return Array.isArray(r) && r.length && r[0] && typeof r[0].jsonPath == "string" ? r[0].jsonPath : "";
2377
2385
  }
2378
2386
  function Wi(e) {
2379
- let { apiKey: t, baseUrl: r, model: c = "gpt-3.5-turbo", temperature: l = .7, maxTokens: u, extraBody: p, extraConfig: m, systemPrompt: v, tools: b = [], middleware: x = [], maxToolRounds: S, maxIterations: C, maxRetries: w = 2, retryDelayMs: T = 500, stallMs: E = _i, maxParallelTools: D = 1, maxVerifyAttempts: O = 0, roundTokenBudget: k = 0, onLog: A, onSpan: ee, onTrace: j, onLlmChange: te, debug: ne = !1 } = e, M = S ?? Li;
2380
- (!Number.isFinite(M) || M < 1) && (console.warn(`[page-agent-sdk] maxToolRounds=${M} 非法(须 ≥1 正整数),已 clamp 到 1(0/负数致主循环 while 不进 → agent 不调 LLM 静默返回兜底文案)`), M = 1), D > 1 && console.warn(`[page-agent-sdk] maxParallelTools=${D}:并发工具下 dataOps 写工具不互锁(同轮并发两写都在 await handleConflict 让出前取旧基线 → 均通过乐观锁 → 后写覆盖前写,无 VERSION_CONFLICT 回灌);如需精确乐观锁保持 maxParallelTools=1 或写时显式传 expectedHash`);
2381
- let N = oi({
2387
+ let { apiKey: t, baseUrl: r, model: c = "gpt-3.5-turbo", temperature: l = .7, maxTokens: u, extraBody: p, extraConfig: m, systemPrompt: v, tools: b = [], middleware: x = [], maxToolRounds: S, maxIterations: C, maxRetries: w = 2, retryDelayMs: T = 500, stallMs: E = _i, maxParallelTools: D = 1, maxVerifyAttempts: O = 0, roundTokenBudget: k = 0, onLog: A, onSpan: ee, onTrace: j, onLlmChange: M, debug: te = !1 } = e, N = S ?? Li;
2388
+ (!Number.isFinite(N) || N < 1) && (console.warn(`[page-agent-sdk] maxToolRounds=${N} 非法(须 ≥1 正整数),已 clamp 到 1(0/负数致主循环 while 不进 → agent 不调 LLM 静默返回兜底文案)`), N = 1), D > 1 && console.warn(`[page-agent-sdk] maxParallelTools=${D}:并发工具下 dataOps 写工具不互锁(同轮并发两写都在 await handleConflict 让出前取旧基线 → 均通过乐观锁 → 后写覆盖前写,无 VERSION_CONFLICT 回灌);如需精确乐观锁保持 maxParallelTools=1 或写时显式传 expectedHash`);
2389
+ let P = oi({
2382
2390
  model: c,
2383
2391
  contextWindow: e.contextWindow,
2384
2392
  maxOutputTokens: e.maxOutputTokens
2385
- }), re = u ?? N.maxOutputTokens, ie = si(N.contextWindow), ae = ci(N.contextWindow);
2386
- function P(e) {
2387
- N = e, ie = si(N.contextWindow), ae = ci(N.contextWindow);
2393
+ }), ne = u ?? P.maxOutputTokens, re = si(P.contextWindow), ie = ci(P.contextWindow);
2394
+ function F(e) {
2395
+ P = e, re = si(P.contextWindow), ie = ci(P.contextWindow);
2388
2396
  }
2389
- let F = /* @__PURE__ */ jt([]);
2390
- function I(e, t) {
2397
+ let I = /* @__PURE__ */ jt([]);
2398
+ function L(e, t) {
2391
2399
  let n = {
2392
2400
  timestamp: Date.now(),
2393
2401
  type: e,
2394
2402
  data: t
2395
2403
  };
2396
- F.value.push(n), F.value.length > Ri && F.value.splice(0, F.value.length - Ri), Pt(F), A?.(n), ne && console.log(`%c[Agent] ${e}`, "color:#667eea;font-weight:bold", t);
2404
+ I.value.push(n), I.value.length > Ri && I.value.splice(0, I.value.length - Ri), Pt(I), A?.(n), te && console.log(`%c[Agent] ${e}`, "color:#667eea;font-weight:bold", t);
2397
2405
  }
2398
- let L = (e) => {
2399
- F.value.push(e), F.value.length > Ri && F.value.splice(0, F.value.length - Ri), Pt(F);
2400
- }, oe = /* @__PURE__ */ jt([]), se = 0, ce = !!ee || !!j;
2401
- function le(e, t, n, r = {}) {
2402
- if (!ce) return null;
2406
+ let R = (e) => {
2407
+ I.value.push(e), I.value.length > Ri && I.value.splice(0, I.value.length - Ri), Pt(I);
2408
+ }, ae = /* @__PURE__ */ jt([]), oe = 0, se = !!ee || !!j;
2409
+ function ce(e, t, n, r = {}) {
2410
+ if (!se) return null;
2403
2411
  let i = {
2404
- id: `span-${++se}`,
2412
+ id: `span-${++oe}`,
2405
2413
  parentId: e,
2406
2414
  name: n,
2407
2415
  type: t,
@@ -2409,66 +2417,66 @@ function Wi(e) {
2409
2417
  status: "ok",
2410
2418
  attributes: r
2411
2419
  };
2412
- return oe.value.push(i), oe.value.length > Ri && oe.value.splice(0, oe.value.length - Ri), Pt(oe), i;
2420
+ return ae.value.push(i), ae.value.length > Ri && ae.value.splice(0, ae.value.length - Ri), Pt(ae), i;
2413
2421
  }
2414
- function ue(e, t = "ok", n) {
2415
- !e || !ce || (e.endTs = Date.now(), e.durationMs = e.endTs - e.startTs, e.status = t, n && Object.assign(e.attributes, n), Pt(oe), ee?.(e));
2422
+ function le(e, t = "ok", n) {
2423
+ !e || !se || (e.endTs = Date.now(), e.durationMs = e.endTs - e.startTs, e.status = t, n && Object.assign(e.attributes, n), Pt(ae), ee?.(e));
2416
2424
  }
2417
- let de = [...x.flatMap((e) => e.tools || []), ...b], R = e.llm ?? new n({
2425
+ let ue = [...x.flatMap((e) => e.tools || []), ...b], z = e.llm ?? new n({
2418
2426
  apiKey: t,
2419
2427
  model: c,
2420
2428
  temperature: l,
2421
- maxTokens: re,
2429
+ maxTokens: ne,
2422
2430
  configuration: {
2423
2431
  ...r ? { baseURL: f(r) } : {},
2424
2432
  fetch: d,
2425
2433
  ...m
2426
2434
  },
2427
2435
  ...p ? { modelKwargs: p } : {}
2428
- }), fe = de.length > 0 ? R.bindTools?.(de) ?? R : R;
2429
- function z() {
2430
- fe = de.length > 0 ? R.bindTools?.(de) ?? R : R;
2436
+ }), de = ue.length > 0 ? z.bindTools?.(ue) ?? z : z;
2437
+ function B() {
2438
+ de = ue.length > 0 ? z.bindTools?.(ue) ?? z : z;
2431
2439
  }
2432
- let B = ui(), pe = .25, me = /* @__PURE__ */ new Set(["mission", "workingMemory"]);
2433
- function V() {
2440
+ let V = ui(), fe = .25, pe = /* @__PURE__ */ new Set(["mission", "workingMemory"]);
2441
+ function H() {
2434
2442
  let e = v || "你是一个智能助手。", t = [];
2435
2443
  for (let e of x) if (e.augmentPrompt) {
2436
- let n = e.augmentPrompt(B);
2444
+ let n = e.augmentPrompt(V);
2437
2445
  n && t.push({
2438
2446
  name: e.name,
2439
2447
  text: n,
2440
2448
  tokens: X(n),
2441
- pin: me.has(e.name)
2449
+ pin: pe.has(e.name)
2442
2450
  });
2443
2451
  }
2444
- let n = Math.max(2e3, Math.round(N.contextWindow * pe)), r = X(e) + t.reduce((e, t) => e + t.tokens, 0);
2452
+ let n = Math.max(2e3, Math.round(P.contextWindow * fe)), r = X(e) + t.reduce((e, t) => e + t.tokens, 0);
2445
2453
  if (r > n) {
2446
2454
  let e = r, i = [];
2447
2455
  for (let e of t.filter((e) => !e.pin).sort((e, t) => t.tokens - e.tokens)) {
2448
2456
  if (r <= n) break;
2449
2457
  i.push(`${e.name}(${e.tokens})`), r -= e.tokens, e.text = "";
2450
2458
  }
2451
- i.length && console.warn(`[page-agent-sdk] 系统段超预算(${e} > ${n} tokens,窗口 ${N.contextWindow} 的 ${pe * 100}%),drop 非核心段:${i.join(", ")}(保 base/mission/workingMemory)`);
2459
+ i.length && console.warn(`[page-agent-sdk] 系统段超预算(${e} > ${n} tokens,窗口 ${P.contextWindow} 的 ${fe * 100}%),drop 非核心段:${i.join(", ")}(保 base/mission/workingMemory)`);
2452
2460
  }
2453
2461
  return [e, ...t.filter((e) => e.text).map((e) => e.text)].join("\n\n");
2454
2462
  }
2455
- function he(e) {
2456
- let t = [new o(V())];
2463
+ function me(e) {
2464
+ let t = [new o(H())];
2457
2465
  for (let n of e) n.role === "user" ? t.push(new a(n.content)) : n.role === "assistant" ? t.push(new i(n.content)) : n.role === "system" && t.push(new o(n.content));
2458
2466
  return t;
2459
2467
  }
2460
- function ge(e) {
2461
- let t = e[0] && ye(e[0]) === "system" ? e.slice(1) : e.slice();
2462
- return [new o(V()), ...t];
2468
+ function he(e) {
2469
+ let t = e[0] && ve(e[0]) === "system" ? e.slice(1) : e.slice();
2470
+ return [new o(H()), ...t];
2463
2471
  }
2464
- async function _e(e, t, n, r) {
2465
- let a = r ?? fe, o = {
2472
+ async function ge(e, t, n, r) {
2473
+ let a = r ?? de, o = {
2466
2474
  signal: n,
2467
2475
  maxRetries: w,
2468
2476
  baseDelayMs: T,
2469
2477
  onRetry: ({ attempt: e, error: t, waitMs: n }) => {
2470
2478
  let r = t?.message ?? String(t);
2471
- I("error", {
2479
+ L("error", {
2472
2480
  stage: "model_retry",
2473
2481
  attempt: e,
2474
2482
  waitMs: n,
@@ -2500,14 +2508,14 @@ function Wi(e) {
2500
2508
  };
2501
2509
  if (yi(a) && !e._ctxRetry) {
2502
2510
  e._ctxRetry = !0;
2503
- let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o = H(e.messages, Math.round(N.contextWindow * .3)), s = o.reduce((e, t) => e + i(t), 0);
2504
- return I("error", {
2511
+ let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o = U(e.messages, Math.round(P.contextWindow * .3)), s = o.reduce((e, t) => e + i(t), 0);
2512
+ return L("error", {
2505
2513
  stage: "context_overflow_retry",
2506
2514
  at: "launch",
2507
2515
  beforeTokens: a,
2508
2516
  afterTokens: s,
2509
- window: N.contextWindow
2510
- }), console.warn(`[page-agent-sdk] 上下文超限(启动)→ 激进 trim 重试:${a} → ${s} tokens`), _e({
2517
+ window: P.contextWindow
2518
+ }), console.warn(`[page-agent-sdk] 上下文超限(启动)→ 激进 trim 重试:${a} → ${s} tokens`), ge({
2511
2519
  ...e,
2512
2520
  messages: o
2513
2521
  }, t, n, r);
@@ -2536,7 +2544,7 @@ function Wi(e) {
2536
2544
  });
2537
2545
  }
2538
2546
  } catch (a) {
2539
- if (a instanceof gi) throw s.abort(), I("error", {
2547
+ if (a instanceof gi) throw s.abort(), L("error", {
2540
2548
  stage: "stream_stalled",
2541
2549
  waitedMs: a.waitedMs,
2542
2550
  stallMs: E
@@ -2549,13 +2557,13 @@ function Wi(e) {
2549
2557
  };
2550
2558
  if (yi(a) && l === null && u === "" && !e._ctxRetry) {
2551
2559
  e._ctxRetry = !0;
2552
- let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o = H(e.messages, Math.round(N.contextWindow * .3)), s = o.reduce((e, t) => e + i(t), 0);
2553
- return I("error", {
2560
+ let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o = U(e.messages, Math.round(P.contextWindow * .3)), s = o.reduce((e, t) => e + i(t), 0);
2561
+ return L("error", {
2554
2562
  stage: "context_overflow_retry",
2555
2563
  beforeTokens: a,
2556
2564
  afterTokens: s,
2557
- window: N.contextWindow
2558
- }), console.warn(`[page-agent-sdk] 上下文超限 → 激进 trim 重试:${a} → ${s} tokens(窗口 ${N.contextWindow})`), _e({
2565
+ window: P.contextWindow
2566
+ }), console.warn(`[page-agent-sdk] 上下文超限 → 激进 trim 重试:${a} → ${s} tokens(窗口 ${P.contextWindow})`), ge({
2559
2567
  ...e,
2560
2568
  messages: o
2561
2569
  }, t, n, r);
@@ -2569,22 +2577,25 @@ function Wi(e) {
2569
2577
  content: u
2570
2578
  };
2571
2579
  }
2572
- async function ve(e) {
2573
- let t = de.find((t) => t.name === e.name);
2580
+ async function _e(e) {
2581
+ let t = ue.find((t) => t.name === e.name);
2574
2582
  if (!t) return {
2575
2583
  content: `工具 "${e.name}" 不存在`,
2576
2584
  status: "error"
2577
2585
  };
2578
2586
  try {
2579
- let n = await t.invoke(e.args, e.callConfig ? { configurable: e.callConfig } : void 0), r = typeof n == "string" ? n : JSON.stringify(n);
2580
- return r = ti(r, {
2587
+ let n = {
2588
+ __pgDataScope: "",
2589
+ ...e.callConfig ?? {}
2590
+ }, r = await t.invoke(e.args, { configurable: n }), i = typeof r == "string" ? r : JSON.stringify(r);
2591
+ return i = ti(i, {
2581
2592
  files: e.state.files,
2582
- vfsAvailable: de.some((e) => e.name === "vfs_read"),
2593
+ vfsAvailable: ue.some((e) => e.name === "vfs_read"),
2583
2594
  toolName: e.name,
2584
- threshold: ie,
2585
- passThroughChars: ae
2595
+ threshold: re,
2596
+ passThroughChars: ie
2586
2597
  }).content, {
2587
- content: r,
2598
+ content: i,
2588
2599
  status: "done"
2589
2600
  };
2590
2601
  } catch (e) {
@@ -2594,15 +2605,15 @@ function Wi(e) {
2594
2605
  };
2595
2606
  }
2596
2607
  }
2597
- function ye(e) {
2608
+ function ve(e) {
2598
2609
  return e instanceof a ? "human" : e instanceof i ? "ai" : e instanceof o ? "system" : e instanceof s ? "tool" : "unknown";
2599
2610
  }
2600
- function H(e, t) {
2611
+ function U(e, t) {
2601
2612
  return Bi(e, t);
2602
2613
  }
2603
- function be(e) {
2604
- return !ne && !A ? [] : e.map((e) => {
2605
- let t = ye(e), n = { role: t === "human" ? "user" : t === "ai" ? "assistant" : t }, r = typeof e.content == "string" ? e.content : JSON.stringify(e.content);
2614
+ function ye(e) {
2615
+ return !te && !A ? [] : e.map((e) => {
2616
+ let t = ve(e), n = { role: t === "human" ? "user" : t === "ai" ? "assistant" : t }, r = typeof e.content == "string" ? e.content : JSON.stringify(e.content);
2606
2617
  r && (n.content = r.length > zi ? r.slice(0, zi) + `…(截断 ${r.length - zi} 字符)` : r);
2607
2618
  let i = e.tool_calls;
2608
2619
  Array.isArray(i) && i.length && (n.tool_calls = i.map((e) => ({
@@ -2617,20 +2628,20 @@ function Wi(e) {
2617
2628
  return a && (n.tool_call_id = a), n;
2618
2629
  });
2619
2630
  }
2620
- async function xe(e, t, n) {
2621
- F.value = [], oe.value = [], se = 0, B = ui(), B.messages = e, B = await xi(x, B);
2631
+ async function be(e, t, n) {
2632
+ I.value = [], ae.value = [], oe = 0, V = ui(), V.messages = e, V = await xi(x, V);
2622
2633
  let r = e;
2623
2634
  for (let e of x) if (e.compressInput) {
2624
- let t = le(void 0, "compression", `compress:${e.name}`, {}), n = await e.compressInput(r);
2625
- r = Array.isArray(n) ? n : n.messages, n && !Array.isArray(n) && n.stats ? (B = {
2626
- ...B,
2635
+ let t = ce(void 0, "compression", `compress:${e.name}`, {}), n = await e.compressInput(r);
2636
+ r = Array.isArray(n) ? n : n.messages, n && !Array.isArray(n) && n.stats ? (V = {
2637
+ ...V,
2627
2638
  lastCompression: n.stats
2628
- }, ue(t, "ok", { stats: n.stats })) : ue(t);
2639
+ }, le(t, "ok", { stats: n.stats })) : le(t);
2629
2640
  }
2630
2641
  {
2631
- let e = X(v || "你是一个智能助手。"), n = Math.max(2e3, Math.round(N.contextWindow * pe));
2642
+ let e = X(v || "你是一个智能助手。"), n = Math.max(2e3, Math.round(P.contextWindow * fe));
2632
2643
  if (e > n) {
2633
- let r = `[page-agent-sdk] systemPrompt 本身(${e} tokens)超过系统段预算(${n} tokens,窗口 ${N.contextWindow} 的 ${pe * 100}%);请缩减 systemPrompt 或换更大窗口模型`;
2644
+ let r = `[page-agent-sdk] systemPrompt 本身(${e} tokens)超过系统段预算(${n} tokens,窗口 ${P.contextWindow} 的 ${fe * 100}%);请缩减 systemPrompt 或换更大窗口模型`;
2634
2645
  return console.error(r), t({
2635
2646
  type: "error",
2636
2647
  message: r,
@@ -2642,15 +2653,15 @@ function Wi(e) {
2642
2653
  }), "";
2643
2654
  }
2644
2655
  }
2645
- let i = he(r);
2646
- I("context", {
2656
+ let i = me(r);
2657
+ L("context", {
2647
2658
  model: c,
2648
- tools: de.map((e) => e.name),
2659
+ tools: ue.map((e) => e.name),
2649
2660
  middleware: x.map((e) => e.name)
2650
2661
  });
2651
- let l = Ei(x, (e) => _e(e, t, n)), u = Di(x, ve), d = {
2662
+ let l = Ei(x, (e) => ge(e, t, n)), u = Di(x, _e), d = {
2652
2663
  rounds: 0,
2653
- maxToolRounds: M,
2664
+ maxToolRounds: N,
2654
2665
  invokeUsage: {
2655
2666
  prompt_tokens: 0,
2656
2667
  completion_tokens: 0,
@@ -2659,13 +2670,13 @@ function Wi(e) {
2659
2670
  writeFailures: {},
2660
2671
  budgetHinted: !1
2661
2672
  };
2662
- B.loopProgress = d;
2663
- let f = 0, p = 0, m = Vi(M, C), h = null, g = 0, b = !1, S = 0;
2673
+ V.loopProgress = d;
2674
+ let f = 0, p = 0, m = Vi(N, C), h = null, g = 0, b = !1, S = 0;
2664
2675
  try {
2665
- for (; (f < M || b) && p < m && (p++, !n?.aborted);) {
2676
+ for (; (f < N || b) && p < m && (p++, !n?.aborted);) {
2666
2677
  if (k > 0 && d.invokeUsage.total_tokens > k) {
2667
2678
  let e = `本轮 token 预算(约 ${k})已用尽:任务在 ${f} 轮工具调用后中断,已完成的部分均保留。可继续对话,指定下一步(如「继续完成」/「只改 X」/「提高预算重试」)。`;
2668
- return I("error", {
2679
+ return L("error", {
2669
2680
  stage: "round_token_budget_exceeded",
2670
2681
  used: d.invokeUsage.total_tokens,
2671
2682
  budget: k,
@@ -2684,38 +2695,38 @@ function Wi(e) {
2684
2695
  content: e
2685
2696
  }), e;
2686
2697
  }
2687
- let e = le(void 0, "round", `round ${p}`, { round: p })?.id;
2698
+ let e = ce(void 0, "round", `round ${p}`, { round: p })?.id;
2688
2699
  t({
2689
2700
  type: "round_start",
2690
2701
  round: p
2691
- }), B = Si(x, {
2702
+ }), V = Si(x, {
2692
2703
  messages: i,
2693
- state: B
2694
- }), i = ge(i), i = H(i, Math.round(N.contextWindow * .6));
2695
- let r = le(e, "model", c, {
2704
+ state: V
2705
+ }), i = he(i), i = U(i, Math.round(P.contextWindow * .6));
2706
+ let r = ce(e, "model", c, {
2696
2707
  round: f + 1,
2697
- tools: de.map((e) => e.name)
2708
+ tools: ue.map((e) => e.name)
2698
2709
  });
2699
- I("llm_request", {
2710
+ L("llm_request", {
2700
2711
  round: f + 1,
2701
2712
  model: c,
2702
- tools: de.map((e) => e.name),
2703
- messages: be(i)
2713
+ tools: ue.map((e) => e.name),
2714
+ messages: ye(i)
2704
2715
  });
2705
2716
  let o = await l({
2706
2717
  messages: i,
2707
- state: B
2718
+ state: V
2708
2719
  });
2709
- i.push(o.message), I("llm_response", {
2720
+ i.push(o.message), L("llm_response", {
2710
2721
  round: f + 1,
2711
2722
  content: o.content,
2712
2723
  toolCalls: o.toolCalls
2713
- }), ue(r, o.aborted ? "timeout" : "ok", { usage: _(o.message) });
2724
+ }), le(r, o.aborted ? "timeout" : "ok", { usage: _(o.message) });
2714
2725
  {
2715
2726
  let e = y(o.message);
2716
2727
  e && (d.invokeUsage.prompt_tokens += e.prompt_tokens ?? 0, d.invokeUsage.completion_tokens += e.completion_tokens ?? 0, d.invokeUsage.total_tokens += e.total_tokens ?? 0);
2717
2728
  }
2718
- if (B = Ci(x, o, B), o.aborted) return t({
2729
+ if (V = Ci(x, o, V), o.aborted) return t({
2719
2730
  type: "done",
2720
2731
  content: o.content
2721
2732
  }), o.content;
@@ -2729,21 +2740,21 @@ function Wi(e) {
2729
2740
  name: e.name,
2730
2741
  args: e.args,
2731
2742
  type: "tool_call"
2732
- }))), I("middleware", {
2743
+ }))), L("middleware", {
2733
2744
  stage: "dsml_parsed",
2734
2745
  count: n.length,
2735
2746
  names: n.map((e) => e.name)
2736
2747
  });
2737
2748
  } else {
2738
2749
  if (e && g < 2) {
2739
- g += 1, b = !0, I("middleware", {
2750
+ g += 1, b = !0, L("middleware", {
2740
2751
  stage: "format_retry",
2741
2752
  attempt: g,
2742
2753
  content: o.content.slice(0, 200)
2743
2754
  }), i.push(new a("⚠️ 你刚才把工具调用写成了文本(伪 XML/标签/DSML 标记,如 <|tool_calls|>、<||DSML||>、<invoke name=...>),未被系统识别为工具调用,因此未执行,页面无变化。请直接用标准 function calling(工具调用)格式重新发起工具调用,不要在回复正文里输出这些标签或 JSON 文本。"));
2744
2755
  continue;
2745
2756
  }
2746
- if (e && (I("error", {
2757
+ if (e && (L("error", {
2747
2758
  stage: "garbled_exhausted",
2748
2759
  retries: g,
2749
2760
  content: o.content.slice(0, 200)
@@ -2754,24 +2765,24 @@ function Wi(e) {
2754
2765
  code: "GARBLED_TOOL_CALL_EXHAUSTED",
2755
2766
  context: { content: o.content.slice(0, 200) }
2756
2767
  })), !e && f > 0 && S < 2 && Mi(o.content)) {
2757
- S += 1, b = !0, I("middleware", {
2768
+ S += 1, b = !0, L("middleware", {
2758
2769
  stage: "transitional_retry",
2759
2770
  attempt: S,
2760
2771
  content: o.content.slice(0, 160)
2761
2772
  }), i.push(new a("⚠️ 你刚才输出的是计划/过渡性表述(如「我先看看」「稍后委派」),任务尚未完成。请立即继续执行 —— 调用所需工具把任务做完,全部完成后再给出总结回复。"));
2762
2773
  continue;
2763
2774
  }
2764
- if (!e && O > 0 && B.verifyAttempts < O) {
2775
+ if (!e && O > 0 && V.verifyAttempts < O) {
2765
2776
  let e = await Ti(x, {
2766
2777
  messages: i,
2767
- state: B,
2778
+ state: V,
2768
2779
  response: o,
2769
- log: (e, t) => I(e, t)
2780
+ log: (e, t) => L(e, t)
2770
2781
  });
2771
2782
  if (e) {
2772
- h = o.content, B.verifyAttempts += 1, i.push(new a(`⚠️ 验证未通过,请修正:${e}`)), I("middleware", {
2783
+ h = o.content, V.verifyAttempts += 1, i.push(new a(`⚠️ 验证未通过,请修正:${e}`)), L("middleware", {
2773
2784
  stage: "verify_retry",
2774
- attempt: B.verifyAttempts,
2785
+ attempt: V.verifyAttempts,
2775
2786
  feedback: e
2776
2787
  });
2777
2788
  continue;
@@ -2799,20 +2810,20 @@ function Wi(e) {
2799
2810
  id: r,
2800
2811
  name: e.name,
2801
2812
  args: e.args,
2802
- state: B,
2813
+ state: V,
2803
2814
  signal: n,
2804
2815
  emit: t,
2805
- logSink: L
2816
+ logSink: R
2806
2817
  }
2807
2818
  };
2808
2819
  }), v = await ni(m, D, async (r) => {
2809
2820
  if (n?.aborted) return;
2810
- let i = le(e, "tool", r.call.name, { name: r.call.name }), a = Date.now();
2821
+ let i = ce(e, "tool", r.call.name, { name: r.call.name }), a = Date.now();
2811
2822
  t({
2812
2823
  type: "tool_call",
2813
2824
  name: r.call.name,
2814
2825
  args: r.call.args
2815
- }), I("tool_call", {
2826
+ }), L("tool_call", {
2816
2827
  round: f + 1,
2817
2828
  name: r.call.name,
2818
2829
  args: r.call.args,
@@ -2835,13 +2846,13 @@ function Wi(e) {
2835
2846
  result: o.content,
2836
2847
  status: o.status,
2837
2848
  durationMs: s
2838
- }), I("tool_result", {
2849
+ }), L("tool_result", {
2839
2850
  round: f + 1,
2840
2851
  name: r.call.name,
2841
2852
  result: o.content,
2842
2853
  status: o.status,
2843
2854
  durationMs: s
2844
- }), ue(i, o.status === "error" ? "error" : "ok", { resultSnippet: String(o.content).slice(0, 100) }), o;
2855
+ }), le(i, o.status === "error" ? "error" : "ok", { resultSnippet: String(o.content).slice(0, 100) }), o;
2845
2856
  }, n);
2846
2857
  for (let e = 0; e < m.length; e++) {
2847
2858
  let t = v[e];
@@ -2868,19 +2879,19 @@ function Wi(e) {
2868
2879
  content: h
2869
2880
  }), h;
2870
2881
  let e = i[i.length - 1];
2871
- if (e && ye(e) === "tool") {
2872
- let e = i[0] && ye(i[0]) === "system" ? i.slice(1) : i.slice(), r = [new o(V() + "\n\n工具调用次数已达上限,请基于已有工具结果直接给出最终回答,不要再调用工具。"), ...e];
2873
- I("llm_request", {
2882
+ if (e && ve(e) === "tool") {
2883
+ let e = i[0] && ve(i[0]) === "system" ? i.slice(1) : i.slice(), r = [new o(H() + "\n\n工具调用次数已达上限,请基于已有工具结果直接给出最终回答,不要再调用工具。"), ...e];
2884
+ L("llm_request", {
2874
2885
  round: "wrap_up",
2875
2886
  model: c,
2876
2887
  tools: [],
2877
- messages: be(r)
2888
+ messages: ye(r)
2878
2889
  });
2879
- let a = await Ei(x, (e) => _e(e, t, n, R))({
2890
+ let a = await Ei(x, (e) => ge(e, t, n, z))({
2880
2891
  messages: r,
2881
- state: B
2892
+ state: V
2882
2893
  });
2883
- if (B = Ci(x, a, B), I("llm_response", {
2894
+ if (V = Ci(x, a, V), L("llm_response", {
2884
2895
  round: "wrap_up",
2885
2896
  content: a.content
2886
2897
  }), a.aborted) return t({
@@ -2891,7 +2902,7 @@ function Wi(e) {
2891
2902
  let e = a.content;
2892
2903
  if (Oi(e)) {
2893
2904
  let n = ki(e);
2894
- I("error", {
2905
+ L("error", {
2895
2906
  stage: "garbled_wrapup",
2896
2907
  content: e.slice(0, 200)
2897
2908
  }), t({
@@ -2915,41 +2926,41 @@ function Wi(e) {
2915
2926
  }), r;
2916
2927
  } finally {
2917
2928
  try {
2918
- await wi(x, B);
2929
+ await wi(x, V);
2919
2930
  } catch (e) {
2920
2931
  let t = Zr(e, "observable");
2921
2932
  console.warn("[Agent] afterAgent 清理出错(observable,已忽略):", t.message);
2922
2933
  }
2923
- if (ce && j) try {
2924
- j(oe.value, li(oe.value));
2934
+ if (se && j) try {
2935
+ j(ae.value, li(ae.value));
2925
2936
  } catch {}
2926
2937
  }
2927
2938
  }
2928
- async function Se(e, t, n) {
2939
+ async function xe(e, t, n) {
2929
2940
  let r = "";
2930
- return await xe(e, (e) => {
2941
+ return await be(e, (e) => {
2931
2942
  e.type === "done" && (r = e.content), n?.(e);
2932
2943
  }, t), r;
2933
2944
  }
2934
- function Ce(e) {
2935
- de = [...x.flatMap((e) => e.tools || []), ...e], z();
2945
+ function Se(e) {
2946
+ ue = [...x.flatMap((e) => e.tools || []), ...e], B();
2936
2947
  }
2937
- function we(e) {
2938
- R = e, z(), te?.(e);
2948
+ function Ce(e) {
2949
+ z = e, B(), M?.(e);
2939
2950
  }
2940
2951
  return {
2941
- invoke: Se,
2942
- stream: xe,
2943
- getState: () => B,
2952
+ invoke: xe,
2953
+ stream: be,
2954
+ getState: () => V,
2944
2955
  get allTools() {
2945
- return de;
2946
- },
2947
- setTools: Ce,
2948
- setLlm: we,
2949
- setModelCaps: P,
2950
- debugLogs: F,
2951
- spans: oe,
2952
- getEffectiveSystemPrompt: () => V()
2956
+ return ue;
2957
+ },
2958
+ setTools: Se,
2959
+ setLlm: Ce,
2960
+ setModelCaps: F,
2961
+ debugLogs: I,
2962
+ spans: ae,
2963
+ getEffectiveSystemPrompt: () => H()
2953
2964
  };
2954
2965
  }
2955
2966
  //#endregion
@@ -4874,12 +4885,12 @@ function Ss(e, t) {
4874
4885
  return t.some((t) => e === t || e.startsWith(t + ".") || e.startsWith(t + "["));
4875
4886
  }
4876
4887
  function Cs(e, t) {
4877
- let n = e.invoke.bind(e), r = async (e) => {
4888
+ let n = e.invoke.bind(e), r = async (e, r) => {
4878
4889
  if (Array.isArray(e?.patches) && e.patches.some((e) => !e || typeof e.jsonPath != "string" || !e.jsonPath)) return `PATH_OUT_OF_SCOPE:patches 含无 jsonPath 项(作用于根),子 agent 仅可写 ${t.join(", ")} 范围内子路径。请为每个 patch 指定 jsonPath。`;
4879
- let r = xs(e);
4880
- if (!r.length) return `PATH_OUT_OF_SCOPE:子 agent 仅可增量 patch(writablePaths: ${t.join(", ")}),不能整体替换(无 jsonPath)。用 write({patch:{jsonPath,...}}) 增量改。`;
4881
- for (let e of r) if (!Ss(e, t)) return `PATH_OUT_OF_SCOPE:子 agent 写 "${e}" 越界(仅可写 ${t.join(", ")})。`;
4882
- return n(e);
4890
+ let i = xs(e);
4891
+ if (!i.length) return `PATH_OUT_OF_SCOPE:子 agent 仅可增量 patch(writablePaths: ${t.join(", ")}),不能整体替换(无 jsonPath)。用 write({patch:{jsonPath,...}}) 增量改。`;
4892
+ for (let e of i) if (!Ss(e, t)) return `PATH_OUT_OF_SCOPE:子 agent 写 "${e}" 越界(仅可写 ${t.join(", ")})。`;
4893
+ return r === void 0 ? n(e) : n(e, r);
4883
4894
  };
4884
4895
  return new Proxy(e, { get(e, t, n) {
4885
4896
  return t === "invoke" ? r : Reflect.get(e, t, n);
@@ -8627,12 +8638,12 @@ function Pu(e, n = {}) {
8627
8638
  resourceStore: p.resourceStore
8628
8639
  }));
8629
8640
  let a = $(s);
8630
- return b(a, n), i === void 0 ? `主数据${r ? ` @ ${r}` : ""} = (undefined) (hash=${a})` : `主数据${r ? ` @ ${r}` : ""} = ${Q(i)} (hash=${a})`;
8641
+ return b(a, n), i === void 0 ? `主数据${r ? ` @ ${r}` : ""} = (undefined) (hash=${a})` : (i = ku(i, n === "", C, S), `主数据${r ? ` @ ${r}` : ""} = ${Q(i)} (hash=${a})`);
8631
8642
  }, {
8632
8643
  name: "get_data",
8633
8644
  description: "@deprecated(改用 read,等价且支持 fields/depth/分页)。读取主数据当前值(返回含 hash 供乐观锁);jsonPath 可选读子路径。大结果自动外存 vfs。",
8634
8645
  schema: t.object({ jsonPath: t.string().optional().describe("相对主数据根的点号路径(如 components.0.text);不传则读整个主数据") })
8635
- }), te = r(async ({ value: e, expectedHash: t }, n) => {
8646
+ }), M = r(async ({ value: e, expectedHash: t }, n) => {
8636
8647
  let r = v(n), i = await k("set", t || (x ? y(r) : void 0));
8637
8648
  if (i !== null) return i;
8638
8649
  let c = Ia(e);
@@ -8658,8 +8669,8 @@ function Pu(e, n = {}) {
8658
8669
  expectedHash: t.string().optional().describe("乐观锁:改前 read/get 返回的 hash;传入则校验,不一致拒绝写入防覆盖。不传则自动用你最后读到的 hash(autoLock)")
8659
8670
  })
8660
8671
  });
8661
- A(te);
8662
- let ne = r(async (e, t) => {
8672
+ A(M);
8673
+ let te = r(async (e, t) => {
8663
8674
  let n = v(t), r = e.op ?? e.patch?.op, i = e.jsonPath ?? e.patch?.jsonPath, c = e.value ?? e.patch?.value, u = e.expectedHash;
8664
8675
  if (!r) return Y({
8665
8676
  code: "MISSING_VALUE",
@@ -8734,8 +8745,8 @@ function Pu(e, n = {}) {
8734
8745
  }).optional().describe("容错:误传 write 的 {patch:{op,jsonPath,value}} 形式时从此取值(顶层优先)。正常用顶层 op/jsonPath/value 即可")
8735
8746
  })
8736
8747
  });
8737
- A(ne);
8738
- let M = r(async ({ jsonPath: e, expectedHash: t }, n) => {
8748
+ A(te);
8749
+ let N = r(async ({ jsonPath: e, expectedHash: t }, n) => {
8739
8750
  let r = v(n);
8740
8751
  if (!e) return Y({
8741
8752
  code: "MISSING_VALUE",
@@ -8777,8 +8788,8 @@ function Pu(e, n = {}) {
8777
8788
  expectedHash: t.string().optional().describe("乐观锁:改前 read/get 返回的 hash;传入则校验,不一致拒绝删除防覆盖")
8778
8789
  })
8779
8790
  });
8780
- A(M);
8781
- let N = r(async ({ id: e }, t) => {
8791
+ A(N);
8792
+ let P = r(async ({ id: e }, t) => {
8782
8793
  let n = v(t);
8783
8794
  if (!m.length) return Y({
8784
8795
  code: "NO_SNAPSHOT",
@@ -8807,8 +8818,8 @@ function Pu(e, n = {}) {
8807
8818
  description: "把主数据回退到某个快照(就地还原,保留响应式)。不传 id 则回退最近一次(快速回退)。可用 history_data({list:true}) 查看快照列表。",
8808
8819
  schema: t.object({ id: t.number().int().optional().describe("指定快照序号;不传则回退最近一次") })
8809
8820
  });
8810
- A(N);
8811
- let re = r(async ({ id: e, jsonPath: t, list: n }) => {
8821
+ A(P);
8822
+ let ne = r(async ({ id: e, jsonPath: t, list: n }) => {
8812
8823
  if (n) {
8813
8824
  if (!m.length) return "无快照。set/edit/delete 会自动存快照。";
8814
8825
  let e = m.map((e) => {
@@ -8853,15 +8864,16 @@ function Pu(e, n = {}) {
8853
8864
  jsonPath: t.string().optional().describe("只看快照的某子路径(相对主数据根);不传则整个快照"),
8854
8865
  list: t.boolean().optional().describe("true 则列出快照时间线元信息(序号/操作/标签/时间/大小);不传则查看单条快照内容")
8855
8866
  })
8856
- }), ie = r(async ({ expr: e, limit: t }) => {
8867
+ }), re = r(async ({ expr: e, limit: t }, n) => {
8868
+ let r = v(n);
8857
8869
  if (typeof s != "object" || !s) return Y({
8858
8870
  code: "NOT_OBJECT",
8859
8871
  message: `主数据不是对象/数组,无法查询(当前为 ${s === void 0 ? "undefined" : typeof s})`,
8860
8872
  hint: "query 仅适用于对象/数组;叶子用 get_data 读"
8861
8873
  });
8862
- let n = l ? ea(s, o) : s, r;
8874
+ let i = l ? ea(s, o) : s, a;
8863
8875
  try {
8864
- r = eu(n, e);
8876
+ a = eu(i, e);
8865
8877
  } catch (t) {
8866
8878
  return Y({
8867
8879
  code: "JSONPATH_SYNTAX",
@@ -8870,8 +8882,8 @@ function Pu(e, n = {}) {
8870
8882
  details: { expr: e }
8871
8883
  });
8872
8884
  }
8873
- let i = t ?? 50, a = r.slice(0, i), c = a.map((e) => `{"path":${JSON.stringify(e.path)},"index":${e.index === void 0 ? "null" : e.index},"value":${Q(e.value)}}`);
8874
- return `{"matched":${r.length},"returned":${a.length},"truncated":${r.length > i},"results":[${c.join(",")}]}`;
8885
+ let c = t ?? 50, u = a.slice(0, c), d = u.map((e) => `{"path":${JSON.stringify(e.path)},"index":${e.index === void 0 ? "null" : e.index},"value":${Q(ku(e.value, r === "", C, S))}}`);
8886
+ return `{"matched":${a.length},"returned":${u.length},"truncated":${a.length > c},"results":[${d.join(",")}]}`;
8875
8887
  }, {
8876
8888
  name: "query_data",
8877
8889
  description: "用 JSONPath 查询主数据(只读):$ 根/.key/[n]/[*]/[?(==/!=/</<=/>/>=,&&/||)]/..key 递归。返回匹配元素 path/index/value(path 可作 write patch 的 jsonPath);大数组筛选定位用它。",
@@ -8879,7 +8891,7 @@ function Pu(e, n = {}) {
8879
8891
  expr: t.string().describe("JSONPath 表达式,如 $.components[?(@.type==\"card\" && @.price<100)] 或 $..title(递归找所有 title)"),
8880
8892
  limit: t.number().int().min(1).max(200).optional().describe("返回结果上限,默认 50")
8881
8893
  })
8882
- }), ae = r(async ({ query: e, mode: t, fuzzyThreshold: n, matchKey: r, limit: i }) => {
8894
+ }), ie = r(async ({ query: e, mode: t, fuzzyThreshold: n, matchKey: r, limit: i }) => {
8883
8895
  if (s == null) return Y({
8884
8896
  code: "EMPTY",
8885
8897
  message: "主数据为空,无可搜索内容"
@@ -8917,7 +8929,7 @@ function Pu(e, n = {}) {
8917
8929
  matchKey: t.boolean().optional().describe("是否同时匹配 key 名,默认 true"),
8918
8930
  limit: t.number().int().min(1).max(200).optional().describe("返回上限,默认 50")
8919
8931
  })
8920
- }), P = r(async ({ script: e, mode: t, jsonPath: n }, r) => {
8932
+ }), F = r(async ({ script: e, mode: t, jsonPath: n }, r) => {
8921
8933
  let i = v(r);
8922
8934
  if (e.length > 8e3) return Y({
8923
8935
  code: "SCRIPT_TOO_LARGE",
@@ -9039,33 +9051,34 @@ function Pu(e, n = {}) {
9039
9051
  jsonPath: t.string().optional().describe("子树模式:仅对 jsonPath 指向的子树执行(降低大 JSON 成本);transform 时返回值作为该子树新值")
9040
9052
  })
9041
9053
  });
9042
- A(P, (e) => e?.mode === "transform");
9043
- let F = r(async ({ jsonPath: e, jsonPaths: t, fields: r, depth: i, offset: a, limit: u }, d) => {
9054
+ A(F, (e) => e?.mode === "transform");
9055
+ let I = r(async ({ jsonPath: e, jsonPaths: t, fields: r, depth: i, offset: a, limit: u }, d) => {
9044
9056
  let f = v(d), m = $(s);
9045
- if (b(m, f), t && t.length) {
9046
- let e = t.map((e) => {
9047
- let t = e || "";
9048
- if (!Ki(t, o, l)) return `- ${t || "(根)"}: [PATH_DENIED: 不在 schema 声明字段内]`;
9049
- let a = t ? Z(s, t) : s;
9050
- if (!t && l) a = ea(a, o);
9057
+ if (t && t.length) {
9058
+ let e = !1, a = t.map((t) => {
9059
+ let a = t || "";
9060
+ if (!Ki(a, o, l)) return `- ${a || "(根)"}: [PATH_DENIED: 不在 schema 声明字段内]`;
9061
+ e = !0;
9062
+ let c = a ? Z(s, a) : s;
9063
+ if (!a && l) c = ea(c, o);
9051
9064
  else if (l) {
9052
- let e = Ji(o, t);
9053
- e && (a = ea(a, e));
9065
+ let e = Ji(o, a);
9066
+ e && (c = ea(c, e));
9054
9067
  }
9055
- let c = a;
9056
- if (p && (c = gu({
9057
- jp: t,
9058
- resolved: c,
9068
+ let u = c;
9069
+ if (p && (u = gu({
9070
+ jp: a,
9071
+ resolved: u,
9059
9072
  resourcesByPath: p.resourcesByPath,
9060
9073
  resourceStore: p.resourceStore
9061
9074
  })), n.interceptors?.read) try {
9062
- c = n.interceptors.read(c);
9075
+ u = n.interceptors.read(u);
9063
9076
  } catch (e) {
9064
- return `- ${t}: [READ_INTERCEPT: ${e.message}]`;
9077
+ return `- ${a}: [READ_INTERCEPT: ${e.message}]`;
9065
9078
  }
9066
- return r && r.length && (c = La(c, r)), i != null && (c = Ra(c, i)), c = ku(c, f === "", C, S), c === void 0 ? `- ${t} = (undefined)` : `- ${t} = ${Q(c)}`;
9079
+ return r && r.length && (u = La(u, r)), i != null && (u = Ra(u, i)), u = ku(u, f === "", C, S), u === void 0 ? `- ${a} = (undefined)` : `- ${a} = ${Q(u)}`;
9067
9080
  });
9068
- return `多路径读取(共 ${t.length} 项,hash=${m}):\n${e.join("\n")}`;
9081
+ return e && b(m, f), `多路径读取(共 ${t.length} 项,hash=${m}):\n${a.join("\n")}`;
9069
9082
  }
9070
9083
  let h = e || "";
9071
9084
  if (ja(h)) return Y({
@@ -9098,7 +9111,7 @@ function Pu(e, n = {}) {
9098
9111
  message: `read 拦截器抛错: ${e.message}`
9099
9112
  });
9100
9113
  }
9101
- r && r.length && (_ = La(_, r)), i != null && (_ = Ra(_, i)), _ = ku(_, f === "", C, S);
9114
+ b(m, f), r && r.length && (_ = La(_, r)), i != null && (_ = Ra(_, i)), _ = ku(_, f === "", C, S);
9102
9115
  let y = e ? "" : `主数据说明: ${c}\n格式: 写入值需为 JSON,且通过声明的 schema 校验(校验失败时 write 会返回结构化错误)。字段约束(类型/min/max/enum/必填/默认)见 systemPrompt「可操作数据」段,或用 schema_data({ jsonPath }) 按需查。\n\n`, x = r && r.length ? `(字段裁剪:${r.join(",")})` : "", w = i == null ? "" : `(深度≤${i})`, T = x || w ? ` ${x}${w}` : "";
9103
9116
  if ((a !== void 0 || u !== void 0) && Array.isArray(_)) {
9104
9117
  let e = _.length, t = Math.max(0, a ?? 0), n = Math.min(200, Math.max(1, u ?? 50)), r = _.slice(t, t + n), i = t + n < e;
@@ -9116,7 +9129,7 @@ function Pu(e, n = {}) {
9116
9129
  offset: t.number().int().min(0).optional().describe("数组分页起始偏移(仅当读取目标是数组时生效,默认 0),配合 limit 分页读大数组"),
9117
9130
  limit: t.number().int().min(1).max(200).optional().describe("数组分页每页条数(默认 50,上限 200;仅数组时生效),返回切片 + total/hasMore")
9118
9131
  })
9119
- }), I = r(async ({ value: e, patch: t, patches: r, del: i, dryRun: c }, u) => {
9132
+ }), L = r(async ({ value: e, patch: t, patches: r, del: i, dryRun: c }, u) => {
9120
9133
  let d = v(u), f = "set";
9121
9134
  i ? f = "delete" : (r && r.length || t) && (f = "edit");
9122
9135
  let g = t?.value === void 0 ? e : t.value, _;
@@ -9276,8 +9289,8 @@ function Pu(e, n = {}) {
9276
9289
  dryRun: t.boolean().optional().describe("预检模式:走完整校验链(schema + 白名单 + patch 应用到 clone)但不落盘、不入快照,返回预览。四意图(value/patch/patches/del)均支持;乐观锁冲突照常检测(返回 VERSION_CONFLICT 不挂起)")
9277
9290
  })
9278
9291
  });
9279
- A(I);
9280
- let L = r(async ({ jsonPath: e }) => {
9292
+ A(L);
9293
+ let R = r(async ({ jsonPath: e }) => {
9281
9294
  let t = e || "", n = t ? Ji(o, t) : o;
9282
9295
  return n ? `schema${t ? ` @ ${t}` : ""} = ${Q(sa(n))}` : Y({
9283
9296
  code: "PATH_DENIED",
@@ -9288,7 +9301,7 @@ function Pu(e, n = {}) {
9288
9301
  name: "schema_data",
9289
9302
  description: "查看主数据(或子路径)的字段约束:类型/min/max/enum/必填/默认值/嵌套 shape。写前查约束,避免写错重试。不传 jsonPath 查根;传子路径(如 components.0)查该位置约束。",
9290
9303
  schema: t.object({ jsonPath: t.string().optional().describe("要查约束的子路径;不传查根 schema") })
9291
- }), oe = r(async ({ snapshotId: e, against: t }) => {
9304
+ }), ae = r(async ({ snapshotId: e, against: t }) => {
9292
9305
  let n = t != null, r, i;
9293
9306
  if (n) {
9294
9307
  let e = t;
@@ -9320,7 +9333,7 @@ function Pu(e, n = {}) {
9320
9333
  snapshotId: t.number().int().optional().describe("对比的快照序号;不传则最近一次"),
9321
9334
  against: t.unknown().optional().describe("对比的一段 JSON 值(与 snapshotId 互斥;传则忽略快照)")
9322
9335
  })
9323
- }), se = [];
9336
+ }), oe = [];
9324
9337
  if (n.vfsStore) {
9325
9338
  let e = n.vfsStore, i = (e) => `drafts/${e}.json`, c = r(({ draftId: t, chunk: n, mode: r }) => {
9326
9339
  let a = i(t), o = e.files[a], s = r === "append" && o, c = s ? o.content + n : n;
@@ -9385,9 +9398,9 @@ function Pu(e, n = {}) {
9385
9398
  expectedHash: t.string().optional().describe("乐观锁:改前 read/get 返回的 hash;传入则校验,不一致拒绝写入防覆盖。不传则自动用你最后读到的 hash(autoLock)")
9386
9399
  })
9387
9400
  });
9388
- A(u), se.push(c, u);
9401
+ A(u), oe.push(c, u);
9389
9402
  }
9390
- let ce = [];
9403
+ let se = [];
9391
9404
  if (e.resources?.length && d) {
9392
9405
  let e = r(async ({ path: e, handle: t }) => {
9393
9406
  let n = e;
@@ -9491,38 +9504,38 @@ function Pu(e, n = {}) {
9491
9504
  handle: t.string().optional().describe("占位符句柄(与 path 二选一)")
9492
9505
  })
9493
9506
  });
9494
- A(a), ce.push(e, n, i, a);
9507
+ A(a), se.push(e, n, i, a);
9495
9508
  }
9496
- let le = [
9509
+ let ce = [
9497
9510
  ee,
9498
9511
  j,
9499
- te,
9500
- ne,
9501
9512
  M,
9513
+ te,
9502
9514
  N,
9515
+ P,
9516
+ ne,
9503
9517
  re,
9504
9518
  ie,
9505
- ae,
9506
- P,
9507
9519
  F,
9508
9520
  I,
9509
9521
  L,
9510
- oe,
9511
- ...se,
9512
- ...ce
9522
+ R,
9523
+ ae,
9524
+ ...oe,
9525
+ ...se
9513
9526
  ];
9514
- Object.defineProperty(le, "controller", {
9527
+ Object.defineProperty(ce, "controller", {
9515
9528
  value: E,
9516
9529
  enumerable: !1,
9517
9530
  configurable: !1,
9518
9531
  writable: !1
9519
9532
  });
9520
- for (let e of le) Object.defineProperty(e, "__dataOpsScoped", {
9533
+ for (let e of ce) Object.defineProperty(e, "__dataOpsScoped", {
9521
9534
  value: !0,
9522
9535
  enumerable: !1,
9523
9536
  configurable: !1
9524
9537
  });
9525
- return le;
9538
+ return ce;
9526
9539
  }
9527
9540
  //#endregion
9528
9541
  //#region src/core/tools/fetchDoc.ts
@@ -9990,23 +10003,23 @@ function Cd(e, n) {
9990
10003
  prompt_tokens: 0,
9991
10004
  completion_tokens: 0,
9992
10005
  total_tokens: 0
9993
- }, a = ll(() => K), o = /* @__PURE__ */ At(0), s = Fl(e.storage);
10006
+ }, a = ll(() => q), o = /* @__PURE__ */ At(0), s = Fl(e.storage);
9994
10007
  e.debug && s && s.onEvent((e) => console.log("[page-agent-sdk][storage]", e));
9995
10008
  let { modelCaps: c, summaryLlmInvoke: l, titleLlmInvoke: u, compressDecisionInvoke: d } = cl(e), f = c;
9996
10009
  if (e.debug && console.log("[page-agent-sdk][modelCaps]", f), f.contextWindow < 2e5) throw Error(`[page-agent-sdk] 模型上下文窗口 ${f.contextWindow} 小于最小支持 ${ai}(需 ≥200K 窗口模型,如 GLM-5.2/Claude/Kimi/Qwen-1M/DeepSeek-v4)`);
9997
10010
  let h = Hl(e, f.contextWindow), g = h.enableLLMSummary !== !1, _ = (e.contextOptions && e.contextOptions.preserveLastToolResults) ?? Vl[e.contextPreset ?? "auto"], v = new Set(_), y = e.llm;
9998
10011
  e.debug && !l && console.warn("[page-agent-sdk][summarization] 未构造 llmInvoke(apiKey 缺失?),摘要回退零成本索引摘要");
9999
- let b = /* @__PURE__ */ yt([]), x = cc(e.vfs?.initialFiles, {
10012
+ let b = /* @__PURE__ */ vt([]), x = cc(e.vfs?.initialFiles, {
10000
10013
  persist: s ? { save: (e) => {
10001
- q.sessionId && s && s.save(n, q.sessionId, { vfs: e });
10014
+ Ft({ vfs: e });
10002
10015
  } } : void 0,
10003
10016
  maxBytes: e.vfs?.maxBytes,
10004
10017
  poolBytes: e.vfs?.poolBytes
10005
10018
  }), S = Ta([], { maxPlanRevisions: e.maxPlanRevisions }), C = ka(), w = Qa({
10006
- getSchema: () => z()?.schema,
10007
- getBind: () => z()?.bind,
10019
+ getSchema: () => B()?.schema,
10020
+ getBind: () => B()?.bind,
10008
10021
  unfocusGuidance: e.toolMode === "advanced" ? "tool" : "ask-user",
10009
- onChange: (e) => K({
10022
+ onChange: (e) => q({
10010
10023
  type: "focus_change",
10011
10024
  focuses: e
10012
10025
  })
@@ -10023,58 +10036,58 @@ function Cd(e, n) {
10023
10036
  let t = $i(O?.schema, e._codeAsset.codeField);
10024
10037
  t.length ? (e._codeAsset.writablePaths = t, Array.isArray(e.writablePaths) && (e.writablePaths = t), e._rebuildCodeAssetPaths?.(t[0]), console.info(`[page-agent-sdk][createHtmlSubagent] 未传 writablePaths,已从 schema 推断: [${t.map((e) => `'${e}'`).join(", ")}]`)) : (console.warn("[page-agent-sdk][createHtmlSubagent] 未能从 schema 推断 writablePaths(开放 schema(z.any()/z.record())/嵌套容器(如 sections[].children[])/点路径 codeField(如 props.html_code)不支持自动推断),已跳过该 html 子 agent(整体不受影响);如确需代码资产机制(vfs + 格式校验 + 增量 commit),请显式传 writablePaths(代码组件 data 区,如 ['components'])"), j.add(e));
10025
10038
  }
10026
- let te = j.size ? ee.filter((e) => !j.has(e)) : ee, ne = j.size ? (A ?? []).filter((e) => !j.has(e)) : A, M = te.length > 0, N = te.flatMap((e) => e._codeAsset.writablePaths), re = te.flatMap((e) => e._codeAsset.writablePaths.map((t) => `${t}.${e._codeAsset.codeField}`)), ie = e.checkpoint, ae = ie !== void 0 && ie !== !1, P = ae ? Bo({
10027
- getData: () => z()?.bind,
10028
- consumeDataDirty: () => R?.consumeDataDirty?.() ?? !0,
10039
+ let M = j.size ? ee.filter((e) => !j.has(e)) : ee, te = j.size ? (A ?? []).filter((e) => !j.has(e)) : A, N = M.length > 0, P = M.flatMap((e) => e._codeAsset.writablePaths), ne = M.flatMap((e) => e._codeAsset.writablePaths.map((t) => `${t}.${e._codeAsset.codeField}`)), re = e.checkpoint, ie = re !== void 0 && re !== !1, F = ie ? Bo({
10040
+ getData: () => B()?.bind,
10041
+ consumeDataDirty: () => z?.consumeDataDirty?.() ?? !0,
10029
10042
  slotPaths: O ? [""] : [],
10030
10043
  vfsStore: x,
10031
10044
  todosMw: S,
10032
10045
  getTodos: () => D.current?.getState?.()?.todos ?? [],
10033
10046
  messages: b,
10034
- maxCheckpoints: ie && typeof ie == "object" ? ie.maxCheckpoints : void 0
10035
- }) : null, F = !ie || typeof ie != "object" || ie.auto !== !1, I = Rl(e.capabilities), L = I.dataOps, oe = I.draftWrite, se = I.tracing, ce = I.automation, le = ic(e);
10036
- if (M) {
10037
- let e = te.map((e) => e._codeAsset.orchestratorPrompt).filter(Boolean).join("\n\n");
10038
- e && (le += "\n\n" + e);
10039
- } else O?.schema && Qi(O.schema) && (le += "\n\n" + ga.htmlDirectWriteFallback, console.warn("[page-agent-sdk] 检测到 schema 含 code 字段但未注册 html 子 agent:已自动注入「主 agent 自己写 HTML」编排(code 作普通字段直接 write,无 vfs 工作副本 / 无格式校验门禁)。如需代码资产机制(vfs + 格式校验 + 增量 commit + 主上下文 code 摘要),注册 createHtmlSubagent;若确为降级意图可忽略。"));
10040
- let ue = L && O ? Pu(O, {
10047
+ maxCheckpoints: re && typeof re == "object" ? re.maxCheckpoints : void 0
10048
+ }) : null, I = !re || typeof re != "object" || re.auto !== !1, L = Rl(e.capabilities), R = L.dataOps, ae = L.draftWrite, oe = L.tracing, se = L.automation, ce = ic(e);
10049
+ if (N) {
10050
+ let e = M.map((e) => e._codeAsset.orchestratorPrompt).filter(Boolean).join("\n\n");
10051
+ e && (ce += "\n\n" + e);
10052
+ } else O?.schema && Qi(O.schema) && (ce += "\n\n" + ga.htmlDirectWriteFallback, console.warn("[page-agent-sdk] 检测到 schema 含 code 字段但未注册 html 子 agent:已自动注入「主 agent 自己写 HTML」编排(code 作普通字段直接 write,无 vfs 工作副本 / 无格式校验门禁)。如需代码资产机制(vfs + 格式校验 + 增量 commit + 主上下文 code 摘要),注册 createHtmlSubagent;若确为降级意图可忽略。"));
10053
+ let le = R && O ? Pu(O, {
10041
10054
  onAudit: e.onAudit ?? (e.debug ? (e) => console.log("[page-agent-sdk][data audit]", e) : void 0),
10042
10055
  maxSnapshots: e.maxSnapshots,
10043
10056
  onConflict: a.set,
10044
10057
  autoLock: e.autoLock,
10045
10058
  interceptors: e.interceptors,
10046
- vfsStore: oe || O?.resources?.length ? x : void 0,
10047
- ...N.length ? { pgIdPaths: N } : {},
10048
- ...re.length ? { largeTextPaths: re } : {}
10049
- }) : [], de = L ? Tu(ue, e.toolMode) : [], R = L && O ? ue.controller ?? null : null, fe = L && O?.resources?.length && R?.getResourcesSnapshot ? sd({
10050
- getResourcesSnapshot: () => R?.getResourcesSnapshot?.() ?? [],
10059
+ vfsStore: ae || O?.resources?.length ? x : void 0,
10060
+ ...P.length ? { pgIdPaths: P } : {},
10061
+ ...ne.length ? { largeTextPaths: ne } : {}
10062
+ }) : [], ue = R ? Tu(le, e.toolMode) : [], z = R && O ? le.controller ?? null : null, de = R && O?.resources?.length && z?.getResourcesSnapshot ? sd({
10063
+ getResourcesSnapshot: () => z?.getResourcesSnapshot?.() ?? [],
10051
10064
  toolsExposed: e.toolMode === "advanced"
10052
- }) : void 0, z = () => R?.get() ?? O, B = /* @__PURE__ */ new Map(), pe = rd(I, de, Iu, Hu, Yu);
10053
- pe.forEach((e) => B.set(e.name, "builtin"));
10054
- let me = [...e.tools || []];
10055
- me.forEach((e) => B.set(e.name, "user"));
10056
- let V = Qu(e.actions ?? {});
10057
- V.forEach((e) => B.set(e.name, "action"));
10058
- let he = [], ge = !1, _e = e.humanConfirm !== !1 && (!e.approval || e.approval.humanConfirmTool !== !1), ve = _e ? Mo() : null;
10059
- ve && B.set(Ao, "builtin");
10060
- let ye = ae && P ? [r(async () => {
10061
- let e = P.list();
10062
- return e.length ? P.restore() ? `已回退到最近一次正常状态(checkpoint #${e[e.length - 1].id})。对话历史、主数据、vfs、todos 已整体还原。请基于回退后的状态重新判断并继续。` : "回退失败:无可用 checkpoint。" : "无可用 checkpoint,无法回退。";
10065
+ }) : void 0, B = () => z?.get() ?? O, V = /* @__PURE__ */ new Map(), fe = rd(L, ue, Iu, Hu, Yu);
10066
+ fe.forEach((e) => V.set(e.name, "builtin"));
10067
+ let pe = [...e.tools || []];
10068
+ pe.forEach((e) => V.set(e.name, "user"));
10069
+ let H = Qu(e.actions ?? {});
10070
+ H.forEach((e) => V.set(e.name, "action"));
10071
+ let me = [], he = !1, ge = e.humanConfirm !== !1 && (!e.approval || e.approval.humanConfirmTool !== !1), _e = ge ? Mo() : null;
10072
+ _e && V.set(Ao, "builtin");
10073
+ let ve = ie && F ? [r(async () => {
10074
+ let e = F.list();
10075
+ return e.length ? F.restore() ? `已回退到最近一次正常状态(checkpoint #${e[e.length - 1].id})。对话历史、主数据、vfs、todos 已整体还原。请基于回退后的状态重新判断并继续。` : "回退失败:无可用 checkpoint。" : "无可用 checkpoint,无法回退。";
10063
10076
  }, {
10064
10077
  name: "restore_last_checkpoint",
10065
10078
  description: "回退到最近一次正常状态(整体还原对话历史 + 主数据 + vfs + todos)。当本轮操作出错、页面被改坏、或走偏时调用,回到本轮起点重新来过。不传参数即回退最近一次。",
10066
10079
  schema: t.object({}).optional()
10067
10080
  }), r(async () => {
10068
- let e = P.list();
10081
+ let e = F.list();
10069
10082
  return e.length ? "可用 checkpoint:\n" + e.map((e) => `#${e.id} [${e.label ?? "auto"}] 消息数=${e.messageCount} 时间=${new Date(e.timestamp).toLocaleTimeString()}`).join("\n") : "无可用 checkpoint。";
10070
10083
  }, {
10071
10084
  name: "list_checkpoints",
10072
10085
  description: "列出可用会话 checkpoint(回退点)。",
10073
10086
  schema: t.object({}).optional()
10074
10087
  })] : [];
10075
- ye.forEach((e) => B.set(e.name, "builtin"));
10076
- let H = I.focus, be = r(async ({ path: e, label: t }) => {
10077
- let n = z()?.schema;
10088
+ ve.forEach((e) => V.set(e.name, "builtin"));
10089
+ let U = L.focus, ye = r(async ({ path: e, label: t }) => {
10090
+ let n = B()?.schema;
10078
10091
  return n ? Ji(n, e) ? (w.setFocus({
10079
10092
  path: e,
10080
10093
  ...t ? { label: t } : {}
@@ -10086,12 +10099,12 @@ function Cd(e, n) {
10086
10099
  path: t.string().describe("要聚焦的组件 jsonPath,如 components.3"),
10087
10100
  label: t.string().optional().describe("人类可读标签,如「导航栏」")
10088
10101
  })
10089
- }), xe = r(async () => (w.clearFocus(), "已清除聚焦,恢复全量可操作范围(可读写所有组件)。"), {
10102
+ }), be = r(async () => (w.clearFocus(), "已清除聚焦,恢复全量可操作范围(可读写所有组件)。"), {
10090
10103
  name: "clear_focus",
10091
10104
  description: "清除当前聚焦,退出精修模式,恢复对全部组件的读写权限。",
10092
10105
  schema: t.object({}).optional()
10093
- }), Se = r(async ({ path: e, label: t }) => {
10094
- let n = z()?.schema;
10106
+ }), xe = r(async ({ path: e, label: t }) => {
10107
+ let n = B()?.schema;
10095
10108
  if (!n) return "聚焦失败:当前无主数据 schema,无法聚焦。";
10096
10109
  if (!Ji(n, e)) return `PATH_DENIED · 聚焦失败:path "${e}" 不在 schema 内。请先用 read 查看可操作路径再聚焦。`;
10097
10110
  w.addFocus({
@@ -10107,7 +10120,7 @@ function Cd(e, n) {
10107
10120
  path: t.string().describe("要追加聚焦的组件 jsonPath,如 components.3"),
10108
10121
  label: t.string().optional().describe("人类可读标签")
10109
10122
  })
10110
- }), Ce = r(async ({ path: e }) => {
10123
+ }), Se = r(async ({ path: e }) => {
10111
10124
  let t = w.getFocuses().length;
10112
10125
  w.removeFocus(e);
10113
10126
  let n = w.getFocuses();
@@ -10116,81 +10129,81 @@ function Cd(e, n) {
10116
10129
  name: "remove_focus",
10117
10130
  description: "移除单个聚焦焦点(by path),保留其他焦点。移除最后一个等价退出精修。全部退出用 clear_focus。",
10118
10131
  schema: t.object({ path: t.string().describe("要移除的焦点 jsonPath") })
10119
- }), we = H && e.toolMode === "advanced" ? [
10132
+ }), Ce = U && e.toolMode === "advanced" ? [
10133
+ ye,
10120
10134
  be,
10121
10135
  xe,
10122
- Se,
10123
- Ce
10136
+ Se
10124
10137
  ] : [];
10125
- we.forEach((e) => B.set(e.name, "builtin"));
10126
- let Te = [], Ee = /* @__PURE__ */ new Map(), U = W();
10127
- function W() {
10138
+ Ce.forEach((e) => V.set(e.name, "builtin"));
10139
+ let we = [], Te = /* @__PURE__ */ new Map(), W = G();
10140
+ function G() {
10128
10141
  let { tools: e, collisions: t } = id([
10129
10142
  {
10130
10143
  label: "builtin",
10131
- tools: pe
10144
+ tools: fe
10132
10145
  },
10133
10146
  {
10134
10147
  label: "user",
10135
- tools: me
10148
+ tools: pe
10136
10149
  },
10137
10150
  {
10138
10151
  label: "action",
10139
- tools: V
10152
+ tools: H
10140
10153
  },
10141
10154
  {
10142
10155
  label: "humanConfirm",
10143
- tools: ve ? [ve] : []
10156
+ tools: _e ? [_e] : []
10144
10157
  },
10145
10158
  {
10146
10159
  label: "checkpoint",
10147
- tools: ye
10160
+ tools: ve
10148
10161
  },
10149
10162
  {
10150
10163
  label: "focus",
10151
- tools: we
10164
+ tools: Ce
10152
10165
  },
10153
10166
  {
10154
10167
  label: "mcp",
10155
- tools: he
10168
+ tools: me
10156
10169
  },
10157
10170
  {
10158
10171
  label: "skill",
10159
- tools: Te
10172
+ tools: we
10160
10173
  }
10161
10174
  ]);
10162
10175
  return t.length && console.warn("[page-agent-sdk] 工具重名,后注册覆盖先注册:", t.map((e) => `${e.name}(${e.loser}→${e.winner})`).join(", ")), e;
10163
10176
  }
10164
- let De = I.planning, Oe = I.missionAnchor, ke = I.workingMemory, Ae = I.skills, je = I.vfs || M;
10165
- if (je) for (let e of hc) B.set(e, "builtin");
10166
- if (De) for (let e of S.tools ?? []) B.set(e.name, "builtin");
10167
- let Me = I.summarization, Ne = I.agentCompression && !!d;
10168
- e.debug && I.agentCompression && !d && console.warn("[page-agent-sdk][agentCompression] agentCompression 开启但 summaryLlm 不可用(或缺 apiKey / 模型不支持工具),压缩决策不启用,回退静态压缩");
10169
- let Pe = I.memory, Fe = I.subagent, Ie = Fe ? us() : void 0, Le = e.verify?.maxAttempts ?? 2, Re = !!(e.verify?.check || e.verify?.maxAttempts || e.verify?.adversarial), G = e.capabilities?.verify === !1, ze = (I.verify || Re && !G) && e.verify?.enabled !== !1 && Le > 0, Be = I.contextInspector;
10170
- Re && !ze && e.verify?.enabled !== !1 && console.warn("[page-agent-sdk][verify] 检测到 verify 配置(check/maxAttempts/adversarial)但未装载(capabilities.verify:false 显式关闭 或 maxAttempts≤0)");
10171
- let Ve = e.subagent, He = Ve?.allowedTools ?? [], Ue = e.permissions?.length ? Oo(e.permissions) : void 0, We = e.approval && (e.approval.tools !== void 0 || e.approval.confirm) ? ko(e.approval) : void 0, Ge = [...Ue ? [Ue] : [], ...We ? [We] : []], Ke = !Fe || Ve?.enabled === !1 ? void 0 : Es({
10172
- llm: Ve?.llm ?? e.llm,
10173
- allTools: () => q.agent?.allTools ?? U,
10174
- allowedTools: He.length ? He : void 0,
10175
- systemPrompt: Ve?.systemPrompt,
10176
- temperature: Ve?.temperature,
10177
- maxTokens: Ve?.maxTokens,
10178
- skills: Ve?.skills,
10179
- maxDepth: Ve?.maxDepth,
10180
- maxParallel: Ve?.maxParallel,
10177
+ let Ee = L.planning, De = L.missionAnchor, Oe = L.workingMemory, ke = L.skills, Ae = L.vfs || N;
10178
+ if (Ae) for (let e of hc) V.set(e, "builtin");
10179
+ if (Ee) for (let e of S.tools ?? []) V.set(e.name, "builtin");
10180
+ let je = L.summarization, Me = L.agentCompression && !!d;
10181
+ e.debug && L.agentCompression && !d && console.warn("[page-agent-sdk][agentCompression] agentCompression 开启但 summaryLlm 不可用(或缺 apiKey / 模型不支持工具),压缩决策不启用,回退静态压缩");
10182
+ let Ne = L.memory, Pe = L.subagent, Fe = Pe ? us() : void 0, Ie = e.verify?.maxAttempts ?? 2, Le = !!(e.verify?.check || e.verify?.maxAttempts || e.verify?.adversarial), K = e.capabilities?.verify === !1, Re = (L.verify || Le && !K) && e.verify?.enabled !== !1 && Ie > 0, ze = L.contextInspector;
10183
+ Le && !Re && e.verify?.enabled !== !1 && console.warn("[page-agent-sdk][verify] 检测到 verify 配置(check/maxAttempts/adversarial)但未装载(capabilities.verify:false 显式关闭 或 maxAttempts≤0)");
10184
+ let Be = e.subagent, Ve = Be?.allowedTools ?? [], He = e.permissions?.length ? Oo(e.permissions) : void 0, Ue = e.approval && (e.approval.tools !== void 0 || e.approval.confirm) ? ko(e.approval) : void 0, We = [...He ? [He] : [], ...Ue ? [Ue] : []], Ge = !Pe || Be?.enabled === !1 ? void 0 : Es({
10185
+ llm: Be?.llm ?? e.llm,
10186
+ allTools: () => J.agent?.allTools ?? W,
10187
+ allowedTools: Ve.length ? Ve : void 0,
10188
+ systemPrompt: Be?.systemPrompt,
10189
+ temperature: Be?.temperature,
10190
+ maxTokens: Be?.maxTokens,
10191
+ skills: Be?.skills,
10192
+ maxDepth: Be?.maxDepth,
10193
+ maxParallel: Be?.maxParallel,
10181
10194
  debug: e.debug,
10182
10195
  getFocuses: () => w.getFocuses(),
10183
- getSchema: () => z()?.schema ?? null,
10184
- tracker: Ie,
10185
- guardMiddleware: Ge.length ? Ge : void 0,
10186
- getVfsFiles: je ? () => x.files : void 0,
10187
- enterDataScope: R?.enterScope ? (e) => R.enterScope(e) : void 0,
10188
- exitDataScope: R?.exitScope ? (e) => R.exitScope(e) : void 0,
10196
+ getSchema: () => B()?.schema ?? null,
10197
+ tracker: Fe,
10198
+ guardMiddleware: We.length ? We : void 0,
10199
+ getVfsFiles: Ae ? () => x.files : void 0,
10200
+ enterDataScope: z?.enterScope ? (e) => z.enterScope(e) : void 0,
10201
+ exitDataScope: z?.exitScope ? (e) => z.exitScope(e) : void 0,
10189
10202
  onUsage: (e) => {
10190
10203
  i.prompt_tokens = (i.prompt_tokens ?? 0) + (e.prompt_tokens ?? 0), i.completion_tokens = (i.completion_tokens ?? 0) + (e.completion_tokens ?? 0), i.total_tokens = (i.total_tokens ?? 0) + (e.total_tokens ?? 0);
10191
10204
  },
10192
- timeoutMs: Ve?.timeoutMs
10193
- }), qe = ne?.map((e) => {
10205
+ timeoutMs: Be?.timeoutMs
10206
+ }), Ke = te?.map((e) => {
10194
10207
  if (!e._codeAsset) return e;
10195
10208
  let t = e._codeAsset, n = Nc({
10196
10209
  writablePaths: t.writablePaths,
@@ -10199,165 +10212,165 @@ function Cd(e, n) {
10199
10212
  codeField: t.codeField,
10200
10213
  craftNotes: t.craftNotes,
10201
10214
  onWarning: (e) => console.warn(`[page-agent-sdk][code-asset] ${e}`),
10202
- getController: () => R,
10215
+ getController: () => z,
10203
10216
  vfsStore: x
10204
10217
  }), r = [...e.middleware ?? [], n];
10205
- for (let e of r) e && typeof e == "object" && typeof e._setGetController == "function" && e._setGetController(() => R);
10218
+ for (let e of r) e && typeof e == "object" && typeof e._setGetController == "function" && e._setGetController(() => z);
10206
10219
  return {
10207
10220
  ...e,
10208
10221
  middleware: r
10209
10222
  };
10210
- }), Je = M && Fe ? Pc() : void 0, Ye = Je ? Bc({
10211
- getBind: () => z()?.bind,
10212
- writablePaths: N,
10213
- getLocked: () => Je.locked(),
10214
- tools: U
10215
- }) : void 0, Xe = Fe && qe !== void 0 ? ks(qe, {
10223
+ }), qe = N && Pe ? Pc() : void 0, Je = qe ? Bc({
10224
+ getBind: () => B()?.bind,
10225
+ writablePaths: P,
10226
+ getLocked: () => qe.locked(),
10227
+ tools: W
10228
+ }) : void 0, Ye = Pe && Ke !== void 0 ? ks(Ke, {
10216
10229
  llm: e.llm,
10217
- allTools: () => q.agent?.allTools ?? U,
10230
+ allTools: () => J.agent?.allTools ?? W,
10218
10231
  debug: e.debug,
10219
10232
  getFocuses: () => w.getFocuses(),
10220
- getSchema: () => z()?.schema ?? null,
10221
- getBind: () => z()?.bind,
10222
- tracker: Ie,
10223
- guardMiddleware: Ge.length ? Ge : void 0,
10224
- getVfsFiles: je ? () => x.files : void 0,
10225
- enterDataScope: R?.enterScope ? (e) => R.enterScope(e) : void 0,
10226
- exitDataScope: R?.exitScope ? (e) => R.exitScope(e) : void 0,
10233
+ getSchema: () => B()?.schema ?? null,
10234
+ getBind: () => B()?.bind,
10235
+ tracker: Fe,
10236
+ guardMiddleware: We.length ? We : void 0,
10237
+ getVfsFiles: Ae ? () => x.files : void 0,
10238
+ enterDataScope: z?.enterScope ? (e) => z.enterScope(e) : void 0,
10239
+ exitDataScope: z?.exitScope ? (e) => z.exitScope(e) : void 0,
10227
10240
  onUsage: (e) => {
10228
10241
  i.prompt_tokens = (i.prompt_tokens ?? 0) + (e.prompt_tokens ?? 0), i.completion_tokens = (i.completion_tokens ?? 0) + (e.completion_tokens ?? 0), i.total_tokens = (i.total_tokens ?? 0) + (e.total_tokens ?? 0);
10229
10242
  },
10230
10243
  timeoutMs: e.subagent?.timeoutMs,
10231
- ...Je ? {
10232
- componentLock: Je,
10233
- resolveComponents: (e) => Fc(e, kc(z()?.bind, N))
10244
+ ...qe ? {
10245
+ componentLock: qe,
10246
+ resolveComponents: (e) => Fc(e, kc(B()?.bind, P))
10234
10247
  } : {}
10235
- }) : void 0, Ze = Xe ? Xe.controller : null, Qe = [
10248
+ }) : void 0, Xe = Ye ? Ye.controller : null, Ze = [
10236
10249
  "get_data",
10237
10250
  "describe_data",
10238
10251
  "read",
10239
10252
  "fetch_document"
10240
- ], $e = U.filter((e) => Qe.includes(e.name)), et = ze ? As({
10253
+ ], Qe = W.filter((e) => Ze.includes(e.name)), $e = Re ? As({
10241
10254
  check: e.verify.check ?? Is({
10242
- schemas: () => z() ? { "": z().schema } : {},
10243
- root: () => z()?.bind
10255
+ schemas: () => B() ? { "": B().schema } : {},
10256
+ root: () => B()?.bind
10244
10257
  }),
10245
10258
  adversarial: e.verify?.adversarial ? {
10246
10259
  llm: e.llm,
10247
- tools: $e
10260
+ tools: Qe
10248
10261
  } : void 0
10249
- }) : void 0, tt = Be ? Xs({
10262
+ }) : void 0, et = ze ? Xs({
10250
10263
  contextWindow: f.contextWindow,
10251
10264
  thresholdRatio: Hl(e, f.contextWindow).summaryThresholdRatio
10252
- }) : void 0, nt = od({
10253
- ...I,
10254
- humanConfirm: _e,
10255
- subagents: ne?.map((e) => ({
10265
+ }) : void 0, tt = od({
10266
+ ...L,
10267
+ humanConfirm: ge,
10268
+ subagents: te?.map((e) => ({
10256
10269
  id: e.id,
10257
10270
  description: e.description,
10258
10271
  temperature: e.temperature
10259
10272
  }))
10260
- }, L && !!O, e.toolMode, !!O?.resources?.length, { promptSoftCap: as(f.contextWindow, h.promptSoftCapTokens) }), rt = O ? {
10273
+ }, R && !!O, e.toolMode, !!O?.resources?.length, { promptSoftCap: as(f.contextWindow, h.promptSoftCapTokens) }), nt = O ? {
10261
10274
  name: "dataHint",
10262
- augmentPrompt: () => rc(z(), e.schemaHint) || void 0
10263
- } : null, it = e.augmentSystem ? {
10275
+ augmentPrompt: () => rc(B(), e.schemaHint) || void 0
10276
+ } : null, rt = e.augmentSystem ? {
10264
10277
  name: "augmentSystem",
10265
10278
  augmentPrompt: (t) => {
10266
10279
  try {
10267
10280
  return e.augmentSystem({
10268
10281
  state: t,
10269
- data: z()
10282
+ data: B()
10270
10283
  });
10271
10284
  } catch (t) {
10272
10285
  e.debug && console.log("[page-agent-sdk][augmentSystem] 回调抛错,降级跳过:", t.message);
10273
10286
  return;
10274
10287
  }
10275
10288
  }
10276
- } : null, at = zl(e.onEvent), K = at.emit, ot, st = [], ct = (e) => ({
10289
+ } : null, it = zl(e.onEvent), q = it.emit, at, ot = [], st = (e) => ({
10277
10290
  name: e.name,
10278
10291
  description: e.description,
10279
10292
  content: typeof e.getContent == "function" ? e.getContent() : ""
10280
- }), lt = (e) => ({
10293
+ }), ct = (e) => ({
10281
10294
  name: e.name,
10282
10295
  description: e.description,
10283
10296
  getContent: () => e.content
10284
- }), ut = e.skillStorage === !1 ? null : fd({
10297
+ }), lt = e.skillStorage === !1 ? null : fd({
10285
10298
  ...typeof e.skillStorage == "object" ? e.skillStorage : {},
10286
10299
  id: e.skillStorage && typeof e.skillStorage == "object" && e.skillStorage.id ? e.skillStorage.id : `agent::${n}`
10287
- }), dt = () => {
10288
- let t = ot ? ot.controller : null;
10300
+ }), ut = () => {
10301
+ let t = at ? at.controller : null;
10289
10302
  if (t) {
10290
- let n = (e.skills || []).filter((e) => !st.some((t) => t.name === e.name));
10291
- t.set([...n, ...st]);
10303
+ let n = (e.skills || []).filter((e) => !ot.some((t) => t.name === e.name));
10304
+ t.set([...n, ...ot]);
10292
10305
  }
10293
- q.infoTick.value++;
10294
- }, ft = async () => {
10295
- if (ut) try {
10296
- let t = await ut.list();
10306
+ J.infoTick.value++;
10307
+ }, dt = async () => {
10308
+ if (lt) try {
10309
+ let t = await lt.list();
10297
10310
  if (t.length) {
10298
- st = t.map(lt);
10299
- let n = ot ? ot.controller : null;
10311
+ ot = t.map(ct);
10312
+ let n = at ? at.controller : null;
10300
10313
  if (n) {
10301
- let t = (e.skills || []).filter((e) => !st.some((t) => t.name === e.name));
10302
- n.set([...t, ...st]);
10314
+ let t = (e.skills || []).filter((e) => !ot.some((t) => t.name === e.name));
10315
+ n.set([...t, ...ot]);
10303
10316
  }
10304
- q.infoTick.value++;
10317
+ J.infoTick.value++;
10305
10318
  }
10306
10319
  } catch {}
10307
- }, pt = Me ? ls({
10320
+ }, ft = je ? ls({
10308
10321
  ...h,
10309
10322
  llmInvoke: l,
10310
- getRegisteredData: () => z() ? [{ description: z().description ?? "主数据对象" }] : [],
10323
+ getRegisteredData: () => B() ? [{ description: B().description ?? "主数据对象" }] : [],
10311
10324
  preserveLastToolResults: _,
10312
- ...Ne ? {
10325
+ ...Me ? {
10313
10326
  decideInvoke: d,
10314
- getSnapshot: () => tt?.getSnapshot()
10327
+ getSnapshot: () => et?.getSnapshot()
10315
10328
  } : {}
10316
- }) : void 0, mt = Wl([
10317
- ...rt ? [rt] : [],
10318
- nt,
10319
- ...Oe ? [C] : [],
10320
- ...De ? [S] : [],
10321
- ...Ae ? [ot = xo(e.skills || [], {
10322
- readVfs: je ? (e) => x.files[e]?.content : void 0,
10323
- hostScriptEnabled: I.skillHostScript,
10329
+ }) : void 0, pt = Wl([
10330
+ ...nt ? [nt] : [],
10331
+ tt,
10332
+ ...De ? [C] : [],
10333
+ ...Ee ? [S] : [],
10334
+ ...ke ? [at = xo(e.skills || [], {
10335
+ readVfs: Ae ? (e) => x.files[e]?.content : void 0,
10336
+ hostScriptEnabled: L.skillHostScript,
10324
10337
  onToolsReady: (e, t) => {
10325
10338
  for (let n of t) {
10326
- let t = Te.findIndex((e) => e.name === n.name);
10327
- t >= 0 && Te.splice(t, 1), Te.push(n), Ee.set(n.name, e), B.set(n.name, `skill:${e}`);
10339
+ let t = we.findIndex((e) => e.name === n.name);
10340
+ t >= 0 && we.splice(t, 1), we.push(n), Te.set(n.name, e), V.set(n.name, `skill:${e}`);
10328
10341
  }
10329
- U = W(), q.agent && q.agent.setTools(U), q.infoTick.value++;
10342
+ W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++;
10330
10343
  }
10331
10344
  })] : [],
10332
- ...je ? [_c(x)] : [],
10333
- ...pt ? [pt] : [],
10334
- ...ke ? [T] : [],
10335
- ...H ? [w] : [],
10336
- ...fe ? [fe] : [],
10337
- ...Pe ? [E] : [],
10345
+ ...Ae ? [_c(x)] : [],
10346
+ ...ft ? [ft] : [],
10347
+ ...Oe ? [T] : [],
10348
+ ...U ? [w] : [],
10349
+ ...de ? [de] : [],
10350
+ ...Ne ? [E] : [],
10351
+ ...He ? [He] : [],
10352
+ ...ie && I && F ? [Vo(F)] : [],
10353
+ ...ge ? [No()] : [],
10338
10354
  ...Ue ? [Ue] : [],
10339
- ...ae && F && P ? [Vo(P)] : [],
10340
- ..._e ? [No()] : [],
10341
- ...We ? [We] : [],
10342
- ...et ? [et] : [],
10343
- ...Ke ? [Ke] : [],
10344
- ...Xe ? [Xe] : [],
10355
+ ...$e ? [$e] : [],
10356
+ ...Ge ? [Ge] : [],
10345
10357
  ...Ye ? [Ye] : [],
10346
- ...it ? [it] : [],
10347
- ...tt ? [tt] : [],
10358
+ ...Je ? [Je] : [],
10359
+ ...rt ? [rt] : [],
10360
+ ...et ? [et] : [],
10348
10361
  ...e.middleware || [],
10349
- ...ce ? [Xu(i, {
10362
+ ...se ? [Xu(i, {
10350
10363
  tokenBudget: e.tokenBudget,
10351
10364
  timeBudgetMs: e.timeBudgetMs
10352
- }, K)] : [],
10353
- xd(K, b, z, i)
10354
- ]), ht = e.maxMemoryRounds ?? _d, gt = e.approval?.timeoutMs, _t = gt === void 0 || gt === 0 ? 3e4 : !Number.isFinite(gt) || gt < 0 ? 0 : gt;
10355
- function vt(e) {
10356
- if (_t) return (t) => {
10365
+ }, q)] : [],
10366
+ xd(q, b, B, i)
10367
+ ]), mt = e.maxMemoryRounds ?? _d, ht = e.approval?.timeoutMs, gt = ht === void 0 || ht === 0 ? 3e4 : !Number.isFinite(ht) || ht < 0 ? 0 : ht;
10368
+ function _t(e) {
10369
+ if (gt) return (t) => {
10357
10370
  if (t.type !== "approval_request") return;
10358
10371
  let n = Date.now(), r = t.toolName;
10359
10372
  setTimeout(() => {
10360
- e?.aborted || (t.resolve(!1), K({
10373
+ e?.aborted || (t.resolve(!1), q({
10361
10374
  type: "error",
10362
10375
  message: `确认请求(${r})${Math.round((Date.now() - n) / 1e3)}s 无响应已自动拒绝 —— send/batch 路径无 UI 响应方;可传 approval.timeoutMs 调整(Infinity = 无限等)`,
10363
10376
  severity: "observable",
@@ -10367,37 +10380,43 @@ function Cd(e, n) {
10367
10380
  waitedMs: Date.now() - n
10368
10381
  }
10369
10382
  }));
10370
- }, _t);
10383
+ }, gt);
10371
10384
  };
10372
10385
  }
10373
- function bt(e) {
10374
- let t = vt(e);
10386
+ function yt(e) {
10387
+ let t = _t(e);
10375
10388
  return (e) => {
10376
- t?.(e), e.type === "error" && K(e);
10389
+ t?.(e), e.type === "error" && q(e);
10377
10390
  };
10378
10391
  }
10379
- let xt = /* @__PURE__ */ At([]);
10380
- async function St() {
10381
- s && (xt.value = (await s.listSessions(n)).sort((e, t) => t.lastAccessed - e.lastAccessed));
10392
+ let bt = /* @__PURE__ */ At([]);
10393
+ async function xt() {
10394
+ if (s) try {
10395
+ bt.value = (await s.listSessions(n)).sort((e, t) => t.lastAccessed - e.lastAccessed);
10396
+ } catch (t) {
10397
+ e.debug && console.warn("[page-agent-sdk][persist] refreshSessions 失败(已吞):", t);
10398
+ }
10382
10399
  }
10383
- let Ct = gd(), wt = /* @__PURE__ */ new Set();
10384
- function Tt(e) {
10385
- let t = new AbortController();
10386
- return e && (e.aborted ? t.abort() : e.addEventListener("abort", () => t.abort(), { once: !0 })), wt.add(t), {
10400
+ let St = gd(), Ct = /* @__PURE__ */ new Set();
10401
+ function wt(e) {
10402
+ let t = new AbortController(), n = () => t.abort();
10403
+ return e && (e.aborted ? t.abort() : e.addEventListener("abort", n, { once: !0 })), Ct.add(t), {
10387
10404
  controller: t,
10388
- untrack: () => wt.delete(t)
10405
+ untrack: () => {
10406
+ Ct.delete(t), e?.removeEventListener("abort", n);
10407
+ }
10389
10408
  };
10390
10409
  }
10391
- function Et() {
10392
- for (let e of wt) e.abort();
10393
- wt.clear();
10410
+ function Tt() {
10411
+ for (let e of Ct) e.abort();
10412
+ Ct.clear();
10394
10413
  }
10395
- let q = {
10414
+ let J = {
10396
10415
  agentId: n,
10397
10416
  store: s,
10398
10417
  messages: b,
10399
10418
  vfsStore: x,
10400
- listeners: at.listeners,
10419
+ listeners: it.listeners,
10401
10420
  todosMw: S,
10402
10421
  memoryMw: E,
10403
10422
  missionMw: C,
@@ -10409,56 +10428,56 @@ function Cd(e, n) {
10409
10428
  refCount: 0,
10410
10429
  mcpClosers: [],
10411
10430
  mcpServers: [],
10412
- checkpoint: P,
10413
- dataOpsController: R,
10414
- skillsController: ot ? ot.controller : null,
10431
+ checkpoint: F,
10432
+ dataOpsController: z,
10433
+ skillsController: at ? at.controller : null,
10415
10434
  infoTick: o,
10416
10435
  pendingConflict: a.pendingConflict,
10417
- sessions: xt,
10418
- refreshSessions: St,
10419
- liveData: z,
10436
+ sessions: bt,
10437
+ refreshSessions: xt,
10438
+ liveData: B,
10420
10439
  usage: i,
10421
- emit: K,
10422
- runSerial: Ct,
10423
- trackActive: Tt,
10424
- abortAllActive: Et,
10440
+ emit: q,
10441
+ runSerial: St,
10442
+ trackActive: wt,
10443
+ abortAllActive: Tt,
10425
10444
  unloadSkillTools(e) {
10426
10445
  if (e) {
10427
- let t = Te.length;
10428
- if (Te = Te.filter((t) => Ee.get(t.name) === e ? (B.delete(t.name), Ee.delete(t.name), !1) : !0), Te.length === t) return;
10446
+ let t = we.length;
10447
+ if (we = we.filter((t) => Te.get(t.name) === e ? (V.delete(t.name), Te.delete(t.name), !1) : !0), we.length === t) return;
10429
10448
  } else {
10430
- if (!Te.length) return;
10431
- for (let e of Te) B.delete(e.name), Ee.delete(e.name);
10432
- Te = [];
10449
+ if (!we.length) return;
10450
+ for (let e of we) V.delete(e.name), Te.delete(e.name);
10451
+ we = [];
10433
10452
  }
10434
- U = W(), q.agent && q.agent.setTools(U);
10453
+ W = G(), J.agent && J.agent.setTools(W);
10435
10454
  },
10436
10455
  applySnapshot(t) {
10437
- if (t.messages?.length && b.push(...t.messages), t.vfs && x.hydrate && x.hydrate(t.vfs), t.todos?.length && S.reset(t.todos), t.memory && !e.memory && E.reset(t.memory), t.checkpoints?.length && P && P.importStack(t.checkpoints), t.usage && Object.assign(i, t.usage), t.mission && Oe && C.setMission(t.mission), t.workingMemory && ke && T.restore(t.workingMemory), H) {
10456
+ if (t.messages?.length && b.push(...t.messages), t.vfs && x.hydrate && x.hydrate(t.vfs), t.todos?.length && S.reset(t.todos), t.memory && !e.memory && E.reset(t.memory), t.checkpoints?.length && F && F.importStack(t.checkpoints), t.usage && Object.assign(i, t.usage), t.mission && De && C.setMission(t.mission), t.workingMemory && Oe && T.restore(t.workingMemory), U) {
10438
10457
  let n = t.focus, r = n ? Array.isArray(n) ? n : [n] : [];
10439
10458
  if (r.length) {
10440
- let t = z()?.schema, n = t ? r.filter((e) => Ji(t, e.path)) : [];
10459
+ let t = B()?.schema, n = t ? r.filter((e) => Ji(t, e.path)) : [];
10441
10460
  if (n.length && (w.setFocus(null), n.forEach((e) => w.addFocus(e))), e.debug && n.length < r.length) {
10442
10461
  let e = r.filter((e) => !n.includes(e)).map((e) => e.path);
10443
10462
  console.warn("[page-agent-sdk][focus] 恢复的焦点部分 path 已失效(schema 变化/无 schema),剔除:", e);
10444
10463
  }
10445
10464
  }
10446
10465
  }
10447
- J();
10466
+ kt();
10448
10467
  },
10449
10468
  addSkill(e) {
10450
- let t = st.findIndex((t) => t.name === e.name);
10451
- t >= 0 ? st[t] = e : st.push(e), dt(), ut && ut.put(ct(e));
10469
+ let t = ot.findIndex((t) => t.name === e.name);
10470
+ t >= 0 ? ot[t] = e : ot.push(e), ut(), lt && lt.put(st(e));
10452
10471
  },
10453
10472
  removeSkill(e) {
10454
- let t = st.findIndex((t) => t.name === e);
10455
- return t < 0 ? !1 : (st.splice(t, 1), dt(), ut && ut.remove(e), !0);
10473
+ let t = ot.findIndex((t) => t.name === e);
10474
+ return t < 0 ? !1 : (ot.splice(t, 1), ut(), lt && lt.remove(e), !0);
10456
10475
  },
10457
10476
  listUserSkills() {
10458
- return st.map((e) => e.name);
10477
+ return ot.map((e) => e.name);
10459
10478
  },
10460
10479
  getUserSkill(e) {
10461
- let t = st.find((t) => t.name === e);
10480
+ let t = ot.find((t) => t.name === e);
10462
10481
  if (t) return {
10463
10482
  name: t.name,
10464
10483
  description: t.description,
@@ -10466,16 +10485,17 @@ function Cd(e, n) {
10466
10485
  };
10467
10486
  },
10468
10487
  afterRound() {
10469
- jt(), Pt();
10488
+ jt(), Lt();
10470
10489
  },
10471
10490
  async send(e, t) {
10472
- await q.initDone, t ??= {}, t?.mission && Oe && C.setMission(t.mission);
10491
+ if (await J.initDone, J.refCount <= 0) throw Error("page-agent-sdk: agent 已释放(unmount),拒绝排队中的 send");
10492
+ t ??= {}, t?.mission && De && C.setMission(t.mission);
10473
10493
  let n = e;
10474
10494
  if (t.interceptors?.input) try {
10475
10495
  let r = t.interceptors.input(e);
10476
10496
  typeof r == "string" && (n = r);
10477
10497
  } catch {}
10478
- let r = ce ? t.maxAutoRetries ?? 1 : 0, i = 0, a = !1, o = bt(t.signal);
10498
+ let r = se ? t.maxAutoRetries ?? 1 : 0, i = 0, a = !1, o = yt(t.signal), c = J.sessionId;
10479
10499
  for (;;) {
10480
10500
  a ||= (b.push({
10481
10501
  role: "user",
@@ -10483,7 +10503,17 @@ function Cd(e, n) {
10483
10503
  timestamp: Date.now()
10484
10504
  }), !0);
10485
10505
  try {
10486
- let e = await q.agent.invoke(b, t.signal, o);
10506
+ let e = await J.agent.invoke(b, t.signal, o);
10507
+ if (t.signal?.aborted || J.sessionId !== c || J.refCount <= 0) return J.agent?.debugLogs?.value?.push({
10508
+ timestamp: Date.now(),
10509
+ type: "middleware",
10510
+ data: {
10511
+ stage: "orphan_round_dropped",
10512
+ fromSession: c,
10513
+ aborted: !!t.signal?.aborted,
10514
+ sessionChanged: J.sessionId !== c
10515
+ }
10516
+ }), e;
10487
10517
  if (t.interceptors?.output) try {
10488
10518
  let n = t.interceptors.output(e);
10489
10519
  typeof n == "string" && (e = n);
@@ -10492,12 +10522,12 @@ function Cd(e, n) {
10492
10522
  role: "assistant",
10493
10523
  content: e,
10494
10524
  timestamp: Date.now()
10495
- }), q.afterRound(), s && await s.flush(), e;
10525
+ }), J.afterRound(), s && await s.flush(), e;
10496
10526
  } catch (e) {
10497
10527
  if (di(e, t.signal)) throw e;
10498
10528
  let n = Zr(e, "fatal");
10499
- if (i < r && P?.canRestore()) {
10500
- i += 1, P.restore(), a = !0, K({
10529
+ if (i < r && F?.canRestore()) {
10530
+ i += 1, F.restore(), a = !0, q({
10501
10531
  type: "error",
10502
10532
  message: `致命错误自动恢复(${i}/${r}):${n.message},已回退 checkpoint 重试`,
10503
10533
  severity: "observable",
@@ -10509,7 +10539,7 @@ function Cd(e, n) {
10509
10539
  });
10510
10540
  continue;
10511
10541
  }
10512
- throw K({
10542
+ throw q({
10513
10543
  type: "error",
10514
10544
  message: n.message,
10515
10545
  severity: n.severity,
@@ -10520,8 +10550,9 @@ function Cd(e, n) {
10520
10550
  }
10521
10551
  },
10522
10552
  async batch(e, t, n) {
10523
- if (await q.initDone, !e.length) return [];
10524
- let r = [], i = bt(n);
10553
+ if (await J.initDone, !e.length) return [];
10554
+ if (J.refCount <= 0) throw Error("page-agent-sdk: agent 已释放(unmount),拒绝排队中的 batch");
10555
+ let r = [], i = yt(n);
10525
10556
  for (let a = 0; a < e.length; a++) {
10526
10557
  if (n?.aborted) {
10527
10558
  for (let t = a; t < e.length; t++) r.push({
@@ -10533,7 +10564,7 @@ function Cd(e, n) {
10533
10564
  break;
10534
10565
  }
10535
10566
  let o = e[a];
10536
- P && P.save(`batch:${a}`);
10567
+ F && F.save(`batch:${a}`);
10537
10568
  let c = b.length;
10538
10569
  try {
10539
10570
  b.push({
@@ -10541,12 +10572,12 @@ function Cd(e, n) {
10541
10572
  content: o,
10542
10573
  timestamp: Date.now()
10543
10574
  });
10544
- let c = await q.agent.invoke(b, n, i);
10575
+ let c = await J.agent.invoke(b, n, i);
10545
10576
  b.push({
10546
10577
  role: "assistant",
10547
10578
  content: c,
10548
10579
  timestamp: Date.now()
10549
- }), q.afterRound(), s && await s.flush(), r.push({
10580
+ }), J.afterRound(), s && await s.flush(), r.push({
10550
10581
  index: a,
10551
10582
  task: o,
10552
10583
  reply: c,
@@ -10574,7 +10605,7 @@ function Cd(e, n) {
10574
10605
  break;
10575
10606
  }
10576
10607
  let s = Zr(i, "fatal");
10577
- K({
10608
+ q({
10578
10609
  type: "error",
10579
10610
  message: `批量任务 ${a + 1}/${e.length} 失败:${s.message}`,
10580
10611
  severity: "observable",
@@ -10599,70 +10630,72 @@ function Cd(e, n) {
10599
10630
  return r;
10600
10631
  },
10601
10632
  async switchSession(t) {
10602
- if (await q.initDone, !s) throw Error("page-agent-sdk: storage 未开启,无法切换会话(请传 storage 选项)");
10603
- if (a.resolve("keep_external"), q.sessionId && s) {
10604
- if (Oe) {
10633
+ if (await J.initDone, !s) throw Error("page-agent-sdk: storage 未开启,无法切换会话(请传 storage 选项)");
10634
+ if (a.resolve("keep_external"), J.sessionId && s) {
10635
+ if (De) {
10605
10636
  let e = C.getMission();
10606
- e && s.save(n, q.sessionId, { mission: e });
10637
+ e && Ft({ mission: e });
10607
10638
  }
10608
- if (ke) {
10639
+ if (Oe) {
10609
10640
  let e = T.getWorkingMemory();
10610
- e && s.save(n, q.sessionId, { workingMemory: e });
10641
+ e && Ft({ workingMemory: e });
10611
10642
  }
10612
- if (H) {
10643
+ if (U) {
10613
10644
  let e = w.getFocuses();
10614
- s.save(n, q.sessionId, { focus: e.length ? e : null });
10645
+ Ft({ focus: e.length ? e : null });
10615
10646
  }
10616
10647
  }
10617
10648
  x.flush?.(), await s.flush();
10618
10649
  let r = t ?? "", i;
10619
- return r ? (i = await s.load(n, r), i || await s.createSession(n, e.session?.title, r)) : r = await s.createSession(n, e.session?.title), q.sessionId = r, b.splice(0, b.length), x.clear?.(), S.reset([]), e.memory || E.reset(""), C.reset(), T.reset(), w.reset(), P && P.importStack([]), q.agent.debugLogs.value = [], i ||= await s.load(n, r), i && (q.applySnapshot(i), K({
10650
+ return r ? (i = await s.load(n, r), i || await s.createSession(n, e.session?.title, r)) : r = await s.createSession(n, e.session?.title), J.sessionId = r, b.splice(0, b.length), x.clear?.(), S.reset([]), e.memory || E.reset(""), C.reset(), T.reset(), w.reset(), F && F.importStack([]), J.agent.debugLogs.value = [], i ||= await s.load(n, r), i && (J.applySnapshot(i), q({
10620
10651
  type: "session_restored",
10621
10652
  sessionId: r,
10622
10653
  rounds: i.messages?.length ?? 0
10623
- })), e.memory && s.save(n, q.sessionId, { memory: E.get() || (typeof e.memory == "string" ? e.memory : "") }), St(), Mt = void 0, Nt = !1, q.infoTick.value++, r;
10654
+ })), e.memory && Ft({ memory: E.get() || (typeof e.memory == "string" ? e.memory : "") }), xt(), Mt = void 0, Nt = !1, J.infoTick.value++, r;
10624
10655
  },
10625
10656
  resetSession: () => {
10626
- Et(), a.resolve("keep_external"), q.sessionId = ul(), b.splice(0, b.length), x.clear?.(), S.reset([]), e.memory || E.reset(""), C.reset(), T.reset(), w.reset(), P && P.importStack([]), q.agent && (q.agent.debugLogs.value = []), s && s.createSession(q.agentId, e.session?.title, q.sessionId), K({
10657
+ Tt(), a.resolve("keep_external"), J.sessionId = ul(), b.splice(0, b.length), x.clear?.(), S.reset([]), e.memory || E.reset(""), C.reset(), T.reset(), w.reset(), F && F.importStack([]), J.agent && (J.agent.debugLogs.value = []), s && s.createSession(J.agentId, e.session?.title, J.sessionId).catch((t) => {
10658
+ e.debug && console.warn("[page-agent-sdk][persist] createSession 失败(已吞):", t);
10659
+ }), q({
10627
10660
  type: "session_restored",
10628
- sessionId: q.sessionId,
10661
+ sessionId: J.sessionId,
10629
10662
  rounds: 0
10630
- }), q.infoTick.value++, St(), Mt = void 0, Nt = !1;
10663
+ }), J.infoTick.value++, xt(), Mt = void 0, Nt = !1;
10631
10664
  },
10632
10665
  stream: (e, t, n) => {
10633
- if (!q.agent) throw Error("page-agent-sdk: agent 尚未初始化完成,请先 await mount()");
10666
+ if (!J.agent) throw Error("page-agent-sdk: agent 尚未初始化完成,请先 await mount()");
10634
10667
  x?.setProtectedRefs?.(md(e));
10635
10668
  let r = (e) => {
10636
- t?.(e), K(e), e.type === "subagent" && (e.kind === "tool_call" || e.kind === "tool_result") && q.infoTick.value++;
10669
+ t?.(e), q(e), e.type === "subagent" && (e.kind === "tool_call" || e.kind === "tool_result") && J.infoTick.value++;
10637
10670
  };
10638
10671
  if (n) {
10639
10672
  let e = () => a.resolve("keep_external");
10640
10673
  n.aborted ? e() : n.addEventListener("abort", e, { once: !0 });
10641
10674
  }
10642
- let { controller: i, untrack: o } = Tt(n);
10643
- return q.agent.stream(e, r, i.signal).finally(o);
10675
+ let { controller: i, untrack: o } = wt(n);
10676
+ return J.agent.stream(e, r, i.signal).finally(o);
10644
10677
  },
10645
10678
  release() {
10646
- if (q.refCount--, q.refCount <= 0) {
10647
- Et(), ge = !0, s && (x.flush?.(), s.flush(), s.dispose()), ut && ut.dispose();
10648
- let e = q.mcpClosers.splice(0);
10679
+ if (J.refCount--, J.refCount <= 0) {
10680
+ Tt(), he = !0, s && (x.flush?.(), s.flush(), s.dispose()), lt && lt.dispose();
10681
+ let e = J.mcpClosers.splice(0);
10649
10682
  e.length && Promise.allSettled(e.map((e) => e())), vd.delete(n);
10650
10683
  }
10651
10684
  },
10652
10685
  resolveConflict: a.resolve,
10653
10686
  setTools(e) {
10654
- me.length = 0, e.forEach((e) => {
10655
- me.push(e), B.set(e.name, "user");
10656
- }), U = W(), q.agent && q.agent.setTools(U), q.infoTick.value++;
10687
+ pe.length = 0, e.forEach((e) => {
10688
+ pe.push(e), V.set(e.name, "user");
10689
+ }), W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++;
10657
10690
  },
10658
10691
  addTool(e) {
10659
- U.some((t) => t.name === e.name) && console.warn(`[page-agent-sdk] 工具 "${e.name}" 已存在,新工具覆盖(后注册覆盖先注册)`);
10660
- for (let t = me.length - 1; t >= 0; t--) me[t].name === e.name && me.splice(t, 1);
10661
- me.push(e), B.set(e.name, "user"), U = W(), q.agent && q.agent.setTools(U), q.infoTick.value++;
10692
+ W.some((t) => t.name === e.name) && console.warn(`[page-agent-sdk] 工具 "${e.name}" 已存在,新工具覆盖(后注册覆盖先注册)`);
10693
+ for (let t = pe.length - 1; t >= 0; t--) pe[t].name === e.name && pe.splice(t, 1);
10694
+ pe.push(e), V.set(e.name, "user"), W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++;
10662
10695
  },
10663
10696
  removeTool(e) {
10664
- let t = me.findIndex((t) => t.name === e);
10665
- return t < 0 ? !1 : (me.splice(t, 1), B.delete(e), U = W(), q.agent && q.agent.setTools(U), q.infoTick.value++, !0);
10697
+ let t = pe.findIndex((t) => t.name === e);
10698
+ return t < 0 ? !1 : (pe.splice(t, 1), V.delete(e), W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++, !0);
10666
10699
  },
10667
10700
  setLlm(t) {
10668
10701
  let n;
@@ -10679,58 +10712,58 @@ function Cd(e, n) {
10679
10712
  contextWindow: e.contextWindow ?? r?.contextWindow,
10680
10713
  maxOutputTokens: e.maxOutputTokens ?? r?.maxOutputTokens
10681
10714
  }), f.contextWindow < 2e5) throw Error(`[page-agent-sdk][setLlm] 新模型上下文窗口 ${f.contextWindow} 小于最小支持 ${ai}(需 ≥200K 窗口模型)`);
10682
- q.agent && (q.agent.setLlm(n), q.agent.setModelCaps?.(f)), pt?.setContextWindow?.(f.contextWindow), tt?.setContextWindow?.(f.contextWindow), q.infoTick.value++, e.debug && console.log("[page-agent-sdk][setLlm] 重解析 modelCaps + 回灌:", f);
10715
+ J.agent && (J.agent.setLlm(n), J.agent.setModelCaps?.(f)), ft?.setContextWindow?.(f.contextWindow), et?.setContextWindow?.(f.contextWindow), J.infoTick.value++, e.debug && console.log("[page-agent-sdk][setLlm] 重解析 modelCaps + 回灌:", f);
10683
10716
  },
10684
10717
  setMemory(e) {
10685
- E.reset(e), typeof e == "function" && E.refresh(), q.infoTick.value++;
10718
+ E.reset(e), typeof e == "function" && E.refresh(), J.infoTick.value++;
10686
10719
  },
10687
10720
  refreshMemory() {
10688
10721
  return E.refresh();
10689
10722
  },
10690
10723
  setSubagents(t) {
10691
- if (!Ze) {
10724
+ if (!Xe) {
10692
10725
  e.debug && console.warn("[page-agent-sdk][setSubagents] 未配 subagents:[] 或 capabilities.subagent 关闭,忽略");
10693
10726
  return;
10694
10727
  }
10695
- Ze.set(t), q.infoTick.value++;
10728
+ Xe.set(t), J.infoTick.value++;
10696
10729
  },
10697
10730
  addSubagent(t) {
10698
- if (!Ze) {
10731
+ if (!Xe) {
10699
10732
  e.debug && console.warn("[page-agent-sdk][addSubagent] 未配 subagents:[] 或 capabilities.subagent 关闭,忽略");
10700
10733
  return;
10701
10734
  }
10702
- Ze.add(t), q.infoTick.value++;
10735
+ Xe.add(t), J.infoTick.value++;
10703
10736
  },
10704
10737
  removeSubagent(t) {
10705
- if (!Ze) return e.debug && console.warn("[page-agent-sdk][removeSubagent] 未配 subagents:[] 或 capabilities.subagent 关闭,忽略"), !1;
10706
- let n = Ze.remove(t);
10707
- return n && q.infoTick.value++, n;
10738
+ if (!Xe) return e.debug && console.warn("[page-agent-sdk][removeSubagent] 未配 subagents:[] 或 capabilities.subagent 关闭,忽略"), !1;
10739
+ let n = Xe.remove(t);
10740
+ return n && J.infoTick.value++, n;
10708
10741
  },
10709
10742
  getActiveSubagents() {
10710
- return Ie?.getActive() ?? [];
10743
+ return Fe?.getActive() ?? [];
10711
10744
  },
10712
10745
  get subagentHistory() {
10713
- return Ie?.getHistory() ?? [];
10746
+ return Fe?.getHistory() ?? [];
10714
10747
  },
10715
10748
  getInfo() {
10716
10749
  return {
10717
10750
  id: n,
10718
- sessionId: q.sessionId,
10751
+ sessionId: J.sessionId,
10719
10752
  model: $c(y) ? y.model ?? y.modelName : y.model,
10720
- systemPrompt: q.agent?.getEffectiveSystemPrompt?.() ?? le + rc(z(), e.schemaHint),
10721
- tools: (q.agent?.allTools ?? U).map((e) => ({
10753
+ systemPrompt: J.agent?.getEffectiveSystemPrompt?.() ?? ce + rc(B(), e.schemaHint),
10754
+ tools: (J.agent?.allTools ?? W).map((e) => ({
10722
10755
  name: e.name,
10723
10756
  description: e.description,
10724
10757
  schema: e.schema,
10725
- source: B.get(e.name) || "user"
10758
+ source: V.get(e.name) || "user"
10726
10759
  })),
10727
- skills: (ot ? ot.controller.get() : e.skills ?? []).map((e) => ({
10760
+ skills: (at ? at.controller.get() : e.skills ?? []).map((e) => ({
10728
10761
  name: e.name,
10729
10762
  description: e.description
10730
10763
  })),
10731
- data: z() ? {
10732
- description: z().description,
10733
- schema: z().schema
10764
+ data: B() ? {
10765
+ description: B().description,
10766
+ schema: B().schema
10734
10767
  } : void 0,
10735
10768
  contextPreset: e.contextPreset ?? "auto",
10736
10769
  compression: {
@@ -10739,8 +10772,8 @@ function Cd(e, n) {
10739
10772
  promptSoftCap: as(f.contextWindow, h.promptSoftCapTokens)
10740
10773
  },
10741
10774
  memory: E.get(),
10742
- middleware: mt.map((e) => e.name),
10743
- todos: (q.agent?.getState?.()?.todos ?? []).map((e) => ({
10775
+ middleware: pt.map((e) => e.name),
10776
+ todos: (J.agent?.getState?.()?.todos ?? []).map((e) => ({
10744
10777
  id: e.id,
10745
10778
  content: e.content,
10746
10779
  status: e.status,
@@ -10750,111 +10783,111 @@ function Cd(e, n) {
10750
10783
  ...e.evidence === void 0 ? {} : { evidence: e.evidence }
10751
10784
  })),
10752
10785
  planPhase: S.getPlanPhase(),
10753
- mission: Oe ? C.getMission() : void 0,
10754
- workingMemory: ke ? T.getWorkingMemory() : void 0,
10755
- focus: H ? w.getFocus() : void 0,
10756
- focuses: H ? w.getFocuses() : [],
10757
- trace: se && q.agent?.spans ? {
10758
- spans: q.agent.spans.value,
10759
- metrics: li(q.agent.spans.value)
10786
+ mission: De ? C.getMission() : void 0,
10787
+ workingMemory: Oe ? T.getWorkingMemory() : void 0,
10788
+ focus: U ? w.getFocus() : void 0,
10789
+ focuses: U ? w.getFocuses() : [],
10790
+ trace: oe && J.agent?.spans ? {
10791
+ spans: J.agent.spans.value,
10792
+ metrics: li(J.agent.spans.value)
10760
10793
  } : void 0,
10761
10794
  actions: $u(e.actions ?? {}),
10762
10795
  subagent: {
10763
- enabled: !!Ke,
10796
+ enabled: !!Ge,
10764
10797
  maxDepth: e.subagent?.maxDepth ?? 1,
10765
10798
  maxParallel: e.subagent?.maxParallel ?? 4,
10766
10799
  allowedTools: e.subagent?.allowedTools ?? [],
10767
- subagents: Ze?.get() ?? [],
10768
- active: Ie?.getActive() ?? [],
10769
- history: Ie?.getHistory() ?? [],
10770
- lockedComponents: Je?.locked() ?? {}
10800
+ subagents: Xe?.get() ?? [],
10801
+ active: Fe?.getActive() ?? [],
10802
+ history: Fe?.getHistory() ?? [],
10803
+ lockedComponents: qe?.locked() ?? {}
10771
10804
  },
10772
10805
  verify: {
10773
- enabled: !!et,
10774
- maxAttempts: ze ? Le : 0,
10775
- adversarial: ze && !!e.verify?.adversarial
10806
+ enabled: !!$e,
10807
+ maxAttempts: Re ? Ie : 0,
10808
+ adversarial: Re && !!e.verify?.adversarial
10776
10809
  },
10777
10810
  context: (() => {
10778
- let e = tt?.getSnapshot();
10811
+ let e = et?.getSnapshot();
10779
10812
  if (e) {
10780
- let t = q.agent?.getState?.()?.lastCompression;
10813
+ let t = J.agent?.getState?.()?.lastCompression;
10781
10814
  t && (e.compression = t);
10782
10815
  }
10783
10816
  return e;
10784
10817
  })(),
10785
- mcp: { servers: q.mcpServers },
10786
- lastCompression: q.agent?.getState?.()?.lastCompression,
10787
- checkpoints: P ? {
10818
+ mcp: { servers: J.mcpServers },
10819
+ lastCompression: J.agent?.getState?.()?.lastCompression,
10820
+ checkpoints: F ? {
10788
10821
  enabled: !0,
10789
- auto: F,
10790
- list: P.list()
10822
+ auto: I,
10823
+ list: F.list()
10791
10824
  } : void 0
10792
10825
  };
10793
10826
  },
10794
10827
  getMission() {
10795
- return Oe ? C.getMission() : void 0;
10828
+ return De ? C.getMission() : void 0;
10796
10829
  },
10797
10830
  setMission(t) {
10798
- if (!Oe) {
10831
+ if (!De) {
10799
10832
  e.debug && console.warn("[page-agent-sdk][mission] capabilities.missionAnchor 关闭,setMission 忽略");
10800
10833
  return;
10801
10834
  }
10802
- C.setMission(t), q.infoTick.value++;
10835
+ C.setMission(t), J.infoTick.value++;
10803
10836
  },
10804
10837
  getFocus() {
10805
- return H ? w.getFocus() : void 0;
10838
+ return U ? w.getFocus() : void 0;
10806
10839
  },
10807
10840
  getFocuses() {
10808
- return H ? w.getFocuses() : [];
10841
+ return U ? w.getFocuses() : [];
10809
10842
  },
10810
10843
  setFocus(t) {
10811
- let n = Sd(t, "setFocus", H, () => z()?.schema, e.debug);
10812
- return n.ok ? (w.setFocus(t), q.infoTick.value++, { ok: !0 }) : n;
10844
+ let n = Sd(t, "setFocus", U, () => B()?.schema, e.debug);
10845
+ return n.ok ? (w.setFocus(t), J.infoTick.value++, { ok: !0 }) : n;
10813
10846
  },
10814
10847
  addFocus(t) {
10815
- let n = Sd(t, "addFocus", H, () => z()?.schema, e.debug);
10848
+ let n = Sd(t, "addFocus", U, () => B()?.schema, e.debug);
10816
10849
  return n.ok ? w.getFocuses().length >= 8 ? (e.debug && console.warn("[page-agent-sdk][focus] addFocus 拒绝:焦点数已达上限 8(augmentPrompt 注入每焦点子树 schema,过多致 system prompt 超预算)"), {
10817
10850
  ok: !1,
10818
10851
  error: "焦点数上限 8(避免 system prompt 撑爆)"
10819
- }) : (w.addFocus(t), q.infoTick.value++, { ok: !0 }) : n;
10852
+ }) : (w.addFocus(t), J.infoTick.value++, { ok: !0 }) : n;
10820
10853
  },
10821
10854
  removeFocus(e) {
10822
- H && (w.removeFocus(e), q.infoTick.value++);
10855
+ U && (w.removeFocus(e), J.infoTick.value++);
10823
10856
  },
10824
10857
  clearFocus() {
10825
- H && (w.clearFocus(), q.infoTick.value++);
10858
+ U && (w.clearFocus(), J.infoTick.value++);
10826
10859
  }
10827
10860
  };
10828
- async function Dt() {
10861
+ async function Et() {
10829
10862
  if (!s) return;
10830
10863
  await s.ready;
10831
10864
  let t = e.session || {};
10832
10865
  if (t.id) {
10833
- q.sessionId = t.id;
10834
- let e = await s.load(n, q.sessionId);
10835
- e ? (q.applySnapshot(e), K({
10866
+ J.sessionId = t.id;
10867
+ let e = await s.load(n, J.sessionId);
10868
+ e ? (J.applySnapshot(e), q({
10836
10869
  type: "session_restored",
10837
- sessionId: q.sessionId,
10870
+ sessionId: J.sessionId,
10838
10871
  rounds: e.messages?.length ?? 0
10839
- })) : await s.createSession(n, t.title, q.sessionId);
10872
+ })) : await s.createSession(n, t.title, J.sessionId);
10840
10873
  } else if (t.autoResume !== !1) {
10841
10874
  let r = await s.listSessions(n);
10842
10875
  if (e.debug && console.log("[page-agent-sdk][restore] listSessions", n, r.length, r.map((e) => e.sessionId)), r.length) {
10843
- q.sessionId = r[0].sessionId;
10844
- let t = await s.load(n, q.sessionId);
10845
- t ? (q.applySnapshot(t), K({
10876
+ J.sessionId = r[0].sessionId;
10877
+ let t = await s.load(n, J.sessionId);
10878
+ t ? (J.applySnapshot(t), q({
10846
10879
  type: "session_restored",
10847
- sessionId: q.sessionId,
10880
+ sessionId: J.sessionId,
10848
10881
  rounds: t.messages?.length ?? 0
10849
- }), e.debug && console.log("[page-agent-sdk][restore] 恢复会话", q.sessionId, `${t.messages?.length ?? 0} msgs`)) : e.debug && console.log("[page-agent-sdk][restore] 会话 meta 存在但快照为空", q.sessionId);
10850
- } else q.sessionId = await s.createSession(n, t.title), e.debug && console.log("[page-agent-sdk][restore] 新建会话(无历史)", q.sessionId);
10851
- } else q.sessionId = await s.createSession(n, t.title);
10852
- e.memory && s.save(n, q.sessionId, { memory: E.get() || (typeof e.memory == "string" ? e.memory : "") }), St();
10882
+ }), e.debug && console.log("[page-agent-sdk][restore] 恢复会话", J.sessionId, `${t.messages?.length ?? 0} msgs`)) : e.debug && console.log("[page-agent-sdk][restore] 会话 meta 存在但快照为空", J.sessionId);
10883
+ } else J.sessionId = await s.createSession(n, t.title), e.debug && console.log("[page-agent-sdk][restore] 新建会话(无历史)", J.sessionId);
10884
+ } else J.sessionId = await s.createSession(n, t.title);
10885
+ e.memory && Ft({ memory: E.get() || (typeof e.memory == "string" ? e.memory : "") }), xt();
10853
10886
  }
10854
- async function Ot() {
10855
- await ft();
10887
+ async function Dt() {
10888
+ await dt();
10856
10889
  }
10857
- function kt(e) {
10890
+ function Ot(e) {
10858
10891
  let t = {};
10859
10892
  for (let n of md(e)) {
10860
10893
  let e = x.files[n];
@@ -10862,15 +10895,15 @@ function Cd(e, n) {
10862
10895
  }
10863
10896
  return t;
10864
10897
  }
10865
- function J() {
10898
+ function kt() {
10866
10899
  let e = hd(x.files, md(b));
10867
10900
  for (let t of e) delete x.files[t];
10868
10901
  }
10869
10902
  function jt() {
10870
- let e = Xo(b, ht);
10903
+ let e = Xo(b, mt);
10871
10904
  if (!e.trimmed) return;
10872
10905
  let { older: t, summary: n } = e;
10873
- if (K({
10906
+ if (q({
10874
10907
  type: "context_trimmed",
10875
10908
  dropped: t.map((e) => ({
10876
10909
  round: e.round,
@@ -10878,61 +10911,91 @@ function Cd(e, n) {
10878
10911
  assistant: e.assistantMsgs.map((e) => e.content),
10879
10912
  steps: e.assistantMsgs.flatMap((e) => e.steps ?? [])
10880
10913
  })),
10881
- vfsResults: kt(t.flatMap((e) => [e.userMsg, ...e.assistantMsgs])),
10914
+ vfsResults: Ot(t.flatMap((e) => [e.userMsg, ...e.assistantMsgs])),
10882
10915
  summary: n.content,
10883
10916
  reason: "max_memory_rounds"
10884
- }), b.splice(e.deleteFrom, e.deleteCount, n), J(), g && l) {
10917
+ }), b.splice(e.deleteFrom, e.deleteCount, n), kt(), g && l) {
10885
10918
  let n = e.summary, { prevSeg: r } = e;
10886
10919
  (async () => {
10887
10920
  try {
10888
10921
  let e = await l(ts(t, v)), i = b.indexOf(n);
10889
10922
  if (i < 0) return;
10890
- b[i].content = Yo(t, r, e), Pt();
10923
+ b[i].content = Yo(t, r, e), Lt();
10891
10924
  } catch {}
10892
10925
  })();
10893
10926
  }
10894
10927
  }
10895
10928
  let Mt, Nt = !1;
10896
- function Pt() {
10897
- if (!q.sessionId || !s) return;
10898
- let t = JSON.parse(JSON.stringify(b));
10899
- s.save(n, q.sessionId, { messages: t });
10900
- let r = q.agent?.getState?.()?.todos ?? [];
10901
- if (s.save(n, q.sessionId, { todos: r }), Oe) {
10929
+ function Pt(t, n) {
10930
+ e.debug && console.warn(`[page-agent-sdk][persist] ${t} 失败(已吞):`, n);
10931
+ let r = J.agent?.debugLogs;
10932
+ r && r.value.push({
10933
+ timestamp: Date.now(),
10934
+ type: "middleware",
10935
+ data: {
10936
+ stage: "persist_save_failed",
10937
+ kind: t,
10938
+ error: String(n).slice(0, 160)
10939
+ }
10940
+ });
10941
+ }
10942
+ function Ft(e) {
10943
+ !J.sessionId || !s || s.save(n, J.sessionId, e).catch((e) => Pt("save", e));
10944
+ }
10945
+ function It(e, t) {
10946
+ s && s.updateTitle(n, e, t).catch((e) => Pt("updateTitle", e));
10947
+ }
10948
+ function Lt() {
10949
+ if (!J.sessionId || !s) return;
10950
+ if (Ft({ messages: JSON.parse(JSON.stringify(b)) }), Ft({ todos: J.agent?.getState?.()?.todos ?? [] }), De) {
10902
10951
  let e = C.getMission();
10903
- e && s.save(n, q.sessionId, { mission: e });
10952
+ e && Ft({ mission: e });
10904
10953
  }
10905
- if (ke) {
10954
+ if (Oe) {
10906
10955
  let e = T.getWorkingMemory();
10907
- e && s.save(n, q.sessionId, { workingMemory: e });
10956
+ e && Ft({ workingMemory: e });
10908
10957
  }
10909
- if (H) {
10958
+ if (U) {
10910
10959
  let e = w.getFocuses();
10911
- s.save(n, q.sessionId, { focus: e.length ? e : null });
10960
+ Ft({ focus: e.length ? e : null });
10961
+ }
10962
+ se && F && (Ft({ checkpoints: F.exportStack() }), Ft({ usage: i }));
10963
+ let t = Qc(b);
10964
+ if (t && t !== Mt && (Mt = t, It(J.sessionId, t)), e.autoTitle !== !1 && u && !Nt && b.some((e) => e.role === "user") && b.some((e) => e.role === "assistant")) {
10965
+ Nt = !0;
10966
+ let e = J.sessionId;
10967
+ (async () => {
10968
+ try {
10969
+ let t = await u(b);
10970
+ if (t && J.refCount > 0 && J.sessionId === e) {
10971
+ try {
10972
+ await s.updateTitle(n, e, t);
10973
+ } catch (e) {
10974
+ Pt("updateTitle", e);
10975
+ }
10976
+ await xt();
10977
+ }
10978
+ } catch {}
10979
+ })();
10912
10980
  }
10913
- ce && P && (s.save(n, q.sessionId, { checkpoints: P.exportStack() }), s.save(n, q.sessionId, { usage: i }));
10914
- let a = Qc(b);
10915
- a && a !== Mt && (Mt = a, s.updateTitle(n, q.sessionId, a)), e.autoTitle !== !1 && u && !Nt && b.some((e) => e.role === "user") && b.some((e) => e.role === "assistant") && (Nt = !0, (async () => {
10916
- let e = await u(b);
10917
- e && (await s.updateTitle(n, q.sessionId, e), await St());
10918
- })()), e.debug && console.log("[page-agent-sdk][persist] save", q.sessionId, `${b.length} msgs`);
10981
+ e.debug && console.log("[page-agent-sdk][persist] save", J.sessionId, `${b.length} msgs`);
10919
10982
  }
10920
- return q.initDone = (async () => {
10921
- await Dt(), await Ot(), e.mcp?.length && (async () => {
10983
+ return J.initDone = (async () => {
10984
+ await Et(), await Dt(), e.mcp?.length && (async () => {
10922
10985
  let t = await Promise.allSettled(e.mcp.map((e) => tc(e))), n = t.flatMap((e) => e.status === "fulfilled" ? [e.value.close] : []);
10923
- if (ge) {
10986
+ if (he) {
10924
10987
  Promise.allSettled(n.map((e) => e()));
10925
10988
  return;
10926
10989
  }
10927
- q.mcpClosers = n, q.mcpServers = [];
10990
+ J.mcpClosers = n, J.mcpServers = [];
10928
10991
  let r = /* @__PURE__ */ new Set();
10929
- for (let e of U) {
10930
- let t = B.get(e.name);
10992
+ for (let e of W) {
10993
+ let t = V.get(e.name);
10931
10994
  t && !t.startsWith("mcp:") && r.add(e.name);
10932
10995
  }
10933
10996
  t.forEach((t, n) => {
10934
10997
  let i = e.mcp[n], a = i.name ?? i.url;
10935
- t.status === "fulfilled" ? (q.mcpServers.push({
10998
+ t.status === "fulfilled" ? (J.mcpServers.push({
10936
10999
  name: a,
10937
11000
  url: i.url,
10938
11001
  toolCount: t.value.tools.length
@@ -10941,30 +11004,30 @@ function Cd(e, n) {
10941
11004
  console.warn(`[page-agent-sdk][mcp] 工具 "${e.name}" 与内置工具重名,已拒绝注入(安全保留字保护)`);
10942
11005
  return;
10943
11006
  }
10944
- B.set(e.name, `mcp:${a}`), he.push(e);
11007
+ V.set(e.name, `mcp:${a}`), me.push(e);
10945
11008
  })) : console.warn(`[page-agent-sdk][mcp] server ${a} 连接失败:`, t.reason);
10946
- }), he.length && (U = W(), q.agent && q.agent.setTools(U), q.infoTick.value++), e.debug && console.log(`[page-agent-sdk][mcp] 注入 ${he.length} 个工具,${q.mcpServers.length} 个 server`);
11009
+ }), me.length && (W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++), e.debug && console.log(`[page-agent-sdk][mcp] 注入 ${me.length} 个工具,${J.mcpServers.length} 个 server`);
10947
11010
  })();
10948
11011
  let t = $c(e.llm) ? e.llm : await m(e.llm);
10949
- q.agent = Wi({
11012
+ J.agent = Wi({
10950
11013
  llm: t,
10951
- systemPrompt: le,
10952
- tools: U,
10953
- middleware: mt,
11014
+ systemPrompt: ce,
11015
+ tools: W,
11016
+ middleware: pt,
10954
11017
  maxToolRounds: e.maxToolRounds,
10955
11018
  maxRetries: e.maxRetries,
10956
11019
  stallMs: e.streamStallMs ?? 9e4,
10957
11020
  maxParallelTools: e.maxParallelTools,
10958
11021
  contextWindow: f.contextWindow,
10959
11022
  maxOutputTokens: f.maxOutputTokens,
10960
- maxVerifyAttempts: ze ? Le : 0,
11023
+ maxVerifyAttempts: Re ? Ie : 0,
10961
11024
  roundTokenBudget: e.roundTokenBudget ?? 0,
10962
11025
  onLlmChange: (e) => {
10963
11026
  y = e;
10964
11027
  },
10965
- onTrace: se ? (e, t) => {
11028
+ onTrace: oe ? (e, t) => {
10966
11029
  try {
10967
- K({
11030
+ q({
10968
11031
  type: "trace",
10969
11032
  spans: e,
10970
11033
  metrics: t
@@ -10972,10 +11035,10 @@ function Cd(e, n) {
10972
11035
  } catch {}
10973
11036
  } : void 0,
10974
11037
  debug: e.debug
10975
- }), D.current = q.agent, Xe && Xe.setReconfigureHook && Xe.setReconfigureHook(() => {
10976
- q.agent && q.agent.setTools(W());
11038
+ }), D.current = J.agent, Ye && Ye.setReconfigureHook && Ye.setReconfigureHook(() => {
11039
+ J.agent && J.agent.setTools(G());
10977
11040
  });
10978
- })(), q;
11041
+ })(), J;
10979
11042
  }
10980
11043
  function wd(e, t) {
10981
11044
  let n = e.id ?? ul();
@@ -11312,7 +11375,7 @@ async function jd(e) {
11312
11375
  //#region src/core/composables/useChat.ts
11313
11376
  var Md = 4e3;
11314
11377
  function Nd(e = {}) {
11315
- let { fetchResponse: t, fetchStream: n, onPersist: r, onClear: i, onQueuedCleared: a } = e, o = /* @__PURE__ */ yt({
11378
+ let { fetchResponse: t, fetchStream: n, onPersist: r, onClear: i, onQueuedCleared: a } = e, o = /* @__PURE__ */ vt({
11316
11379
  messages: e.messages ?? [],
11317
11380
  loading: !1,
11318
11381
  error: null
@@ -11338,7 +11401,7 @@ function Nd(e = {}) {
11338
11401
  }
11339
11402
  async function g(e) {
11340
11403
  if (c.value = !0, n) {
11341
- let t = /* @__PURE__ */ yt({
11404
+ let t = /* @__PURE__ */ vt({
11342
11405
  role: "assistant",
11343
11406
  content: "",
11344
11407
  timestamp: Date.now(),