xonecode 0.39.4 → 0.39.10

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 (32) hide show
  1. package/apps/web/dist/assets/{EditorDeFichero-4HFwLke_.js → EditorDeFichero-r9TLKir8.js} +1 -1
  2. package/apps/web/dist/assets/{index-C57A_ylS.css → index-B_efwIyb.css} +1 -1
  3. package/apps/web/dist/assets/{index-CYZEmLsX.js → index-dTeeqNUw.js} +79 -79
  4. package/apps/web/dist/assets/{php-CdQiFsq1.js → php-CpfBLfZT.js} +1 -1
  5. package/apps/web/dist/assets/{ruby-3JrCXo0h.js → ruby-tuiuxnLd.js} +1 -1
  6. package/apps/web/dist/index.html +2 -2
  7. package/dist/agent/motores/trueforge/sesionTrueforge.js +39 -4
  8. package/dist/agent/motores/trueforge/sesionTrueforge.js.map +1 -1
  9. package/dist/agent/sesiones/sesionGit.d.ts +35 -2
  10. package/dist/agent/sesiones/sesionGit.js +88 -4
  11. package/dist/agent/sesiones/sesionGit.js.map +1 -1
  12. package/dist/agent/subagentes/agotamiento.d.ts +33 -0
  13. package/dist/agent/subagentes/agotamiento.js +77 -0
  14. package/dist/agent/subagentes/agotamiento.js.map +1 -0
  15. package/dist/core/agotamientoExterno.d.ts +19 -0
  16. package/dist/core/agotamientoExterno.js +83 -0
  17. package/dist/core/agotamientoExterno.js.map +1 -0
  18. package/dist/core/motoresLocales.d.ts +6 -0
  19. package/dist/core/motoresLocales.js.map +1 -1
  20. package/dist/core/tareas.d.ts +38 -1
  21. package/dist/core/tareas.js +77 -1
  22. package/dist/core/tareas.js.map +1 -1
  23. package/dist/web/servidor/arranque.d.ts +1 -1
  24. package/dist/web/servidor/arranque.js +91 -5
  25. package/dist/web/servidor/arranque.js.map +1 -1
  26. package/dist/web/servidor/corredorDeTareas.d.ts +3 -3
  27. package/dist/web/servidor/corredorDeTareas.js +4 -3
  28. package/dist/web/servidor/corredorDeTareas.js.map +1 -1
  29. package/dist/web/servidor/transporte.d.ts +20 -2
  30. package/dist/web/servidor/transporte.js +3 -0
  31. package/dist/web/servidor/transporte.js.map +1 -1
  32. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tareas.js","sourceRoot":"","sources":["../../src/core/tareas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tareas.js","sourceRoot":"","sources":["../../src/core/tareas.ts"],"names":[],"mappings":"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"}
