crbro-memory 2.9.1 → 2.10.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 (65) hide show
  1. package/README.md +22 -13
  2. package/SECURITY.md +27 -2
  3. package/bin/crbro.mjs +18 -1
  4. package/dist/engine/backup.d.ts.map +1 -1
  5. package/dist/engine/backup.js +4 -0
  6. package/dist/engine/backup.js.map +1 -1
  7. package/dist/engine/cortex.d.ts +18 -6
  8. package/dist/engine/cortex.d.ts.map +1 -1
  9. package/dist/engine/cortex.js +99 -83
  10. package/dist/engine/cortex.js.map +1 -1
  11. package/dist/engine/doctor.d.ts +93 -0
  12. package/dist/engine/doctor.d.ts.map +1 -0
  13. package/dist/engine/doctor.js +378 -0
  14. package/dist/engine/doctor.js.map +1 -0
  15. package/dist/engine/evidence.d.ts +26 -0
  16. package/dist/engine/evidence.d.ts.map +1 -0
  17. package/dist/engine/evidence.js +171 -0
  18. package/dist/engine/evidence.js.map +1 -0
  19. package/dist/engine/hippocampus.d.ts.map +1 -1
  20. package/dist/engine/hippocampus.js +32 -29
  21. package/dist/engine/hippocampus.js.map +1 -1
  22. package/dist/engine/keychain.d.ts.map +1 -1
  23. package/dist/engine/keychain.js +52 -20
  24. package/dist/engine/keychain.js.map +1 -1
  25. package/dist/engine/prefrontal.d.ts +4 -1
  26. package/dist/engine/prefrontal.d.ts.map +1 -1
  27. package/dist/engine/prefrontal.js +100 -66
  28. package/dist/engine/prefrontal.js.map +1 -1
  29. package/dist/engine/projects.d.ts +20 -0
  30. package/dist/engine/projects.d.ts.map +1 -0
  31. package/dist/engine/projects.js +80 -0
  32. package/dist/engine/projects.js.map +1 -0
  33. package/dist/engine/shelf.d.ts +5 -6
  34. package/dist/engine/shelf.d.ts.map +1 -1
  35. package/dist/engine/shelf.js +9 -8
  36. package/dist/engine/shelf.js.map +1 -1
  37. package/dist/search/index.d.ts +5 -0
  38. package/dist/search/index.d.ts.map +1 -1
  39. package/dist/search/index.js +18 -5
  40. package/dist/search/index.js.map +1 -1
  41. package/dist/search/quality.d.ts +18 -0
  42. package/dist/search/quality.d.ts.map +1 -0
  43. package/dist/search/quality.js +31 -0
  44. package/dist/search/quality.js.map +1 -0
  45. package/dist/server.d.ts.map +1 -1
  46. package/dist/server.js +112 -16
  47. package/dist/server.js.map +1 -1
  48. package/dist/sync/materialize.d.ts +1 -0
  49. package/dist/sync/materialize.d.ts.map +1 -1
  50. package/dist/sync/materialize.js +33 -8
  51. package/dist/sync/materialize.js.map +1 -1
  52. package/dist/sync/ops.d.ts +7 -2
  53. package/dist/sync/ops.d.ts.map +1 -1
  54. package/dist/sync/ops.js.map +1 -1
  55. package/dist/sync/space.d.ts +5 -3
  56. package/dist/sync/space.d.ts.map +1 -1
  57. package/dist/sync/space.js +187 -77
  58. package/dist/sync/space.js.map +1 -1
  59. package/dist/types/index.d.ts +25 -2
  60. package/dist/types/index.d.ts.map +1 -1
  61. package/dist/utils/lock.d.ts +2 -0
  62. package/dist/utils/lock.d.ts.map +1 -1
  63. package/dist/utils/lock.js +132 -52
  64. package/dist/utils/lock.js.map +1 -1
  65. package/package.json +5 -5
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ProjectRegistry = void 0;
7
+ exports.projectReference = projectReference;
8
+ // Identidad local explícita: un nombre de carpeta no identifica un proyecto.
9
+ const node_path_1 = __importDefault(require("node:path"));
10
+ const hash_js_1 = require("../utils/hash.js");
11
+ const fs_js_1 = require("../utils/fs.js");
12
+ const secrets_js_1 = require("./secrets.js");
13
+ function projectReference(value) {
14
+ let ref = value.trim().replace(/\\/g, '/').replace(/\/+$/, '');
15
+ if (!ref || ref.length > 2048 || /[\x00-\x1f]/.test(ref))
16
+ throw new Error('Invalid project reference.');
17
+ if ((0, secrets_js_1.secretKinds)(ref).length)
18
+ throw new Error('Project references must not contain credentials.');
19
+ if (/^git@[^:]+:/.test(ref))
20
+ ref = ref.replace(/^git@([^:]+):/, 'https://$1/');
21
+ if (/^https?:\/\//i.test(ref)) {
22
+ const url = new URL(ref);
23
+ if (url.username || url.password || url.search || url.hash) {
24
+ throw new Error('Project URLs must not contain credentials, query parameters or fragments.');
25
+ }
26
+ ref = `${url.host.toLowerCase()}${url.pathname}`;
27
+ }
28
+ ref = ref.replace(/\.git$/, '').replace(/\/+$/, '');
29
+ if (/^[a-z]:\//i.test(ref))
30
+ ref = node_path_1.default.posix.normalize(ref).toLowerCase();
31
+ return ref;
32
+ }
33
+ class ProjectRegistry {
34
+ file;
35
+ constructor(brain) { this.file = node_path_1.default.join(brain.paths.root, 'projects.json'); }
36
+ async find(reference) {
37
+ const ref = projectReference(reference);
38
+ const data = await (0, fs_js_1.readJSON)(this.file);
39
+ return Object.values(data?.projects || {}).find(p => p.id === ref || p.aliases.includes(ref)) || null;
40
+ }
41
+ async boundNeurons() {
42
+ const data = await (0, fs_js_1.readJSON)(this.file);
43
+ return [...new Set(Object.values(data?.projects || {}).flatMap(p => p.neurons))];
44
+ }
45
+ async bind(reference, options) {
46
+ const ref = projectReference(reference);
47
+ const aliases = [...new Set([ref, ...(options.aliases || []).map(projectReference)])];
48
+ if (aliases.length > 32)
49
+ throw new Error('At most 32 project aliases.');
50
+ if (options.id && !/^[a-zA-Z0-9_-]{1,100}$/.test(options.id))
51
+ throw new Error('Invalid project id.');
52
+ if (options.neurons?.some(id => !/^[a-zA-Z0-9_-]{1,200}$/.test(id)))
53
+ throw new Error('Invalid neuron id.');
54
+ let result;
55
+ await (0, fs_js_1.updateJSON)(this.file, current => {
56
+ const data = current || { version: 1, projects: {} };
57
+ const existing = Object.values(data.projects).find(p => p.id === ref || p.aliases.includes(ref));
58
+ const id = options.id || existing?.id || `project_${(0, hash_js_1.contentHash)(ref, 16)}`;
59
+ for (const p of Object.values(data.projects)) {
60
+ if (p.id !== id && (aliases.includes(p.id) || p.aliases.includes(id) || p.aliases.some(a => aliases.includes(a)))) {
61
+ throw new Error('Project alias already belongs to another project; no assignment changed.');
62
+ }
63
+ }
64
+ const previous = data.projects[id];
65
+ const mergedAliases = [...new Set([...(previous?.aliases || []), ...aliases])];
66
+ if (mergedAliases.length > 32)
67
+ throw new Error('At most 32 project aliases.');
68
+ result = {
69
+ id, aliases: mergedAliases,
70
+ neurons: options.neurons === undefined ? previous?.neurons || [] : [...new Set(options.neurons)],
71
+ updated: (0, fs_js_1.now)(),
72
+ };
73
+ data.projects[id] = result;
74
+ return data;
75
+ });
76
+ return result;
77
+ }
78
+ }
79
+ exports.ProjectRegistry = ProjectRegistry;
80
+ //# sourceMappingURL=projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/engine/projects.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ export declare function recordVerdict(text: string): {
44
44
  * record of something done (2.9.1), else volatile when a rule fires (and
45
45
  * which one), normal otherwise.
46
46
  */
47
- export declare function detectShelf(text: string): {
47
+ export declare function detectShelf(text: string, temporal?: Fact['temporal']): {
48
48
  shelf: 'volatile' | 'normal' | 'permanent';
49
49
  reason?: ShelfReason;
50
50
  };
@@ -55,12 +55,11 @@ export declare function detectShelf(text: string): {
55
55
  * made about the present — warning on it is noise); else the one its text
56
56
  * implies.
57
57
  *
58
- * Once a session has said the same line too, it is no longer only an
59
- * imported note: the duplicate branch of learn keeps `source: "miner"` but
60
- * sets `verified` or adds a confirmation, and from then on the line is judged
61
- * by its text like any other claim about the present.
58
+ * `current` impide inferir historia por origen o texto, sin verificar nada.
59
+ * Sin temporalidad explícita se conserva la clasificación legacy por
60
+ * confirmations; repetir ya no cambia la fecha de verificación.
62
61
  */
63
- export declare function shelfOfFact(f: Pick<Fact, 'text' | 'shelf_life'> & {
62
+ export declare function shelfOfFact(f: Pick<Fact, 'text' | 'shelf_life' | 'temporal'> & {
64
63
  source?: string;
65
64
  verified?: string;
66
65
  confirmations?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"shelf.d.ts","sourceRoot":"","sources":["../../src/engine/shelf.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGtD,eAAO,MAAM,WAAW,yDAA0D,CAAC;AACnF,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AACnD,oEAAoE;AACpE,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;AAEzD,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,YAAY,CAA+C,CAAC;AAItG,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAG9E;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,YAAY,CAW/E;AAKD,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,SAAS,CAEtD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAMtG;AAUD;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAmT3H;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAQD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAwC5E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,CAU9G;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GACpG;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,CAK/D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAY1D;AAID,mEAAmE;AACnE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,CAAC;IACtB,4GAA4G;IAC5G,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AASD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAM3G;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,EAAE,KAAK,GAAE,MAAmB,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,CAI1K;AAED,8GAA8G;AAC9G,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE;IAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,EACzF,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,KAAK,GAAE,MAAmB,GACzB,gBAAgB,GAAG,IAAI,CAGzB;AAED,MAAM,WAAW,SAAS;IACxB,uBAAuB;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,SAAS,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,+EAA+E;IAC/E,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,sFAAsF;IACtF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAQD;;;;;GAKG;AACH,eAAO,MAAM,eAAe,WAAS,CAAC;AAEtC,qGAAqG;AACrG,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,GAAE,MAAmB,GAAG,MAAM,GAAG,SAAS,CAItG;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO7C;AAsDD,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,GAAG,SAAS,GAAG,IAAI,CAgB9E;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,SAAS,GAAG,IAAI,CAiBlH;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,GAAE,MAAmB,GAAG,MAAM,GAAG,SAAS,CAKrH"}
1
+ {"version":3,"file":"shelf.d.ts","sourceRoot":"","sources":["../../src/engine/shelf.ts"],"names":[],"mappings":"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"}
@@ -452,11 +452,11 @@ function recordVerdict(text) {
452
452
  * record of something done (2.9.1), else volatile when a rule fires (and
453
453
  * which one), normal otherwise.
454
454
  */
455
- function detectShelf(text) {
455
+ function detectShelf(text, temporal) {
456
456
  const raw = String(text || '');
457
457
  if (!raw.trim())
458
458
  return { shelf: 'normal' };
459
- if (isDatedRecord(raw))
459
+ if (temporal !== 'current' && isDatedRecord(raw))
460
460
  return { shelf: 'permanent', reason: 'history' };
461
461
  const t = fold(raw);
462
462
  for (const r of RULES) {
@@ -474,17 +474,18 @@ function detectShelf(text) {
474
474
  * made about the present — warning on it is noise); else the one its text
475
475
  * implies.
476
476
  *
477
- * Once a session has said the same line too, it is no longer only an
478
- * imported note: the duplicate branch of learn keeps `source: "miner"` but
479
- * sets `verified` or adds a confirmation, and from then on the line is judged
480
- * by its text like any other claim about the present.
477
+ * `current` impide inferir historia por origen o texto, sin verificar nada.
478
+ * Sin temporalidad explícita se conserva la clasificación legacy por
479
+ * confirmations; repetir ya no cambia la fecha de verificación.
481
480
  */
482
481
  function shelfOfFact(f) {
483
482
  if (isShelfLife(f.shelf_life))
484
483
  return { shelf: f.shelf_life, inferred: false };
485
- if (f.source === 'miner' && !f.verified && (f.confirmations ?? 1) <= 1)
484
+ if (f.temporal === 'historical')
485
+ return { shelf: 'permanent', inferred: true, reason: 'history' };
486
+ if (f.temporal !== 'current' && f.source === 'miner' && !f.verified && (f.confirmations ?? 1) <= 1)
486
487
  return { shelf: 'permanent', inferred: true, reason: 'miner' };
487
- const d = detectShelf(f.text);
488
+ const d = detectShelf(f.text, f.temporal);
488
489
  return { shelf: d.shelf, inferred: true, ...(d.reason ? { reason: d.reason } : {}) };
489
490
  }
490
491
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"shelf.js","sourceRoot":"","sources":["../../src/engine/shelf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shelf.js","sourceRoot":"","sources":["../../src/engine/shelf.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,11 @@ export type RecallKind = typeof RECALL_KINDS[number];
24
24
  export interface SearchFilter {
25
25
  since?: string;
26
26
  kinds?: readonly string[];
27
+ neuronIds?: readonly string[];
28
+ includeGlobal?: boolean;
29
+ /** Explicit project membership excludes those neurons from global lessons. */
30
+ globalExcludedNeurons?: readonly string[];
31
+ preferNeurons?: readonly string[];
27
32
  }
28
33
  /** Filled in by search/searchMany when the caller passes it: what the list left out. */
29
34
  export interface SearchStats {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":"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"}
@@ -581,7 +581,16 @@ class SearchEngine {
581
581
  const desde = (options?.since || '').slice(0, 10);
582
582
  const clases = options?.kinds && options.kinds.length > 0 ? new Set(options.kinds) : null;
583
583
  const sinFecha = new Set();
584
+ const allowed = options?.neuronIds ? new Set(options.neuronIds) : null;
585
+ const owned = new Set(options?.globalExcludedNeurons || []);
584
586
  const admite = (doc) => {
587
+ if (allowed && !allowed.has(doc.neuron || '')) {
588
+ const global = options?.includeGlobal && (doc.kind === 'preference' ||
589
+ (!!doc.neuron && /^(tech_|process_)/.test(doc.neuron) && !owned.has(doc.neuron) &&
590
+ ['pattern', 'error', 'debt'].includes(doc.kind || '')));
591
+ if (!global)
592
+ return false;
593
+ }
585
594
  if (clases && !clases.has(String(doc.kind || '')))
586
595
  return false;
587
596
  if (desde) {
@@ -632,6 +641,8 @@ class SearchEngine {
632
641
  // of their own, so a long narrative cannot outrank the fact that
633
642
  // answers, and the neuron path below never sees them.
634
643
  if (doc.kind === 'session') {
644
+ if (allowed)
645
+ continue; // A daily narrative has no reliable project boundary.
635
646
  if (clases)
636
647
  continue; // a day log is not an entry kind
637
648
  if (desde && String(doc.added || '').slice(0, 10) < desde)
@@ -713,7 +724,7 @@ class SearchEngine {
713
724
  // shown five results cannot tell "five matched" from "five of forty".
714
725
  if (options?.stats)
715
726
  options.stats.matched_neurons = byNeuron.size;
716
- return this.materializeResults([...byNeuron.values()], limit, terms.length);
727
+ return this.materializeResults([...byNeuron.values()], limit, terms.length, options?.preferNeurons);
717
728
  }
718
729
  /**
719
730
  * Several phrasings of one question, searched together and fused by
@@ -790,10 +801,11 @@ class SearchEngine {
790
801
  });
791
802
  }
792
803
  const escala = (RRF_K + 1) / listas.length;
804
+ const preferred = new Set(options.preferNeurons || []);
793
805
  if (options.stats)
794
806
  options.stats.matched_neurons = fused.size;
795
807
  return [...fused.values()]
796
- .sort((a, b) => b.score - a.score)
808
+ .sort((a, b) => Number(preferred.has(b.best.neuron_id)) - Number(preferred.has(a.best.neuron_id)) || b.score - a.score)
797
809
  .slice(0, limit)
798
810
  .map(f => {
799
811
  const r = { ...f.best, relevance_score: Math.round(f.score * escala * 1000) / 1000 };
@@ -907,10 +919,11 @@ class SearchEngine {
907
919
  * fall back to its next valid chunk instead. Stale neurons are quietly
908
920
  * re-indexed; chunks of deleted neurons are removed on the spot.
909
921
  */
910
- async materializeResults(porNeurona, limit, queryTermCount) {
922
+ async materializeResults(porNeurona, limit, queryTermCount, preferNeurons) {
911
923
  // Only the plausible head pays the neuron reads: nothing below it could
912
924
  // reach the answer even if everything above dropped out.
913
- porNeurona.sort((a, b) => b[0].score - a[0].score);
925
+ const preferred = new Set(preferNeurons || []);
926
+ porNeurona.sort((a, b) => Number(preferred.has(b[0].neuron)) - Number(preferred.has(a[0].neuron)) || b[0].score - a[0].score);
914
927
  const candidatos = porNeurona.slice(0, Math.max(limit * 3, limit + 8));
915
928
  const resultados = [];
916
929
  // Shelf life (staleness): judged here, where the neuron file is already
@@ -1014,7 +1027,7 @@ class SearchEngine {
1014
1027
  // neighbour also scored was measured on 633 queries over the reference
1015
1028
  // brain and changed recall@3 by 0.15 points at most. Pre-registration and
1016
1029
  // numbers in benchmarks/synapse-activation/; mechanism in commit 69917ce.
1017
- resultados.sort((a, b) => b.r.relevance_score - a.r.relevance_score);
1030
+ resultados.sort((a, b) => Number(preferred.has(b.r.neuron_id)) - Number(preferred.has(a.r.neuron_id)) || b.r.relevance_score - a.r.relevance_score);
1018
1031
  const top = resultados.slice(0, limit);
1019
1032
  // The neuron's next best lines, for the head of the list only: the line
1020
1033
  // you need is not always the one that scored highest. Measured, it lifts