bikky 0.3.0 → 0.3.1

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/dist/config.d.ts CHANGED
@@ -32,6 +32,11 @@ export interface DaemonConfig {
32
32
  relation_inference_enabled: boolean;
33
33
  staleness_threshold_days: number;
34
34
  }
35
+ export interface QdrantClientConfig {
36
+ timeout_ms: number;
37
+ retries: number;
38
+ retry_base_delay_ms: number;
39
+ }
35
40
  export interface WatcherConfig {
36
41
  copilot: {
37
42
  enabled: boolean;
@@ -51,6 +56,7 @@ export interface BikkyConfig {
51
56
  llm: LLMConfig;
52
57
  daemon: DaemonConfig;
53
58
  watchers: WatcherConfig;
59
+ qdrant_client: QdrantClientConfig;
54
60
  }
55
61
  declare const DEFAULTS: BikkyConfig;
56
62
  export declare function loadConfig(): BikkyConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,eAAO,MAAM,SAAS,QAAoC,CAAC;AAC3D,eAAO,MAAM,WAAW,QAAsC,CAAC;AAC/D,eAAO,MAAM,OAAO,QAA+B,CAAC;AACpD,eAAO,MAAM,SAAS,QAAgC,CAAC;AACvD,eAAO,MAAM,QAAQ,QAAqC,CAAC;AAM3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,0BAA0B,EAAE,OAAO,CAAC;IACpC,wBAAwB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,eAAe,CAAC;IAC3B,GAAG,EAAE,SAAS,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,aAAa,CAAC;CACzB;AAMD,QAAA,MAAM,QAAQ,EAAE,WAgCf,CAAC;AA0BF,wBAAgB,UAAU,IAAI,WAAW,CAuDxC;AAED,mDAAmD;AACnD,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAIpD;AAED,yCAAyC;AACzC,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,eAAO,MAAM,SAAS,QAAoC,CAAC;AAC3D,eAAO,MAAM,WAAW,QAAsC,CAAC;AAC/D,eAAO,MAAM,OAAO,QAA+B,CAAC;AACpD,eAAO,MAAM,SAAS,QAAgC,CAAC;AACvD,eAAO,MAAM,QAAQ,QAAqC,CAAC;AAM3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,0BAA0B,EAAE,OAAO,CAAC;IACpC,wBAAwB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,eAAe,CAAC;IAC3B,GAAG,EAAE,SAAS,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,aAAa,CAAC;IACxB,aAAa,EAAE,kBAAkB,CAAC;CACnC;AAMD,QAAA,MAAM,QAAQ,EAAE,WAqCf,CAAC;AA0BF,wBAAgB,UAAU,IAAI,WAAW,CAqExC;AAED,mDAAmD;AACnD,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAIpD;AAED,yCAAyC;AACzC,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAC"}
package/dist/config.js CHANGED
@@ -50,6 +50,11 @@ const DEFAULTS = {
50
50
  copilot: { enabled: true, path: path.join(os.homedir(), ".copilot", "session-state") },
51
51
  claude: { enabled: false, path: path.join(os.homedir(), ".claude", "projects") },
52
52
  },
53
+ qdrant_client: {
54
+ timeout_ms: 10_000,
55
+ retries: 3,
56
+ retry_base_delay_ms: 250,
57
+ },
53
58
  };
54
59
  // ---------------------------------------------------------------------------
55
60
  // Deep merge utility
@@ -124,6 +129,22 @@ export function loadConfig() {
124
129
  config.llm.bedrock_region = process.env.AWS_REGION;
125
130
  if (process.env.AWS_PROFILE)
126
131
  config.aws_profile = process.env.AWS_PROFILE;
132
+ // Qdrant client tuning env overrides
133
+ if (process.env.QDRANT_TIMEOUT_MS) {
134
+ const n = parseInt(process.env.QDRANT_TIMEOUT_MS, 10);
135
+ if (Number.isFinite(n) && n >= 0)
136
+ config.qdrant_client.timeout_ms = n;
137
+ }
138
+ if (process.env.QDRANT_RETRIES) {
139
+ const n = parseInt(process.env.QDRANT_RETRIES, 10);
140
+ if (Number.isFinite(n) && n >= 0)
141
+ config.qdrant_client.retries = n;
142
+ }
143
+ if (process.env.QDRANT_RETRY_BASE_DELAY_MS) {
144
+ const n = parseInt(process.env.QDRANT_RETRY_BASE_DELAY_MS, 10);
145
+ if (Number.isFinite(n) && n >= 0)
146
+ config.qdrant_client.retry_base_delay_ms = n;
147
+ }
127
148
  // Propagate aws_profile into env so both Bedrock clients (LLM + embedding)
128
149
  // pick it up via the SDK's default credential chain.
129
150
  if (config.aws_profile && !process.env.AWS_PROFILE) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAC/D,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACvD,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAgD3D,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,MAAM,QAAQ,GAAgB;IAC5B,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,IAAI;IACpB,UAAU,EAAE,OAAO;IACnB,WAAW,EAAE,IAAI;IACjB,SAAS,EAAE;QACT,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,sBAAsB;QAC7B,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,wBAAwB;QAClC,OAAO,EAAE,IAAI;KACd;IACD,GAAG,EAAE;QACH,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,wBAAwB;QAClC,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,WAAW;KAC5B;IACD,MAAM,EAAE;QACN,iBAAiB,EAAE,CAAC;QACpB,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,EAAE;QACtB,iBAAiB,EAAE,IAAI;QACvB,qBAAqB,EAAE,IAAI;QAC3B,0BAA0B,EAAE,IAAI;QAChC,wBAAwB,EAAE,EAAE;KAC7B;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE;QACtF,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE;KACjF;CACF,CAAC;AAEF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,SAAS,SAAS,CAAoC,IAAO,EAAE,QAAiC;IAC9F,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,GAAI,IAAgC,CAAC,GAAG,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxH,MAAkC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,IAA+B,EAAE,IAA+B,CAAC,CAAC;QACzH,CAAC;aAAM,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAkC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QAClD,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,IAAI,OAAO,GAAuB,IAAI,CAAC;AAEvC,MAAM,UAAU,UAAU;IACxB,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,oBAAoB;IACpB,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,sBAAsB;IACtB,IAAI,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAEvC,oBAAoB;IACpB,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAA4B,CAAC;YAChG,MAAM,GAAG,SAAS,CAAC,MAA4C,EAAE,UAAU,CAA2B,CAAC;QACzG,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,0BAA0B,WAAW,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU;QAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IACvE,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc;QAAE,MAAM,CAAC,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACnF,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB;QAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAEnF,0BAA0B;IAC1B,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAiD,CAAC;IAC9H,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe;QAAE,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IACtF,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC/F,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAAE,MAAM,CAAC,SAAS,CAAC,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;IACnH,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc;QAAE,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAEtF,oBAAoB;IACpB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,YAAqC,CAAC;IACtG,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IACpE,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAC7E,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACvG,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,MAAM,CAAC,GAAG,CAAC,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC/F,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,MAAM,CAAC,GAAG,CAAC,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IAClH,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW;QAAE,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAE1E,2EAA2E;IAC3E,qDAAqD;IACrD,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAC/C,CAAC;IAED,mCAAmC;IACnC,IAAI,MAAM,CAAC,UAAU;QAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjF,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC1E,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAE9D,OAAO,GAAG,MAAM,CAAC;IACjB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,UAAU,CAAC,MAAmB;IAC5C,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACtE,OAAO,GAAG,MAAM,CAAC;AACnB,CAAC;AAED,yCAAyC;AACzC,MAAM,UAAU,WAAW;IACzB,OAAO,GAAG,IAAI,CAAC;AACjB,CAAC;AAED,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"qdrant.d.ts","sourceRoot":"","sources":["../../src/daemon/qdrant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qdrant.d.ts","sourceRoot":"","sources":["../../src/daemon/qdrant.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@
7
7
  import { randomUUID } from "node:crypto";
8
8
  import { loadConfig } from "../config.js";
9
9
  import { embed, initEmbedding } from "../llm/index.js";
10
+ import { QdrantClient } from "../lib/qdrant-client.js";
10
11
  // ---------------------------------------------------------------------------
11
12
  // State
12
13
  // ---------------------------------------------------------------------------
@@ -14,11 +15,13 @@ let qdrantUrl = null;
14
15
  let qdrantApiKey = null;
15
16
  let collection = "bikky";
16
17
  let logFn = () => { };
18
+ let client = null;
17
19
  const setLogger = (fn) => { logFn = fn; };
18
20
  const setEmbeddingConfig = (overrides) => {
19
21
  if (overrides)
20
22
  initEmbedding(overrides);
21
23
  };
24
+ const clientLogAdapter = (level, msg) => logFn(level, msg);
22
25
  // ---------------------------------------------------------------------------
23
26
  // Init — reads credentials from loadConfig()
24
27
  // ---------------------------------------------------------------------------
@@ -39,32 +42,34 @@ const init = () => {
39
42
  });
40
43
  logFn("INFO", `Embedding provider: ${embCfg.provider}/${embCfg.model} (${embCfg.dimensions}d) @ ${embCfg.baseUrl}`);
41
44
  const ready = !!(qdrantUrl && qdrantApiKey);
42
- if (!ready) {
45
+ if (ready) {
46
+ client = new QdrantClient({
47
+ url: qdrantUrl,
48
+ apiKey: qdrantApiKey,
49
+ collection,
50
+ timeoutMs: cfg.qdrant_client.timeout_ms,
51
+ retries: cfg.qdrant_client.retries,
52
+ retryBaseDelayMs: cfg.qdrant_client.retry_base_delay_ms,
53
+ log: clientLogAdapter,
54
+ });
55
+ }
56
+ else {
57
+ client = null;
43
58
  logFn("WARN", "Qdrant client: missing credentials (some memory features disabled)");
44
59
  }
45
60
  return ready;
46
61
  };
47
- const isReady = () => !!(qdrantUrl && qdrantApiKey);
62
+ const isReady = () => !!(qdrantUrl && qdrantApiKey && client);
48
63
  // ---------------------------------------------------------------------------
49
64
  // HTTP requests
50
65
  // ---------------------------------------------------------------------------
51
66
  const qdrantRequest = async (method, urlPath, body) => {
52
- const url = `${qdrantUrl}${urlPath}`;
53
- const opts = {
54
- method,
55
- headers: {
56
- "Content-Type": "application/json",
57
- "api-key": qdrantApiKey,
58
- },
59
- };
60
- if (body)
61
- opts.body = JSON.stringify(body);
62
- const resp = await fetch(url, opts);
63
- if (!resp.ok) {
64
- const text = await resp.text().catch(() => "");
65
- throw new Error(`Qdrant ${method} ${urlPath} failed (${resp.status}): ${text.slice(0, 200)}`);
67
+ if (!client) {
68
+ throw new Error(`Qdrant client not initialized — call init() first (${method} ${urlPath})`);
66
69
  }
67
- return resp.json();
70
+ const result = await client.request(method, urlPath, body);
71
+ // Some Qdrant endpoints return empty bodies on success — preserve old return shape.
72
+ return result ?? {};
68
73
  };
69
74
  // ---------------------------------------------------------------------------
70
75
  // Read methods
@@ -1 +1 @@
1
- {"version":3,"file":"qdrant.js","sourceRoot":"","sources":["../../src/daemon/qdrant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qdrant.js","sourceRoot":"","sources":["../../src/daemon/qdrant.ts"],"names":[],"mappings":"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"}
@@ -35,18 +35,21 @@ declare const getExistingRelations: () => Promise<Set<string>>;
35
35
  /**
36
36
  * Use LLM to infer a relationship label from shared facts.
37
37
  * Returns null if the LLM can't determine a meaningful relationship.
38
+ * The LLM decides directionality — `from` is the subject, `to` is the object.
38
39
  */
39
40
  declare const inferRelation: (entityA: string, entityB: string, sharedFacts: Array<{
40
41
  content: string;
41
42
  category: string;
42
43
  }>) => Promise<{
44
+ from: string;
43
45
  type: string;
46
+ to: string;
44
47
  content: string;
45
48
  } | null>;
46
49
  /**
47
50
  * Store an inferred relation as a memory fact.
48
51
  */
49
- declare const storeRelation: (entityA: string, entityB: string, relationType: string, content: string, sharedFactIds: string[]) => Promise<string>;
52
+ declare const storeRelation: (fromEntity: string, toEntity: string, relationType: string, content: string, sharedFactIds: string[]) => Promise<string>;
50
53
  declare const tick: (config: BikkyConfig) => Promise<void>;
51
54
  /** Reset state (for testing). */
52
55
  declare const _reset: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"relations.d.ts","sourceRoot":"","sources":["../../src/daemon/relations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,KAAK,EAAiB,MAAM,aAAa,CAAC;AAOxD,QAAA,MAAM,SAAS,GAAI,IAAI,KAAK,KAAG,IAAuB,CAAC;AAcvD,2DAA2D;AAC3D,QAAA,MAAM,OAAO,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,MAGvC,CAAC;AAEF,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;GAGG;AACH,QAAA,MAAM,oBAAoB,QAAa,OAAO,CAAC,YAAY,EAAE,CA2E5D,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,oBAAoB,QAAa,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CA8CzD,CAAC;AAqBF;;;GAGG;AACH,QAAA,MAAM,aAAa,GACjB,SAAS,MAAM,EACf,SAAS,MAAM,EACf,aAAa,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,KACxD,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAwClD,CAAC;AAEF;;GAEG;AACH,QAAA,MAAM,aAAa,GACjB,SAAS,MAAM,EACf,SAAS,MAAM,EACf,cAAc,MAAM,EACpB,SAAS,MAAM,EACf,eAAe,MAAM,EAAE,KACtB,OAAO,CAAC,MAAM,CA4BhB,CAAC;AAIF,QAAA,MAAM,IAAI,GAAU,QAAQ,WAAW,KAAG,OAAO,CAAC,IAAI,CA+DrD,CAAC;AAEF,iCAAiC;AACjC,QAAA,MAAM,MAAM,QAAO,IAElB,CAAC;AAEF,OAAO,EACL,IAAI,EACJ,SAAS,EACT,MAAM,EAEN,oBAAoB,EACpB,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,OAAO,GACR,CAAC"}
1
+ {"version":3,"file":"relations.d.ts","sourceRoot":"","sources":["../../src/daemon/relations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,KAAK,EAAiB,MAAM,aAAa,CAAC;AAOxD,QAAA,MAAM,SAAS,GAAI,IAAI,KAAK,KAAG,IAAuB,CAAC;AAcvD,2DAA2D;AAC3D,QAAA,MAAM,OAAO,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,MAGvC,CAAC;AAEF,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;GAGG;AACH,QAAA,MAAM,oBAAoB,QAAa,OAAO,CAAC,YAAY,EAAE,CA2E5D,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,oBAAoB,QAAa,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CA8CzD,CAAC;AAqBF;;;;GAIG;AACH,QAAA,MAAM,aAAa,GACjB,SAAS,MAAM,EACf,SAAS,MAAM,EACf,aAAa,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,KACxD,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAuE5E,CAAC;AAEF;;GAEG;AACH,QAAA,MAAM,aAAa,GACjB,YAAY,MAAM,EAClB,UAAU,MAAM,EAChB,cAAc,MAAM,EACpB,SAAS,MAAM,EACf,eAAe,MAAM,EAAE,KACtB,OAAO,CAAC,MAAM,CA4BhB,CAAC;AAIF,QAAA,MAAM,IAAI,GAAU,QAAQ,WAAW,KAAG,OAAO,CAAC,IAAI,CA+DrD,CAAC;AAEF,iCAAiC;AACjC,QAAA,MAAM,MAAM,QAAO,IAElB,CAAC;AAEF,OAAO,EACL,IAAI,EACJ,SAAS,EACT,MAAM,EAEN,oBAAoB,EACpB,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,OAAO,GACR,CAAC"}
@@ -152,6 +152,7 @@ const fetchFactContents = async (factIds) => {
152
152
  /**
153
153
  * Use LLM to infer a relationship label from shared facts.
154
154
  * Returns null if the LLM can't determine a meaningful relationship.
155
+ * The LLM decides directionality — `from` is the subject, `to` is the object.
155
156
  */
156
157
  const inferRelation = async (entityA, entityB, sharedFacts) => {
157
158
  const factsText = sharedFacts
@@ -161,20 +162,26 @@ const inferRelation = async (entityA, entityB, sharedFacts) => {
161
162
  messages: [
162
163
  {
163
164
  role: "system",
164
- content: `You infer relationships between entities based on shared facts.
165
- Output ONLY valid JSON: { "type": "verb-phrase", "content": "one sentence description" }
166
- The "type" should be a 1-3 word verb phrase (e.g. "owns", "uses", "works-on", "manages", "depends-on").
167
- The "content" should be a single sentence describing the relationship.
168
- If the facts don't suggest a clear relationship, output: { "type": null }`,
165
+ content: `You infer directed relationships between entities based on shared facts.
166
+
167
+ Output ONLY valid JSON with this exact shape:
168
+ { "from": "subject-entity", "type": "verb-phrase", "to": "object-entity", "content": "one sentence" }
169
+
170
+ Direction matters — "from" is the entity that DOES the action, "to" is acted upon:
171
+ ✅ { "from": "telegrambot", "type": "depends-on", "to": "bedrock" }
172
+ ❌ { "from": "bedrock", "type": "depends-on", "to": "telegrambot" }
173
+
174
+ The "type" should be a 1-3 word verb phrase (e.g. "depends-on", "uses", "runs-on", "owns", "manages").
175
+ The "from" and "to" MUST be one of the two entities provided — do not invent new names.
176
+ If the facts don't suggest a clear directional relationship, output: { "type": null }`,
169
177
  },
170
178
  {
171
179
  role: "user",
172
- content: `Entity A: "${entityA}"
173
- Entity B: "${entityB}"
180
+ content: `Entities: "${entityA}", "${entityB}"
174
181
  Shared facts (${sharedFacts.length}):
175
182
  ${factsText}
176
183
 
177
- Infer the primary relationship between these two entities.`,
184
+ Infer the primary directed relationship between these two entities.`,
178
185
  },
179
186
  ],
180
187
  temperature: 0.1,
@@ -187,7 +194,23 @@ Infer the primary relationship between these two entities.`,
187
194
  const parsed = JSON.parse(jsonStr);
188
195
  if (!parsed.type)
189
196
  return null;
190
- return { type: parsed.type, content: parsed.content || `${entityA} ${parsed.type} ${entityB}` };
197
+ // Validate that from/to are the provided entities (not hallucinated)
198
+ const entities = new Set([entityA.toLowerCase(), entityB.toLowerCase()]);
199
+ const from = parsed.from?.toLowerCase() ?? "";
200
+ const to = parsed.to?.toLowerCase() ?? "";
201
+ if (!entities.has(from) || !entities.has(to) || from === to) {
202
+ logFn("WARN", `Relations: LLM returned invalid from/to for ${entityA}↔${entityB}: from="${parsed.from}", to="${parsed.to}"`);
203
+ return null;
204
+ }
205
+ // Use the LLM's chosen direction (normalised to original casing)
206
+ const resolvedFrom = from === entityA.toLowerCase() ? entityA : entityB;
207
+ const resolvedTo = to === entityA.toLowerCase() ? entityA : entityB;
208
+ return {
209
+ from: resolvedFrom,
210
+ type: parsed.type,
211
+ to: resolvedTo,
212
+ content: parsed.content || `${resolvedFrom} ${parsed.type} ${resolvedTo}`,
213
+ };
191
214
  }
192
215
  catch {
193
216
  logFn("WARN", `Relations: failed to parse LLM response for ${entityA}↔${entityB}: ${raw.slice(0, 100)}`);
@@ -197,16 +220,16 @@ Infer the primary relationship between these two entities.`,
197
220
  /**
198
221
  * Store an inferred relation as a memory fact.
199
222
  */
200
- const storeRelation = async (entityA, entityB, relationType, content, sharedFactIds) => {
223
+ const storeRelation = async (fromEntity, toEntity, relationType, content, sharedFactIds) => {
201
224
  const hash = createHash("sha256")
202
- .update(`daemon-relation:${pairKey(entityA, entityB)}:${relationType}`)
225
+ .update(`daemon-relation:${pairKey(fromEntity, toEntity)}:${relationType}`)
203
226
  .digest("hex");
204
227
  const id = await qdrant.storeFact({
205
228
  content,
206
229
  category: "team", // relations are about entity structure
207
230
  domain: "work",
208
231
  kind: "relation",
209
- entities: [entityA, entityB],
232
+ entities: [fromEntity, toEntity],
210
233
  source: "daemon",
211
234
  confidence: 0.7,
212
235
  importance: 0.6,
@@ -216,12 +239,12 @@ const storeRelation = async (entityA, entityB, relationType, content, sharedFact
216
239
  shared_fact_count: String(sharedFactIds.length),
217
240
  },
218
241
  relation: {
219
- from: entityA,
242
+ from: fromEntity,
220
243
  type: relationType,
221
- to: entityB,
244
+ to: toEntity,
222
245
  },
223
246
  });
224
- logFn("INFO", `Relations: inferred ${entityA} —[${relationType}]→ ${entityB} (id: ${id})`);
247
+ logFn("INFO", `Relations: inferred ${fromEntity} —[${relationType}]→ ${toEntity} (id: ${id})`);
225
248
  return id;
226
249
  };
227
250
  // ─── Main Tick ───────────────────────────────────────────────────────────────
@@ -260,14 +283,14 @@ const tick = async (config) => {
260
283
  continue;
261
284
  // Dedup check before storing
262
285
  const hash = createHash("sha256")
263
- .update(`daemon-relation:${pairKey(candidate.entityA, candidate.entityB)}:${result.type}`)
286
+ .update(`daemon-relation:${pairKey(result.from, result.to)}:${result.type}`)
264
287
  .digest("hex");
265
288
  const dedup = await qdrant.dedupCheck(result.content, hash);
266
289
  if (dedup.action === "skip") {
267
290
  logFn("DEBUG", `Relations: skipping duplicate ${candidate.entityA}↔${candidate.entityB}`);
268
291
  continue;
269
292
  }
270
- await storeRelation(candidate.entityA, candidate.entityB, result.type, result.content, candidate.factIds);
293
+ await storeRelation(result.from, result.to, result.type, result.content, candidate.factIds);
271
294
  inferred++;
272
295
  }
273
296
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"relations.js","sourceRoot":"","sources":["../../src/daemon/relations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relations.js","sourceRoot":"","sources":["../../src/daemon/relations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Shared Qdrant HTTP client used by both the daemon and the MCP server.
3
+ *
4
+ * Adds the resilience features that the previous inline `fetch` wrappers lacked:
5
+ * - per-request timeout via AbortSignal
6
+ * - retry with exponential backoff + jitter on transient errors (5xx, 408, 425)
7
+ * - 429 handling that honours Retry-After
8
+ * - typed errors so callers can branch on status class instead of string-matching
9
+ *
10
+ * The client is intentionally minimal — it exposes a generic `request<T>` and a
11
+ * dedicated `ensureCollection` helper. Higher-level Qdrant operations
12
+ * (search/scroll/upsert/etc.) stay in the daemon and MCP modules so this lib
13
+ * does not need to know about payload shapes.
14
+ */
15
+ export type QdrantLogLevel = "DEBUG" | "INFO" | "WARN" | "ERROR";
16
+ export type QdrantLogFn = (level: QdrantLogLevel, msg: string) => void;
17
+ export interface QdrantClientOptions {
18
+ url: string;
19
+ apiKey: string;
20
+ collection: string;
21
+ /** Per-request timeout in ms (default 10_000). */
22
+ timeoutMs?: number;
23
+ /** Max retry attempts for transient errors (default 3). 0 disables retries. */
24
+ retries?: number;
25
+ /** Base delay for exponential backoff in ms (default 250). */
26
+ retryBaseDelayMs?: number;
27
+ /** Optional logger — quiet by default. */
28
+ log?: QdrantLogFn;
29
+ }
30
+ export interface QdrantRequestOptions {
31
+ /** Override the client default for this call. */
32
+ timeoutMs?: number;
33
+ /** Override the client default for this call. */
34
+ retries?: number;
35
+ }
36
+ export interface QdrantIndexSpec {
37
+ field_name: string;
38
+ field_schema: string;
39
+ }
40
+ export declare class QdrantError extends Error {
41
+ readonly status?: number;
42
+ readonly responseBody?: string;
43
+ constructor(message: string, status?: number, responseBody?: string);
44
+ }
45
+ /** 401 / 403 — credentials are missing, wrong, or revoked. Not retried. */
46
+ export declare class QdrantAuthError extends QdrantError {
47
+ constructor(message: string, status?: number, responseBody?: string);
48
+ }
49
+ /** 404 — collection or point not found. Not retried. */
50
+ export declare class QdrantNotFoundError extends QdrantError {
51
+ constructor(message: string, status?: number, responseBody?: string);
52
+ }
53
+ /** 429 — rate limit. Retried (Retry-After honoured if present). */
54
+ export declare class QdrantRateLimitError extends QdrantError {
55
+ readonly retryAfterMs?: number;
56
+ constructor(message: string, status?: number, responseBody?: string, retryAfterMs?: number);
57
+ }
58
+ /** 408, 425, 5xx, network failures, timeouts. Retried. */
59
+ export declare class QdrantTransientError extends QdrantError {
60
+ constructor(message: string, status?: number, responseBody?: string);
61
+ }
62
+ /** 400, 422 — malformed request. Not retried. */
63
+ export declare class QdrantBadRequestError extends QdrantError {
64
+ constructor(message: string, status?: number, responseBody?: string);
65
+ }
66
+ export declare class QdrantClient {
67
+ private readonly url;
68
+ private readonly apiKey;
69
+ readonly collection: string;
70
+ private readonly timeoutMs;
71
+ private readonly retries;
72
+ private readonly retryBaseDelayMs;
73
+ private readonly log;
74
+ constructor(opts: QdrantClientOptions);
75
+ /**
76
+ * Perform a single Qdrant REST request. Retries transient errors and 429s
77
+ * with exponential backoff. Errors are classified into the typed hierarchy.
78
+ */
79
+ request<T = unknown>(method: string, path: string, body?: unknown, opts?: QdrantRequestOptions): Promise<T>;
80
+ private doRequest;
81
+ /**
82
+ * Ensure the configured collection exists with the given vector size, then
83
+ * (re-)create the supplied payload indexes. Index creation failures are
84
+ * logged but not fatal — Qdrant returns an error when an index already
85
+ * exists, and we want this to be idempotent.
86
+ */
87
+ ensureCollection(vectorSize: number, indexes: ReadonlyArray<QdrantIndexSpec>): Promise<void>;
88
+ }
89
+ //# sourceMappingURL=qdrant-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qdrant-client.d.ts","sourceRoot":"","sources":["../../src/lib/qdrant-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,242 @@
1
+ /**
2
+ * Shared Qdrant HTTP client used by both the daemon and the MCP server.
3
+ *
4
+ * Adds the resilience features that the previous inline `fetch` wrappers lacked:
5
+ * - per-request timeout via AbortSignal
6
+ * - retry with exponential backoff + jitter on transient errors (5xx, 408, 425)
7
+ * - 429 handling that honours Retry-After
8
+ * - typed errors so callers can branch on status class instead of string-matching
9
+ *
10
+ * The client is intentionally minimal — it exposes a generic `request<T>` and a
11
+ * dedicated `ensureCollection` helper. Higher-level Qdrant operations
12
+ * (search/scroll/upsert/etc.) stay in the daemon and MCP modules so this lib
13
+ * does not need to know about payload shapes.
14
+ */
15
+ // ---------------------------------------------------------------------------
16
+ // Error hierarchy
17
+ // ---------------------------------------------------------------------------
18
+ export class QdrantError extends Error {
19
+ status;
20
+ responseBody;
21
+ constructor(message, status, responseBody) {
22
+ super(message);
23
+ this.name = "QdrantError";
24
+ this.status = status;
25
+ this.responseBody = responseBody;
26
+ }
27
+ }
28
+ /** 401 / 403 — credentials are missing, wrong, or revoked. Not retried. */
29
+ export class QdrantAuthError extends QdrantError {
30
+ constructor(message, status, responseBody) {
31
+ super(message, status, responseBody);
32
+ this.name = "QdrantAuthError";
33
+ }
34
+ }
35
+ /** 404 — collection or point not found. Not retried. */
36
+ export class QdrantNotFoundError extends QdrantError {
37
+ constructor(message, status, responseBody) {
38
+ super(message, status, responseBody);
39
+ this.name = "QdrantNotFoundError";
40
+ }
41
+ }
42
+ /** 429 — rate limit. Retried (Retry-After honoured if present). */
43
+ export class QdrantRateLimitError extends QdrantError {
44
+ retryAfterMs;
45
+ constructor(message, status, responseBody, retryAfterMs) {
46
+ super(message, status, responseBody);
47
+ this.name = "QdrantRateLimitError";
48
+ this.retryAfterMs = retryAfterMs;
49
+ }
50
+ }
51
+ /** 408, 425, 5xx, network failures, timeouts. Retried. */
52
+ export class QdrantTransientError extends QdrantError {
53
+ constructor(message, status, responseBody) {
54
+ super(message, status, responseBody);
55
+ this.name = "QdrantTransientError";
56
+ }
57
+ }
58
+ /** 400, 422 — malformed request. Not retried. */
59
+ export class QdrantBadRequestError extends QdrantError {
60
+ constructor(message, status, responseBody) {
61
+ super(message, status, responseBody);
62
+ this.name = "QdrantBadRequestError";
63
+ }
64
+ }
65
+ // ---------------------------------------------------------------------------
66
+ // Client
67
+ // ---------------------------------------------------------------------------
68
+ const DEFAULT_TIMEOUT_MS = 10_000;
69
+ const DEFAULT_RETRIES = 3;
70
+ const DEFAULT_RETRY_BASE_DELAY_MS = 250;
71
+ const MAX_BACKOFF_MS = 5_000;
72
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
73
+ const jitter = (base) => {
74
+ const factor = 0.8 + Math.random() * 0.4; // ±20%
75
+ return Math.round(base * factor);
76
+ };
77
+ const parseRetryAfter = (header) => {
78
+ if (!header)
79
+ return undefined;
80
+ const seconds = Number(header);
81
+ if (Number.isFinite(seconds) && seconds >= 0)
82
+ return seconds * 1000;
83
+ // HTTP date format
84
+ const ts = Date.parse(header);
85
+ if (Number.isFinite(ts)) {
86
+ const delta = ts - Date.now();
87
+ return delta > 0 ? delta : 0;
88
+ }
89
+ return undefined;
90
+ };
91
+ const classifyStatus = (status, responseBody, method, path, retryAfterMs) => {
92
+ const summary = responseBody.slice(0, 500);
93
+ const message = `Qdrant ${method} ${path} failed (${status}): ${summary}`;
94
+ if (status === 401 || status === 403)
95
+ return new QdrantAuthError(message, status, responseBody);
96
+ if (status === 404)
97
+ return new QdrantNotFoundError(message, status, responseBody);
98
+ if (status === 429)
99
+ return new QdrantRateLimitError(message, status, responseBody, retryAfterMs);
100
+ if (status === 408 || status === 425 || status >= 500) {
101
+ return new QdrantTransientError(message, status, responseBody);
102
+ }
103
+ if (status === 400 || status === 422)
104
+ return new QdrantBadRequestError(message, status, responseBody);
105
+ return new QdrantError(message, status, responseBody);
106
+ };
107
+ export class QdrantClient {
108
+ url;
109
+ apiKey;
110
+ collection;
111
+ timeoutMs;
112
+ retries;
113
+ retryBaseDelayMs;
114
+ log;
115
+ constructor(opts) {
116
+ if (!opts.url)
117
+ throw new Error("QdrantClient: url is required");
118
+ if (!opts.apiKey)
119
+ throw new Error("QdrantClient: apiKey is required");
120
+ if (!opts.collection)
121
+ throw new Error("QdrantClient: collection is required");
122
+ this.url = opts.url.replace(/\/+$/, "");
123
+ this.apiKey = opts.apiKey;
124
+ this.collection = opts.collection;
125
+ this.timeoutMs = opts.timeoutMs ?? DEFAULT_TIMEOUT_MS;
126
+ this.retries = opts.retries ?? DEFAULT_RETRIES;
127
+ this.retryBaseDelayMs = opts.retryBaseDelayMs ?? DEFAULT_RETRY_BASE_DELAY_MS;
128
+ this.log = opts.log ?? (() => { });
129
+ }
130
+ /**
131
+ * Perform a single Qdrant REST request. Retries transient errors and 429s
132
+ * with exponential backoff. Errors are classified into the typed hierarchy.
133
+ */
134
+ async request(method, path, body, opts) {
135
+ const maxAttempts = (opts?.retries ?? this.retries) + 1;
136
+ const timeoutMs = opts?.timeoutMs ?? this.timeoutMs;
137
+ let attempt = 0;
138
+ let lastErr;
139
+ while (attempt < maxAttempts) {
140
+ attempt++;
141
+ try {
142
+ return await this.doRequest(method, path, body, timeoutMs);
143
+ }
144
+ catch (err) {
145
+ lastErr = err;
146
+ const retryable = err instanceof QdrantTransientError || err instanceof QdrantRateLimitError;
147
+ if (!retryable || attempt >= maxAttempts)
148
+ throw err;
149
+ const baseDelay = err instanceof QdrantRateLimitError && err.retryAfterMs !== undefined
150
+ ? err.retryAfterMs
151
+ : Math.min(this.retryBaseDelayMs * 2 ** (attempt - 1), MAX_BACKOFF_MS);
152
+ const delay = jitter(baseDelay);
153
+ const status = err instanceof QdrantError ? err.status ?? "?" : "?";
154
+ this.log("WARN", `Qdrant retry ${attempt}/${maxAttempts - 1} after ${status} on ${method} ${path} (sleeping ${delay}ms)`);
155
+ await sleep(delay);
156
+ }
157
+ }
158
+ // Defensive — loop always either returns or throws.
159
+ throw lastErr instanceof Error ? lastErr : new QdrantError(String(lastErr));
160
+ }
161
+ async doRequest(method, path, body, timeoutMs) {
162
+ const url = `${this.url}${path}`;
163
+ const headers = {
164
+ "Content-Type": "application/json",
165
+ "api-key": this.apiKey,
166
+ };
167
+ const init = { method, headers };
168
+ if (body !== undefined)
169
+ init.body = JSON.stringify(body);
170
+ let signal;
171
+ if (timeoutMs > 0) {
172
+ // AbortSignal.timeout is available in Node >= 17.3
173
+ signal = AbortSignal.timeout(timeoutMs);
174
+ init.signal = signal;
175
+ }
176
+ let resp;
177
+ try {
178
+ resp = await fetch(url, init);
179
+ }
180
+ catch (err) {
181
+ const isAbort = (err instanceof DOMException && err.name === "TimeoutError") ||
182
+ (err instanceof Error && (err.name === "AbortError" || err.name === "TimeoutError"));
183
+ if (isAbort) {
184
+ throw new QdrantTransientError(`Qdrant ${method} ${path} timed out after ${timeoutMs}ms`);
185
+ }
186
+ const msg = err instanceof Error ? err.message : String(err);
187
+ throw new QdrantTransientError(`Qdrant ${method} ${path} network error: ${msg}`);
188
+ }
189
+ if (!resp.ok) {
190
+ const text = await resp.text().catch(() => "");
191
+ const retryAfter = parseRetryAfter(resp.headers.get("retry-after"));
192
+ throw classifyStatus(resp.status, text, method, path, retryAfter);
193
+ }
194
+ // Some Qdrant endpoints (rare) return empty bodies on success.
195
+ const text = await resp.text();
196
+ if (!text)
197
+ return undefined;
198
+ try {
199
+ return JSON.parse(text);
200
+ }
201
+ catch (err) {
202
+ throw new QdrantError(`Qdrant ${method} ${path} returned invalid JSON: ${err instanceof Error ? err.message : String(err)}`, resp.status, text.slice(0, 500));
203
+ }
204
+ }
205
+ /**
206
+ * Ensure the configured collection exists with the given vector size, then
207
+ * (re-)create the supplied payload indexes. Index creation failures are
208
+ * logged but not fatal — Qdrant returns an error when an index already
209
+ * exists, and we want this to be idempotent.
210
+ */
211
+ async ensureCollection(vectorSize, indexes) {
212
+ const col = this.collection;
213
+ let exists = false;
214
+ try {
215
+ await this.request("GET", `/collections/${col}`);
216
+ exists = true;
217
+ }
218
+ catch (err) {
219
+ if (!(err instanceof QdrantNotFoundError))
220
+ throw err;
221
+ }
222
+ if (!exists) {
223
+ await this.request("PUT", `/collections/${col}`, {
224
+ vectors: { size: vectorSize, distance: "Cosine" },
225
+ });
226
+ this.log("INFO", `Qdrant collection '${col}' created (vector size ${vectorSize})`);
227
+ }
228
+ else {
229
+ this.log("DEBUG", `Qdrant collection '${col}' already exists`);
230
+ }
231
+ for (const idx of indexes) {
232
+ try {
233
+ await this.request("PUT", `/collections/${col}/index`, idx);
234
+ }
235
+ catch (err) {
236
+ // Index already-exists / harmless conflicts surface as 4xx — log and continue.
237
+ this.log("WARN", `Qdrant index ${idx.field_name}: ${err instanceof Error ? err.message : String(err)}`);
238
+ }
239
+ }
240
+ }
241
+ }
242
+ //# sourceMappingURL=qdrant-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qdrant-client.js","sourceRoot":"","sources":["../../src/lib/qdrant-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Tests for the shared QdrantClient.
3
+ *
4
+ * No real network — `globalThis.fetch` is monkey-patched per test to return
5
+ * scripted responses or throw scripted errors.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=qdrant-client.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qdrant-client.test.d.ts","sourceRoot":"","sources":["../../src/lib/qdrant-client.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,207 @@
1
+ /**
2
+ * Tests for the shared QdrantClient.
3
+ *
4
+ * No real network — `globalThis.fetch` is monkey-patched per test to return
5
+ * scripted responses or throw scripted errors.
6
+ */
7
+ import { describe, it, afterEach } from "node:test";
8
+ import assert from "node:assert/strict";
9
+ import { QdrantClient, QdrantAuthError, QdrantBadRequestError, QdrantNotFoundError, QdrantRateLimitError, QdrantTransientError, } from "./qdrant-client.js";
10
+ const buildResponse = (step) => {
11
+ const body = step.body ?? "";
12
+ return new Response(body, { status: step.status, headers: step.headers });
13
+ };
14
+ const installFetchMock = (steps) => {
15
+ const original = globalThis.fetch;
16
+ const calls = [];
17
+ let i = 0;
18
+ globalThis.fetch = (async (input, init) => {
19
+ calls.push({ url: String(input), init });
20
+ const step = steps[i++];
21
+ if (!step)
22
+ throw new Error(`fetch mock exhausted after ${i} call(s)`);
23
+ if ("error" in step)
24
+ throw step.error;
25
+ return buildResponse(step);
26
+ });
27
+ return {
28
+ calls,
29
+ restore: () => {
30
+ globalThis.fetch = original;
31
+ },
32
+ };
33
+ };
34
+ const baseOpts = {
35
+ url: "https://example.qdrant.io",
36
+ apiKey: "test-key",
37
+ collection: "bikky-test",
38
+ retryBaseDelayMs: 1, // keep tests fast
39
+ };
40
+ describe("QdrantClient", () => {
41
+ let mock = null;
42
+ afterEach(() => {
43
+ if (mock) {
44
+ mock.restore();
45
+ mock = null;
46
+ }
47
+ });
48
+ describe("request — happy path", () => {
49
+ it("parses JSON success response and sends api-key header", async () => {
50
+ mock = installFetchMock([{ status: 200, body: JSON.stringify({ result: { ok: true } }) }]);
51
+ const client = new QdrantClient(baseOpts);
52
+ const out = await client.request("GET", "/collections");
53
+ assert.deepEqual(out, { result: { ok: true } });
54
+ assert.equal(mock.calls.length, 1);
55
+ assert.equal(mock.calls[0].url, "https://example.qdrant.io/collections");
56
+ const headers = mock.calls[0].init?.headers;
57
+ assert.equal(headers["api-key"], "test-key");
58
+ assert.equal(headers["Content-Type"], "application/json");
59
+ });
60
+ it("strips trailing slashes from the configured URL", async () => {
61
+ mock = installFetchMock([{ status: 200, body: "{}" }]);
62
+ const client = new QdrantClient({ ...baseOpts, url: "https://example.qdrant.io///" });
63
+ await client.request("GET", "/collections");
64
+ assert.equal(mock.calls[0].url, "https://example.qdrant.io/collections");
65
+ });
66
+ it("returns undefined for empty success bodies", async () => {
67
+ mock = installFetchMock([{ status: 200, body: "" }]);
68
+ const client = new QdrantClient(baseOpts);
69
+ const out = await client.request("GET", "/collections/foo");
70
+ assert.equal(out, undefined);
71
+ });
72
+ });
73
+ describe("error classification", () => {
74
+ it("401 → QdrantAuthError, no retry", async () => {
75
+ mock = installFetchMock([{ status: 401, body: "unauthorized" }]);
76
+ const client = new QdrantClient(baseOpts);
77
+ await assert.rejects(() => client.request("GET", "/collections"), QdrantAuthError);
78
+ assert.equal(mock.calls.length, 1);
79
+ });
80
+ it("404 → QdrantNotFoundError, no retry", async () => {
81
+ mock = installFetchMock([{ status: 404, body: "not found" }]);
82
+ const client = new QdrantClient(baseOpts);
83
+ await assert.rejects(() => client.request("GET", "/collections/missing"), QdrantNotFoundError);
84
+ assert.equal(mock.calls.length, 1);
85
+ });
86
+ it("400 → QdrantBadRequestError, no retry", async () => {
87
+ mock = installFetchMock([{ status: 400, body: "bad request" }]);
88
+ const client = new QdrantClient(baseOpts);
89
+ await assert.rejects(() => client.request("PUT", "/collections/foo", {}), QdrantBadRequestError);
90
+ assert.equal(mock.calls.length, 1);
91
+ });
92
+ });
93
+ describe("retry on transient errors", () => {
94
+ it("retries 503 then succeeds", async () => {
95
+ mock = installFetchMock([
96
+ { status: 503, body: "service unavailable" },
97
+ { status: 200, body: JSON.stringify({ ok: true }) },
98
+ ]);
99
+ const client = new QdrantClient(baseOpts);
100
+ const out = await client.request("POST", "/collections/foo/points/search");
101
+ assert.deepEqual(out, { ok: true });
102
+ assert.equal(mock.calls.length, 2);
103
+ });
104
+ it("retries network failure (TypeError) then succeeds", async () => {
105
+ mock = installFetchMock([
106
+ { error: new TypeError("network down") },
107
+ { status: 200, body: "{}" },
108
+ ]);
109
+ const client = new QdrantClient(baseOpts);
110
+ await client.request("GET", "/collections");
111
+ assert.equal(mock.calls.length, 2);
112
+ });
113
+ it("exhausts retries and throws QdrantTransientError", async () => {
114
+ mock = installFetchMock([
115
+ { status: 502, body: "bad gateway" },
116
+ { status: 502, body: "bad gateway" },
117
+ { status: 502, body: "bad gateway" },
118
+ { status: 502, body: "bad gateway" },
119
+ ]);
120
+ const client = new QdrantClient({ ...baseOpts, retries: 3 });
121
+ await assert.rejects(() => client.request("GET", "/collections"), QdrantTransientError);
122
+ assert.equal(mock.calls.length, 4); // initial + 3 retries
123
+ });
124
+ it("does not retry when retries=0", async () => {
125
+ mock = installFetchMock([{ status: 503, body: "" }]);
126
+ const client = new QdrantClient({ ...baseOpts, retries: 0 });
127
+ await assert.rejects(() => client.request("GET", "/collections"), QdrantTransientError);
128
+ assert.equal(mock.calls.length, 1);
129
+ });
130
+ });
131
+ describe("rate limiting", () => {
132
+ it("retries 429 then succeeds", async () => {
133
+ mock = installFetchMock([
134
+ { status: 429, body: "slow down", headers: { "retry-after": "0" } },
135
+ { status: 200, body: "{}" },
136
+ ]);
137
+ const client = new QdrantClient(baseOpts);
138
+ await client.request("POST", "/collections/foo/points");
139
+ assert.equal(mock.calls.length, 2);
140
+ });
141
+ it("attaches retryAfterMs from Retry-After header", async () => {
142
+ mock = installFetchMock([{ status: 429, body: "", headers: { "retry-after": "2" } }]);
143
+ const client = new QdrantClient({ ...baseOpts, retries: 0 });
144
+ try {
145
+ await client.request("GET", "/collections");
146
+ assert.fail("should have thrown");
147
+ }
148
+ catch (err) {
149
+ assert.ok(err instanceof QdrantRateLimitError);
150
+ assert.equal(err.retryAfterMs, 2000);
151
+ }
152
+ });
153
+ });
154
+ describe("timeout", () => {
155
+ it("aborted fetch surfaces as QdrantTransientError", async () => {
156
+ const abortErr = new Error("The operation was aborted");
157
+ abortErr.name = "TimeoutError";
158
+ mock = installFetchMock([{ error: abortErr }, { error: abortErr }]);
159
+ const client = new QdrantClient({ ...baseOpts, retries: 1, timeoutMs: 1 });
160
+ await assert.rejects(() => client.request("GET", "/collections"), QdrantTransientError);
161
+ });
162
+ });
163
+ describe("ensureCollection", () => {
164
+ it("creates collection when GET returns 404", async () => {
165
+ mock = installFetchMock([
166
+ { status: 404, body: "not found" }, // GET /collections/foo
167
+ { status: 200, body: "{}" }, // PUT /collections/foo
168
+ { status: 200, body: "{}" }, // PUT index 1
169
+ ]);
170
+ const client = new QdrantClient(baseOpts);
171
+ await client.ensureCollection(1024, [{ field_name: "category", field_schema: "keyword" }]);
172
+ assert.equal(mock.calls.length, 3);
173
+ assert.equal(mock.calls[1].init?.method, "PUT");
174
+ const putBody = JSON.parse(mock.calls[1].init?.body);
175
+ assert.deepEqual(putBody, { vectors: { size: 1024, distance: "Cosine" } });
176
+ });
177
+ it("skips creation when collection already exists", async () => {
178
+ mock = installFetchMock([
179
+ { status: 200, body: "{}" }, // GET succeeds
180
+ { status: 200, body: "{}" }, // PUT index
181
+ ]);
182
+ const client = new QdrantClient(baseOpts);
183
+ await client.ensureCollection(1024, [{ field_name: "category", field_schema: "keyword" }]);
184
+ assert.equal(mock.calls.length, 2);
185
+ });
186
+ it("swallows index creation failures", async () => {
187
+ mock = installFetchMock([
188
+ { status: 200, body: "{}" }, // GET
189
+ { status: 400, body: "index already exists" }, // PUT index — error swallowed
190
+ ]);
191
+ const client = new QdrantClient(baseOpts);
192
+ await client.ensureCollection(1024, [{ field_name: "category", field_schema: "keyword" }]);
193
+ });
194
+ });
195
+ describe("constructor validation", () => {
196
+ it("rejects empty url", () => {
197
+ assert.throws(() => new QdrantClient({ ...baseOpts, url: "" }), /url is required/);
198
+ });
199
+ it("rejects empty apiKey", () => {
200
+ assert.throws(() => new QdrantClient({ ...baseOpts, apiKey: "" }), /apiKey is required/);
201
+ });
202
+ it("rejects empty collection", () => {
203
+ assert.throws(() => new QdrantClient({ ...baseOpts, collection: "" }), /collection is required/);
204
+ });
205
+ });
206
+ });
207
+ //# sourceMappingURL=qdrant-client.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qdrant-client.test.js","sourceRoot":"","sources":["../../src/lib/qdrant-client.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/mcp/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,aAAa,EAA2B,MAAM,iBAAiB,CAAC;AAC5H,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;AAS5E,eAAO,MAAM,UAAU,QAAY,CAAC;AAGpC,wBAAgB,aAAa,IAAI,MAAM,CAA2B;AAClE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAA2B;AAW5E,eAAO,IAAI,SAAS,EAAE,MAAM,GAAG,IAAW,CAAC;AAC3C,eAAO,IAAI,YAAY,EAAE,MAAM,GAAG,IAAW,CAAC;AAC9C,eAAO,IAAI,KAAK,SAAQ,CAAC;AAEzB,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAmB;AACvE,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAsB;AAC7E,wBAAgB,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI,CAAe;AAMzD,eAAO,MAAM,GAAG,8BAGd,CAAC;AAMH,wBAAsB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6B5F;AAaD,wBAAsB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAU9F;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BlH;AAED,wBAAsB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAInH;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,GAAG,SAAS,EAAE,KAAK,SAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAO7H;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAMhG;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAKxG;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAK7E"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/mcp/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,aAAa,EAA2B,MAAM,iBAAiB,CAAC;AAC5H,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;AAU5E,eAAO,MAAM,UAAU,QAAY,CAAC;AAGpC,wBAAgB,aAAa,IAAI,MAAM,CAA2B;AAClE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAGhD;AAWD,eAAO,IAAI,SAAS,EAAE,MAAM,GAAG,IAAW,CAAC;AAC3C,eAAO,IAAI,YAAY,EAAE,MAAM,GAAG,IAAW,CAAC;AAC9C,eAAO,IAAI,KAAK,SAAQ,CAAC;AAIzB,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAGnD;AACD,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAGtD;AACD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI,CAAe;AAMzD,eAAO,MAAM,GAAG,8BAGd,CAAC;AA0BH,wBAAsB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6B5F;AAgBD,wBAAsB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAE9F;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlH;AAED,wBAAsB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAInH;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,GAAG,SAAS,EAAE,KAAK,SAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAO7H;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAMhG;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAKxG;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAK7E"}
package/dist/mcp/api.js CHANGED
@@ -8,13 +8,17 @@ import { embed, getEmbeddingDimensions, getEmbeddingConfig, initEmbedding, chatC
8
8
  export { embed, getEmbeddingDimensions, getEmbeddingConfig, initEmbedding };
9
9
  import { createLogger } from "../logger.js";
10
10
  import { BIKKY_DIR, LOG_DIR, loadConfig } from "../config.js";
11
+ import { QdrantClient } from "../lib/qdrant-client.js";
11
12
  // ---------------------------------------------------------------------------
12
13
  // Config
13
14
  // ---------------------------------------------------------------------------
14
15
  export const MEMORY_DIR = BIKKY_DIR;
15
16
  let collectionName = "bikky";
16
17
  export function getCollection() { return collectionName; }
17
- export function setCollection(name) { collectionName = name; }
18
+ export function setCollection(name) {
19
+ collectionName = name;
20
+ rebuildClient();
21
+ }
18
22
  fs.mkdirSync(MEMORY_DIR, { recursive: true });
19
23
  fs.mkdirSync(LOG_DIR, { recursive: true });
20
24
  let llmInitialized = false;
@@ -24,8 +28,15 @@ let llmInitialized = false;
24
28
  export let qdrantUrl = null;
25
29
  export let qdrantApiKey = null;
26
30
  export let ready = false;
27
- export function setQdrantUrl(v) { qdrantUrl = v; }
28
- export function setQdrantApiKey(v) { qdrantApiKey = v; }
31
+ let client = null;
32
+ export function setQdrantUrl(v) {
33
+ qdrantUrl = v ? v.replace(/\/+$/, "") : v;
34
+ rebuildClient();
35
+ }
36
+ export function setQdrantApiKey(v) {
37
+ qdrantApiKey = v;
38
+ rebuildClient();
39
+ }
29
40
  export function setReady(v) { ready = v; }
30
41
  // ---------------------------------------------------------------------------
31
42
  // Logging (to file only — stdout/stderr are MCP stdio transport)
@@ -34,6 +45,25 @@ export const log = createLogger("memory-mcp", path.join(LOG_DIR, "mcp.log"), {
34
45
  maxSize: 2 * 1024 * 1024,
35
46
  maxFiles: 3,
36
47
  });
48
+ // Adapter to bridge QdrantClient's QdrantLogFn signature to our file logger.
49
+ const qdrantLogAdapter = (level, msg) => log(level, msg);
50
+ function rebuildClient() {
51
+ if (qdrantUrl && qdrantApiKey && collectionName) {
52
+ const cfg = loadConfig();
53
+ client = new QdrantClient({
54
+ url: qdrantUrl,
55
+ apiKey: qdrantApiKey,
56
+ collection: collectionName,
57
+ timeoutMs: cfg.qdrant_client.timeout_ms,
58
+ retries: cfg.qdrant_client.retries,
59
+ retryBaseDelayMs: cfg.qdrant_client.retry_base_delay_ms,
60
+ log: qdrantLogAdapter,
61
+ });
62
+ }
63
+ else {
64
+ client = null;
65
+ }
66
+ }
37
67
  // ---------------------------------------------------------------------------
38
68
  // LLM Chat Completion (for distillation)
39
69
  // ---------------------------------------------------------------------------
@@ -69,51 +99,19 @@ export async function chatComplete(systemPrompt, userPrompt) {
69
99
  // ---------------------------------------------------------------------------
70
100
  // Qdrant REST Client
71
101
  // ---------------------------------------------------------------------------
72
- function qdrantHeaders() {
73
- return {
74
- "Content-Type": "application/json",
75
- "api-key": qdrantApiKey ?? "",
76
- };
102
+ function getClient() {
103
+ if (!client) {
104
+ throw new Error("Qdrant client not initialized — credentials missing. " +
105
+ "Use configure_credentials or set QDRANT_URL + QDRANT_API_KEY.");
106
+ }
107
+ return client;
77
108
  }
78
109
  export async function qdrantReq(method, urlPath, body) {
79
- const url = `${qdrantUrl}${urlPath}`;
80
- const opts = { method, headers: qdrantHeaders() };
81
- if (body)
82
- opts.body = JSON.stringify(body);
83
- const resp = await fetch(url, opts);
84
- if (!resp.ok) {
85
- const text = await resp.text();
86
- throw new Error(`Qdrant ${method} ${urlPath} failed (${resp.status}): ${text}`);
87
- }
88
- return resp.json();
110
+ return getClient().request(method, urlPath, body);
89
111
  }
90
112
  export async function ensureCollection(indexes) {
91
- const col = getCollection();
92
- let exists = false;
93
- try {
94
- await qdrantReq("GET", `/collections/${col}`);
95
- log("INFO", `Collection '${col}' exists ✓`);
96
- exists = true;
97
- }
98
- catch (e) {
99
- if (!(e instanceof Error && e.message.includes("404")))
100
- throw e;
101
- }
102
- if (!exists) {
103
- await qdrantReq("PUT", `/collections/${col}`, {
104
- vectors: { size: getEmbeddingDimensions(), distance: "Cosine" },
105
- });
106
- log("INFO", `Collection '${col}' created`);
107
- }
108
- for (const idx of indexes) {
109
- try {
110
- await qdrantReq("PUT", `/collections/${col}/index`, idx);
111
- }
112
- catch (e) {
113
- log("WARN", `Index creation for ${idx.field_name}: ${e instanceof Error ? e.message : String(e)}`);
114
- }
115
- }
116
- log("INFO", "Payload indexes created");
113
+ await getClient().ensureCollection(getEmbeddingDimensions(), indexes);
114
+ log("INFO", `Collection '${getCollection()}' ready (vector size ${getEmbeddingDimensions()}, ${indexes.length} indexes)`);
117
115
  }
118
116
  export async function qdrantUpsert(id, vector, payload) {
119
117
  return qdrantReq("PUT", `/collections/${getCollection()}/points`, {
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/mcp/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/mcp/api.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bikky",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Shared memory for AI coding sessions — MCP server + background daemon",
5
5
  "type": "module",
6
6
  "license": "AGPL-3.0-or-later",