KikoCis commited on
Commit
5434cf9
·
verified ·
1 Parent(s): 022d4ca

fix: el estilo del canalon es ruido, la posicion no

Browse files
Files changed (1) hide show
  1. js/acer-core.js +16 -4
js/acer-core.js CHANGED
@@ -202,9 +202,15 @@ function buildBM25(docs, opts) {
202
  * mtime», de modo que volver a guardar invalida lo anterior. Aquí la marca
203
  * temporal es el turno, y el nombre es el objetivo de la llamada.
204
  *
205
- * Se DEGRADA, no se borra: si alguien pregunta explícitamente qué decía antes,
206
- * sigue estando. Es la diferencia entre «esto ya no es cierto» y «esto no
207
- * existió nunca», y solo la primera es verdad.
 
 
 
 
 
 
208
  *
209
  * Devuelve un Set con los índices de mensaje cuyo resultado quedó superado.
210
  */
@@ -254,8 +260,14 @@ function dedupKey(s) {
254
  // conserva como parte de la identidad de la línea. Solo colapsan las líneas
255
  // que son iguales TAMBIÉN en dónde estaban — repeticiones de verdad, como
256
  // "}" o el encabezado "[resultado …]" saliendo veinte veces.
257
- const body = s.replace(/\s+/g, ' ').trim().toLowerCase();
 
 
 
 
 
258
  const at = s.match(/^\s*(\d+)\s*[:→]/);
 
259
  return at ? at[1] + '|' + body : body;
260
  }
261
 
 
202
  * mtime», de modo que volver a guardar invalida lo anterior. Aquí la marca
203
  * temporal es el turno, y el nombre es el objetivo de la llamada.
204
  *
205
+ * Se DEGRADA, no se borra — pero con una salvedad medida que conviene no
206
+ * maquillar: preguntando EXPRESAMENTE por el valor anterior, la versión vieja
207
+ * vuelve 0 de 8 veces. Está en el conjunto y no se recupera nunca, porque una
208
+ * vez degradada compite entre cientos de líneas de puntuación cero y quién
209
+ * vuelve de ahí lo decide el pase de diversidad, no la pregunta. ALCANZABLE NO
210
+ * ES RECUPERABLE. La diferencia entre «esto ya no es cierto» y «esto no existió
211
+ * nunca» es real en la estructura de datos y todavía NO lo es en el
212
+ * comportamiento. Recuperar el historial a petición pide otra vía: que la
213
+ * pregunta señale temporalidad y se busque explícitamente en lo caducado.
214
  *
215
  * Devuelve un Set con los índices de mensaje cuyo resultado quedó superado.
216
  */
 
260
  // conserva como parte de la identidad de la línea. Solo colapsan las líneas
261
  // que son iguales TAMBIÉN en dónde estaban — repeticiones de verdad, como
262
  // "}" o el encabezado "[resultado …]" saliendo veinte veces.
263
+ //
264
+ // Y el ESTILO del canalón sí es ruido: la misma línea del mismo fichero vista
265
+ // una vez por la herramienta de lectura (`42→foo`) y otra por una búsqueda
266
+ // (`42: foo`) es la MISMA línea, y debe colapsar. Por eso el número se extrae
267
+ // aparte y el cuerpo se compara ya sin canalón: se conserva DÓNDE estaba y se
268
+ // descarta CÓMO se imprimió.
269
  const at = s.match(/^\s*(\d+)\s*[:→]/);
270
+ const body = (at ? s.slice(at[0].length) : s).replace(/\s+/g, ' ').trim().toLowerCase();
271
  return at ? at[1] + '|' + body : body;
272
  }
273