crbro-memory 2.1.2 → 2.2.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.
package/README.md CHANGED
@@ -20,6 +20,7 @@ Free and open source (MIT). All 15 tools included — no license, no account, no
20
20
  - **🧬 Biological Architecture** — Knowledge organized as neurons (cortex), connections (synapses), and session memory (hippocampus)
21
21
  - **🔍 Fact-Level Search** — Powered by [Orama](https://orama.com/). Every fact is indexed on its own, so a topic with hundreds of facts stays as findable as one with three. Each result comes back with the exact line that matched, when it was recorded, a `confidence` label (`weak` = little of the question was covered) and, for the top results, the topic's next best lines. A short bilingual synonym table widens the question without inventing terms *(v1.13+)*
22
22
  - **🎯 Read the entry, not the neuron** — `crbro_inspect view=neuron` returns an index: every fact, decision, pattern, preference, error, debt and the map as an id, a kind, a date and a preview. `entries=[ids]` reads just those; every recall hit carries its `entry_id`. The whole-neuron read still exists as `detail=full`, behind a declared ceiling. A 307-fact neuron went from 66,952 tokens to 1,887 to open *(v2.1+)*
23
+ - **📓 The diary is searchable** — every session summary is in the index, as paragraphs. `crbro_recall` returns the days that mention the question in a list of their own, `sessions_matched`, so narrative never outranks a fact; `crbro_inspect view=sessions session=<id>` reads one day whole. Lexical only, rebuilt once on upgrade *(v2.2+)*
23
24
  - **🗣️ The model in the loop** — Two levers no embedding model replaces, measured blind: keywords written at save time (the caller knows the synonyms: a line about Hetzner gets *hosting, alojamiento, servidor*) and several phrasings searched at once, fused by rank. Zero disk, zero RAM; numbers in the table below *(v1.15+)*
24
25
  - **🧭 Semantic recall** — `npx crbro-memory init` installs a local embedding model (`multilingual-e5-small`, int8) fused with the keyword engine, so paraphrases the words do not cover start to land. Measured: +8 points of recall@1 over the keyword engine, +2 to +5 on top of save-time keywords. Costs ~500 MB on disk once per machine and ~0.5 GB of RAM while a server runs; `init --no-semantic` skips it, `CRBRO_SEMANTIC=0` turns it off *(v1.14+, installed by default since v1.16)*
25
26
  - **🔥 Heat Scores** — Automatic relevance tracking based on frequency, recency, and connectivity. Topics written in the same session are linked at consolidation, so the graph fills itself in *(v1.13+)*
@@ -137,9 +138,9 @@ Session context never reaches Task-spawned subagents, so this hook can inject th
137
138
  | Tool | Description |
138
139
  |------|-------------|
139
140
  | `crbro_boot` | Boot the brain at session start — loads hot topics, context, the last three sessions and the `retired_tools` map |
140
- | `crbro_inspect` | Read-only views by id or name: `view=status`, `neuron`, `neurons`, `sessions`, `global_map`. `view=neuron` is an index by default — every entry as id, kind, date and preview; `entries=[ids]` reads those in full, `detail=full` the whole neuron |
141
+ | `crbro_inspect` | Read-only views by id or name: `view=status`, `neuron`, `neurons`, `sessions`, `global_map`. `view=neuron` is an index by default — every entry as id, kind, date and preview; `entries=[ids]` reads those in full, `detail=full` the whole neuron. `view=sessions session=<id>` reads one day log whole |
141
142
  | `crbro_learn` | Store a fact, decision, pattern, preference, error or debt — with the keywords a future question may use. `supersedes` retires the old version in the same call |
142
- | `crbro_recall` | Search every stored line, not just topic names — returns what matched, how confidently, and the topic's next best lines. Several phrasings at once are fused by rank |
143
+ | `crbro_recall` | Search every stored line, not just topic names — returns what matched, how confidently, and the topic's next best lines. Several phrasings at once are fused by rank; `sessions_matched` lists the day logs that mention it, `sessions_total` how many there were |
143
144
  | `crbro_revise` | Retire facts (and decisions, patterns, errors, debts via `entries`) as superseded or retracted, reactivate them with `status=active`, and edit summary, domain, tags or name |
144
145
  | `crbro_forget` | Remove for good, keeping a copy in `.quarantine/` first — entries of a neuron, a whole neuron (two-step with `confirm_token`), a session log; `restore` and `merge_into` too |
145
146
  | `crbro_connect` | Create, strengthen, set the strength of or delete (`action=disconnect`) a connection between neurons |
@@ -1,5 +1,11 @@
1
1
  import type { Brain } from './brain.js';
2
2
  import type { SessionLog } from '../types/index.js';
3
+ /**
4
+ * Accept 'session_2026-09-03' or '2026-09-03'; null for anything that is not
5
+ * a day id, so a reference never turns into a path — "../manifest" was read
6
+ * back as a log before this check existed.
7
+ */
8
+ export declare function normalizeSessionId(ref: string): string | null;
3
9
  export declare class Hippocampus {
4
10
  private brain;
5
11
  constructor(brain: Brain);
@@ -39,6 +45,8 @@ export declare class Hippocampus {
39
45
  date: string;
40
46
  kinds: string[];
41
47
  }>>;
48
+ /** One log by id, whole; null when the reference is not a day id or the log is gone. */
49
+ readSession(sessionRef: string): Promise<SessionLog | null>;
42
50
  /**
43
51
  * Delete one session log, after copying it to quarantine — the same
44
52
  * "nothing is deleted outright" rule the cortex follows.
@@ -1 +1 @@
1
- {"version":3,"file":"hippocampus.d.ts","sourceRoot":"","sources":["../../src/engine/hippocampus.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAUpD,qBAAa,WAAW;IACV,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,KAAK;IAEhC;;;;;;;OAOG;IACG,UAAU,CAAC,IAAI,EAAE;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,UAAU,GAAG;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA0ChD;;OAEG;IACG,YAAY,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAe7D;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAK5C;;;;OAIG;IACG,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAW3F;;;OAGG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CAgBlH"}
1
+ {"version":3,"file":"hippocampus.d.ts","sourceRoot":"","sources":["../../src/engine/hippocampus.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI7D;AAED,qBAAa,WAAW;IACV,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,KAAK;IAEhC;;;;;;;OAOG;IACG,UAAU,CAAC,IAAI,EAAE;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,UAAU,GAAG;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA0ChD;;OAEG;IACG,YAAY,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAe7D;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAK5C;;;;OAIG;IACG,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAW3F,wFAAwF;IAClF,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAMjE;;;OAGG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CAiBlH"}
@@ -3,14 +3,20 @@
3
3
  // Session logging and memory formation
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.Hippocampus = void 0;
6
+ exports.normalizeSessionId = normalizeSessionId;
6
7
  const fs_js_1 = require("../utils/fs.js");
7
8
  const ids_js_1 = require("../utils/ids.js");
8
9
  const secrets_js_1 = require("./secrets.js");
9
10
  const SESSION_PREFIX = 'session_';
10
- /** Accept 'session_2026-09-03' or '2026-09-03'. */
11
+ /**
12
+ * Accept 'session_2026-09-03' or '2026-09-03'; null for anything that is not
13
+ * a day id, so a reference never turns into a path — "../manifest" was read
14
+ * back as a log before this check existed.
15
+ */
11
16
  function normalizeSessionId(ref) {
12
17
  const t = (ref || '').trim();
13
- return t.startsWith(SESSION_PREFIX) ? t : `${SESSION_PREFIX}${t}`;
18
+ const id = t.startsWith(SESSION_PREFIX) ? t : `${SESSION_PREFIX}${t}`;
19
+ return /^session_\d{4}-\d{2}-\d{2}$/.test(id) ? id : null;
14
20
  }
15
21
  class Hippocampus {
16
22
  brain;
@@ -99,12 +105,21 @@ class Hippocampus {
99
105
  }
100
106
  return out;
101
107
  }
108
+ /** One log by id, whole; null when the reference is not a day id or the log is gone. */
109
+ async readSession(sessionRef) {
110
+ const session_id = normalizeSessionId(sessionRef);
111
+ if (!session_id)
112
+ return null;
113
+ return (0, fs_js_1.readJSON)(this.brain.paths.session(session_id));
114
+ }
102
115
  /**
103
116
  * Delete one session log, after copying it to quarantine — the same
104
117
  * "nothing is deleted outright" rule the cortex follows.
105
118
  */
106
119
  async forgetSession(sessionRef) {
107
120
  const session_id = normalizeSessionId(sessionRef);
121
+ if (!session_id)
122
+ return { session_id: (sessionRef || '').trim(), removed: false, backup: null };
108
123
  const ruta = this.brain.paths.session(session_id);
109
124
  const log = await (0, fs_js_1.readJSON)(ruta);
110
125
  if (!log)
@@ -1 +1 @@
1
- {"version":3,"file":"hippocampus.js","sourceRoot":"","sources":["../../src/engine/hippocampus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hippocampus.js","sourceRoot":"","sources":["../../src/engine/hippocampus.ts"],"names":[],"mappings":";AAAA,oEAAoE;AACpE,uCAAuC;;;AAevC,gDAIC;AAjBD,0CAA4F;AAC5F,4CAA4C;AAC5C,6CAAmD;AAInD,MAAM,cAAc,GAAG,UAAU,CAAC;AAElC;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC;IACtE,OAAO,6BAA6B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5D,CAAC;AAED,MAAa,WAAW;IACF;IAApB,YAAoB,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IAAG,CAAC;IAEpC;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,CAAC,IAOhB;QACC,MAAM,MAAM,GAAG,IAAA,mBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,IAAA,kBAAS,GAAE,CAAC;QAEvB,2DAA2D;QAC3D,IAAI,QAAQ,GAAG,MAAM,IAAA,gBAAQ,EAAa,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAExE,IAAI,QAAQ,EAAE,CAAC;YACb,6BAA6B;YAC7B,QAAQ,CAAC,OAAO,IAAI,UAAU,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7C,QAAQ,CAAC,cAAc,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YAC7F,QAAQ,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;YACtD,QAAQ,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC;YACpD,QAAQ,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC;YAC9D,QAAQ,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;YACxD,MAAM,IAAA,iBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YACxD,OAAO,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACjD,CAAC;QAED,yBAAyB;QACzB,MAAM,OAAO,GAAe;YAC1B,UAAU,EAAE,EAAE;YACd,IAAI,EAAE,IAAA,aAAK,GAAE;YACb,iBAAiB,EAAE,SAAS;YAC5B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,CAAC;YAC1C,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,CAAC;YACxC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,IAAI,CAAC;YAClD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,CAAC;SAC7C,CAAC;QAEF,MAAM,IAAA,iBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QAEvD,kBAAkB;QAClB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC,CAAC;QAEjF,OAAO,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE;QACnC,MAAM,GAAG,GAAG,MAAM,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAiB,EAAE,CAAC;QAElC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,MAAM,IAAA,gBAAQ,EAAa,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YACzE,IAAI,OAAO;gBAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAED,yCAAyC;QACzC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAEtD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,EAAE,GAAG,IAAA,kBAAS,GAAE,CAAC;QACvB,OAAO,IAAA,gBAAQ,EAAa,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,GAAG,GAAiE,EAAE,CAAC;QAC7E,KAAK,MAAM,EAAE,IAAI,MAAM,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;YACnE,MAAM,OAAO,GAAG,MAAM,IAAA,gBAAQ,EAAa,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YACzE,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,MAAM,KAAK,GAAG,IAAA,wBAAW,EAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YACjD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACtG,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,wFAAwF;IACxF,KAAK,CAAC,WAAW,CAAC,UAAkB;QAClC,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAC7B,OAAO,IAAA,gBAAQ,EAAa,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,UAAkB;QACpC,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,UAAU,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAChG,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,MAAM,IAAA,gBAAQ,EAAa,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAE9D,MAAM,KAAK,GAAG,IAAA,WAAG,GAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,IAAI,UAAU,IAAI,KAAK,OAAO,CAAC;QAC5E,MAAM,IAAA,iBAAS,EAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,IAAA,kBAAU,EAAC,IAAI,CAAC,CAAC;QAEvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QAE9F,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC/C,CAAC;CACF;AAlID,kCAkIC"}
@@ -10,10 +10,30 @@ import type { Neuron, SearchResult } from '../types/index.js';
10
10
  * 2.0) are no longer chunked, so an index built before it must be rebuilt or
11
11
  * it would keep serving entries that were retired.
12
12
  */
13
- export declare const INDEX_VERSION = 6;
13
+ export declare const INDEX_VERSION = 7;
14
14
  /** Filled in by search/searchMany when the caller passes it: what the list left out. */
15
15
  export interface SearchStats {
16
16
  matched_neurons?: number;
17
+ /** Day logs whose summary mentions the query — a list of their own, never mixed with neurons. */
18
+ sessions?: SessionMatch[];
19
+ /** How many day logs had a hit at all, before the cap on sessions: three never reads as "only three". */
20
+ sessions_total?: number;
21
+ }
22
+ /**
23
+ * A session log that matched. The diary is searchable since 2.2, but it is
24
+ * narrative, not knowledge: a session hit points at where something was
25
+ * told, it never outranks the fact that answers. Read the whole log with
26
+ * crbro_inspect view=sessions session=<session_id>.
27
+ */
28
+ export interface SessionMatch {
29
+ session_id: string;
30
+ date: string;
31
+ entry_id: string;
32
+ preview: string;
33
+ chars: number;
34
+ matched_terms: number;
35
+ query_terms: number;
36
+ confidence: 'strong' | 'weak';
17
37
  }
18
38
  export declare class SearchEngine {
19
39
  private brain;
@@ -124,6 +144,8 @@ export declare class SearchEngine {
124
144
  }): Promise<{
125
145
  results: SearchResult[];
126
146
  matched_neurons: number;
147
+ sessions: SessionMatch[];
148
+ sessions_total: number;
127
149
  }>;
128
150
  /**
129
151
  * Blend the vector ranking into the lexical one with reciprocal-rank
@@ -164,6 +186,16 @@ export declare class SearchEngine {
164
186
  private searchTerm;
165
187
  /** Build and insert every chunk of a neuron. */
166
188
  private insertNeuronChunks;
189
+ /**
190
+ * Index one session log, replacing whatever it had. Called by consolidate
191
+ * for the day just logged and by rebuild for the whole diary.
192
+ */
193
+ indexSession(log: {
194
+ session_id: string;
195
+ date?: string;
196
+ summary?: string;
197
+ }): Promise<void>;
198
+ private insertSessionChunks;
167
199
  private put;
168
200
  /**
169
201
  * Drop every chunk belonging to a neuron.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAQ,MAAM,mBAAmB,CAAC;AAEpE;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,IAAI,CAAC;AAoE/B,wFAAwF;AACxF,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAiBD,qBAAa,YAAY;IA2BX,OAAO,CAAC,KAAK;IA1BzB,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,YAAY,CAA+B;IAEnD;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc,CAAkC;IAExD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAA8B;IAC9C,gEAAgE;IAChE,OAAO,CAAC,YAAY,CAA6B;IACjD,gEAAgE;IAChE,OAAO,CAAC,SAAS,CAA8B;gBAE3B,KAAK,EAAE,KAAK;IAMhC,6DAA6D;IAC7D,aAAa,IAAI,MAAM;IAMvB;;;;;;;;OAQG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA6B3B;;;;;;;;;;OAUG;YACW,OAAO;IAQrB;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IA0BhC;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWhD;;;OAGG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnD,6EAA6E;IACvE,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC,mCAAmC;IAC7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB9B,0EAA0E;IACpE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B;;;;;;;;OAQG;IACG,MAAM,CACV,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,WAAW,CAAA;KAAE,GACjE,OAAO,CAAC,YAAY,EAAE,CAAC;IAwE1B;;;;;;OAMG;IACG,UAAU,CACd,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,WAAW,CAAA;KAAO,GACrE,OAAO,CAAC,YAAY,EAAE,CAAC;IAmD1B;;;;OAIG;IACG,mBAAmB,CACvB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAChD,OAAO,CAAC;QAAE,OAAO,EAAE,YAAY,EAAE,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC;IAMhE;;;;;;OAMG;YACW,YAAY;IA0C1B,mEAAmE;YACrD,eAAe;IAY7B;;;;;;;;;;;;OAYG;YACW,kBAAkB;IAiGhC;;;;OAIG;IACH,OAAO,CAAC,SAAS;IA2BjB;;;;;OAKG;YACW,UAAU;IAyCxB,gDAAgD;YAClC,kBAAkB;YA8HlB,GAAG;IAwBjB;;;;;;;OAOG;YACW,kBAAkB;IAkBhC;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAoBvB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,SAAS;IAYjB;;;;OAIG;YACW,eAAe;CAO9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ const ops_js_1 = require("../sync/ops.js");
36
36
  * 2.0) are no longer chunked, so an index built before it must be rebuilt or
37
37
  * it would keep serving entries that were retired.
38
38
  */
39
- exports.INDEX_VERSION = 6; // 4: keys field (1.15) · 5: entry_status (2.0) · 6: eid per chunk (2.1)
39
+ exports.INDEX_VERSION = 7; // 4: keys field (1.15) · 5: entry_status (2.0) · 6: eid per chunk (2.1) · 7: session logs indexed (2.2)
40
40
  /** Weight given to a neuron for each *additional* chunk that matches. */
41
41
  const BREADTH_BONUS = 0.05;
42
42
  /** Cap on the breadth bonus — breadth is a tiebreaker, never the main signal. */
@@ -95,6 +95,62 @@ const SCHEMA = {
95
95
  added: 'string',
96
96
  heat: 'number',
97
97
  };
98
+ const SESSION_MATCHES = 3;
99
+ const SESSION_CHUNK = 700;
100
+ /** Best chunk per session, top sessions by coverage-weighted score; total is how many days had a hit. */
101
+ function topSessions(hits, queryTerms) {
102
+ const porSesion = new Map();
103
+ for (const h of hits.values()) {
104
+ const prev = porSesion.get(h.session);
105
+ if (!prev || h.score * h.matched > prev.score * prev.matched)
106
+ porSesion.set(h.session, h);
107
+ }
108
+ const matches = [...porSesion.values()]
109
+ // Ties broken by id, newest first, so the list is the same on every run.
110
+ .sort((a, b) => b.score * b.matched - a.score * a.matched || (a.session < b.session ? 1 : -1))
111
+ .slice(0, SESSION_MATCHES)
112
+ .map((h) => {
113
+ const strong = queryTerms <= 1 ? h.matched >= 1 : h.matched >= 2 && h.matched / queryTerms >= 0.5;
114
+ return {
115
+ session_id: h.session,
116
+ date: h.date,
117
+ entry_id: h.eid,
118
+ preview: h.text.length > 300 ? `${h.text.slice(0, 300).trimEnd()}…` : h.text,
119
+ chars: h.text.length,
120
+ matched_terms: h.matched,
121
+ query_terms: queryTerms,
122
+ confidence: strong ? 'strong' : 'weak',
123
+ };
124
+ });
125
+ return { matches, total: porSesion.size };
126
+ }
127
+ /**
128
+ * A summary becomes paragraphs of at most SESSION_CHUNK characters: a match
129
+ * then points at the paragraph that mentions the thing, and the preview is
130
+ * the paragraph itself, not the opening of a 7,000-character day.
131
+ */
132
+ function sessionChunks(summary) {
133
+ const out = [];
134
+ for (const parrafo of summary.split(/\n-{3,}\n|\n{2,}/)) {
135
+ const p = parrafo.trim();
136
+ if (!p)
137
+ continue;
138
+ if (p.length <= SESSION_CHUNK) {
139
+ out.push(p);
140
+ continue;
141
+ }
142
+ let resto = p;
143
+ while (resto.length > SESSION_CHUNK) {
144
+ const corte = resto.lastIndexOf(' ', SESSION_CHUNK);
145
+ const at = corte > SESSION_CHUNK / 2 ? corte : SESSION_CHUNK;
146
+ out.push(resto.slice(0, at).trim());
147
+ resto = resto.slice(at).trim();
148
+ }
149
+ if (resto)
150
+ out.push(resto);
151
+ }
152
+ return out;
153
+ }
98
154
  class SearchEngine {
99
155
  brain;
100
156
  db = null;
@@ -184,8 +240,10 @@ class SearchEngine {
184
240
  if (indexAt === 0)
185
241
  return true;
186
242
  const cortexAt = await (0, fs_js_1.newestMtime)(this.brain.paths.cortex);
243
+ // The diary is indexed too (2.2): a log written by another process counts.
244
+ const diaryAt = await (0, fs_js_1.newestMtime)(this.brain.paths.hippocampus);
187
245
  // One second of slack: a write landing during a rebuild is not staleness.
188
- return cortexAt > indexAt + 1000;
246
+ return Math.max(cortexAt, diaryAt) > indexAt + 1000;
189
247
  }
190
248
  /**
191
249
  * Rebuild the whole index from the cortex.
@@ -209,6 +267,17 @@ class SearchEngine {
209
267
  // Skip unreadable neuron, keep going.
210
268
  }
211
269
  }
270
+ // The diary too (2.2): every session log, as paragraphs.
271
+ for (const id of await (0, fs_js_1.listJSONFiles)(this.brain.paths.hippocampus)) {
272
+ try {
273
+ const log = await (0, fs_js_1.readJSON)(this.brain.paths.session(id));
274
+ if (log?.summary)
275
+ await this.insertSessionChunks(log);
276
+ }
277
+ catch {
278
+ // Skip unreadable log, keep going.
279
+ }
280
+ }
212
281
  // Embeddings off the critical path: a rebuild after an upgrade must not
213
282
  // hold boot for minutes on a big brain. Recall serves what is embedded so
214
283
  // far; the vectors go to disk with the next index write.
@@ -293,6 +362,7 @@ class SearchEngine {
293
362
  if (terms.length === 0)
294
363
  return [];
295
364
  const perChunk = new Map();
365
+ const perSession = new Map();
296
366
  for (const term of terms) {
297
367
  const hits = await this.searchTerm(term, options?.domain);
298
368
  if (hits.length === 0)
@@ -302,6 +372,19 @@ class SearchEngine {
302
372
  const doc = hit.document;
303
373
  const key = doc.id;
304
374
  const normalised = best > 0 ? hit.score / best : 0;
375
+ // Session logs are searched, but never as neurons: they keep a list
376
+ // of their own, so a long narrative cannot outrank the fact that
377
+ // answers, and the neuron path below never sees them.
378
+ if (doc.kind === 'session') {
379
+ const prev = perSession.get(key);
380
+ if (prev) {
381
+ prev.score += normalised;
382
+ prev.matched += 1;
383
+ }
384
+ else
385
+ perSession.set(key, { session: String(doc.name || ''), date: String(doc.added || ''), text: String(doc.text || ''), eid: String(doc.eid || ''), score: normalised, matched: 1 });
386
+ continue;
387
+ }
305
388
  const existing = perChunk.get(key);
306
389
  if (existing) {
307
390
  existing.score += normalised;
@@ -334,6 +417,11 @@ class SearchEngine {
334
417
  if (this.semantic && this.semantic.ready() && this.semantic.count() > 0) {
335
418
  await this.fuseSemantic(query, perChunk, options?.domain);
336
419
  }
420
+ if (options?.stats) {
421
+ const top = topSessions(perSession, terms.length);
422
+ options.stats.sessions = top.matches;
423
+ options.stats.sessions_total = top.total;
424
+ }
337
425
  if (perChunk.size === 0)
338
426
  return [];
339
427
  // Group chunks by neuron, best first.
@@ -367,7 +455,36 @@ class SearchEngine {
367
455
  if (distintas.length === 1)
368
456
  return this.search(distintas[0], options);
369
457
  const limit = options.limit ?? 10;
370
- const listas = await Promise.all(distintas.map(q => this.search(q, { ...options, limit: Math.max(limit, 10) * 2 })));
458
+ const porConsulta = distintas.map(() => ({}));
459
+ const listas = await Promise.all(distintas.map((q, i) => this.search(q, { ...options, stats: porConsulta[i], limit: Math.max(limit, 10) * 2 })));
460
+ if (options.stats) {
461
+ // Session hits: a day that several phrasings point at ranks first, then
462
+ // by accumulated coverage (matched over query terms, so 2/2 beats 3/8).
463
+ // The row kept is the best-covered one, strong if any phrasing found it
464
+ // so — and the same phrasings in any order give the same list.
465
+ const cobertura = (m) => (m.query_terms > 0 ? m.matched_terms / m.query_terms : 0);
466
+ const fusion = new Map();
467
+ for (const s of porConsulta) {
468
+ for (const m of s.sessions || []) {
469
+ const f = fusion.get(m.session_id);
470
+ if (!f) {
471
+ fusion.set(m.session_id, { row: m, cobertura: cobertura(m), frases: 1, strong: m.confidence === 'strong' });
472
+ continue;
473
+ }
474
+ f.cobertura += cobertura(m);
475
+ f.frases += 1;
476
+ f.strong = f.strong || m.confidence === 'strong';
477
+ if (cobertura(m) > cobertura(f.row) || (cobertura(m) === cobertura(f.row) && m.matched_terms > f.row.matched_terms))
478
+ f.row = m;
479
+ }
480
+ }
481
+ options.stats.sessions = [...fusion.values()]
482
+ .sort((a, b) => b.frases - a.frases || b.cobertura - a.cobertura || (a.row.session_id < b.row.session_id ? 1 : -1))
483
+ .slice(0, SESSION_MATCHES)
484
+ .map(f => ({ ...f.row, confidence: f.strong ? 'strong' : f.row.confidence }));
485
+ // Each phrasing counted its own days: the union is at least the largest count.
486
+ options.stats.sessions_total = Math.max(fusion.size, ...porConsulta.map(s => s.sessions_total || 0));
487
+ }
371
488
  const fused = new Map();
372
489
  const alsoOf = (r) => alsoLine(r.matching_content, r.matched_kind || '', r.matched_added || '', r.entry_id);
373
490
  for (const lista of listas) {
@@ -424,7 +541,8 @@ class SearchEngine {
424
541
  async searchManyWithStats(queries, options = {}) {
425
542
  const stats = {};
426
543
  const results = await this.searchMany(queries, { ...options, stats });
427
- return { results, matched_neurons: stats.matched_neurons ?? results.length };
544
+ const sessions = stats.sessions ?? [];
545
+ return { results, matched_neurons: stats.matched_neurons ?? results.length, sessions, sessions_total: stats.sessions_total ?? sessions.length };
428
546
  }
429
547
  /**
430
548
  * Blend the vector ranking into the lexical one with reciprocal-rank
@@ -455,7 +573,7 @@ class SearchEngine {
455
573
  catch {
456
574
  doc = undefined;
457
575
  }
458
- if (!doc || doc.kind === 'header')
576
+ if (!doc || doc.kind === 'header' || doc.kind === 'session')
459
577
  continue;
460
578
  if (domain && doc.domain !== domain)
461
579
  continue;
@@ -642,7 +760,9 @@ class SearchEngine {
642
760
  // Filtered here, not with an Orama `where` clause: a `where` on a
643
761
  // plain string field matches nothing at all, so the old code turned
644
762
  // every domain-scoped recall into zero results (measured).
645
- return domain ? hits.filter(h => h.document.domain === domain) : hits;
763
+ // Day logs have no domain: a domain-scoped recall still lists the days
764
+ // that mention it, in their own list, or the diary vanished in silence.
765
+ return domain ? hits.filter(h => h.document.kind === 'session' || h.document.domain === domain) : hits;
646
766
  };
647
767
  let hits = await run(0);
648
768
  // Try the other grammatical number too, and keep the best score each
@@ -662,8 +782,14 @@ class SearchEngine {
662
782
  }
663
783
  hits = [...mejor.values()].sort((a, b) => b.score - a.score);
664
784
  }
665
- if (hits.length === 0 && term.length >= 5) {
666
- hits = await run(1);
785
+ // Decided on neuron hits, not on hits at all: since 2.2 a day log that
786
+ // repeats the user's typo verbatim is an exact hit, and it must not switch
787
+ // off the slack that still finds the fact spelled right.
788
+ if (term.length >= 5 && !hits.some(h => h.document.kind !== 'session')) {
789
+ const vistos = new Set(hits.map(h => h.document.id));
790
+ const fuzzy = (await run(1)).filter(h => h.document.kind !== 'session' && !vistos.has(h.document.id));
791
+ if (fuzzy.length > 0)
792
+ hits = [...hits, ...fuzzy].sort((a, b) => b.score - a.score);
667
793
  }
668
794
  return hits;
669
795
  }
@@ -795,6 +921,38 @@ class SearchEngine {
795
921
  });
796
922
  }
797
923
  }
924
+ /**
925
+ * Index one session log, replacing whatever it had. Called by consolidate
926
+ * for the day just logged and by rebuild for the whole diary.
927
+ */
928
+ async indexSession(log) {
929
+ if (!this.db)
930
+ await this.init();
931
+ if (!this.db)
932
+ return;
933
+ await this.removeNeuronChunks(`session:${log.session_id}`);
934
+ if (log.summary)
935
+ await this.insertSessionChunks(log);
936
+ this.markDirty();
937
+ }
938
+ async insertSessionChunks(log) {
939
+ const trozos = sessionChunks(String(log.summary || ''));
940
+ for (let i = 0; i < trozos.length; i++) {
941
+ await this.put({
942
+ id: (0, hash_js_1.chunkId)(`session:${log.session_id}`, trozos[i]),
943
+ neuron: `session:${log.session_id}`,
944
+ name: log.session_id,
945
+ text: trozos[i],
946
+ keys: '',
947
+ kind: 'session',
948
+ eid: `${log.session_id}#${i}`,
949
+ domain: '',
950
+ tags: '',
951
+ added: log.date || '',
952
+ heat: 0,
953
+ });
954
+ }
955
+ }
798
956
  async put(doc) {
799
957
  try {
800
958
  await (0, orama_1.insert)(this.db, doc);
@@ -815,8 +973,9 @@ class SearchEngine {
815
973
  }
816
974
  ids.add(String(doc.id));
817
975
  // Headers are name + tags: lexical only, they would only add noise to
818
- // the vector index.
819
- if (this.semantic && doc.kind !== 'header') {
976
+ // the vector index. Session logs stay lexical too, for now: the words a
977
+ // day was described with are the words it is asked about.
978
+ if (this.semantic && doc.kind !== 'header' && doc.kind !== 'session') {
820
979
  this.pendingEmbed.set(String(doc.id), String(doc.text || ''));
821
980
  }
822
981
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":";AAAA,oEAAoE;AACpE,uEAAuE;AACvE,EAAE;AACF,mCAAmC;AACnC,2EAA2E;AAC3E,sEAAsE;AACtE,uEAAuE;AACvE,0EAA0E;AAC1E,4EAA4E;AAC5E,6EAA6E;AAC7E,EAAE;AACF,6EAA6E;AAC7E,6EAA6E;AAC7E,6EAA6E;AAC7E,sEAAsE;;;;;;AAEtE,wCAAmF;AAEnF,0DAA6B;AAC7B,0CAAoH;AACpH,8CAAmD;AACnD,+CAAqD;AACrD,+CAAiF;AACjF,2CAAyC;AAIzC;;;;;;;;;GASG;AACU,QAAA,aAAa,GAAG,CAAC,CAAC,CAAG,wEAAwE;AAE1G,yEAAyE;AACzE,MAAM,aAAa,GAAG,IAAI,CAAC;AAC3B,iFAAiF;AACjF,MAAM,WAAW,GAAG,IAAI,CAAC;AACzB,8EAA8E;AAC9E,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,+DAA+D;AAC/D,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,8EAA8E;AAC9E,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,iGAAiG;AACjG,MAAM,KAAK,GAAG,EAAE,CAAC;AACjB;;;;;;;GAOG;AACH,MAAM,sBAAsB,GAAG,IAAI,CAAC;AACpC,6EAA6E;AAC7E,SAAS,aAAa;IACpB,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC;AAC5E,CAAC;AACD,yEAAyE;AACzE,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B;;;;GAIG;AACH,MAAM,YAAY,GAAG,GAAG,CAAC;AACzB,SAAS,QAAQ,CAAC,IAAY,EAAE,IAAY,EAAE,KAAa,EAAE,GAAY;IACvE,OAAO;QACL,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,IAAI;QACJ,KAAK;QACL,OAAO,EAAE,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI;QACxF,KAAK,EAAE,IAAI,CAAC,MAAM;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,MAAM,GAAG;IACb,EAAE,EAAE,QAAiB,EAAQ,iDAAiD;IAC9E,MAAM,EAAE,QAAiB;IACzB,IAAI,EAAE,QAAiB;IACvB,IAAI,EAAE,QAAiB;IACvB,IAAI,EAAE,QAAiB,EAAM,wDAAwD;IACrF,IAAI,EAAE,QAAiB,EAAM,kDAAkD;IAC/E,GAAG,EAAE,QAAiB,EAAO,0FAA0F;IACvH,MAAM,EAAE,QAAiB;IACzB,IAAI,EAAE,QAAiB;IACvB,KAAK,EAAE,QAAiB;IACxB,IAAI,EAAE,QAAiB;CACxB,CAAC;AA2BF,MAAa,YAAY;IA2BH;IA1BZ,EAAE,GAAoB,IAAI,CAAC;IAC3B,QAAQ,GAAG,CAAC,CAAC;IACb,KAAK,GAAG,KAAK,CAAC;IACd,YAAY,GAA0B,IAAI,CAAC;IAEnD;;;;;;;OAOG;IACK,cAAc,GAAG,IAAI,GAAG,EAAuB,CAAC;IAExD;;;;OAIG;IACK,QAAQ,GAAyB,IAAI,CAAC;IAC9C,gEAAgE;IACxD,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IACjD,gEAAgE;IACxD,SAAS,GAAyB,IAAI,CAAC;IAE/C,YAAoB,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;QAC9B,IAAI,IAAA,6BAAe,GAAE,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,2BAAa,CAAC,mBAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,aAAa;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,kEAAkE;IAElE;;;;;;;;OAQG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3B,qEAAqE;YACrE,sEAAsE;YACtE,mBAAmB;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAEjD,IAAI,MAAM,IAAA,kBAAU,EAAC,SAAS,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,gBAAQ,EAAc,SAAS,CAAC,CAAC;gBACtD,IAAI,MAAM,IAAI,MAAM,CAAC,CAAC,KAAK,qBAAa,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;oBACnF,IAAI,CAAC,EAAE,GAAG,IAAA,cAAM,EAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBACrC,IAAA,YAAI,EAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;oBAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAC5C,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC;wBAAE,OAAO;oBAC9C,+DAA+D;oBAC/D,gEAAgE;gBAClE,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,uCAAuC;YACzC,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,OAAO;QACnB,MAAM,OAAO,GAAG,MAAM,IAAA,iBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAChE,IAAI,OAAO,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAA,mBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5D,0EAA0E;QAC1E,OAAO,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,EAAE,GAAG,IAAA,cAAM,EAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAE5B,MAAM,GAAG,GAAG,MAAM,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEzD,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,gBAAQ,EAAS,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnE,IAAI,CAAC,MAAM;oBAAE,SAAS;gBACtB,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,sCAAsC;YACxC,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,0EAA0E;QAC1E,yDAAyD;QACzD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC5F,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,MAAc;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QAErB,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACtC,oEAAoE;QACpE,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QACrB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO;QAC/C,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,6EAA6E;IAC7E,KAAK,CAAC,eAAe;QACnB,IAAI,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,CAAC,SAAS,CAAC;IAC3C,CAAC;IAED,mCAAmC;IACnC,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QACrB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,MAAM,OAAO,GAAgB,EAAE,CAAC,EAAE,qBAAa,EAAE,IAAI,EAAE,IAAA,YAAI,EAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QACvE,yEAAyE;QACzE,iEAAiE;QACjE,MAAM,IAAA,iBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,+CAA+C,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACvC,CAAC;IAED,kEAAkE;IAElE;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CACV,KAAa,EACb,OAAkE;QAElE,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,CAAC;QAExB,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,IAAA,wBAAU,EAAC,KAAK,CAAC,CAAC;QAChC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAElC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAoB,CAAC;QAE7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAEhC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAEhC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,GAAG,CAAC,QAAe,CAAC;gBAChC,MAAM,GAAG,GAAG,GAAG,CAAC,EAAY,CAAC;gBAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEnD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACnC,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,KAAK,IAAI,UAAU,CAAC;oBAC7B,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE;wBAChB,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE;wBAClB,KAAK,EAAE,GAAG,CAAC,KAAK;wBAChB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC;wBACnB,KAAK,EAAE,UAAU;wBACjB,OAAO,EAAE,CAAC;qBACX,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,gBAAgB;QAChB,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;YAC9C,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QACpE,CAAC;QAED,yEAAyE;QACzE,kEAAkE;QAClE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEnC,sCAAsC;QACtC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;QAC/C,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;gBACtB,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,MAAM,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAE7E,sEAAsE;QACtE,sEAAsE;QACtE,IAAI,OAAO,EAAE,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC;QAClE,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CACd,OAAiB,EACjB,UAAoE,EAAE;QAEtE,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACtC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CACnF,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,GAAG,EAA6G,CAAC;QACnI,MAAM,MAAM,GAAG,CAAC,CAAe,EAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC,aAAa,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QAChI,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACrB,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;gBACjC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC/B,IAAI,CAAC,CAAC,EAAE,CAAC;oBACP,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,UAAU,KAAK,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;oBAC9F,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC;oBAChB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,UAAU,KAAK,QAAQ,CAAC;oBACjD,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;wBACnB,sEAAsE;wBACtE,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,KAAK,CAAC,CAAC,gBAAgB;4BAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;wBACxG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;wBACX,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;oBACjB,CAAC;yBAAM,IAAI,CAAC,CAAC,gBAAgB,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBAC1D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5C,CAAC;gBACH,CAAC;gBACD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,IAAI,EAAE;oBAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC/E,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;QAC3C,IAAI,OAAO,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;QAC9D,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;aACvB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;aACf,GAAG,CAAC,CAAC,CAAC,EAAE;YACP,MAAM,CAAC,GAAiB,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YACnG,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;YAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC,aAAa,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YACrG,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;iBAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC;iBAC5G,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACf,IAAI,IAAI,CAAC,MAAM;gBAAE,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC;;gBAClC,OAAO,CAAC,CAAC,YAAY,CAAC;YAC3B,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,mBAAmB,CACvB,OAAiB,EACjB,UAA+C,EAAE;QAEjD,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACtE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAC/E,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,YAAY,CACxB,KAAa,EACb,QAA+B,EAC/B,MAAe;QAEf,IAAI,GAAkB,CAAC;QACvB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,KAAK,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAG,yCAAyC;QACrD,CAAC;QACD,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;QAC9B,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;QACxC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE7B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YACpB,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAAE,SAAS;YACjC,IAAI,GAAQ,CAAC;YACb,IAAI,CAAC;gBAAC,GAAG,GAAG,MAAM,IAAA,eAAO,EAAC,IAAI,CAAC,EAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,GAAG,GAAG,SAAS,CAAC;YAAC,CAAC;YAClF,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;gBAAE,SAAS;YAC5C,IAAI,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS;YAC9C,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACjB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI;gBACtE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;aAChG,CAAC,CAAC;QACL,CAAC;QAED,MAAM,GAAG,GAAG,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;aAChC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;aAChC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxD,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC5B,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;YACnC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1B,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1B,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC5E,IAAI,CAAC,KAAK,SAAS;gBAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,mEAAmE;IAC3D,KAAK,CAAC,eAAe;QAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAC3D,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;YAAE,OAAO;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;QAC1E,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,kBAAkB,CAC9B,UAAwB,EACxB,KAAa,EACb,cAAsB;QAEtB,wEAAwE;QACxE,yDAAyD;QACzD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAEvE,MAAM,UAAU,GAAkD,EAAE,CAAC;QAErE,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAClC,IAAI,MAAM,GAAkB,IAAI,CAAC;YACjC,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,IAAA,gBAAQ,EAAS,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YACrE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,GAAG,KAAK,CAAC,CAAG,+CAA+C;YACpE,CAAC;YAED,IAAI,OAAO,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC/B,gEAAgE;gBAChE,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBACxC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,SAAS;YACX,CAAC;YAED,MAAM,KAAK,GAAe,EAAE,CAAC;YAC7B,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,OAAO,IAAI,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;oBAC/E,UAAU,GAAG,IAAI,CAAC;YACzB,CAAC;YAED,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;gBACzB,8CAA8C;gBAC9C,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAqB,CAAC,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAEjC,yEAAyE;YACzE,oEAAoE;YACpE,yEAAyE;YACzE,kEAAkE;YAClE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YAEzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,aAAa,EAAE,WAAW,CAAC,CAAC;YAE3E,mEAAmE;YACnE,qEAAqE;YACrE,gDAAgD;YAChD,MAAM,aAAa,GAAG,cAAc,IAAI,CAAC;gBACvC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC;gBACtB,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,GAAG,cAAc,IAAI,GAAG,CAAC;YACpE,MAAM,MAAM,GAAG,aAAa,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,eAAe,CAAC;YAE3E,UAAU,CAAC,IAAI,CAAC;gBACd,CAAC,EAAE;oBACD,SAAS,EAAE,OAAO,CAAC,MAAM;oBACzB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI;oBACrE,gBAAgB,EAAE,OAAO,CAAC,IAAI;oBAC9B,YAAY,EAAE,OAAO,CAAC,IAAI;oBAC1B,aAAa,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;oBAClC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjD,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,aAAa,EAAE,OAAO,CAAC,OAAO;oBAC9B,WAAW,EAAE,cAAc;oBAC3B,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;oBACtC,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/E,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChD;gBACD,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAEvC,wEAAwE;QACxE,yEAAyE;QACzE,sEAAsE;QACtE,oCAAoC;QACpC,KAAK,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,EAAE,CAAC;YAC9D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,sEAAsE;gBACtE,6CAA6C;gBAC7C,CAAC,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACK,SAAS,CAAC,KAAe,EAAE,MAAc;QAC/C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,MAAM;gBACT,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;YAChF,KAAK,OAAO;gBACV,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACzF,KAAK,MAAM;gBACT,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACxF,KAAK,KAAK;gBACR,OAAO,MAAM,CAAC,GAAG,EAAE,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC;YACzC,KAAK,SAAS;gBACZ,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3F,KAAK,YAAY;gBACf,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzD,KAAK,UAAU;gBACb,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;oBACvC,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAClE,OAAO,KAAK,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL;gBACE,6DAA6D;gBAC7D,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAED,kEAAkE;IAElE;;;;;OAKG;IACK,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,MAAe;QACpD,MAAM,GAAG,GAAG,KAAK,EAAE,SAAiB,EAAE,OAAe,IAAI,EAAE,EAAE;YAC3D,MAAM,MAAM,GAAQ;gBAClB,IAAI,EAAE,IAAI;gBACV,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC5C,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;gBAC7C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAClC,SAAS;aACV,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,IAAA,cAAM,EAAC,IAAI,CAAC,EAAc,EAAE,MAAM,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAa,CAAC;YAC/B,kEAAkE;YAClE,oEAAoE;YACpE,2DAA2D;YAC3D,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC,QAAgB,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjF,CAAC,CAAC;QAEF,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAExB,qEAAqE;QACrE,sEAAsE;QACtE,uEAAuE;QACvE,MAAM,KAAK,GAAG,IAAA,sBAAQ,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAe,CAAC;YACrC,KAAK,MAAM,CAAC,IAAI,IAAI;gBAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAClD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,KAAK,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAChC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBACxC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;wBAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YACD,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC1C,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gDAAgD;IACxC,KAAK,CAAC,kBAAkB,CAAC,MAAc;QAC7C,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QAErB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,GAAG;YACX,MAAM,EAAE,MAAM,CAAC,EAAE;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE;YAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,SAAS;YAClC,IAAI;YACJ,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACxD,CAAC;QAEF,wEAAwE;QACxE,6DAA6D;QAC7D,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC;aACnD,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,KAAK,CAAC,CAAC;QACf,MAAM,IAAI,CAAC,GAAG,CAAC;YACb,GAAG,IAAI;YACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,UAAU,UAAU,EAAE,CAAC;YAC9C,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,EAAE;YACP,KAAK,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;SAC5B,CAAC,CAAC;QAEH,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI;gBAAE,SAAS;YAClC,IAAI,SAAS,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC9B,MAAM,IAAI,CAAC,GAAG,CAAC;gBACb,GAAG,IAAI;gBACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC;gBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;gBACjC,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,IAAA,gBAAM,EAAC,IAAI,CAAC,IAAI,CAAC;gBACjC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;aACxB,CAAC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YAC9C,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI;gBAAE,SAAS;YAC1C,IAAI,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC;gBAAE,SAAS;YAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS;gBAC7B,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,MAAM,QAAQ,CAAC,SAAS,EAAE;gBAC5C,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClB,MAAM,IAAI,CAAC,GAAG,CAAC;gBACb,GAAG,IAAI;gBACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;gBAC5B,IAAI;gBACJ,IAAI,EAAE,UAAU;gBAChB,+DAA+D;gBAC/D,mEAAmE;gBACnE,GAAG,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAA,gBAAO,EAAC,QAAQ,CAAC,IAAI,CAAC;gBAC1C,KAAK,EAAE,QAAQ,CAAC,IAAI,IAAI,EAAE;aAC3B,CAAC,CAAC;QACL,CAAC;QAED,wEAAwE;QACxE,sCAAsC;QACtC,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,IAAA,gBAAO,EAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEpE,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC5C,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,IAAI,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC;gBAAE,SAAS;YAC5C,MAAM,IAAI,CAAC,GAAG,CAAC;gBACb,GAAG,IAAI;gBACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC;gBAC/B,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,GAAG,EAAE,IAAA,gBAAO,EAAC,OAAO,CAAC;gBACrB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;aACtB,CAAC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YAC5C,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,MAAM,IAAI,CAAC,GAAG,CAAC;gBACb,GAAG,IAAI;gBACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;gBAC5B,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,YAAY;gBAClB,GAAG,EAAE,IAAA,gBAAO,EAAC,IAAI,CAAC;gBAClB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC;aACnB,CAAC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,IAAI,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC;gBAAE,SAAS;YACxC,MAAM,IAAI,CAAC,GAAG,CAAC;gBACb,GAAG,IAAI;gBACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,SAAS,GAAG,EAAE,CAAC;gBACtC,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,OAAO;gBACb,GAAG,EAAE,IAAA,gBAAO,EAAC,GAAG,CAAC;gBACjB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;aAClB,CAAC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,IAAI,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC;gBAAE,SAAS;YACzC,MAAM,IAAI,CAAC,GAAG,CAAC;gBACb,GAAG,IAAI;gBACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,IAAI,EAAE,CAAC;gBACtC,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,IAAA,gBAAO,EAAC,IAAI,CAAC;gBAClB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC;aACnB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,GAAG,CAAC;gBACb,GAAG,IAAI;gBACP,EAAE,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,EAAE,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAChD,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI;gBACrB,IAAI,EAAE,KAAK;gBACX,GAAG,EAAE,KAAK;gBACV,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE;aAChC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,GAAG,CAAC,GAA4B;QAC5C,IAAI,CAAC;YACH,MAAM,IAAA,cAAM,EAAC,IAAI,CAAC,EAAc,EAAE,GAAU,CAAC,CAAC;YAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,sEAAsE;QACxE,CAAC;QACD,uEAAuE;QACvE,mEAAmE;QACnE,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACvC,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACxB,sEAAsE;QACtE,oBAAoB;QACpB,IAAI,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,kBAAkB,CAAC,QAAgB;QAC/C,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,kEAAkE;gBAClE,8DAA8D;gBAC9D,MAAM,KAAK,GAAG,MAAM,IAAA,cAAM,EAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACxC,IAAI,KAAK;oBAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAC5D,CAAC;YAAC,MAAM,CAAC;gBACP,gBAAgB;YAClB,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACK,eAAe,CAAC,IAAa;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,GAAI,IAAY,EAAE,IAAI,EAAE,IAAI,CAAC;YACvC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YACpD,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;YAC5B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAU,EAAE,CAAC;gBAC/C,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM;oBAAE,SAAS;gBAC7C,IAAI,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC9C,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;oBACxB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC3C,CAAC;gBACD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1B,CAAC;YACD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,IAAI,CAAC,YAAY;YAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAmC,CAAC,CAAC,CAAC;QACvE,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACxB,uDAAuD;QACvD,IAAI,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,UAAU;YAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC/E,CAAC;IAEO,SAAS,CAAC,IAAa;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,GAAI,IAAY,EAAE,uBAAuB,EAAE,cAAc,CAAC;YACrE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC,MAAM,CAAC;YAC9C,MAAM,IAAI,GAAI,IAAY,EAAE,IAAI,EAAE,IAAI,CAAC;YACvC,IAAI,IAAI;gBAAE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,gEAAgE;QAClE,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,eAAe;QAC3B,IAAI,CAAC;YACH,MAAM,IAAA,kBAAU,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;CACF;AA9zBD,oCA8zBC;AAED,+EAA+E;AAC/E,SAAS,SAAS,CAAC,IAAU;IAC3B,OAAO,IAAI,CAAC,MAAM,KAAK,YAAY,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,MAAc,EAAE,IAAY;IAChD,OAAO,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,IAAA,gBAAO,EAAC,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+BpE;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU1D,CAAC;AAuCF,wBAAgB,YAAY,IAAI,SAAS,CAihDxC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+BpE;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU1D,CAAC;AAuCF,wBAAgB,YAAY,IAAI,SAAS,CAwjDxC"}
package/dist/server.js CHANGED
@@ -247,7 +247,8 @@ function createServer() {
247
247
  'supersedes instead of adding a sibling (two versions of one fact compete on recall as equals). ' +
248
248
  'Read what you need, not the neuron: crbro_recall finds the entry by content; crbro_inspect view=neuron ' +
249
249
  'gives an index (id, kind, preview per entry) and entries=[ids] returns just those in full. Ask for a ' +
250
- 'whole neuron only when you truly need all of it. ' +
250
+ 'whole neuron only when you truly need all of it. Recall also lists the day logs that mention the ' +
251
+ 'question (sessions_matched); read one with crbro_inspect view=sessions session=<id>. ' +
251
252
  'Structure — paths, what serves what, traps — goes in crbro_map, not in facts; anything derivable ' +
252
253
  'from the repo or git history is not worth storing. Write facts dense and self-contained: they are ' +
253
254
  'recalled without this conversation, and add keywords: the words a future question may use that ' +
@@ -285,6 +286,7 @@ function createServer() {
285
286
  neuron: zod_1.z.string().optional().describe('view=neuron only, required there: neuron id (e.g. "project_octochat") or name (e.g. "OctoChat").'),
286
287
  detail: zod_1.z.enum(['index', 'full']).optional().describe('view=neuron: "index" (default) returns the header, counts and every entry as id, kind, date and a short preview — cheap, then read what matters with `entries`. "full" returns the whole neuron with facts paged by limit/offset; large neurons are shortened and say so.'),
287
288
  entries: zod_1.z.array(zod_1.z.string()).optional().describe('view=neuron: read these entries in full — their ids from the index or from crbro_recall, or their exact text. Any kind: fact, decision, pattern, preference, error, debt, or "map" for the system map. Ignores detail.'),
289
+ session: zod_1.z.string().optional().describe('view=sessions: read one day log whole by its id, e.g. "session_2026-09-07" (from crbro_recall sessions_matched or the list). Ignores limit and offset.'),
288
290
  domain: zod_1.z.string().optional().describe('view=neurons: exact domain match, e.g. "proyectos-web".'),
289
291
  type: zod_1.z.enum(NEURON_TYPES).optional().describe('view=neurons: only this neuron type.'),
290
292
  min_heat: zod_1.z.number().min(0).max(1).optional().describe('view=neurons: minimum heat, 0.0-1.0. Heat blends access frequency, recency and connectivity.'),
@@ -321,6 +323,7 @@ function createServer() {
321
323
  }).loose().optional(),
322
324
  sessions: zod_1.z.object({
323
325
  total: zod_1.z.number(),
326
+ session: zod_1.z.string().optional(),
324
327
  sessions: zod_1.z.array(zod_1.z.object({
325
328
  session_id: zod_1.z.string().optional(), date: zod_1.z.string().optional(), summary: zod_1.z.string().optional(),
326
329
  topics_touched: zod_1.z.array(zod_1.z.string()).optional(),
@@ -516,6 +519,22 @@ function createServer() {
516
519
  return done({ total, offset, returned: rows.length, has_more: offset + rows.length < total, neurons: rows });
517
520
  }
518
521
  if (args.view === 'sessions') {
522
+ // One log by id, whole: where a recall session hit leads.
523
+ if (args.session) {
524
+ // Same id rules as crbro_forget — with or without the prefix, and
525
+ // never a path: the reference used to be joined into one as it came.
526
+ const log = await hippocampus.readSession(args.session);
527
+ if (!log) {
528
+ return textResult(`No session log "${args.session}". Ids look like session_2026-09-07; list them with view=sessions.`, true);
529
+ }
530
+ // Same shape as the list, so the output schema holds; total stays
531
+ // the brain's, so "total: 1" never reads as a one-day diary.
532
+ const totalSessions = (await brain.getManifest()).total_sessions;
533
+ return done({ total: totalSessions, returned: 1, offset: 0, has_more: false, session: log.session_id, sessions: [log] }, {
534
+ stringCap: budget_js_1.DEFAULT_BUDGET_CHARS - 2_000,
535
+ howToGetMore: 'This is one full session log; a longer one is only readable from disk, in hippocampus/<session_id>.json.',
536
+ });
537
+ }
519
538
  const limit = Math.min(Math.max(args.limit ?? 10, 1), 100);
520
539
  const offset = Math.max(args.offset ?? 0, 0);
521
540
  const pagina = (await hippocampus.listSessions(limit + offset)).slice(offset, offset + limit);
@@ -672,7 +691,7 @@ function createServer() {
672
691
  inputSchema: {
673
692
  query: zod_1.z.string().describe('What to look for, e.g. "Firebase authentication setup". Fewer, distinctive terms beat full sentences.'),
674
693
  queries: zod_1.z.array(zod_1.z.string()).optional().describe('Alternative phrasings of the same question, searched together with query and fused by rank. Use synonyms, the other language and the concrete product name; 2-4 is plenty.'),
675
- domain: zod_1.z.string().optional().describe('Only neurons in this domain (exact match, e.g. "proyectos-web").'),
694
+ domain: zod_1.z.string().optional().describe('Only neurons in this domain (exact match, e.g. "proyectos-web"). Day logs have no domain: sessions_matched is listed regardless.'),
676
695
  limit: zod_1.z.number().int().positive().optional().describe('Max neurons returned (default 5, ranked; ask for more only when the top five did not answer).'),
677
696
  },
678
697
  outputSchema: {
@@ -692,6 +711,8 @@ function createServer() {
692
711
  returned: zod_1.z.number().optional(),
693
712
  matched_neurons: zod_1.z.number().optional().describe('Neurons with any hit before limit; total_results is what came back'),
694
713
  has_more: zod_1.z.boolean().optional(),
714
+ sessions_matched: zod_1.z.array(zod_1.z.object({}).loose()).optional(),
715
+ sessions_total: zod_1.z.number().optional(),
695
716
  hint: zod_1.z.string(),
696
717
  truncated: zod_1.z.object({}).loose().optional(),
697
718
  },
@@ -701,7 +722,7 @@ function createServer() {
701
722
  // Five by default, down from ten: results are ranked and each one
702
723
  // carries its entry, so ten cost ~12,000 tokens on a dense brain for
703
724
  // answers that live in the top three (recall@3 is the metric).
704
- const { results, matched_neurons } = await searchEngine.searchManyWithStats([args.query, ...(args.queries || [])], { domain: args.domain, limit: args.limit ?? 5 });
725
+ const { results, matched_neurons, sessions, sessions_total } = await searchEngine.searchManyWithStats([args.query, ...(args.queries || [])], { domain: args.domain, limit: args.limit ?? 5 });
705
726
  // A hit carries its entry, but not without limit: one 6,000-character
706
727
  // fact must not cost more than the five results around it. Past the
707
728
  // cap the opening comes back, declared, and entry_id reads the rest.
@@ -729,11 +750,20 @@ function createServer() {
729
750
  matched_neurons,
730
751
  has_more: sobran > 0,
731
752
  results: rows,
732
- hint: results.length === 0
733
- ? 'Nothing matched. Try fewer, more distinctive words - names, ids, filenames - rather than a full sentence.'
753
+ // The diary, searched since 2.2: day logs whose summary mentions the
754
+ // question, in a list of their own so narrative never outranks a fact.
755
+ // sessions_total: how many days had a hit; three shown never reads as three.
756
+ ...(sessions.length ? { sessions_matched: sessions.map(s => ({ ...s, date: dia(s.date) })), sessions_total } : {}),
757
+ hint: (results.length === 0
758
+ ? (sessions.length
759
+ // A day mentions it and no fact does: point at the day, not at rephrasing.
760
+ ? `No stored fact matched; ${sessions_total} day log${sessions_total === 1 ? '' : 's'} mention it (sessions_matched): read one whole with crbro_inspect view=sessions session=<session_id>. If it is a fact worth keeping, save it with crbro_learn.`
761
+ : 'Nothing matched. Try fewer, more distinctive words - names, ids, filenames - rather than a full sentence.')
734
762
  : 'weak: verify. Newer wins on conflict. entry_id → crbro_inspect view=neuron entries=[id]. has_map → crbro_map first.'
735
763
  + (sobran > 0 ? ` ${sobran} more neuron${sobran === 1 ? '' : 's'} matched: raise limit or narrow the query.` : '')
736
- + (cortados > 0 ? ' content_truncated → read the entry by entry_id.' : ''),
764
+ + (cortados > 0 ? ' content_truncated → read the entry by entry_id.' : '')
765
+ + (sessions.length ? ' sessions_matched: day logs that mention it; read one whole with crbro_inspect view=sessions session=<session_id>.' : ''))
766
+ + (sessions_total > sessions.length ? ` ${sessions_total - sessions.length} more day${sessions_total - sessions.length === 1 ? '' : 's'} mention it: narrow the query.` : ''),
737
767
  };
738
768
  // Recall is the one read whose size the caller sets, with limit: ten
739
769
  // results already cost ~12,000 tokens on a dense brain because each
@@ -874,7 +904,7 @@ function createServer() {
874
904
  const forgetToken = (n) => (0, hash_js_1.contentHash)(`forget:${n.id}:${(n.facts || []).length}:${(n.decisions || []).length}:${(n.patterns || []).length}:${(n.connections || []).length}`, 8);
875
905
  server.registerTool('crbro_forget', {
876
906
  title: 'Forget for good',
877
- description: 'Write, destructive: remove from disk after a quarantine copy (backup returned). Stage 3 of the lifecycle: something must not exist on disk at all — a credential, personal data, a whole neuron → crbro_forget; for knowledge that merely stopped being true use crbro_revise, which keeps the history. One mode per call. facts: delete entries of a neuron (facts, decisions, patterns, preferences, errors, debts, the map) by id or exact text. entire: delete the whole neuron and its synapses — call it without confirm_token first: the dry run reports what would happen and returns confirm_token. Show the user, get agreement, call again with the token; a stale token is refused. restore: bring back the newest quarantine copy. merge_into: union a neuron into another, rewire synapses, delete the source. session: delete one day\'s log. entire and merge_into refuse a shared neuron — crbro_share unshare first. A removed credential must still be rotated.',
907
+ description: 'Write, destructive: remove from disk after a quarantine copy (backup returned). Stage 3 of the lifecycle: something must not exist on disk at all — a credential, personal data, a whole neuron → crbro_forget; for knowledge that merely stopped being true use crbro_revise, which keeps the history. One mode per call. facts: delete entries of a neuron (facts, decisions, patterns, preferences, errors, debts, the map) by id or exact text. entire: delete the whole neuron and its synapses — call it without confirm_token first: the dry run reports what would happen and returns confirm_token. Show the user, get agreement, call again with the token; a stale token is refused. restore: bring back the newest quarantine copy. merge_into: union a neuron into another, rewire synapses, delete the source. session: delete one day\'s log, search index included (quarantine keeps the text). entire and merge_into refuse a shared neuron — crbro_share unshare first. A removed credential must still be rotated.',
878
908
  inputSchema: forgetSchema,
879
909
  annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false },
880
910
  }, async (args) => {
@@ -882,6 +912,12 @@ function createServer() {
882
912
  // ── session ──
883
913
  if (args.session !== undefined) {
884
914
  const r = await hippocampus.forgetSession(args.session);
915
+ // The diary is indexed (2.2): the log's lines leave with it, now and
916
+ // on disk, or recall would keep quoting a day that was deleted. A
917
+ // rebuild, not a removal: remove() keeps the words in the on-disk
918
+ // vocabulary, and a forgotten day may be the one with a credential.
919
+ if (r.removed)
920
+ await searchEngine.rebuild();
885
921
  return jsonResult({
886
922
  ...r,
887
923
  message: r.removed
@@ -1151,7 +1187,7 @@ function createServer() {
1151
1187
  title: 'Consolidate the session',
1152
1188
  description: 'Write: close the session — the only way to log a session. Call it before the conversation ends. Persists pending knowledge and index writes, logs the session from summary (credentials stripped, kinds in redacted), sets the context\'s last_session, recalculates heat, links the neurons written this session with weak temporal synapses (synapses_updated), updates the manifest and syncs shared team spaces (offline is normal). Returns session_id, facts_saved, decisions_saved, topics_touched and per-space sync state; topics_touched logs neurons you only read. Not consolidating loses the session\'s knowledge. Mid-session open items go to crbro_context; housekeeping is crbro_maintenance.',
1153
1189
  inputSchema: {
1154
- summary: zod_1.z.string().describe('A headline paragraph, not a report: what was done, decided and left open, in a few sentences. The facts themselves belong in crbro_learn, where recall finds them; this text is re-read at every boot. Stored whole, after credential redaction. Session logs are not searched by recall: what only lives here is invisible to it.'),
1190
+ summary: zod_1.z.string().describe('A headline paragraph, not a report: what was done, decided and left open, in a few sentences. The facts themselves belong in crbro_learn, where recall finds them; this text is re-read at every boot. Stored whole, after credential redaction, and searchable by recall as a session hit (sessions_matched). Facts still belong in crbro_learn: a hit in a log is narrative, a fact answers.'),
1155
1191
  topics_touched: zod_1.z.array(zod_1.z.string()).optional().describe('Neuron ids this session used WITHOUT writing (recalled, inspected, discussed). Added to the log\'s topics_touched next to the ids written this session; write counters stay real. Unknown ids are dropped and listed in topics_unknown.'),
1156
1192
  },
1157
1193
  annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
@@ -1171,6 +1207,11 @@ function createServer() {
1171
1207
  const SUMMARY_LONG = 3_000;
1172
1208
  const summary = (0, secrets_js_1.redact)(args.summary).text;
1173
1209
  const result = await maintenance.consolidate(summary, { topicsTouched: args.topics_touched });
1210
+ // The day just logged joins the search index at once (2.2): the diary
1211
+ // is searchable, and a recall tomorrow can point at today.
1212
+ const logHoy = await (0, fs_js_1.readJSON)(brain.paths.session(result.session_id));
1213
+ if (logHoy)
1214
+ await searchEngine.indexSession(logHoy);
1174
1215
  // Flush any index writes still sitting in the debounce window, so a
1175
1216
  // session that ends right after a learn does not lose it.
1176
1217
  await searchEngine.flush();
@@ -1184,7 +1225,7 @@ function createServer() {
1184
1225
  message: 'Session consolidated. Brain state persisted.',
1185
1226
  summary_chars: summary.length,
1186
1227
  ...(summary.length > SUMMARY_LONG ? {
1187
- note: `Long summary (${summary.length} characters). Session logs are not searched by crbro_recall: anything that lives only here is invisible to it. Store the facts with crbro_learn; boot reads only the first 240 characters of this text.`,
1228
+ note: `Long summary (${summary.length} characters). Recall searches day logs too (sessions_matched), but a hit there is a paragraph of narrative: store the facts with crbro_learn so they come back as facts, with their topic and date. Boot reads only the first 240 characters of this text.`,
1188
1229
  } : {}),
1189
1230
  });
1190
1231
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "crbro-memory",
3
- "version": "2.1.2",
3
+ "version": "2.2.0",
4
4
  "mcpName": "io.github.Octonove/crbro-memory",
5
5
  "description": "CRBRO — Persistent neural memory for AI. A biological file-based MCP server that gives your AI long-term memory across sessions.",
6
6
  "main": "dist/index.js",