xonecode 0.8.38 → 0.8.40

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.
Files changed (40) hide show
  1. package/apps/web/dist/assets/{index-Bm4ur93-.js → index-CRMWzgzk.js} +71 -71
  2. package/apps/web/dist/assets/index-CwAAn-xT.css +1 -0
  3. package/apps/web/dist/assets/{php-D2qE525B.js → php-BoJQNWIY.js} +1 -1
  4. package/apps/web/dist/assets/{ruby-SvGm1EAa.js → ruby-B8zkIfgk.js} +1 -1
  5. package/apps/web/dist/index.html +2 -2
  6. package/dist/agent/config/selectorEnMaquina.js +15 -2
  7. package/dist/agent/config/selectorEnMaquina.js.map +1 -1
  8. package/dist/agent/dispositivos/descargaDeHerramientas.js +202 -0
  9. package/dist/agent/dispositivos/descargaDeHerramientas.js.map +1 -0
  10. package/dist/agent/dispositivos/dispositivosEnMaquina.js +83 -19
  11. package/dist/agent/dispositivos/dispositivosEnMaquina.js.map +1 -1
  12. package/dist/agent/dispositivos/instalacionEnMaquina.js +132 -14
  13. package/dist/agent/dispositivos/instalacionEnMaquina.js.map +1 -1
  14. package/dist/agent/dispositivos/procesosEnMaquina.js +22 -1
  15. package/dist/agent/dispositivos/procesosEnMaquina.js.map +1 -1
  16. package/dist/agent/turno/puente.js +13 -0
  17. package/dist/agent/turno/puente.js.map +1 -1
  18. package/dist/agent/turno/registroDeFallos.js +7 -0
  19. package/dist/agent/turno/registroDeFallos.js.map +1 -1
  20. package/dist/agent/turno/resumenDeContexto.js +113 -2
  21. package/dist/agent/turno/resumenDeContexto.js.map +1 -1
  22. package/dist/agent/turno/turnoReal.js +2 -2
  23. package/dist/agent/turno/turnoReal.js.map +1 -1
  24. package/dist/core/dispositivos.js +126 -6
  25. package/dist/core/dispositivos.js.map +1 -1
  26. package/dist/core/selectorDeCarpeta.js +27 -0
  27. package/dist/core/selectorDeCarpeta.js.map +1 -1
  28. package/dist/core/settings.js +13 -7
  29. package/dist/core/settings.js.map +1 -1
  30. package/dist/core/turno.js +10 -0
  31. package/dist/core/turno.js.map +1 -1
  32. package/dist/core/zipDeSkill.js +9 -2
  33. package/dist/core/zipDeSkill.js.map +1 -1
  34. package/dist/web/servidor/arranque.js +47 -6
  35. package/dist/web/servidor/arranque.js.map +1 -1
  36. package/dist/web/servidor/pielWeb.js +34 -0
  37. package/dist/web/servidor/pielWeb.js.map +1 -1
  38. package/dist/web/servidor/transporte.js.map +1 -1
  39. package/package.json +1 -1
  40. package/apps/web/dist/assets/index-F-tnEn80.css +0 -1
@@ -54,6 +54,7 @@ import { existsSync } from "node:fs";
54
54
  import { homedir } from "node:os";
55
55
  import { jdkDeLaMaquina, localizadorDeAndroid } from "./dispositivosEnMaquina.js";
56
56
  import { crearEjecutor, lanzarReal, TOPE_DE_TRABAJO_MS, TOPE_SIN_SALIDA_MS, } from "./procesosEnMaquina.js";
57
+ import { descargarYDescomprimir } from "./descargaDeHerramientas.js";
57
58
  /**
58
59
  * Y esto se REEXPORTA: lo que este módulo exportaba antes de que existiera el ejecutor
59
60
  * compartido lo sigue exportando, pero ahora hay UNA sola copia —el `spawn` con `detached`, los
@@ -62,11 +63,18 @@ import { crearEjecutor, lanzarReal, TOPE_DE_TRABAJO_MS, TOPE_SIN_SALIDA_MS, } fr
62
63
  * podía dejar de estar.
63
64
  */
64
65
  export { lanzarReal, TOPE_DE_TRABAJO_MS, TOPE_SIN_SALIDA_MS };
65
- /** El paquete de la imagen del sistema, el mismo que nombra la receta. */
66
- const IMAGEN = "system-images;android-35;google_apis;arm64-v8a";
66
+ /** El paquete de la imagen del sistema en macOS, el mismo que nombra la receta. */
67
+ const IMAGEN_DARWIN = "system-images;android-35;google_apis;arm64-v8a";
68
+ /** Y en Windows: el caso común es x86_64, no Apple Silicon. Mismo motivo que en `core/dispositivos.ts`. */
69
+ const IMAGEN_WIN32 = "system-images;android-35;google_apis;x86_64";
67
70
  /**
68
- * Los pasos que xonecode lanza él. Tabla CERRADA y por `receta:paso`: lo que llega del
69
- * cliente es un número, y un número que no esté aquí no lanza nada.
71
+ * Los pasos que xonecode lanza él. Tabla CERRADA y por `receta:plataforma:paso`: lo que
72
+ * llega del cliente es un número, y un número que no esté aquí no lanza nada.
73
+ *
74
+ * **La PLATAFORMA es parte de la clave**, y no un detalle: los pasos 1-3 de Windows
75
+ * (descargas) y los 1-3 de macOS (Homebrew) son acciones completamente distintas bajo el
76
+ * MISMO número — sin la plataforma en la clave, la entrada de una pisaría a la otra en este
77
+ * mapa, o habría que inventar números que no significan nada en la receta que se enseña.
70
78
  *
71
79
  * Tiene que coincidir con lo que `core/dispositivos.ts` marca `ejecutable` — un paso con
72
80
  * botón que no esté aquí es un botón muerto, y uno lanzable sin botón es una capacidad que
@@ -74,8 +82,9 @@ const IMAGEN = "system-images;android-35;google_apis;arm64-v8a";
74
82
  */
