xonecode 0.8.27 → 0.8.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/apps/web/dist/assets/{index-LdUr7EoT.js → index-Bm4ur93-.js} +69 -69
- package/apps/web/dist/assets/index-F-tnEn80.css +1 -0
- package/apps/web/dist/assets/{php-Cg-eWGpQ.js → php-D2qE525B.js} +1 -1
- package/apps/web/dist/assets/{ruby-EcV7Hon3.js → ruby-SvGm1EAa.js} +1 -1
- package/apps/web/dist/index.html +2 -2
- package/dist/agent/grafo/escriturasEnSerie.js +57 -0
- package/dist/agent/grafo/escriturasEnSerie.js.map +1 -0
- package/dist/agent/grafo/proyecto.js +69 -3
- package/dist/agent/grafo/proyecto.js.map +1 -1
- package/dist/agent/grafo/traerDeLaMaquina.js +117 -0
- package/dist/agent/grafo/traerDeLaMaquina.js.map +1 -0
- package/dist/agent/grafo/validacionXone.js +79 -4
- package/dist/agent/grafo/validacionXone.js.map +1 -1
- package/dist/agent/grafo/xoneAgent.js +33 -1
- package/dist/agent/grafo/xoneAgent.js.map +1 -1
- package/dist/agent/subagentes/agentesEnDisco.js +34 -6
- package/dist/agent/subagentes/agentesEnDisco.js.map +1 -1
- package/dist/agent/trazaDeErroresEnDisco.js +45 -0
- package/dist/agent/trazaDeErroresEnDisco.js.map +1 -0
- package/dist/agent/turno/diagnosticoDeTools.js +10 -1
- package/dist/agent/turno/diagnosticoDeTools.js.map +1 -1
- package/dist/agent/turno/informeDeTraza.js +129 -6
- package/dist/agent/turno/informeDeTraza.js.map +1 -1
- package/dist/agent/turno/puente.js +89 -5
- package/dist/agent/turno/puente.js.map +1 -1
- package/dist/agent/turno/resumenDeTool.js +28 -0
- package/dist/agent/turno/resumenDeTool.js.map +1 -1
- package/dist/agent/turno/turnoReal.js +20 -2
- package/dist/agent/turno/turnoReal.js.map +1 -1
- package/dist/core/serieDeEscrituras.js +63 -0
- package/dist/core/serieDeEscrituras.js.map +1 -0
- package/dist/core/traerDeLaMaquina.js +80 -0
- package/dist/core/traerDeLaMaquina.js.map +1 -0
- package/dist/core/trazaDeErrores.js +108 -0
- package/dist/core/trazaDeErrores.js.map +1 -0
- package/dist/web/servidor/consolaWeb.js +6 -0
- package/dist/web/servidor/consolaWeb.js.map +1 -1
- package/package.json +2 -1
- package/skills/xone-hotswap/SKILL.md +76 -8
- package/skills/xone-hotswap/references/comandos.md +33 -0
- package/skills/xone-hotswap/references/conexion-y-despliegue.md +61 -1
- package/skills/xone-hotswap/scripts/xone-arrancar-ios +1 -1
- package/skills/xone-hotswap/scripts/xone-captura-android +91 -3
- package/skills/xone-hotswap/scripts/xone-desplegar-android +80 -5
- package/skills/xone-hotswap/scripts/xone-hotswap +151 -8
- package/apps/web/dist/assets/index-DKZqgHtg.css +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { normalizar } from "./normalizar.js";
|
|
2
2
|
import { Mensajes } from "./mensajes.js";
|
|
3
3
|
import { detalleDe, parametrosDe } from "./resumenDeTool.js";
|
|
4
|
-
import { esMensajeDeTool } from "./textoDeTool.js";
|
|
4
|
+
import { aTexto, esMensajeDeTool } from "./textoDeTool.js";
|
|
5
5
|
/** El texto de un mensaje, venga como venga. */
|
|
6
6
|
export function textoDe(msg) {
|
|
7
7
|
if (!msg || typeof msg !== "object")
|
|
@@ -85,6 +85,8 @@ export function toolsDe(dato) {
|
|
|
85
85
|
continue;
|
|
86
86
|
for (const m of msgs) {
|
|
87
87
|
const llamadas = m?.tool_calls;
|
|
88
|
+
// El id del MENSAJE que trae estas llamadas: es lo que dice cuáles se pidieron JUNTAS.
|
|
89
|
+
const respuesta = m?.id;
|
|
88
90
|
if (Array.isArray(llamadas)) {
|
|
89
91
|
for (const l of llamadas) {
|
|
90
92
|
const n = l?.name;
|
|
@@ -98,6 +100,7 @@ export function toolsDe(dato) {
|
|
|
98
100
|
...(detalle === undefined ? {} : { detalle }),
|
|
99
101
|
...(parametros === undefined ? {} : { parametros }),
|
|
100
102
|
...(typeof id === "string" && id !== "" ? { id } : {}),
|
|
103
|
+
...(typeof respuesta === "string" && respuesta !== "" ? { respuesta } : {}),
|
|
101
104
|
});
|
|
102
105
|
}
|
|
103
106
|
}
|
|
@@ -106,6 +109,40 @@ export function toolsDe(dato) {
|
|
|
106
109
|
}
|
|
107
110
|
return salida;
|
|
108
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* Lo que cada tool DEVOLVIÓ, medido en caracteres, por el id de su llamada.
|
|
114
|
+
*
|
|
115
|
+
* **Contar llamadas no dice a dónde van los tokens.** Un `read_file` y otro `read_file` son
|
|
116
|
+
* una linea igual en la traza y pueden ser doscientos caracteres o veinte mil: lo que se paga
|
|
117
|
+
* es lo que ENTRA en el contexto, no cuántas veces se pidió. Sin esto, la pregunta «¿que me
|
|
118
|
+
* esta costando este turno?» solo se podía contestar por eliminación.
|
|
119
|
+
*
|
|
120
|
+
* **Van los CARACTERES, nunca el contenido** —la misma regla que `core/events.ts`: el
|
|
121
|
+
* resultado de un `read_file` es el fichero entero y el de una tool MCP lleva el bearer—. Un
|
|
122
|
+
* tamaño no es contenido, y es lo único que hace falta para repartir el gasto.
|
|
123
|
+
*
|
|
124
|
+
* No se convierte a tokens: la razón caracteres/token cambia con el modelo y con lo que haya
|
|
125
|
+
* dentro, así que dar una cifra de tokens aquí sería inventarse una precisión que no se tiene.
|
|
126
|
+
*/
|
|
127
|
+
export function resultadosDe(dato) {
|
|
128
|
+
if (!dato || typeof dato !== "object")
|
|
129
|
+
return [];
|
|
130
|
+
const salida = [];
|
|
131
|
+
for (const nodo of Object.values(dato)) {
|
|
132
|
+
const msgs = nodo?.messages;
|
|
133
|
+
if (!Array.isArray(msgs))
|
|
134
|
+
continue;
|
|
135
|
+
for (const m of msgs) {
|
|
136
|
+
if (!esMensajeDeTool(m))
|
|
137
|
+
continue;
|
|
138
|
+
const id = m?.tool_call_id;
|
|
139
|
+
if (typeof id !== "string" || id === "")
|
|
140
|
+
continue;
|
|
141
|
+
salida.push({ id, chars: aTexto(m.content).length });
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return salida;
|
|
145
|
+
}
|
|
109
146
|
/**
|
|
110
147
|
* ¿Este chunk lo emite el grafo PADRE, o un especialista?
|
|
111
148
|
*
|
|
@@ -152,6 +189,9 @@ export function esDelPadre(ns) {
|
|
|
152
189
|
export function origenDeTool(ns) {
|
|
153
190
|
return ns[0]?.startsWith("tools:") === true ? "especialista" : "orquestador";
|
|
154
191
|
}
|
|
192
|
+
export function crearMemoriaDelTurno() {
|
|
193
|
+
return { vistas: new Set(), resultados: new Set(), deQuien: new Map() };
|
|
194
|
+
}
|
|
155
195
|
/**
|
|
156
196
|
* Convierte el stream del grafo en `DomainEvent`.
|
|
157
197
|
*
|
|
@@ -165,21 +205,45 @@ export function origenDeTool(ns) {
|
|
|
165
205
|
* consola en un volcado. Su trabajo se cuenta por `tool`, que es lo que el usuario
|
|
166
206
|
* necesita ver mientras espera.
|
|
167
207
|
*/
|
|
168
|
-
export async function* aEventos(stream, pendientes, alLlamarTool) {
|
|
208
|
+
export async function* aEventos(stream, pendientes, alLlamarTool, memoriaDelTurno, alResponderTool) {
|
|
169
209
|
const mensajes = new Mensajes();
|
|
170
|
-
/**
|
|
171
|
-
|
|
210
|
+
/**
|
|
211
|
+
* Los `tool_call` ya contados, por id: el stream reenvía los mensajes acumulados.
|
|
212
|
+
*
|
|
213
|
+
* **Y el conjunto tiene que vivir por TURNO, no por RONDA** — por eso entra por parámetro.
|
|
214
|
+
* `turnoReal.ts` llama a `aEventos` DENTRO del bucle de rondas: una aprobación termina la
|
|
215
|
+
* ronda, se reanuda con un `Command` y el stream vuelve a entregar la historia acumulada.
|
|
216
|
+
* Con el conjunto local, cada ronda empezaba en blanco y volvía a contar todas las tools
|
|
217
|
+
* de las rondas anteriores.
|
|
218
|
+
*
|
|
219
|
+
* Medido sobre una sesión real de MyAllXOne: la traza decía OCHO `edit_file` sobre
|
|
220
|
+
* `/funciones.js` con seis "en la misma respuesta", y en la pantalla se había pedido UN
|
|
221
|
+
* permiso y escrito UNA vez. Las reemisiones caían 15 ms despues de cada ronda y con el
|
|
222
|
+
* MISMO id de mensaje — o sea que no eran del modelo, eran del stream. Eso mandó a
|
|
223
|
+
* diagnosticar un problema de escrituras concurrentes que la traza se habia inventado.
|
|
224
|
+
*
|
|
225
|
+
* Sin el parámetro se comporta como antes (un turno de una ronda), así que ningún otro
|
|
226
|
+
* llamador ni ningún doble de los tests cambia: la misma asimetría que los métodos
|
|
227
|
+
* opcionales de `Piel`.
|
|
228
|
+
*/
|
|
229
|
+
const { vistas, resultados, deQuien } = memoriaDelTurno ?? crearMemoriaDelTurno();
|
|
172
230
|
try {
|
|
173
231
|
for await (const bruto of stream) {
|
|
174
232
|
const chunk = normalizar(bruto);
|
|
175
233
|
if (!chunk)
|
|
176
234
|
continue;
|
|
177
235
|
if (chunk.modo === "updates") {
|
|
178
|
-
for (const { nombre, detalle, parametros, id } of toolsDe(chunk.dato)) {
|
|
236
|
+
for (const { nombre, detalle, parametros, id, respuesta } of toolsDe(chunk.dato)) {
|
|
179
237
|
// Ya contada: este mismo chunk trae la historia acumulada del subgrafo (ver
|
|
180
238
|
// `toolsDe`). Sin `id` no se puede afirmar que sea repetida, así que se emite —
|
|
181
239
|
// la dirección segura es contar de más, no callar una llamada que ocurrió.
|
|
182
240
|
if (id !== undefined) {
|
|
241
|
+
// El nombre se apunta ANTES del dedupe, y esa precedencia no es de estilo: la
|
|
242
|
+
// llamada se reemite en cada ronda y el `continue` de abajo la salta, así que
|
|
243
|
+
// apuntándolo después el mapa se quedaba vacío a partir de la segunda ronda y el
|
|
244
|
+
// peso de esos resultados salía «(sin nombre)». Medido: 35 resultados sin
|
|
245
|
+
// atribuir, la cuarta parte de todo lo que entró en el contexto.
|
|
246
|
+
deQuien.set(id, { nombre, ...(detalle === undefined ? {} : { detalle }) });
|
|
183
247
|
if (vistas.has(id))
|
|
184
248
|
continue;
|
|
185
249
|
vistas.add(id);
|
|
@@ -190,6 +254,7 @@ export async function* aEventos(stream, pendientes, alLlamarTool) {
|
|
|
190
254
|
...(detalle === undefined ? {} : { detalle }),
|
|
191
255
|
...(parametros === undefined ? {} : { parametros }),
|
|
192
256
|
origen: origenDeTool(chunk.ns),
|
|
257
|
+
...(respuesta === undefined ? {} : { respuesta }),
|
|
193
258
|
});
|
|
194
259
|
}
|
|
195
260
|
catch {
|
|
@@ -197,6 +262,25 @@ export async function* aEventos(stream, pendientes, alLlamarTool) {
|
|
|
197
262
|
}
|
|
198
263
|
yield { tipo: "tool", nombre, ...(detalle !== undefined ? { detalle } : {}) };
|
|
199
264
|
}
|
|
265
|
+
/**
|
|
266
|
+
* **Los resultados van DESPUÉS de las llamadas del mismo chunk, y ese orden es el
|
|
267
|
+
* arreglo.** Se puso al revés con el argumento de que un resultado llega en el chunk
|
|
268
|
+
* SIGUIENTE al de su llamada; es cierto la primera vez y FALSO al reanudar, porque la
|
|
269
|
+
* historia acumulada reentrega los dos JUNTOS. Consecuencia medida: 98.439 caracteres
|
|
270
|
+
* —el 43 % de todo lo que entró en el contexto— repartidos como «(sin nombre)».
|
|
271
|
+
*/
|
|
272
|
+
for (const r of resultadosDe(chunk.dato)) {
|
|
273
|
+
if (resultados.has(r.id))
|
|
274
|
+
continue;
|
|
275
|
+
resultados.add(r.id);
|
|
276
|
+
const quien = deQuien.get(r.id);
|
|
277
|
+
try {
|
|
278
|
+
alResponderTool?.({ ...r, ...(quien ?? {}) });
|
|
279
|
+
}
|
|
280
|
+
catch {
|
|
281
|
+
// La observabilidad no puede tumbar ni silenciar el stream.
|
|
282
|
+
}
|
|
283
|
+
}
|
|
200
284
|
continue;
|
|
201
285
|
}
|
|
202
286
|
if (chunk.modo === "messages") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puente.js","sourceRoot":"","sources":["../../../src/agent/turno/puente.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,YAAY,EAA0B,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"puente.js","sourceRoot":"","sources":["../../../src/agent/turno/puente.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,17 @@ export const CAMPOS_SEGUROS = {
|
|
|
37
37
|
* minutos en otro proceso, sin una sola tool que cruce.
|
|
38
38
|
*/
|
|
39
39
|
task: ["subagent_type"],
|
|
40
|
+
/**
|
|
41
|
+
* **De la `description` no sale el TEXTO, sale su HUELLA**, y hace falta por una medida.
|
|
42
|
+
*
|
|
43
|
+
* DeepSeek paraleliza: en un turno real, 37 de 69 tools salieron en ráfagas simultáneas, y
|
|
44
|
+
* una de ellas llevaba TRES `task` a la vez —dos al mismo especialista—. Con solo el nombre
|
|
45
|
+
* en la traza no hay forma de saber si eran tres encargos distintos o el mismo repetido, que
|
|
46
|
+
* es justo la diferencia entre paralelismo útil y trabajo tirado.
|
|
47
|
+
*
|
|
48
|
+
* Un hash corto y la longitud lo contestan sin guardar una línea del encargo, así que la
|
|
49
|
+
* regla de arriba no se toca: lo que no puede salir sigue sin salir.
|
|
50
|
+
*/
|
|
40
51
|
/**
|
|
41
52
|
* De `xone_navegacion` sale la OPERACIÓN y **no el `nombre`**, que es una colección del
|
|
42
53
|
* proyecto — o sea contenido, y aquí no entra contenido.
|
|
@@ -86,6 +97,13 @@ function objetoDeArgs(args) {
|
|
|
86
97
|
: undefined;
|
|
87
98
|
}
|
|
88
99
|
/** Argumentos acotados y seguros para la traza opt-in de diagnóstico. */
|
|
100
|
+
/** Huella corta y estable de un texto. No reversible: solo sirve para comparar dos. */
|
|
101
|
+
export function huellaDeTexto(texto) {
|
|
102
|
+
let h = 5381;
|
|
103
|
+
for (let i = 0; i < texto.length; i++)
|
|
104
|
+
h = ((h * 33) ^ texto.charCodeAt(i)) >>> 0;
|
|
105
|
+
return h.toString(36);
|
|
106
|
+
}
|
|
89
107
|
export function parametrosDe(nombre, args) {
|
|
90
108
|
const campos = CAMPOS_SEGUROS[nombre];
|
|
91
109
|
const objeto = objetoDeArgs(args);
|
|
@@ -98,6 +116,16 @@ export function parametrosDe(nombre, args) {
|
|
|
98
116
|
salida[campo] = valor;
|
|
99
117
|
}
|
|
100
118
|
}
|
|
119
|
+
/**
|
|
120
|
+
* La HUELLA del encargo de un `task`, nunca su texto. Ver la nota de `CAMPOS_SEGUROS.task`:
|
|
121
|
+
* es lo que distingue tres delegaciones simultáneas distintas de la misma repetida tres
|
|
122
|
+
* veces, y sin ella el paralelismo de DeepSeek no se puede diagnosticar.
|
|
123
|
+
*/
|
|
124
|
+
if (nombre === "task" && typeof objeto["description"] === "string") {
|
|
125
|
+
const encargo = objeto["description"];
|
|
126
|
+
salida["encargoChars"] = encargo.length;
|
|
127
|
+
salida["encargoHuella"] = huellaDeTexto(encargo);
|
|
128
|
+
}
|
|
101
129
|
return Object.keys(salida).length > 0 ? salida : undefined;
|
|
102
130
|
}
|
|
103
131
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resumenDeTool.js","sourceRoot":"","sources":["../../../src/agent/turno/resumenDeTool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resumenDeTool.js","sourceRoot":"","sources":["../../../src/agent/turno/resumenDeTool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { readdirSync, lstatSync, statSync, existsSync, readFileSync, realpathSync } from "node:fs";
|
|
2
|
+
import { anotarPaso } from "../../core/trazaDeErrores.js";
|
|
2
3
|
import { join, sep } from "node:path";
|
|
3
4
|
import { randomUUID } from "node:crypto";
|
|
4
5
|
import { HumanMessage, ToolMessage } from "@langchain/core/messages";
|
|
@@ -105,9 +106,10 @@ import { relative, resolve as resolverRuta } from "node:path";
|
|
|
105
106
|
import { tomarInstantanea } from "./instantanea.js";
|
|
106
107
|
import { construirAgente } from "../grafo/xoneAgent.js";
|
|
107
108
|
import { asegurarMemoriaDeProyecto } from "../grafo/memoriaDeProyecto.js";
|
|
108
|
-
import { aEventos } from "./puente.js";
|
|
109
|
+
import { aEventos, crearMemoriaDelTurno } from "./puente.js";
|
|
109
110
|
import { createTokenTracker } from "../../vendor/tokenTracking.js";
|
|
110
111
|
import { crearDiagnosticoDeTools } from "./diagnosticoDeTools.js";
|
|
112
|
+
import { encenderTrazaDeErrores } from "../trazaDeErroresEnDisco.js";
|
|
111
113
|
import { indiceEnDisco } from "../navegacion/indiceEnDisco.js";
|
|
112
114
|
import { hechosDelProyectoDe } from "../navegacion/hechosEnDisco.js";
|
|
113
115
|
import { conHechosDelProyecto } from "../../core/hechosDelProyecto.js";
|
|
@@ -304,6 +306,13 @@ export async function abrirSesionReal(opciones) {
|
|
|
304
306
|
const checkpointer = opciones.checkpointer ?? new MemorySaver();
|
|
305
307
|
const tracker = createTokenTracker();
|
|
306
308
|
const diagnostico = crearDiagnosticoDeTools(raiz);
|
|
309
|
+
/**
|
|
310
|
+
* Y la traza de EXCEPCIONES e HITOS, con la misma variable de entorno que la de tools y el
|
|
311
|
+
* mismo trato: apagada no cuesta nada. Se enciende aquí, al construir la sesión, porque es
|
|
312
|
+
* el primer sitio donde se conoce la raíz — y el sumidero es global (ver
|
|
313
|
+
* `core/trazaDeErrores.ts`), así que basta una vez.
|
|
314
|
+
*/
|
|
315
|
+
encenderTrazaDeErrores(raiz);
|
|
307
316
|
let modelos = opciones.modelos;
|
|
308
317
|
let hilo = opciones.hilo ?? `xonecode-${randomUUID()}`;
|
|
309
318
|
let cancelarEnCurso;
|
|
@@ -518,6 +527,12 @@ export async function abrirSesionReal(opciones) {
|
|
|
518
527
|
let payload = { messages: [new HumanMessage(payloadInicial)] };
|
|
519
528
|
let bitacora = null;
|
|
520
529
|
let ronda = 0;
|
|
530
|
+
/**
|
|
531
|
+
* Lo que el puente recuerda ENTRE RONDAS: qué tools ya se contaron, qué resultados ya se
|
|
532
|
+
* midieron y de quién era cada llamada. Vive fuera del bucle a propósito: ver
|
|
533
|
+
* `MemoriaDelTurno`. Dentro, cada ronda recontaba lo de las anteriores.
|
|
534
|
+
*/
|
|
535
|
+
const memoriaDelTurno = crearMemoriaDelTurno();
|
|
521
536
|
// El bucle de aprobación, tal como está en `correrReal` (`cli/run.ts`): una pausa
|
|
522
537
|
// TERMINA la ronda, el interrupt queda en el estado, y se reanuda con un `Command`
|
|
523
538
|
// con las decisiones — también con rejects, que si no se resumen dejan el interrupt
|
|
@@ -943,7 +958,7 @@ export async function abrirSesionReal(opciones) {
|
|
|
943
958
|
bitacora = await correrTurno(conVerificacion(
|
|
944
959
|
// El flujo del grafo MÁS lo que el agente externo vaya haciendo en su propio
|
|
945
960
|
// proceso: sin esto, ni una de sus tools cruza y son minutos de pantalla quieta.
|
|
946
|
-
entrelazar(aEventos(stream, async () => (await leerPendientes()).lista, ({ nombre, detalle, parametros, origen }) => diagnostico?.herramienta(nombre, detalle, parametros, tracker, origen)), eventosExternos)), piel, {
|
|
961
|
+
entrelazar(aEventos(stream, async () => (await leerPendientes()).lista, ({ nombre, detalle, parametros, origen, respuesta }) => diagnostico?.herramienta(nombre, detalle, parametros, tracker, origen, respuesta), memoriaDelTurno, ({ nombre, detalle, chars }) => diagnostico?.resultado?.(nombre, detalle, chars)), eventosExternos)), piel, {
|
|
947
962
|
// El aviso solo si el turno ESCRIBIÓ y aun así no se verificó. Antes saltaba en
|
|
948
963
|
// todos los turnos, incluido «cuéntame un chiste» — y un aviso que salta cuando
|
|
949
964
|
// no ha pasado nada enseña a ignorarlo, que es lo contrario de lo que se compra
|
|
@@ -976,6 +991,9 @@ export async function abrirSesionReal(opciones) {
|
|
|
976
991
|
cancelarEnCurso = undefined;
|
|
977
992
|
}
|
|
978
993
|
const { lista, ficheros, diffs } = await leerPendientes();
|
|
994
|
+
// Cada vuelta del bucle deja su hito: es lo que distingue «el turno avanza despacio» de
|
|
995
|
+
// «el turno no avanza», que desde fuera se ven igual.
|
|
996
|
+
anotarPaso("turnoReal#ronda", `ronda ${ronda}, ${lista.length} pendiente(s)`)();
|
|
979
997
|
if (lista.length === 0)
|
|
980
998
|
break;
|
|
981
999
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turnoReal.js","sourceRoot":"","sources":["../../../src/agent/turno/turnoReal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"turnoReal.js","sourceRoot":"","sources":["../../../src/agent/turno/turnoReal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Una cola por CLAVE: dos tareas con la misma clave nunca se solapan; con claves distintas
|
|
3
|
+
* corren a la vez.
|
|
4
|
+
*
|
|
5
|
+
* **Por qué hace falta.** `write` y `edit` de un backend de ficheros son
|
|
6
|
+
* leer-modificar-escribir: leen el fichero entero, sustituyen y lo escriben entero. Dos a la
|
|
7
|
+
* vez sobre el MISMO fichero se pisan, y el modo de fallo es el peor que hay — las dos
|
|
8
|
+
* devuelven «bien» y una de las dos no está en el disco. Reproducido contra el backend real:
|
|
9
|
+
* cuatro `edit` concurrentes sobre un fichero, cuatro resultados sin error, **una** aplicada.
|
|
10
|
+
*
|
|
11
|
+
* **Y serializar SÍ basta, que era la duda razonable.** La objeción es que la segunda edición
|
|
12
|
+
* se resolvió contra un contenido que la primera acaba de cambiar, así que su `old_string`
|
|
13
|
+
* podría no valer ya. Cierto, y por eso esto va DEBAJO de quien edita y no encima: el backend
|
|
14
|
+
* vuelve a leer el fichero y vuelve a buscar el `old_string` cuando le toca su turno, así que
|
|
15
|
+
* el ancla se comprueba contra lo que hay. Medido con el backend de verdad:
|
|
16
|
+
*
|
|
17
|
+
* | | en paralelo | en serie |
|
|
18
|
+
* |---|---|---|
|
|
19
|
+
* | cuatro ediciones independientes | 1 aplicada, 0 errores | 4 aplicadas, 0 errores |
|
|
20
|
+
* | dos que se pisan | — | 1 aplicada, **1 error** |
|
|
21
|
+
*
|
|
22
|
+
* O sea que la edición que ya no encaja **falla en voz alta** en vez de perderse en silencio,
|
|
23
|
+
* y el modelo recibe su error y reintenta, que es el camino que este harness ya tiene.
|
|
24
|
+
*
|
|
25
|
+
* **Puro a propósito**: no sabe de ficheros ni de backends, solo de claves y de promesas. Así
|
|
26
|
+
* se prueba sin disco (`npm test` no toca la casa de nadie) y el mismo mecanismo sirve el día
|
|
27
|
+
* que haya otro recurso que no admita dos a la vez.
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* Crea un serializador con su propia cola.
|
|
31
|
+
*
|
|
32
|
+
* Tres decisiones que no son de forma:
|
|
33
|
+
*
|
|
34
|
+
* - **Un fallo NO envenena la cola.** La siguiente se encadena al resultado *saldado* de la
|
|
35
|
+
* anterior, no a su promesa cruda: si la primera rechaza, la segunda corre igual. Lo
|
|
36
|
+
* contrario convertiría un error de una escritura en el bloqueo de todas las siguientes
|
|
37
|
+
* sobre ese fichero, que es un fallo mucho peor que el que esto viene a arreglar.
|
|
38
|
+
* - **La entrada se RETIRA cuando se vacía**, comparando que la cola siga siendo la suya.
|
|
39
|
+
* Sin eso el mapa crece con una entrada por fichero tocado y no se vacía nunca, en un
|
|
40
|
+
* proceso que vive lo que dure la consola.
|
|
41
|
+
* - **Devuelve lo que devuelva la tarea, y relanza lo que lance.** Esto es un turno de espera,
|
|
42
|
+
* no un envoltorio que decide: si además cambiara el resultado, cada sitio que lo use
|
|
43
|
+
* habría que volver a medirlo.
|
|
44
|
+
*/
|
|
45
|
+
export function crearSerieDeEscrituras() {
|
|
46
|
+
const colas = new Map();
|
|
47
|
+
return (clave, tarea) => {
|
|
48
|
+
const anterior = colas.get(clave) ?? Promise.resolve();
|
|
49
|
+
// `.then(() => …, () => …)` y no `.finally`: hay que SALDAR el rechazo de la anterior para
|
|
50
|
+
// que no se propague a ésta. Con `.catch` encadenado el valor sería el del catch.
|
|
51
|
+
const mia = anterior.then(() => tarea(), () => tarea());
|
|
52
|
+
// Lo que se guarda como «la cola» es la versión SALDADA: si `mia` rechaza y nadie más la
|
|
53
|
+
// observa, un rechazo sin manejar tumbaría el proceso en Node.
|
|
54
|
+
const saldada = mia.then(() => undefined, () => undefined);
|
|
55
|
+
colas.set(clave, saldada);
|
|
56
|
+
void saldada.then(() => {
|
|
57
|
+
if (colas.get(clave) === saldada)
|
|
58
|
+
colas.delete(clave);
|
|
59
|
+
});
|
|
60
|
+
return mia;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=serieDeEscrituras.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serieDeEscrituras.js","sourceRoot":"","sources":["../../src/core/serieDeEscrituras.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAKH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,KAAK,GAAG,IAAI,GAAG,EAA4B,CAAC;IAElD,OAAO,CAAI,KAAa,EAAE,KAAuB,EAAc,EAAE;QAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACvD,2FAA2F;QAC3F,kFAAkF;QAClF,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CACvB,GAAG,EAAE,CAAC,KAAK,EAAE,EACb,GAAG,EAAE,CAAC,KAAK,EAAE,CACd,CAAC;QACF,yFAAyF;QACzF,+DAA+D;QAC/D,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CACtB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACF,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;YACrB,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,OAAO;gBAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qué se deja traer de la máquina al área de trabajo, y con qué nombre.
|
|
3
|
+
*
|
|
4
|
+
* La regla, pura. La copia vive en `agent/grafo/traerDeLaMaquina.ts`; el porqué del reparto,
|
|
5
|
+
* ahí también.
|
|
6
|
+
*/
|
|
7
|
+
import { basename, isAbsolute } from "node:path";
|
|
8
|
+
import { RUTA_ARTEFACTOS } from "./artefactos.js";
|
|
9
|
+
/**
|
|
10
|
+
* Cuánto se deja traer de una vez.
|
|
11
|
+
*
|
|
12
|
+
* El área de trabajo no es un almacén: lo que cae ahí se anuncia, se puede volver a leer y
|
|
13
|
+
* viaja con la sesión. Un tope es lo que impide que un `.mov` de 800 MB se copie tan callado
|
|
14
|
+
* como un `.png`. 64 MB deja pasar de sobra lo que esto resuelve —una maqueta, un zip de
|
|
15
|
+
* diseño, una captura— y corta lo que ya no es eso.
|
|
16
|
+
*/
|
|
17
|
+
export const TOPE_DE_TRAIDA = 64 * 1024 * 1024;
|
|
18
|
+
/**
|
|
19
|
+
* Lo que NO se trae, y son las dos del propio harness.
|
|
20
|
+
*
|
|
21
|
+
* No discute el «cualquier fichero mío» de quien lo pidió: lo que queda fuera no son ficheros
|
|
22
|
+
* suyos, son los de xonecode, por la misma razón por la que «la shell NO hereda las claves de
|
|
23
|
+
* API» (`core/shellDeAgente.ts`). `auth.json` guarda las claves en claro, y cualquier
|
|
24
|
+
* `.xonecode/` lleva la conversación entera y el contenido de cada escritura — copiarlo al
|
|
25
|
+
* área de trabajo lo metería además en el contexto del modelo y en el `.jsonl`.
|
|
26
|
+
*
|
|
27
|
+
* Se mira por SEGMENTO y no con un `includes`, para que un `notas-sobre-.xonecode.md` no caiga
|
|
28
|
+
* por llevar el nombre dentro.
|
|
29
|
+
*/
|
|
30
|
+
function esDelHarness(ruta) {
|
|
31
|
+
const segmentos = ruta.split("/");
|
|
32
|
+
return segmentos.includes(".xonecode") || segmentos[segmentos.length - 1] === "auth.json";
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Por qué no se puede traer eso, o `undefined` si sí.
|
|
36
|
+
*
|
|
37
|
+
* **Lista BLANCA de forma**: tiene que ser una ruta absoluta de verdad. Una relativa no se
|
|
38
|
+
* resuelve contra nada fiable —el `cwd` de este proceso no es el proyecto— y aceptar `..`
|
|
39
|
+
* sería dejar que el destino lo eligiera quien escribe la ruta.
|
|
40
|
+
*/
|
|
41
|
+
export function motivoDeTraidaInaceptable(ruta) {
|
|
42
|
+
if (!isAbsolute(ruta)) {
|
|
43
|
+
return `«${ruta}» no es una ruta absoluta. Escríbela entera, tal y como te la dieron.`;
|
|
44
|
+
}
|
|
45
|
+
if (ruta.split("/").includes("..")) {
|
|
46
|
+
return `«${ruta}» lleva «..». Escribe la ruta ya resuelta.`;
|
|
47
|
+
}
|
|
48
|
+
if (esDelHarness(ruta)) {
|
|
49
|
+
return (`«${ruta}» es del propio xonecode —sus credenciales o su memoria de sesión— y eso no se ` +
|
|
50
|
+
"trae al área de trabajo: acabaría en el contexto y en el registro de la conversación.");
|
|
51
|
+
}
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Con qué nombre queda dentro del área de trabajo.
|
|
56
|
+
*
|
|
57
|
+
* El último segmento y nada más. **Es lo que impide que el destino salga de la carpeta**: sin
|
|
58
|
+
* esto, un `/a/b/../../fuera.txt` escribiría fuera. Y de paso es lo que una persona reconoce
|
|
59
|
+
* en la lista de artefactos, que para eso está.
|
|
60
|
+
*/
|
|
61
|
+
export function nombreParaTraer(ruta) {
|
|
62
|
+
return basename(ruta);
|
|
63
|
+
}
|
|
64
|
+
const PREFIJOS_DE_MAQUINA = ["/Users/", "/home/", "/tmp/", "/private/", "/Volumes/", "/opt/", "/etc/", "/var/"];
|
|
65
|
+
/**
|
|
66
|
+
* ¿Es esto una ruta de la MÁQUINA que alguien ha escrito como si fuera del proyecto?
|
|
67
|
+
*
|
|
68
|
+
* Solo se usa para poder CONTESTAR bien, nunca para abrir nada: quien abre es el montaje.
|
|
69
|
+
*/
|
|
70
|
+
export function esRutaDeMaquina(ruta) {
|
|
71
|
+
return PREFIJOS_DE_MAQUINA.some((p) => ruta.startsWith(p));
|
|
72
|
+
}
|
|
73
|
+
/** La misma ruta, ya en la forma que el agente puede abrir. */
|
|
74
|
+
export function porQueNoSuelta(ruta) {
|
|
75
|
+
return (`«${ruta}» es una ruta de la MÁQUINA, no del proyecto: tal cual se busca dentro del ` +
|
|
76
|
+
"proyecto y no está ahí. Para usarla, TRÁETELA primero con la tool `traer_de_la_maquina` " +
|
|
77
|
+
`(ruta: "${ruta}"), que la copia a ${RUTA_ARTEFACTOS} y te dice con qué nombre queda. ` +
|
|
78
|
+
"Luego ábrela por esa ruta. No hace falta delegar en nadie para esto.");
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=traerDeLaMaquina.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traerDeLaMaquina.js","sourceRoot":"","sources":["../../src/core/traerDeLaMaquina.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAE/C;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,WAAW,CAAC;AAC5F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACpD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,IAAI,uEAAuE,CAAC;IACzF,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,IAAI,4CAA4C,CAAC;IAC9D,CAAC;IACD,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,CACL,IAAI,IAAI,iFAAiF;YACzF,uFAAuF,CACxF,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAEhH;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,+DAA+D;AAE/D,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,CACL,IAAI,IAAI,6EAA6E;QACrF,0FAA0F;QAC1F,WAAW,IAAI,sBAAsB,eAAe,mCAAmC;QACvF,sEAAsE,CACvE,CAAC;AACJ,CAAC"}
|