xonecode 0.12.0 → 0.13.0

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 (67) hide show
  1. package/apps/web/dist/assets/index-D8kdTP0Z.css +1 -0
  2. package/apps/web/dist/assets/index-a1EvXQj9.js +485 -0
  3. package/apps/web/dist/assets/{php-DOl4aWua.js → php-qXN69lAY.js} +1 -1
  4. package/apps/web/dist/assets/{ruby-DFYuLGa1.js → ruby-Cxx7RgZA.js} +1 -1
  5. package/apps/web/dist/index.html +2 -2
  6. package/dist/agent/config/settingsEnDisco.js +16 -0
  7. package/dist/agent/config/settingsEnDisco.js.map +1 -1
  8. package/dist/agent/dispositivos/procesosEnMaquina.js +24 -2
  9. package/dist/agent/dispositivos/procesosEnMaquina.js.map +1 -1
  10. package/dist/agent/grafo/ejecucionCancelable.js +117 -0
  11. package/dist/agent/grafo/ejecucionCancelable.js.map +1 -0
  12. package/dist/agent/grafo/incorporarAdjunto.js +262 -0
  13. package/dist/agent/grafo/incorporarAdjunto.js.map +1 -0
  14. package/dist/agent/grafo/perfiles.js +12 -5
  15. package/dist/agent/grafo/perfiles.js.map +1 -1
  16. package/dist/agent/grafo/proyecto.js +53 -18
  17. package/dist/agent/grafo/proyecto.js.map +1 -1
  18. package/dist/agent/grafo/xoneAgent.js +25 -0
  19. package/dist/agent/grafo/xoneAgent.js.map +1 -1
  20. package/dist/agent/motores/trueforge/capacidades.js +69 -4
  21. package/dist/agent/motores/trueforge/capacidades.js.map +1 -1
  22. package/dist/agent/motores/trueforge/detencion.js +138 -0
  23. package/dist/agent/motores/trueforge/detencion.js.map +1 -0
  24. package/dist/agent/motores/trueforge/modeloLangchain.js +36 -4
  25. package/dist/agent/motores/trueforge/modeloLangchain.js.map +1 -1
  26. package/dist/agent/motores/trueforge/notas.js +49 -0
  27. package/dist/agent/motores/trueforge/notas.js.map +1 -0
  28. package/dist/agent/motores/trueforge/sesionTrueforge.js +100 -3
  29. package/dist/agent/motores/trueforge/sesionTrueforge.js.map +1 -1
  30. package/dist/agent/sesiones/adjuntosDeSesion.js +235 -0
  31. package/dist/agent/sesiones/adjuntosDeSesion.js.map +1 -0
  32. package/dist/agent/subagentes/agentesEnDisco.js +4 -0
  33. package/dist/agent/subagentes/agentesEnDisco.js.map +1 -1
  34. package/dist/agent/trazaDeErroresEnDisco.js +12 -4
  35. package/dist/agent/trazaDeErroresEnDisco.js.map +1 -1
  36. package/dist/agent/turno/depuracion.js +27 -0
  37. package/dist/agent/turno/depuracion.js.map +1 -0
  38. package/dist/agent/turno/diagnosticoDeTools.js +7 -1
  39. package/dist/agent/turno/diagnosticoDeTools.js.map +1 -1
  40. package/dist/agent/turno/informeDeTraza.js +2 -1
  41. package/dist/agent/turno/informeDeTraza.js.map +1 -1
  42. package/dist/agent/turno/interrupts.js +13 -0
  43. package/dist/agent/turno/interrupts.js.map +1 -1
  44. package/dist/agent/turno/resumenDeTool.js +4 -0
  45. package/dist/agent/turno/resumenDeTool.js.map +1 -1
  46. package/dist/agent/turno/turnoReal.js +9 -2
  47. package/dist/agent/turno/turnoReal.js.map +1 -1
  48. package/dist/cli/main.js +52 -10
  49. package/dist/cli/main.js.map +1 -1
  50. package/dist/core/actos.js.map +1 -1
  51. package/dist/core/adjuntos.js +72 -14
  52. package/dist/core/adjuntos.js.map +1 -1
  53. package/dist/core/entrega.js.map +1 -1
  54. package/dist/core/settings.js +12 -0
  55. package/dist/core/settings.js.map +1 -1
  56. package/dist/web/servidor/arranque.js +89 -6
  57. package/dist/web/servidor/arranque.js.map +1 -1
  58. package/dist/web/servidor/consolaWeb.js +29 -3
  59. package/dist/web/servidor/consolaWeb.js.map +1 -1
  60. package/dist/web/servidor/transporte.js.map +1 -1
  61. package/dist/web/servidor/vestibulo.js +77 -4
  62. package/dist/web/servidor/vestibulo.js.map +1 -1
  63. package/dist/web/servidor/visorOpenui.js +25 -3
  64. package/dist/web/servidor/visorOpenui.js.map +1 -1
  65. package/package.json +1 -1
  66. package/apps/web/dist/assets/index-BCO9A9PF.js +0 -485
  67. package/apps/web/dist/assets/index-CBbdNsze.css +0 -1