@@ -1222,7 +1222,7 @@ export declare function construirCorredorDeTareasCableado(opciones: {
1222
1222
  * exista.
1223
1223
  */
1224
1224
  juez: JuezDeTareaPort;
1225
- revisable: (raiz: string, sesion: string) => Promise<RevisionDeSesion>;
1225
+ revisable: (raiz: string, sesion: string, desde?: string) => Promise<RevisionDeSesion>;
1226
1226
  /**
1227
1227
  * El gestor de tareas de un conector (la MISMA fábrica memoizada del panel, `ajusteDeGestorCableado`). Con él, una
1228
1228
  * tarea con ticket se REFLEJA en su gestor al cambiar de estado (`agent/tareas/reflejoEnElGestor.ts`). Ausente = no
@@ -64,6 +64,7 @@ import { textoDeRecarga } from "../../core/recargaEnCaliente.js";
64
64
  import { nombreDeApp } from "../../core/descriptoresDeApp.js";
65
65
  import { modelosDeMotor } from "../../agent/config/modelosDeMotor.js";
66
66
  import { crearServicioDeMotoresLocales } from "../../agent/motores/motoresLocales.js";
67
+ import { agotadoHastaAhora, alCambiarAgotamiento, restablecer } from "../../agent/subagentes/agotamiento.js";
67
68
  import { medirDiagnosticoDeNode } from "../../agent/config/diagnosticoDeNodeEnMaquina.js";
68
69
  import { CONECTOR_STITCH, marcarPantallaElegida, traerPantalla } from "../../agent/motores/trueforge/traerDeStitch.js";
69
70
  import { guardarDisenoDeProyecto } from "../../agent/config/configEnDisco.js";
@@ -107,7 +108,7 @@ import { SIN_CONSUMO } from "../../agent/subagentes/consumoExterno.js";
107
108
  import { AumentadorGuionizado } from "../../core/ports.js";
108
109
  import { arrancarServidor } from "./servidor.js";
109
110
  import { consolaParaTarea, crearCorredorDeTareas, revisionConGit, } from "./corredorDeTareas.js";
110
- import { CONCURRENCIA_POR_OMISION, conEstado, darPorBuenaAMano, puedeArrancarYa, puedeEditarEncargo, TEXTO_DE_CONTINUAR, tituloDeTarea, } from "../../core/tareas.js";
111
+ import { CONCURRENCIA_POR_OMISION, conEstado, darPorBuenaAMano, puedeArrancarYa, puedeEditarEncargo, tareaReencolada, continuacionEnCurso, TEXTO_DE_CONTINUAR, tituloDeTarea, } from "../../core/tareas.js";
111
112
  import { aplicarEncargo, aplicarFeedback, TOPE_DE_ADJUNTO } from "../../agent/tareas/tareasEnDisco.js";
112
113
  import { nombreDeAdjuntoAceptable } from "../../core/adjuntos.js";
113
114
  import { copiarAdjuntosDeSesion, guardarAdjuntoDeSesion, TOPE_DE_ADJUNTO_DE_SESION, } from "../../agent/sesiones/adjuntosDeSesion.js";
@@ -897,7 +898,8 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
897
898
  /**
898
899
  * Los catálogos ya consultados en ESTE proceso, por proveedor. Se guardan porque cada
899
900
  * uno es una llamada de red: abrir el menú dos veces no la repite. Un fallo también se
900
- * recuerda —como fallo— hasta que alguien lo vuelva a pedir a propósito.
901
+ * recuerda —como fallo— hasta que alguien lo vuelva a pedir a propósito (desplegar ese
902
+ * proveedor en la pastilla) o cambie su credencial, que lo olvida.
901
903
  */
902
904
  const catalogos = new Map();
903
905
  /**
@@ -2168,6 +2170,56 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
2168
2170
  opciones.revisarTareas?.();
2169
2171
  emitirTareas();
2170
2172
  };
2173
+ /**
2174
+ * Reencolar una FINALIZADA para acabar lo que no hizo: una tarea NUEVA en el hilo de la original, con el texto
2175
+ * (editado por la persona) como feedback. La regla vive en `core/tareas.ts#tareaReencolada`; aquí solo el disco: el
2176
+ * id y los adjuntos, que se COPIAN para que lo que el hilo nombra en `/adjuntos/` siga ahí. Devuelve el motivo si no.
2177
+ */
2178
+ const reencolarTarea = (id, texto,
2179
+ /** El borrador bajo el que el navegador subió capturas NUEVAS (pegadas o elegidas): se ADOPTA como id, como al crear. */
2180
+ borrador) => {
2181
+ const cola = opciones.colaDeTareas;
2182
+ if (cola === undefined)
2183
+ return { motivo: "esta ejecución no tiene cola de tareas" };
2184
+ if (typeof texto !== "string")
2185
+ return { motivo: "dile qué tiene que acabar: el texto está vacío" };
2186
+ const lista = cola.listar();
2187
+ const original = lista.find((t) => t.id === id);
2188
+ if (original === undefined)
2189
+ return { motivo: "esa tarea ya no está en el histórico" };
2190
+ if (borrador !== undefined && (typeof borrador !== "string" || !esBorradorLibre(borrador, lista))) {
2191
+ return { motivo: "ese borrador de adjuntos no vale (o ya es una tarea)" };
2192
+ }
2193
+ const nuevoId = typeof borrador === "string" ? borrador : randomUUID();
2194
+ let nueva;
2195
+ try {
2196
+ // Primero la regla, y SOLO después se copia nada: una negativa no deja una carpeta de adjuntos huérfana.
2197
+ tareaReencolada(original, { id: nuevoId, texto, adjuntos: [] });
2198
+ const enCurso = continuacionEnCurso(original, lista);
2199
+ if (enCurso !== undefined)
2200
+ return { motivo: `ya está encolada su continuación, «${enCurso.titulo}»: espera a que acabe` };
2201
+ const desde = cola.carpetaDeAdjuntos?.(original.id);
2202
+ // Lo NUEVO del borrador manda: uno de la original con el mismo nombre no lo pisa (el cliente ya evita repetirlos).
2203
+ const nuevos = new Set(cola.listarAdjuntos(nuevoId).map((a) => a.nombre));
2204
+ for (const adjunto of original.adjuntos) {
2205
+ if (desde === undefined)
2206
+ break;
2207
+ if (nuevos.has(adjunto.nombre))
2208
+ continue;
2209
+ const ruta = join(desde, adjunto.nombre);
2210
+ if (existsSync(ruta))
2211
+ cola.guardarAdjunto(nuevoId, adjunto.nombre, readFileSync(ruta));
2212
+ }
2213
+ nueva = tareaReencolada(original, { id: nuevoId, texto, adjuntos: cola.listarAdjuntos(nuevoId) });
2214
+ }
2215
+ catch (error) {
2216
+ return { motivo: error instanceof Error ? error.message : String(error) };
2217
+ }
2218
+ cola.guardar([...cola.listar(), nueva]);
2219
+ opciones.revisarTareas?.();
2220
+ emitirTareas();
2221
+ return { id: nueva.id };
2222
+ };
2171
2223
  /** Lo mismo que un feedback, con el texto de «sigue» del núcleo: entra en SU hilo, no repite el
2172
2224
  * encargo. Devuelve por qué no, o nada si se hizo. */
2173
2225
  const continuarTarea = (id) => {
@@ -2448,6 +2500,12 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
2448
2500
  emitirModelos();
2449
2501
  return;
2450
2502
  }
2503
+ // Volver a pedir un catálogo que FALLÓ es preguntar de nuevo, y mientras tanto el fallo
2504
+ // viejo no se sigue enseñando: el cliente lee «consultando» hasta que llegue la respuesta.
2505
+ if (catalogos.get(id)?.error !== undefined) {
2506
+ catalogos.delete(id);
2507
+ emitirModelos();
2508
+ }
2451
2509
  try {
2452
2510
  const modelos = await opciones.catalogoDeModelos(id);
2453
2511
  /**
@@ -3118,6 +3176,9 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
3118
3176
  }
3119
3177
  try {
3120
3178
  const { ruta } = opciones.guardarCredencial(proveedor, clave);
3179
+ // Lo que el catálogo dijo con la clave vieja (un fallo, o la lista de otra cuenta) ya
3180
+ // no es de ésta: se olvida, y el próximo despliegue pregunta con la nueva.
3181
+ catalogos.delete(proveedor);
3121
3182
  informar(`credencial de ${proveedor} guardada en ${ruta}`);
3122
3183
  }
3123
3184
  catch (error) {
@@ -3230,6 +3291,7 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
3230
3291
  }
3231
3292
  try {
3232
3293
  const { ruta, borrada, quedaEnEntorno } = opciones.borrarCredencial(proveedor);
3294
+ catalogos.delete(proveedor);
3233
3295
  informar(borrada
3234
3296
  ? `credencial de ${proveedor} borrada de ${ruta}`
3235
3297
  : `${proveedor} no tenía credencial en ${ruta}`);
@@ -4825,11 +4887,23 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
4825
4887
  * proceso suyo) y se crea al primer uso: la sección casi nunca se abre.
4826
4888
  */
4827
4889
  let servicioDeMotores;
4890
+ /**
4891
+ * La foto lleva si cada motor está SIN CUOTA (`agent/subagentes/agotamiento.ts`): lo sabe el registro del proceso, no
4892
+ * la medida del servicio, así que se añade aquí al emitir. Y se reemite cuando se agota o se restablece.
4893
+ */
4828
4894
  const emitirMotores = () => {
4829
4895
  const motores = servicioDeMotores?.foto();
4830
- if (motores !== undefined)
4831
- emitir({ clase: "motoresLocales", motores });
4896
+ if (motores === undefined)
4897
+ return;
4898
+ emitir({
4899
+ clase: "motoresLocales",
4900
+ motores: motores.map((m) => {
4901
+ const hasta = agotadoHastaAhora(m.motor);
4902
+ return hasta === undefined ? m : { ...m, agotadoHasta: new Date(hasta).toISOString() };
4903
+ }),
4904
+ });
4832
4905
  };
4906
+ alCambiarAgotamiento(emitirMotores);
4833
4907
  const atenderMotorLocal = async (mensaje) => {
4834
4908
  if (opciones.motoresLocales === undefined) {
4835
4909
  // Una lista VACÍA y no un `informar`: ese no llega al navegador desde el vestíbulo, y la
@@ -4850,6 +4924,11 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
4850
4924
  return;
4851
4925
  const motor = mensaje.motor;
4852
4926
  switch (mensaje.accion) {
4927
+ case "restablecer":
4928
+ // Lo que dice la persona manda: el siguiente encargo vuelve al motor (y si sigue agotado, se vuelve a apuntar).
4929
+ if (!restablecer(motor))
4930
+ emitirMotores();
4931
+ return;
4853
4932
  case "probar":
4854
4933
  await servicio.probar(motor);
4855
4934
  return;
@@ -6824,6 +6903,13 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
6824
6903
  respuesta.end(JSON.stringify(resultado.faltan.length === 0 ? { encoladas: resultado.encoladas } : resultado));
6825
6904
  return;
6826
6905
  }
6906
+ if (mensaje.accion === "reencolar") {
6907
+ const resultado = reencolarTarea(mensaje.id, mensaje.texto, mensaje.borrador);
6908
+ const negado = "motivo" in resultado;
6909
+ respuesta.writeHead(negado ? 409 : 200, { "content-type": "application/json" });
6910
+ respuesta.end(JSON.stringify(resultado));
6911
+ return;
6912
+ }
6827
6913
  if (mensaje.accion === "continuar" && opciones.colaDeTareas !== undefined) {
6828
6914
  const motivo = continuarTarea(mensaje.id);
6829
6915
  if (motivo !== undefined) {
@@ -7313,7 +7399,7 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
7313
7399
  if (typeof mensaje === "object" &&
7314
7400
  mensaje !== null &&
7315
7401
  mensaje.clase === "motorLocal" &&
7316
- ["medir", "probar", "login", "codigo", "cancelar", "navegador", "consola", "modelo"].includes(mensaje.accion)) {
7402
+ ["medir", "probar", "login", "codigo", "cancelar", "navegador", "consola", "modelo", "restablecer"].includes(mensaje.accion)) {
7317
7403
  void atenderMotorLocal(mensaje).catch(contar);
7318
7404
  respuesta.writeHead(204);
7319
7405
  respuesta.end();