75
83
  export const PASOS_EJECUTABLES = new Map([
76
84
  [
77
- "android-emulador:1",
85
+ "android-emulador:darwin:1",
78
86
  {
87
+ tipo: "proceso",
79
88
  binario: "brew",
80
89
  // Es el paso que INSTALA el SDK: exigirlo aquí era el círculo que lo dejaba sin botón.
81
90
  conSdk: false,
@@ -93,8 +102,9 @@ export const PASOS_EJECUTABLES = new Map([
93
102
  // El 2 desde que los `export` de la shell dejaron de ser un paso: la tabla va por NÚMERO,
94
103
  // así que renumerar la receta es renumerar esto — y el test que compara las dos listas
95
104
  // en las dos direcciones es lo que hace que no se pueda quedar descolgada en silencio.
96
- "android-emulador:2",
105
+ "android-emulador:darwin:2",
97
106
  {
107
+ tipo: "proceso",
98
108
  binario: "sdkmanager",
99
109
  conSdk: true,
100
110
  subcarpeta: join("cmdline-tools", "latest", "bin"),
@@ -116,7 +126,7 @@ export const PASOS_EJECUTABLES = new Map([
116
126
  // esta es la copia que se LANZA, y por eso hay un test que compara las dos: la lista
117
127
  // de paquetes está escrita dos veces y sin él podrían divergir en silencio, con el
118
128
  // botón instalando una cosa y la ventana enseñando otra.
119
- args: ["--install", "platform-tools", "emulator", "platforms;android-35", IMAGEN],
129
+ args: ["--install", "platform-tools", "emulator", "platforms;android-35", IMAGEN_DARWIN],
120
130
  teclear: [],
121
131
  },
122
132
  ],
@@ -124,14 +134,90 @@ export const PASOS_EJECUTABLES = new Map([
124
134
  },
125
135
  ],
126
136
  [
127
- "android-emulador:3",
137
+ "android-emulador:darwin:3",
128
138
  {
139
+ tipo: "proceso",
129
140
  binario: "avdmanager",
130
141
  conSdk: true,
131
142
  subcarpeta: join("cmdline-tools", "latest", "bin"),
132
143
  invocaciones: [
133
144
  // «Do you wish to create a custom hardware profile? [no]»: sin respuesta, cuelga.
134
- { args: ["create", "avd", "-n", "pixel8", "-k", IMAGEN, "-d", "pixel_8"], teclear: ["no\n"] },
145
+ { args: ["create", "avd", "-n", "pixel8", "-k", IMAGEN_DARWIN, "-d", "pixel_8"], teclear: ["no\n"] },
146
+ ],
147
+ titulo: "Creando el dispositivo virtual",
148
+ },
149
+ ],
150
+ [
151
+ "android-emulador:win32:1",
152
+ {
153
+ tipo: "descarga",
154
+ url: "https://dl.google.com/android/repository/platform-tools-latest-windows.zip",
155
+ // El zip ya trae `platform-tools/` como carpeta de primer nivel: cae DIRECTO bajo el
156
+ // SDK, sin renombrar nada — a diferencia de los dos pasos siguientes.
157
+ destinoBajoLocalAppData: ["Android", "Sdk"],
158
+ titulo: "Descargando adb (platform-tools)",
159
+ },
160
+ ],
161
+ [
162
+ "android-emulador:win32:2",
163
+ {
164
+ tipo: "descarga",
165
+ url: "https://api.adoptium.net/v3/binary/latest/17/ga/windows/x64/jdk/hotspot/normal/eclipse",
166
+ destinoBajoLocalAppData: ["Android"],
167
+ // El zip de Adoptium trae UNA carpeta con la versión en el nombre (`jdk-17.0.20.1+1`),
168
+ // que cambia en cada build: se renombra a una ruta FIJA para que la detección
169
+ // (`dispositivosEnMaquina.ts#jdkDeLaMaquina`) compruebe un sitio conocido.
170
+ renombrarCarpetaUnicaA: "jdk17",
171
+ titulo: "Descargando el JDK",
172
+ },
173
+ ],
174
+ [
175
+ "android-emulador:win32:3",
176
+ {
177
+ tipo: "descarga",
178
+ url: "https://dl.google.com/android/repository/commandlinetools-win-15859902_latest.zip",
179
+ destinoBajoLocalAppData: ["Android", "Sdk", "cmdline-tools"],
180
+ // El zip trae una carpeta `cmdline-tools/` de primer nivel; Google exige que su
181
+ // contenido viva bajo `…/cmdline-tools/latest/`, o `sdkmanager` no se reconoce a sí
182
+ // mismo. Mismo mecanismo que el JDK: se renombra AL escribir, sin un paso aparte.
183
+ renombrarCarpetaUnicaA: "latest",
184
+ titulo: "Descargando las herramientas del SDK",
185
+ },
186
+ ],
187
+ [
188
+ "android-emulador:win32:4",
189
+ {
190
+ tipo: "proceso",
191
+ binario: "sdkmanager",
192
+ conSdk: true,
193
+ subcarpeta: join("cmdline-tools", "latest", "bin"),
194
+ invocaciones: [
195
+ {
196
+ args: ["--licenses"],
197
+ teclear: ["y\n"],
198
+ repetir: 100,
199
+ opcional: true,
200
+ anuncio: "Aceptando las licencias del SDK de Android (lo pediste al pulsar).",
201
+ },
202
+ {
203
+ // Misma lista de paquetes que en macOS, con la imagen de Windows: ver el
204
+ // comentario del paso equivalente de macOS, arriba.
205
+ args: ["--install", "platform-tools", "emulator", "platforms;android-35", IMAGEN_WIN32],
206
+ teclear: [],
207
+ },
208
+ ],
209
+ titulo: "Descargando el emulador y la imagen del sistema",
210
+ },
211
+ ],
212
+ [
213
+ "android-emulador:win32:5",
214
+ {
215
+ tipo: "proceso",
216
+ binario: "avdmanager",
217
+ conSdk: true,
218
+ subcarpeta: join("cmdline-tools", "latest", "bin"),
219
+ invocaciones: [
220
+ { args: ["create", "avd", "-n", "pixel8", "-k", IMAGEN_WIN32, "-d", "pixel_8"], teclear: ["no\n"] },
135
221
  ],
136
222
  titulo: "Creando el dispositivo virtual",
137
223
  },
@@ -153,7 +239,7 @@ export function correrPasoDeReceta(receta, numero, deps = {}) {
153
239
  const ahora = deps.ahora ?? (() => Date.now());
154
240
  const t0 = ahora();
155
241
  const decir = (linea) => deps.alSalirLinea?.(linea);
156
- const paso = PASOS_EJECUTABLES.get(`${receta}:${numero}`);
242
+ const paso = PASOS_EJECUTABLES.get(`${receta}:${plataforma}:${numero}`);
157
243
  if (paso === undefined) {
158
244
  return {
159
245
  titulo: "",
@@ -161,6 +247,33 @@ export function correrPasoDeReceta(receta, numero, deps = {}) {
161
247
  terminado: Promise.resolve({ estado: "fallo", motivo: "ese paso no se lanza desde aquí", ms: 0 }),
162
248
  };
163
249
  }
250
+ // La DESCARGA es un camino aparte y mucho más corto: no hay binario que resolver ni SDK que
251
+ // exigir, solo dónde cae. `descargaDeHerramientas.ts` ya devuelve el MISMO vocabulario
252
+ // (`"ok"|"fallo"|"cancelada"|"colgada"`), así que de aquí para afuera esto es indistinguible
253
+ // de un paso de proceso — ni el cable ni `Receta.tsx` se enteran de que detrás hay un
254
+ // `fetch` y no un `spawn`.
255
+ if (paso.tipo === "descarga") {
256
+ if (entorno.LOCALAPPDATA === undefined) {
257
+ return {
258
+ titulo: paso.titulo,
259
+ cancelar: () => { },
260
+ terminado: Promise.resolve({
261
+ estado: "fallo",
262
+ motivo: "falta %LOCALAPPDATA%: no se sabe dónde descargar",
263
+ ms: ahora() - t0,
264
+ }),
265
+ };
266
+ }
267
+ const destino = join(entorno.LOCALAPPDATA, ...paso.destinoBajoLocalAppData);
268
+ const descarga = descargarYDescomprimir(paso.url, destino, paso.renombrarCarpetaUnicaA === undefined ? {} : { renombrarCarpetaUnicaA: paso.renombrarCarpetaUnicaA }, {
269
+ alSalirLinea: decir,
270
+ ahora,
271
+ ...(deps.fetch === undefined ? {} : { fetch: deps.fetch }),
272
+ ...(deps.crearCarpeta === undefined ? {} : { crearCarpeta: deps.crearCarpeta }),
273
+ ...(deps.escribir === undefined ? {} : { escribir: deps.escribir }),
274
+ });
275
+ return { titulo: paso.titulo, cancelar: descarga.cancelar, terminado: descarga.terminado };
276
+ }
164
277
  const { enPath, enSdk, raicesDeSdk } = localizadorDeAndroid({ plataforma, entorno, home, existe });
165
278
  const fallar = (motivo) => ({
166
279
  titulo: paso.titulo,
@@ -175,11 +288,16 @@ export function correrPasoDeReceta(receta, numero, deps = {}) {
175
288
  if (paso.conSdk) {
176
289
  binario = enSdk(paso.binario, paso.subcarpeta ?? "");
177
290
  const sdk = raicesDeSdk.find((raiz) => existe(raiz));
178
- const jdk = jdkDeLaMaquina(entorno, existe);
291
+ const jdk = jdkDeLaMaquina(entorno, existe, plataforma);
179
292
  if (binario === undefined || sdk === undefined || jdk === undefined) {
180
- // Se dice QUÉ falta y dónde se arregla, no «no se pudo»: el paso 1 es el que lo instala.
181
- const que = binario === undefined || sdk === undefined ? "el SDK de línea de comandos" : "el JDK";
182
- return fallar(`falta ${que}: hazlo con el paso 1 y vuelve a mirar`);
293
+ // Se dice QUÉ falta y dónde se arregla, no «no se pudo». En macOS el paso 1 instala
294
+ // las DOS cosas de un tirón (Homebrew); en Windows son pasos distintos —el 2 el JDK,
295
+ // el 3 las cmdline-tools—, así que el número que se dice depende de QUÉ falta y de la
296
+ // plataforma, no de una frase fija.
297
+ const faltaElSdk = binario === undefined || sdk === undefined;
298
+ const que = faltaElSdk ? "el SDK de línea de comandos" : "el JDK";
299
+ const paso = plataforma === "win32" ? (faltaElSdk ? "el paso 3" : "el paso 2") : "el paso 1";
300
+ return fallar(`falta ${que}: hazlo con ${paso} y vuelve a mirar`);
183
301
  }
184
302
  env = {
185
303
  ...env,
@@ -1 +1 @@
1
- {"version":3,"file":"instalacionEnMaquina.js","sourceRoot":"","sources":["../../../src/agent/dispositivos/instalacionEnMaquina.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instalacionEnMaquina.js","sourceRoot":"","sources":["../../../src/agent/dispositivos/instalacionEnMaquina.ts"],"names":[],"mappings":"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"}
@@ -185,6 +185,19 @@ export function unaLinea(error) {
185
185
  export function motivoDelCodigo(codigo, ultima) {
186
186
  return ultima === "" ? `terminó con código ${codigo}` : ultima;
187
187
  }
188
+ /**
189
+ * `sdkmanager`/`avdmanager` son `.bat` en Windows (`localizadorDeAndroid` ya lo sabe, ver
190
+ * `extensionDeBinario`), y desde que Node cerró el CVE-2024-27980 —la inyección de comandos
191
+ * por `.bat`/`.cmd`— un `spawn` a secas sobre uno de estos revienta con `spawn EINVAL` en
192
+ * vez de arrancar: medido en la máquina del usuario, «No salió bien: spawn EINVAL» al pulsar
193
+ * el paso 4 de la receta de Windows. La forma sancionada por Node de arreglarlo es `shell:
194
+ * true`, y aquí es seguro dárselo —a diferencia del caso general que el CVE cerraba—: los
195
+ * `args` de estos dos binarios NUNCA llevan nada que no sea un literal de nuestra propia
196
+ * tabla (`PASOS_EJECUTABLES`), nunca una cadena que haya escrito un usuario.
197
+ */
198
+ export function necesitaShell(binario, plataforma = process.platform) {
199
+ return plataforma === "win32" && /\.(bat|cmd)$/i.test(binario);
200
+ }
188
201
  /**
189
202
  * El hijo de verdad. Dos decisiones, las dos medidas:
190
203
  *
@@ -194,11 +207,19 @@ export function motivoDelCodigo(codigo, ultima) {
194
207
  * Lo que hace que un `sudo` de dentro no cuelgue no es cerrar `stdin`: es no tener
195
208
  * terminal de CONTROL, que es de donde `sudo` lee la contraseña — y con `detached` no lo
196
209
  * tiene ni por herencia.
210
+ * - **`shell: true` SOLO para `.bat`/`.cmd`** (`necesitaShell`, arriba): para `adb`/`emulator`
211
+ * y para `brew` —los binarios que lanza el resto de este módulo, incluido el lanzamiento en
212
+ * el dispositivo— nada cambia, exactamente el mismo `spawn` de siempre.
197
213
  *
198
214
  * Es el valor POR OMISIÓN de `crearEjecutor`, y el único `spawn` de los dos módulos: la receta
199
215
  * de instalación y el `adb` del lanzamiento necesitan exactamente estas dos cosas por los
200
216
  * mismos motivos, y un segundo `spawn` sería un segundo sitio donde el `detached` puede dejar
201
217
  * de estar —y ese día el `kill(-pid)` de un sitio mataría a un grupo que no existe—.
202
218
  */
203
- export const lanzarReal = (binario, args, opciones) => spawn(binario, args, { env: opciones.env, stdio: ["pipe", "pipe", "pipe"], detached: true });
219
+ export const lanzarReal = (binario, args, opciones) => spawn(binario, args, {
220
+ env: opciones.env,
221
+ stdio: ["pipe", "pipe", "pipe"],
222
+ detached: true,
223
+ ...(necesitaShell(binario) ? { shell: true } : {}),
224
+ });
204
225
  //# sourceMappingURL=procesosEnMaquina.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"procesosEnMaquina.js","sourceRoot":"","sources":["../../../src/agent/dispositivos/procesosEnMaquina.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,MAAM,CAAC;AAE7C,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,GAAG,MAAM,CAAC;AA8E9C,yEAAyE;AACzE,MAAM,UAAU,aAAa,CAAC,OAA+B,EAAE;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,GAAW,EAAE,KAAa,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAuB,CAAC,CAAC,CAAC;IACzH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC;IAE5C,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,wFAAwF;IACxF,IAAI,WAAqC,CAAC;IAE1C;;;;;;OAMG;IACH,MAAM,MAAM,GAAG,CACb,OAAe,EACf,IAAc,EACd,WAAmC,EAAE,EACd,EAAE;QACzB,wFAAwF;QACxF,uFAAuF;QACvF,IAAI,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QAE/D,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC3C,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,IAAI,OAAO,CAAC;QACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;QAEvC,OAAO,IAAI,OAAO,CAAe,CAAC,QAAQ,EAAE,EAAE;YAC5C,IAAI,IAAiB,CAAC;YACtB,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACvD,OAAO;YACT,CAAC;YAED;;;;;eAKG;YACH,MAAM,UAAU,GAAG,CAAC,KAAa,EAAQ,EAAE;gBACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;gBACrB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,IAAI,CAAC;wBACH,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;wBACvB,OAAO;oBACT,CAAC;oBAAC,MAAM,CAAC;wBACP,oEAAoE;oBACtE,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC,CAAC;YAEF,IAAI,OAAoC,CAAC;YACzC,IAAI,SAAoD,CAAC;YACzD,MAAM,OAAO,GAAG,GAAS,EAAE;gBACzB,YAAY,CAAC,SAAS,CAAC,CAAC;gBACxB,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC1B,OAAO,GAAG,UAAU,CAAC;oBACrB,UAAU,CAAC,SAAS,CAAC,CAAC;gBACxB,CAAC,EAAE,kBAAkB,CAAC,CAAC;YACzB,CAAC,CAAC;YACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,OAAO,GAAG,OAAO,CAAC;gBAClB,UAAU,CAAC,SAAS,CAAC,CAAC;YACxB,CAAC,EAAE,kBAAkB,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;YAEV,WAAW,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC1C,IAAI,SAAS;gBAAE,WAAW,EAAE,CAAC;YAE7B,qFAAqF;YACrF,mEAAmE;YACnE,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,CAAC,IAAa,EAAQ,EAAE;gBACtC,OAAO,EAAE,CAAC;gBACV,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpC,KAAK,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;oBAC/B,IAAI,MAAM,KAAK,EAAE;wBAAE,SAAS;oBAC5B,MAAM,GAAG,MAAM,CAAC;oBAChB,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAEhC,wFAAwF;YACxF,uFAAuF;YACvF,oDAAoD;YACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5D,KAAK,MAAM,CAAC,IAAI,OAAO;oBAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC/C,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAEjB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,KAAY,EAAE,EAAE;gBACjC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACxB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,WAAW,GAAG,SAAS,CAAC;gBACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACzD,CAAC,CAAU,CAAC,CAAC;YACb,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,MAAqB,EAAE,EAAE;gBAC1C,YAAY,CAAC,SAAS,CAAC,CAAC;gBACxB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,WAAW,GAAG,SAAS,CAAC;gBACxB,kFAAkF;gBAClF,4DAA4D;gBAC5D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;oBACzC,OAAO;gBACT,CAAC;gBACD,IAAI,SAAS,EAAE,CAAC;oBACd,QAAQ,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;oBAClC,OAAO;gBACT,CAAC;gBACD,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBACD,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACzE,CAAC,CAAU,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO;QACL,MAAM;QACN,QAAQ,EAAE,GAAG,EAAE;YACb,SAAS,GAAG,IAAI,CAAC;YACjB,WAAW,EAAE,EAAE,CAAC;QAClB,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,MAAM,CAAC,GAAG,KAAqD,CAAC;IAChE,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,yBAAyB,CAAC;IACjG,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjH,OAAO,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,MAAqB,EAAE,MAAc;IACnE,OAAO,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,sBAAsB,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,UAAU,GAAW,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAC5D,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAA2B,CAAC"}
1
+ {"version":3,"file":"procesosEnMaquina.js","sourceRoot":"","sources":["../../../src/agent/dispositivos/procesosEnMaquina.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { normalizar } from "./normalizar.js";
2
2
  import { Mensajes } from "./mensajes.js";
3
3
  import { detalleDe, parametrosDe } from "./resumenDeTool.js";
4
4
  import { aTexto, esMensajeDeTool } from "./textoDeTool.js";
5
+ import { ETIQUETA_DEL_RESUMEN } from "./resumenDeContexto.js";
5
6
  /** El texto de un mensaje, venga como venga. */
6
7
  export function textoDe(msg) {
7
8
  if (!msg || typeof msg !== "object")
@@ -307,6 +308,18 @@ export async function* aEventos(stream, pendientes, alLlamarTool, memoriaDelTurn
307
308
  const texto = textoDe(msg);
308
309
  const id = msg?.id;
309
310
  const idTexto = typeof id === "string" ? id : undefined;
311
+ /**
312
+ * **El RESUMEN de contexto tampoco es la respuesta**, y llega por aquí con el mismo
313
+ * namespace y el mismo nodo: lo único que lo distingue es la ETIQUETA que le pone
314
+ * `resumenConEncargo` a esa llamada. Sin esto se pintaba en el chat y se guardaba como
315
+ * un mensaje del asistente. Va ANTES de `mensajes.trozo`, que cuenta solo la respuesta.
316
+ */
317
+ const meta = chunk.dato[1];
318
+ if (Array.isArray(meta?.tags) && meta.tags.includes(ETIQUETA_DEL_RESUMEN)) {
319
+ if (texto !== "")
320
+ yield { tipo: "resumen", texto, ...(idTexto === undefined ? {} : { msgId: idTexto }) };
321
+ continue;
322
+ }
310
323
  // El razonamiento sale por su propio evento y NO pasa por `Mensajes`: ese contador
311
324
  // decide qué trozos de la RESPUESTA se pintan (dedupe de reintentos), y contar el
312
325
  // pensamiento ahí desalinearía esa cuenta.
@@ -1 +1 @@
1
- {"version":3,"file":"puente.js","sourceRoot":"","sources":["../../../src/agent/turno/puente.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"puente.js","sourceRoot":"","sources":["../../../src/agent/turno/puente.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,13 @@ import { appendFileSync, mkdirSync } from "node:fs";
2
2
  import { join } from "node:path";
3
3
  import { falloLegible, registroDeFallo } from "../../core/fallos.js";
4
4
  export const NOMBRE_REGISTRO_DE_FALLOS = "fallos.jsonl";
5
+ /**
6
+ * Cómo se NOMBRA el registro ante quien acaba de ver el error: relativo a la raíz del
7
+ * proyecto. La ruta absoluta lleva el nombre de la cuenta del sistema y viajaba por el cable
8
+ * dentro del aviso («Queda apuntado en /Users/…»), y ninguna ruta de la máquina viaja por
9
+ * ahí; además era la línea que, sin partir, sacaba la barra de scroll horizontal del chat.
10
+ */
11
+ export const RUTA_VISIBLE_DE_FALLOS = `.xonecode/${NOMBRE_REGISTRO_DE_FALLOS}`;
5
12
  /** Dónde queda, para poder decírselo a quien acaba de ver el error. */
6
13
  export function rutaDeFallos(raiz) {
7
14
  return join(raiz, ".xonecode", NOMBRE_REGISTRO_DE_FALLOS);
@@ -1 +1 @@
1
- {"version":3,"file":"registroDeFallos.js","sourceRoot":"","sources":["../../../src/agent/turno/registroDeFallos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAwB,MAAM,sBAAsB,CAAC;AAE3F,MAAM,CAAC,MAAM,yBAAyB,GAAG,cAAc,CAAC;AAExD,uEAAuE;AACvE,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,yBAAyB,CAAC,CAAC;AAC5D,CAAC;AAYD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,OAAO;QACL,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAChB,IAAI,QAAyB,CAAC;YAC9B,IAAI,CAAC;gBACH,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;YAAC,MAAM,CAAC;gBACP,kFAAkF;gBAClF,6DAA6D;gBAC7D,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC;gBACH,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxD,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChE,CAAC;YAAC,MAAM,CAAC;gBACP,iFAAiF;gBACjF,0DAA0D;gBAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"registroDeFallos.js","sourceRoot":"","sources":["../../../src/agent/turno/registroDeFallos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAwB,MAAM,sBAAsB,CAAC;AAE3F,MAAM,CAAC,MAAM,yBAAyB,GAAG,cAAc,CAAC;AAExD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,yBAAyB,EAAE,CAAC;AAE/E,uEAAuE;AACvE,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,yBAAyB,CAAC,CAAC;AAC5D,CAAC;AAYD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,OAAO;QACL,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAChB,IAAI,QAAyB,CAAC;YAC9B,IAAI,CAAC;gBACH,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;YAAC,MAAM,CAAC;gBACP,kFAAkF;gBAClF,6DAA6D;gBAC7D,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC;gBACH,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxD,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChE,CAAC;YAAC,MAAM,CAAC;gBACP,iFAAiF;gBACjF,0DAA0D;gBAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -13,9 +13,32 @@ import { mensajeDeTopeAgotado } from "../../core/topeAgotado.js";
13
13
  import { RUTA_HISTORIAL_RESUMIDO } from "../grafo/memoriaDeProyecto.js";
14
14
  export const UMBRAL_RESUMEN_TOKENS = 32_000;
15
15
  export const CONTEXTO_RECIENTE_TOKENS = 8_000;
16
+ /**
17
+ * El prompt del resumen, en CASTELLANO y pidiendo markdown.
18
+ *
19
+ * El de deepagents está en inglés, y el resumen no es un texto interno: se le enseña a la
20
+ * persona en su propio plegable («Resumen del contexto», ver `ETIQUETA_DEL_RESUMEN`). Medido en
21
+ * MyAllXOne: salía un `## Summary` / `**Task:**` / `Key facts established:` en mitad de una
22
+ * conversación en castellano. `{conversation}` es el hueco que la librería rellena.
23
+ *
24
+ * Lo que NO se le pide aquí es que conserve el encargo: eso lo hace el CÓDIGO
25
+ * (`conservarElEncargo`), porque un resumen que a veces lo pierde ya costó millones de tokens.
26
+ */
27
+ export const PROMPT_DEL_RESUMEN = `Eres el encargado de resumir una conversación de trabajo sobre una aplicación XOne para que el agente pueda seguir sin releerla. Escribe EN CASTELLANO y en markdown legible (títulos cortos y listas), y recoge:
28
+ 1. Qué se está haciendo y para qué.
29
+ 2. Los hechos ya comprobados, con fichero y línea cuando los haya.
30
+ 3. Las decisiones tomadas y lo que queda pendiente.
31
+
32
+ Sé concreto y breve. No inventes nada que no esté en la conversación.
33
+
34
+ Conversación a resumir:
35
+ {conversation}
36
+
37
+ Resumen:`;
16
38
  export function resumenDeContexto(backend) {
17
39
  return createSummarizationMiddleware({
18
40
  backend,
41
+ summaryPrompt: PROMPT_DEL_RESUMEN,
19
42
  trigger: { type: "tokens", value: UMBRAL_RESUMEN_TOKENS },
20
43
  keep: { type: "tokens", value: CONTEXTO_RECIENTE_TOKENS },
21
44
  // Las tools de fichero pueden llevar contenido grande. Los argumentos antiguos ya
@@ -112,7 +135,74 @@ function textoPlano(msg) {
112
135
  * en un cierre que los tests doblan, y que puede dejar de estar montada con todo en verde.
113
136
  */
114
137
  export function resumenConEncargo(backend) {
115
- return [resumenDeContexto(backend), conservarElEncargo()];
138
+ const { fuera, dentro } = etiquetarElResumen();
139
+ return [fuera, resumenDeContexto(backend), dentro, conservarElEncargo()];
140
+ }
141
+ /**
142
+ * La marca que distingue, en el stream, la llamada del RESUMEN de la respuesta del agente.
143
+ *
144
+ * deepagents resume llamando al MISMO modelo del agente (`request.model`, que gana sobre el
145
+ * `model` de sus opciones) dentro del MISMO nodo, así que sus chunks llegaban al puente con el
146
+ * mismo namespace, el mismo nodo y ninguna etiqueta: indistinguibles de la respuesta. El puente
147
+ * los pintaba en el chat y el `.jsonl` los guardaba como un mensaje del asistente — medido en
148
+ * MyAllXOne, un `## Summary` en inglés a mitad de la conversación.
149
+ *
150
+ * Con la etiqueta, el puente los saca de la respuesta y los manda a su propio acto (`resumen`),
151
+ * que el cliente pliega como «Verificaciones» o «Permisos». Una ETIQUETA y no una heurística
152
+ * sobre el texto por la regla de siempre: la clase viaja como dato.
153
+ */
154
+ export const ETIQUETA_DEL_RESUMEN = "xonecode:resumen";
155
+ /**
156
+ * Los dos envoltorios que ponen la etiqueta SOLO en la llamada del resumen.
157
+ *
158
+ * `fuera` va delante del middleware de resumen y le cambia el modelo por uno que etiqueta cada
159
+ * `invoke`; `dentro` va detrás y devuelve el ORIGINAL antes de la llamada de verdad. Así solo
160
+ * lo que el resumen invoque entre medias lleva la marca. Contra la librería real se prueban
161
+ * los dos sentidos: sin `fuera`, el resumen vuelve al chat (el mutante tumba el test).
162
+ *
163
+ * **`dentro` es la SEGUNDA llave, y hay que saberlo**: hoy la llamada real pasa por
164
+ * `bindTools`, que el Proxy delega al ORIGINAL, así que la respuesta sale sin marca aunque
165
+ * `dentro` faltara — medido, su mutante no muere. Se queda porque el fallo que evita es el
166
+ * caro (la RESPUESTA entera al plegable y el chat mudo) y basta con que un agente invoque el
167
+ * modelo sin `bindTools` para que fuera la única.
168
+ *
169
+ * El Proxy lee contra el OBJETIVO (`Reflect.get(o, p, o)`), por la trampa del getter sobre
170
+ * campo privado. **Límite declarado**: solo se etiqueta `invoke`, que es lo que la librería
171
+ * usa hoy para resumir; si un día resume con `stream`, el resumen vuelve al chat — el test
172
+ * contra la librería real es el aviso.
173
+ */
174
+ function etiquetarElResumen() {
175
+ const originales = new WeakMap();
176
+ const fuera = createMiddleware({
177
+ name: "EtiquetaDelResumenMiddleware",
178
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
179
+ wrapModelCall: (request, handler) => {
180
+ const modelo = request?.model;
181
+ if (modelo === null || typeof modelo !== "object")
182
+ return handler(request);
183
+ const etiquetado = new Proxy(modelo, {
184
+ get(objetivo, propiedad) {
185
+ if (propiedad === "invoke") {
186
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
187
+ return (entrada, config) => objetivo.invoke(entrada, { ...(config ?? {}), tags: [...(config?.tags ?? []), ETIQUETA_DEL_RESUMEN] });
188
+ }
189
+ const valor = Reflect.get(objetivo, propiedad, objetivo);
190
+ return typeof valor === "function" ? valor.bind(objetivo) : valor;
191
+ },
192
+ });
193
+ originales.set(etiquetado, modelo);
194
+ return handler({ ...request, model: etiquetado });
195
+ },
196
+ });
197
+ const dentro = createMiddleware({
198
+ name: "SinEtiquetaDelResumenMiddleware",
199
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
200
+ wrapModelCall: (request, handler) => {
201
+ const original = request?.model === null || typeof request?.model !== "object" ? undefined : originales.get(request.model);
202
+ return handler(original === undefined ? request : { ...request, model: original });
203
+ },
204
+ });
205
+ return { fuera, dentro };
116
206
  }
117
207
  /**
118
208
  * Cuántas llamadas al modelo puede gastar UN especialista en un encargo.
@@ -282,8 +372,29 @@ function ultimoTextoSustancial(mensajes) {
282
372
  * bucle: cada llamada reenvía todo lo anterior, así que esto sigue siendo cuadrático y sigue
283
373
  * habiendo techo. El número nuevo cubre un reconocimiento completo más la escritura del
284
374
  * entregable y se queda por debajo del orquestador; el 43 de aquel incidente sigue fuera.
375
+ *
376
+ * ## Por qué ya no es 35: el tope bloqueaba la ENTREGA (23-09-2026)
377
+ *
378
+ * Medido en MyAllXOne, «una calculadora a partir de una maqueta de Stitch»: el developer gastó
379
+ * 39, 39 y 49 tools en tres encargos y **ninguno escribió**. Con `continue`, al agotarse, el
380
+ * tope bloquea TODA tool que venga después, y eso incluye `write_file` y `edit_file`: el
381
+ * especialista explora hasta el techo y cuando va a crear el `.xne` se lo rechazan. Se pagaba
382
+ * el reconocimiento entero (1,17M de entrada solo el developer) y no salía nada; el
383
+ * orquestador lo leía como «se quedan sin turnos explorando» y re-delegaba, que es el mismo
384
+ * reconocimiento otra vez desde cero.
385
+ *
386
+ * **Así que deja de ser una economía y pasa a ser un GUARDA**, como el del orquestador: por
387
+ * encima de lo observado, para que no muerda en un encargo normal y solo pare uno desbocado.
388
+ * Lo que sigue acotando de verdad es el tope de LLAMADAS, que con tools en paralelo llega
389
+ * antes. **Y por eso ya no está por debajo del del orquestador**: esa relación tenía sentido
390
+ * mientras este número era un presupuesto de trabajo.
391
+ *
392
+ * La alternativa que se descartó, para no rediscutirla: excluir las escrituras del conteo
393
+ * (un middleware propio, porque el de langchain no sabe excluir). Arreglaba el bloqueo de la
394
+ * entrega sin tocar el número; se prefirió el tope alto, que es su criterio de siempre —los
395
+ * topes se ponen altos para que no muerdan—.
285
396
  */
286
- export const TOPE_DE_TOOLS_DEL_ESPECIALISTA = 35;
397
+ export const TOPE_DE_TOOLS_DEL_ESPECIALISTA = 150;
287
398
  /**
288
399
  * **`continue`, y NO `end`: son incompatibles con pedir varias tools a la vez.**
289
400
  *
@@ -1 +1 @@
1
- {"version":3,"file":"resumenDeContexto.js","sourceRoot":"","sources":["../../../src/agent/turno/resumenDeContexto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resumenDeContexto.js","sourceRoot":"","sources":["../../../src/agent/turno/resumenDeContexto.ts"],"names":[],"mappings":"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"}
@@ -114,7 +114,7 @@ import { indiceEnDisco } from "../navegacion/indiceEnDisco.js";
114
114
  import { hechosDelProyectoDe } from "../navegacion/hechosEnDisco.js";
115
115
  import { conHechosDelProyecto } from "../../core/hechosDelProyecto.js";
116
116
  import { accionDelJuez } from "../../core/juezDelTurno.js";
117
- import { crearRegistroDeFallos } from "./registroDeFallos.js";
117
+ import { crearRegistroDeFallos, RUTA_VISIBLE_DE_FALLOS } from "./registroDeFallos.js";
118
118
  /**
119
119
  * Recorre la raíz y devuelve las rutas en el ESPACIO VIRTUAL del backend.
120
120
  *
@@ -1148,7 +1148,7 @@ export async function abrirSesionReal(opciones) {
1148
1148
  pasos: pasosDelTurno,
1149
1149
  });
1150
1150
  if (anotado !== undefined) {
1151
- piel.linea(`\n⚠ el turno falló. Queda apuntado en ${anotado.ruta}\n${anotado.legible}\n`);
1151
+ piel.linea(`\n⚠ el turno falló. Queda apuntado en ${RUTA_VISIBLE_DE_FALLOS}\n${anotado.legible}\n`);
1152
1152
  }
1153
1153
  throw error;
1154
1154
  }