@@ -17,6 +17,8 @@
17
17
  */
18
18
  import { AIMessage, HumanMessage, SystemMessage, ToolMessage } from "@langchain/core/messages";
19
19
  import { razonamientoDe, razonamientoVisibleDe, textoDe } from "../../turno/puente.js";
20
+ /** Lo que llega al padre si, tras un corte, el resumen no dejó texto. */
21
+ const RELLENO_DEL_CORTE = "[Detenido a petición de la persona a mitad de una llamada, antes de poder resumir lo hecho.]";
20
22
  /** El texto de un `content` de OpenAI, sea cadena o lista de partes. */
21
23
  function textoDeContenido(contenido) {
22
24
  if (typeof contenido === "string")
@@ -75,15 +77,41 @@ export function modeloParaTrueforge(opciones) {
75
77
  const id = `xc-${++secuencia}`;
76
78
  const creado = Math.floor(Date.now() / 1000);
77
79
  const nombre = opciones.nombre ?? "xonecode";
80
+ let relleno = opciones.soloTexto?.();
81
+ const corte = relleno === undefined ? opciones.corte?.() : undefined;
82
+ const senalDelStream = corte === undefined ? senal : senal === undefined ? corte.senal : AbortSignal.any([senal, corte.senal]);
78
83
  let acumulado;
79
- for await (const trozo of await modelo.stream(mensajes, senal === undefined ? {} : { signal: senal })) {
84
+ /** Los trozos de UNA pasada: la normal y, si se corta, la del resumen. */
85
+ const pasada = async function* (lista, s) {
86
+ for await (const trozo of await modelo.stream(lista, s === undefined ? {} : { signal: s }))
87
+ yield trozo;
88
+ };
89
+ let trozos = pasada(mensajes, senalDelStream);
90
+ for (;;) {
91
+ let r;
92
+ try {
93
+ r = await trozos.next();
94
+ }
95
+ catch (e) {
96
+ // Un aborto que es SOLO del corte —no del turno— no es un fallo: se pide el resumen.
97
+ if (corte === undefined || !corte.senal.aborted || senal?.aborted === true || relleno !== undefined)
98
+ throw e;
99
+ relleno = RELLENO_DEL_CORTE;
100
+ const dicho = acumulado === undefined ? "" : textoDe(acumulado);
101
+ acumulado = undefined;
102
+ trozos = pasada([...mensajes, ...(dicho.trim() === "" ? [] : [new AIMessage(dicho)]), new HumanMessage(corte.orden())], senal);
103
+ continue;
104
+ }
105
+ if (r.done === true)
106
+ break;
107
+ const trozo = r.value;
80
108
  acumulado = acumulado === undefined ? trozo : acumulado.concat(trozo);
81
109
  const texto = textoDe(trozo);
82
110
  // En los TROZOS va el razonamiento que se ENSEÑA, DeepSeek incluido: los trozos solo
83
111
  // alimentan los eventos del chat. El mensaje que se guarda en el hilo es el `output` de
84
112
  // abajo, que sigue con `razonamientoDe` — lo de DeepSeek no entra en la memoria.
85
113
  const pensado = razonamientoVisibleDe(trozo);
86
- const llamadas = (trozo.tool_call_chunks ?? []).map((t, i) => ({
114
+ const llamadas = (relleno === undefined ? (trozo.tool_call_chunks ?? []) : []).map((t, i) => ({
87
115
  index: t.index ?? i,
88
116
  ...(t.id === undefined ? {} : { id: t.id, type: "function" }),
89
117
  function: { ...(t.name === undefined ? {} : { name: t.name }), arguments: t.args ?? "" },
@@ -109,13 +137,17 @@ export function modeloParaTrueforge(opciones) {
109
137
  ],
110
138
  };
111
139
  }
112
- const llamadas = acumulado?.tool_calls ?? [];
140
+ const pedidas = acumulado?.tool_calls ?? [];
141
+ const llamadas = relleno === undefined ? pedidas : [];
142
+ if (relleno !== undefined && pedidas.length > 0)
143
+ opciones.alTirarLlamadas?.(pedidas.length);
113
144
  const uso = acumulado?.usage_metadata;
114
145
  const razonamiento = acumulado === undefined ? "" : razonamientoDe(acumulado);
146
+ const contenido = acumulado === undefined ? "" : textoDe(acumulado);
115
147
  return {
116
148
  output: {
117
149
  role: "assistant",
118
- content: acumulado === undefined ? "" : textoDe(acumulado),
150
+ content: relleno !== undefined && contenido.trim() === "" ? relleno : contenido,
119
151
  ...(llamadas.length === 0
120
152
  ? {}
121
153
  : {
@@ -1 +1 @@
1
- {"version":3,"file":"modeloLangchain.js","sourceRoot":"","sources":["../../../../src/agent/motores/trueforge/modeloLangchain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modeloLangchain.js","sourceRoot":"","sources":["../../../../src/agent/motores/trueforge/modeloLangchain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ export function crearNota(texto) {
2
+ return { texto, vistaPorElRaiz: false };
3
+ }
4
+ /** Para el raíz: lo que la persona le dijo. */
5
+ export function textoDeNota(texto) {
6
+ return `[la persona escribió mientras trabajabas: «${texto}»]`;
7
+ }
8
+ /** Para un hijo: su interlocutor normal es quien le delegó, así que se dice que viene de fuera, y
9
+ * se le da la salida si no es de su encargo. */
10
+ export function textoDeNotaParaHijo(texto) {
11
+ return (`[la persona escribió mientras trabajabas: «${texto}». Si encaja en tu encargo, incorpóralo. ` +
12
+ "Si no, no lo hagas: termina tu respuesta con «PENDIENTE DE LA PERSONA: …» para que quien te delegó lo replanifique.]");
13
+ }
14
+ /** Para el raíz, cuando la nota ya se la quedó un hijo. */
15
+ export function textoDeNotaYaEntregada(texto, quien) {
16
+ return (`[la persona escribió mientras trabajabas: «${texto}». Se le pasó a ${quien} mientras trabajaba, y su respuesta está arriba: ` +
17
+ "NO la vuelvas a encargar. Actúa solo sobre lo que diga como PENDIENTE DE LA PERSONA o no cubierto.]");
18
+ }
19
+ /** Los textos que se le meten a ESE hilo antes de su llamada, marcando lo entregado. */
20
+ export function entregarNotas(notas, threadId, ctx) {
21
+ const textos = [];
22
+ for (const n of notas) {
23
+ if (threadId === ctx.hiloRaiz) {
24
+ if (n.vistaPorElRaiz)
25
+ continue;
26
+ n.vistaPorElRaiz = true;
27
+ if (n.duenio === undefined) {
28
+ n.duenio = threadId;
29
+ textos.push(textoDeNota(n.texto));
30
+ }
31
+ else {
32
+ textos.push(textoDeNotaYaEntregada(n.texto, ctx.nombreDe(n.duenio)));
33
+ }
34
+ continue;
35
+ }
36
+ if (n.duenio !== undefined || n.vistaPorElRaiz || ctx.hijosVivos !== 1)
37
+ continue;
38
+ n.duenio = threadId;
39
+ textos.push(textoDeNotaParaHijo(n.texto));
40
+ }
41
+ return textos;
42
+ }
43
+ /** Lo que NADIE se quedó, para mandarlo como el turno siguiente. `undefined` si no queda ninguna —
44
+ * así el llamador no confunde "sin sobrantes" con una cadena vacía. */
45
+ export function sobrantes(notas) {
46
+ const sinEntregar = notas.filter((n) => n.duenio === undefined).map((n) => n.texto);
47
+ return sinEntregar.length === 0 ? undefined : sinEntregar.join("\n\n");
48
+ }
49
+ //# sourceMappingURL=notas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notas.js","sourceRoot":"","sources":["../../../../src/agent/motores/trueforge/notas.ts"],"names":[],"mappings":"AA4BA,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;AAC1C,CAAC;AAWD,+CAA+C;AAC/C,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,8CAA8C,KAAK,IAAI,CAAC;AACjE,CAAC;AAED;iDACiD;AACjD,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,CACL,8CAA8C,KAAK,2CAA2C;QAC9F,sHAAsH,CACvH,CAAC;AACJ,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,sBAAsB,CAAC,KAAa,EAAE,KAAa;IACjE,OAAO,CACL,8CAA8C,KAAK,mBAAmB,KAAK,mDAAmD;QAC9H,qGAAqG,CACtG,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,aAAa,CAAC,KAAsB,EAAE,QAAgB,EAAE,GAAsB;IAC5F,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,QAAQ,KAAK,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,CAAC,cAAc;gBAAE,SAAS;YAC/B,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC3B,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvE,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,cAAc,IAAI,GAAG,CAAC,UAAU,KAAK,CAAC;YAAE,SAAS;QACjF,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;wEACwE;AACxE,MAAM,UAAU,SAAS,CAAC,KAAsB;IAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACpF,OAAO,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACzE,CAAC"}
@@ -51,16 +51,22 @@ import { modeloParaTrueforge } from "./modeloLangchain.js";
51
51
  import { TOOLS_DE_LECTURA } from "./toolsDeFichero.js";
52
52
  import { topeAgotadoDe, traducirEvento } from "./eventosTrueforge.js";
53
53
  import { anuncioDeSkills } from "./skillsTrueforge.js";
54
- import { capabilitiesDe, capacidadDeFecha, capacidadDeFicheros, capacidadDeInstrucciones, capacidadDePropias, capacidadDeRecortes, capacidadesDelEspecialista, clasesDeTools, toolsDe, } from "./capacidades.js";
54
+ import { capabilitiesDe, capacidadDeFecha, capacidadDeFicheros, capacidadDeInstrucciones, capacidadDeNotas, capacidadDePropias, capacidadDeRecortes, capacidadesDelEspecialista, clasesDeTools, toolsDe, } from "./capacidades.js";
55
55
  import { crearDiagnosticoDeTools } from "../../turno/diagnosticoDeTools.js";
56
+ import { encenderTrazaDeErrores } from "../../trazaDeErroresEnDisco.js";
57
+ import { anotarPaso } from "../../../core/trazaDeErrores.js";
58
+ import { entornoConDepuracion } from "../../turno/depuracion.js";
56
59
  import { detalleDe, parametrosDe } from "../../turno/resumenDeTool.js";
57
60
  import { apartarMemoria, cargarMemoria, fotoSaneada, guardarMemoria, textoDeMemoriaDescartada } from "./memoriaTrueforge.js";
61
+ import { crearNota, sobrantes } from "./notas.js";
62
+ import { crearControlDeDetencion, RESUMEN_DE_RELLENO } from "./detencion.js";
58
63
  import { crearNavegacionXone } from "../../grafo/navegacionXone.js";
59
64
  import { hechosDelProyectoDe } from "../../navegacion/hechosEnDisco.js";
60
65
  import { conHechosDelProyecto } from "../../../core/hechosDelProyecto.js";
61
66
  import { crearBusquedaRegex } from "../../grafo/busquedaRegex.js";
62
67
  import { crearCopiarArtefacto } from "../../grafo/copiarArtefacto.js";
63
68
  import { crearUnirSecciones } from "../../grafo/unirSecciones.js";
69
+ import { crearIncorporarAdjunto, recibeIncorporarAdjunto } from "../../grafo/incorporarAdjunto.js";
64
70
  import { crearCriticaVisual } from "../../grafo/criticaVisual.js";
65
71
  import { crearTraerDeLaMaquina } from "../../grafo/traerDeLaMaquina.js";
66
72
  import { invocarVisualConModelos } from "../../dispositivos/juezVisual.js";
@@ -151,6 +157,13 @@ function preguntaDeLaFoto(foto) {
151
157
  };
152
158
  }
153
159
  const claveDe = (hilo, id) => `${hilo}:${id}`;
160
+ /**
161
+ * `agregarNota` no vive todavía en `SesionReal` (IXCODE-4, Task 6 se la añade ahí como opcional,
162
+ * compartida con deepagents): se ensancha el tipo de retorno AQUÍ, en vez de esperar a esa task,
163
+ * porque una sesión sin ella tipado como `SesionReal` a secas dejaría `s.agregarNota(...)` en
164
+ * rojo bajo `tsc --noEmit` desde este mismo commit. Sigue siendo un `SesionReal` válido en
165
+ * cualquier sitio que lo espere (`turnoReal.ts#abrirSesionReal`), por ser una intersección.
166
+ */
154
167
  export async function abrirSesionTrueforge(opciones) {
155
168
  const { raiz } = opciones;
156
169
  let modelos = opciones.modelos;
@@ -160,7 +173,14 @@ export async function abrirSesionTrueforge(opciones) {
160
173
  * formato, así que `xonecode traza` compara los dos motores. La omisión es la real —entrar por
161
174
  * parámetro solo sirve para doblarla—, que es lo que evita dejarla escrita y sin montar.
162
175
  */
163
- const diagnostico = opciones.diagnostico ?? crearDiagnosticoDeTools(raiz);
176
+ const entornoDeDiagnostico = entornoConDepuracion(opciones.depurar === true);
177
+ const diagnostico = opciones.diagnostico ?? crearDiagnosticoDeTools(raiz, entornoDeDiagnostico);
178
+ /**
179
+ * La traza de EXCEPCIONES e HITOS, la MISMA de deepagents (`turnoReal.ts`) y que aquí
180
+ * faltaba por completo: TrueForge nunca la encendía, ni siquiera con la variable de entorno
181
+ * puesta a mano.
182
+ */
183
+ encenderTrazaDeErrores(raiz, entornoDeDiagnostico);
164
184
  const tracker = createTokenTracker();
165
185
  const oyentes = new Set();
166
186
  let aborto;
@@ -191,12 +211,30 @@ export async function abrirSesionTrueforge(opciones) {
191
211
  if (a.mime !== undefined && a.mime.startsWith("image/"))
192
212
  capturasDelTurno.push(a);
193
213
  };
214
+ /** Lo que la persona escribió mientras el agente trabajaba, IXCODE-4: se entrega por
215
+ * `capacidadDeNotas`, la MISMA instancia en la raíz y en cada hijo. */
216
+ const notas = [];
217
+ /** DETENER y replanificar (`detencion.ts`): viaja por el mismo procesador que las notas. */
218
+ const detencion = crearControlDeDetencion(HILO_RAIZ);
219
+ /** Tool calls tiradas por DETENER en la sesión: si se queda en cero, el filtro es solo red. */
220
+ let llamadasTiradasPorDetener = 0;
221
+ const capacidadDeNotasDeLaSesion = capacidadDeNotas(notas, {
222
+ detencion,
223
+ nombreDe: (h) => quienEs.get(h) ?? h,
224
+ hiloRaiz: HILO_RAIZ,
225
+ });
226
+ /** Lo que la persona escribió en el turno y nadie leyó: notas y la orden de DETENER. */
227
+ const sinLeerDelTurno = () => {
228
+ const sinLeer = [sobrantes(notas), detencion.sobrante()].filter((t) => t !== undefined);
229
+ return sinLeer.length === 0 ? undefined : sinLeer.join("\n\n");
230
+ };
194
231
  const montarBackend = (ejecucion) => backendDeAgente({
195
232
  raiz,
196
233
  ficheros: ficherosDelProyecto(raiz),
197
234
  ...(opciones.artefactos === undefined
198
235
  ? {}
199
236
  : { artefactos: { carpeta: opciones.artefactos, alEscribir: anotarArtefacto } }),
237
+ ...(opciones.adjuntos === undefined ? {} : { adjuntos: opciones.adjuntos }),
200
238
  ...(ejecucion === undefined ? {} : { ejecucion }),
201
239
  });
202
240
  const backend = montarBackend();
@@ -283,6 +321,12 @@ export async function abrirSesionTrueforge(opciones) {
283
321
  : []),
284
322
  // El mismo reparto que deepagents (`xoneAgent.ts`): a quien declara `escribeEn`.
285
323
  ...((agente.escribeEn ?? []).length > 0 ? [crearUnirSecciones({ raiz, perfil: agente })] : []),
324
+ // Meter un adjunto del chat en el proyecto, con el reparto de deepagents: a quien escribe el
325
+ // proyecto entero y solo con la carpeta montada. Pide aprobación: `capacidadesDelEspecialista`
326
+ // la pone en `requireApprovalForTools`, y `rondasDe` la pregunta con su tarjeta (`cambioDe`).
327
+ ...(opciones.adjuntos !== undefined && recibeIncorporarAdjunto(agente)
328
+ ? [crearIncorporarAdjunto({ raiz, carpetaDeAdjuntos: opciones.adjuntos, perfil: agente })]
329
+ : []),
286
330
  ];
287
331
  /**
288
332
  * **Un cliente de modelo por papel, modelo y esfuerzo, que dura la SESIÓN** —hasta `/modelo`—, y
@@ -354,6 +398,7 @@ export async function abrirSesionTrueforge(opciones) {
354
398
  */
355
399
  const crearHijo = async (params) => {
356
400
  const agente = especialistas().find((a) => a.nombre === params.request.name);
401
+ detencion.nacio(params.threadId);
357
402
  quienEs.set(params.threadId, agente?.nombre ?? params.request.name);
358
403
  if (agente !== undefined)
359
404
  especialistaDeHilo.set(params.threadId, agente.nombre);
@@ -364,7 +409,14 @@ export async function abrirSesionTrueforge(opciones) {
364
409
  const piezas = capacidadesDelEspecialista(agente, params.request.name, {
365
410
  backend: backend,
366
411
  propias: propiasDe,
367
- conShell: () => montarBackend({ entorno: entornoDeLaShellDelProyecto(raiz, opciones.artefactos) }),
412
+ notas: capacidadDeNotasDeLaSesion,
413
+ conShell: () => montarBackend({
414
+ entorno: entornoDeLaShellDelProyecto(raiz, opciones.artefactos),
415
+ // El MISMO patrón que ya usa `modeloParaTrueforge` un poco más arriba en este
416
+ // fichero: un getter que se reevalúa en cada llamada, así siempre lee el
417
+ // `AbortController` de la RONDA en curso y no uno capturado al construir.
418
+ senal: () => aborto?.signal,
419
+ }),
368
420
  });
369
421
  const nombres = toolsDe(piezas);
370
422
  const nota = notaDeTools(nombres, agente === undefined ? LIMITE_DEL_GENERICO : LIMITES_DE[clase]);
@@ -381,6 +433,13 @@ export async function abrirSesionTrueforge(opciones) {
381
433
  ? clienteDe(`papel:${papel}:${agente?.esfuerzo ?? ""}`, () => modelos.paraPapel(papel, agente?.esfuerzo))
382
434
  : clienteDe(`modelo:${agente.modelo}:${agente.esfuerzo ?? ""}`, () => modelos.paraModelo(agente.modelo, agente.esfuerzo)),
383
435
  senal: () => aborto?.signal,
436
+ soloTexto: () => (detencion.soloTexto(params.threadId) ? RESUMEN_DE_RELLENO : undefined),
437
+ corte: () => detencion.corte(params.threadId),
438
+ alTirarLlamadas: (n) => {
439
+ llamadasTiradasPorDetener += n;
440
+ // A la traza de hitos (con «Depurar»): es la medida de si el filtro hace falta o es red.
441
+ anotarPaso("trueforge.detener", `${quienEs.get(params.threadId) ?? params.threadId}: ${n} tool call(s) tiradas`)();
442
+ },
384
443
  }),
385
444
  messages: [{ role: "user", content: params.request.input }],
386
445
  // Los topes MEDIDOS de deepagents: el conductor más, porque cada paso suyo es un comando.
@@ -440,6 +499,7 @@ export async function abrirSesionTrueforge(opciones) {
440
499
  capacidadDePropias(propiasDelRaiz, backend),
441
500
  capacidadDeRecortes(backend),
442
501
  capacidadDeFecha(),
502
+ capacidadDeNotasDeLaSesion,
443
503
  ]),
444
504
  /**
445
505
  * **La conversación se RESUME al mismo umbral que deepagents** (`UMBRAL_RESUMEN_TOKENS`):
@@ -604,6 +664,7 @@ export async function abrirSesionTrueforge(opciones) {
604
664
  throw new Error("la sesión está cerrada");
605
665
  const t0 = Date.now();
606
666
  cancelado = false;
667
+ detencion.reiniciar();
607
668
  const instantanea = await tomarInstantanea(raiz, opciones.entorno.git);
608
669
  const tope = opciones.topeDeRondas ?? MAX_APPROVAL_ROUNDS;
609
670
  const aplicadasSinPreguntar = [];
@@ -924,6 +985,13 @@ export async function abrirSesionTrueforge(opciones) {
924
985
  // deepagents — un aviso que salta cuando no ha pasado nada enseña a ignorarlo.
925
986
  avisos: (b) => [
926
987
  ...(memoriaDescartada === undefined ? [] : [memoriaDescartada]),
988
+ ...(sinLeerDelTurno() === undefined
989
+ ? []
990
+ : cancelado
991
+ ? // PARAR es «para»: lo escrito que nadie leyó no arranca otro turno —medido, lo
992
+ // hacía—, pero tampoco se pierde en silencio: se dice, con su texto, para copiarlo.
993
+ [`⏹ turno parado: no se manda lo que escribiste mientras trabajaba — «${sinLeerDelTurno()}»`]
994
+ : [`⚠ una nota no se pudo entregar a tiempo: se manda como el turno siguiente`]),
927
995
  ...(b.corrio("verify") || !escribioProyecto
928
996
  ? []
929
997
  : [`⚠ el verificador no ha corrido en este turno${motivoSinVerificar === undefined ? "" : ` (${motivoSinVerificar})`}`]),
@@ -1003,6 +1071,13 @@ export async function abrirSesionTrueforge(opciones) {
1003
1071
  }
1004
1072
  }
1005
1073
  const cambios = await instantanea.cambios();
1074
+ // Calculado y VACIADO aquí, DESPUÉS del único `await` que queda entre el `finally` y el
1075
+ // `return`: hacerlo antes (como sugería el borrador) deja una ventana en la que una nota
1076
+ // empujada durante ese `await` cae en una cola ya vacía y sobrevive muda al turno
1077
+ // siguiente — justo lo que este campo existe para impedir.
1078
+ const notasSobrantes = cancelado ? undefined : sinLeerDelTurno();
1079
+ detencion.reiniciar();
1080
+ notas.length = 0; // Se sirvieron o se reportan aquí: no siguen vivas para el próximo turno.
1006
1081
  return {
1007
1082
  bitacora,
1008
1083
  cambios,
@@ -1012,6 +1087,7 @@ export async function abrirSesionTrueforge(opciones) {
1012
1087
  ...(hallazgosDelTurno.length === 0 ? {} : { hallazgos: hallazgosDelTurno }),
1013
1088
  ...(preexistentesDelTurno === undefined ? {} : { preexistentes: preexistentesDelTurno }),
1014
1089
  ...(motivoSinVerificar === undefined ? {} : { motivoSinVerificar }),
1090
+ ...(notasSobrantes === undefined ? {} : { notasSobrantes }),
1015
1091
  };
1016
1092
  },
1017
1093
  async cambiarModelos(nuevos) {
@@ -1042,6 +1118,27 @@ export async function abrirSesionTrueforge(opciones) {
1042
1118
  cancelado = true;
1043
1119
  aborto?.abort(new Error("turno cancelado por el usuario"));
1044
1120
  },
1121
+ /**
1122
+ * Empuja la nota a la cola de la sesión, sin más: no comprueba que haya un turno en marcha
1123
+ * —ese contrato lo sostiene quien llama (`web/servidor/vestibulo.ts`, Task 6)—, así que
1124
+ * llamarlo sin turno en curso no lanza, y la nota queda ahí para la próxima llamada al
1125
+ * modelo que la recoja `capacidadDeNotasDeLaSesion`.
1126
+ */
1127
+ agregarNota(texto) {
1128
+ notas.push(crearNota(texto));
1129
+ },
1130
+ /**
1131
+ * DETENER y replanificar (`detencion.ts`): los especialistas en marcha cierran con su resumen
1132
+ * en su siguiente llamada, y el raíz replanifica con ellos y con `texto`. Solo vale DENTRO de
1133
+ * un turno —el siguiente empieza de cero—, y por eso el servidor solo la manda con uno en vuelo;
1134
+ * si el turno cierra sin que nadie la lea, su texto sale como sobrante.
1135
+ */
1136
+ detener(texto) {
1137
+ detencion.detener(texto);
1138
+ },
1139
+ get llamadasTiradasPorDetener() {
1140
+ return llamadasTiradasPorDetener;
1141
+ },
1045
1142
  consumo() {
1046
1143
  return {
1047
1144
  modelo: { entrada: tracker.input, salida: tracker.output, cache: tracker.cache },
@@ -1 +1 @@
1
- {"version":3,"file":"sesionTrueforge.js","sourceRoot":"","sources":["../../../../src/agent/motores/trueforge/sesionTrueforge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sesionTrueforge.js","sourceRoot":"","sources":["../../../../src/agent/motores/trueforge/sesionTrueforge.ts"],"names":[],"mappings":"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"}