ugly-app 0.1.632 → 0.1.634

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.
@@ -1,2 +1,2 @@
1
- export declare const CLI_VERSION = "0.1.632";
1
+ export declare const CLI_VERSION = "0.1.634";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.632";
2
+ export const CLI_VERSION = "0.1.634";
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DB.d.ts","sourceRoot":"","sources":["../../src/server/DB.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DB.d.ts","sourceRoot":"","sources":["../../src/server/DB.ts"],"names":[],"mappings":"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"}
package/dist/server/DB.js CHANGED
@@ -61,6 +61,19 @@ async function syncDocVector(name, meta, doc) {
61
61
  console.error(`[DB] vector materialize failed for ${name}`, err);
62
62
  }
63
63
  }
64
+ /**
65
+ * Materialize the vector column after a partial-field update, but only when the
66
+ * update actually touched the doc's `vector.from` field — so the common
67
+ * `setDocFields`/`setDocOp` paths (e.g. `setDocFields(recipe, id, { embedding })`)
68
+ * populate the `embedding` column, not just the full-doc `setDoc` path.
69
+ */
70
+ async function syncVectorIfFieldChanged(name, meta, doc, changedFields) {
71
+ if (!doc || !meta?.vector || !changedFields)
72
+ return;
73
+ if (!Object.prototype.hasOwnProperty.call(changedFields, meta.vector.from))
74
+ return;
75
+ await syncDocVector(name, meta, doc);
76
+ }
64
77
  // ---------------------------------------------------------------------------
65
78
  // Cache key helper
66
79
  // ---------------------------------------------------------------------------
@@ -291,6 +304,7 @@ export function createTypedDB(defs, deleteHandlers) {
291
304
  const updated = await pgSetDocFields(name, id, fields, notify);
292
305
  if (isCacheEnabled(meta))
293
306
  cacheSet(docCacheKey(name, id), updated, cacheTtlMs(meta));
307
+ await syncVectorIfFieldChanged(name, meta, updated, fields);
294
308
  return updated;
295
309
  },
296
310
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -301,6 +315,7 @@ export function createTypedDB(defs, deleteHandlers) {
301
315
  const updated = await pgSetDocFieldsOrIgnore(name, id, fields, notify);
302
316
  if (updated && isCacheEnabled(meta))
303
317
  cacheSet(docCacheKey(name, id), updated, cacheTtlMs(meta));
318
+ await syncVectorIfFieldChanged(name, meta, updated, fields);
304
319
  return updated;
305
320
  },
306
321
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -311,6 +326,8 @@ export function createTypedDB(defs, deleteHandlers) {
311
326
  const result = await pgSetDocFieldsOrCreate(name, id, fields, obj, notify);
312
327
  if (isCacheEnabled(meta))
313
328
  cacheSet(docCacheKey(name, id), result, cacheTtlMs(meta));
329
+ // create path may not return the merged doc — fall back to the input fields/obj.
330
+ await syncVectorIfFieldChanged(name, meta, result ?? { ...obj, ...fields, _id: id }, fields);
314
331
  return result;
315
332
  },
316
333
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -321,6 +338,8 @@ export function createTypedDB(defs, deleteHandlers) {
321
338
  const updated = await pgSetDocOp(name, id, op, notify);
322
339
  if (isCacheEnabled(meta))
323
340
  cacheSet(docCacheKey(name, id), updated, cacheTtlMs(meta));
341
+ // Materialize if the op $set the vector source field.
342
+ await syncVectorIfFieldChanged(name, meta, updated, (op?.$set ?? undefined));
324
343
  return updated;
325
344
  },
326
345
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -1 +1 @@
1
- {"version":3,"file":"DB.js","sourceRoot":"","sources":["../../src/server/DB.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DB.js","sourceRoot":"","sources":["../../src/server/DB.ts"],"names":[],"mappings":"AAAA,OAAO,EAYL,UAAU,EACV,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,QAAQ,IAAI,aAAa,EACzB,WAAW,EACX,QAAQ,EACR,QAAQ,GACT,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,sBAAsB,EAC1D,sBAAsB,EAAE,UAAU,EAAE,kBAAkB,EACtD,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAClE,MAAM,EAAE,WAAW,EAAE,YAAY,GAGlC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,6EAA6E;AAC7E,yDAAyD;AACzD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE9C;;;;;GAKG;AACH,KAAK,UAAU,gBAAgB,CAAC,IAAY,EAAE,IAAgC;IAC5E,IAAI,CAAC,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO;IACnD,IAAI,IAAI,CAAC,MAAM;QAAE,MAAM,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1F,IAAI,IAAI,CAAC,MAAM;QAAE,MAAM,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACxE,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,aAAa,CAC1B,IAAY,EACZ,IAAgC,EAChC,GAA4B;IAE5B,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,IAAI,EAAE,MAAM;QAAE,OAAO;IAC3C,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,MAAM;QAAE,OAAO;IAC1B,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,UAAU,CAAC;QAC1E,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,sEAAsE;YACtE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;gBACpD,MAAM,OAAO,CAAC,WAAW,IAAI,uCAAuC,EAAE;oBACpE,IAAI;oBACJ,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;iBACnB,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,OAAO,CACX,WAAW,IAAI,+DAA+D,EAC9E,CAAC,eAAe,CAAC,SAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CACnE,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sCAAsC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,wBAAwB,CACrC,IAAY,EACZ,IAAgC,EAChC,GAA+C,EAC/C,aAAkD;IAElD,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,aAAa;QAAE,OAAO;IACpD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO;IACnF,MAAM,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACvC,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,SAAS,WAAW,CAClB,UAAkB,EAClB,EAAU;IAEV,OAAO,aAAa,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAC1B,IAAgC,EAChC,MAAgC;IAEhC,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,MAAM,GAAI,MAA4B,CAAC,GAAG,CAAC;IACjD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,MAAM,MAAM,GAAI,MAA4B,CAAC,GAAG,CAAC;QACjD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,yEAAyE;AACzE,yEAAyE;AACzE,yEAAyE;AACzE,iCAAiC;AACjC,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,UAAkB,EAClB,EAAU;IAEV,OAAO,QAAQ,CAAI,UAAU,EAAE,EAAE,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,UAAkB,EAClB,GAAM,EACN,OAAoC;IAEpC,OAAO,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAAkB,EAClB,EAAU,EACV,MAAoB;IAEpB,OAAO,cAAc,CAAI,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAAkB,EAClB,EAAU,EACV,MAAoB;IAEpB,OAAO,sBAAsB,CAAI,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAAkB,EAClB,EAAU,EACV,MAAoB,EACpB,GAAM;IAEN,OAAO,sBAAsB,CAAI,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,UAAkB,EAClB,EAAU,EACV,EAAoB;IAEpB,OAAO,UAAU,CAAI,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,EAAU,EACV,EAAoB;IAEpB,OAAO,kBAAkB,CAAI,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,UAAkB,EAClB,EAAU,EACV,MAAiB;IAEjB,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,UAAkB,EAClB,SAAkC,EAAE,EACpC,UAA4B,EAAE;IAE9B,OAAO,SAAS,CAAI,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,QAAQ,CACrB,UAAkB,EAClB,QAAmC,EACnC,OAA2C;IAE3C,OAAO,UAAU,CAAI,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAkB,EAClB,QAAmC;IAEnC,OAAO,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,QAAmC,EACnC,OAA2C;IAE3C,OAAO,aAAa,CAAI,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC;AAED,8EAA8E;AAC9E,sCAAsC;AACtC,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,UAAkB,EAClB,MAAuB,EACvB,OAAwB;IAExB,OAAO,MAAM,CAAI,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,UAAkB,EAClB,MAAuB;IAEvB,OAAO,WAAW,CAAI,UAAU,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,UAAkB,EAClB,MAAuB,EACvB,KAAc;IAEd,OAAO,YAAY,CAAI,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACpD,CAAC;AAWD,sDAAsD;AACtD,SAAS,WAAW,CAAC,IAA6D;IAChF,IAAI,CAAC,IAAI,EAAE,SAAS,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM;QAAE,OAAO,SAAS,CAAC;IACnE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,IAAI,CAAC,SAAS;QAAE,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;IAC9C,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM;QAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAC9D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAU,EACV,cAAqC;IAErC;;;OAGG;IACH,KAAK,UAAU,aAAa,CAC1B,UAAkB,EAClB,MAAc;QAEd,MAAM,GAAG,GAAG,MAAM,MAAM,CAAW,UAAU,EAAE,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QAEtB,8EAA8E;QAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAC1C,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,UAAU,CACjD,CAAC;QACF,KAAK,MAAM,CAAC,eAAe,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzC,MAAM,WAAW,GAAG,GAAG,UAAU,IAAI,CAAC;YACtC,MAAM,SAAS,GAAG,MAAM,OAAO,CAAW,eAAe,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACtF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,gBAAgB,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC,UAAU,CAAC,CAAC;QAC7C,8DAA8D;QAC9D,IAAI,OAAO;YAAE,MAAM,OAAO,CAAC,GAAU,EAAE,OAAc,CAAC,CAAC;QAEvD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,UAAU,gBAAgB,CAC7B,UAAkB,EAClB,MAAc;QAEd,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;QACpC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAE5C,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,WAAW,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,8DAA8D;IAC9D,SAAS,OAAO,CAAC,UAAkC;QACjD,OAAO,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;IACvE,CAAC;IAED,SAAS,EAAE,CAAC,UAAkC;QAC5C,OAAO,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IAED,iGAAiG;IACjG,8DAA8D;IAC9D,MAAM,OAAO,GAAwB;QACnC,8DAA8D;QAC9D,MAAM,EAAE,KAAK,EAAE,UAAe,EAAE,EAAU,EAAE,EAAE;YAC5C,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAkC,CAAC;YAC5D,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,MAAM,KAAK,SAAS;oBAAE,OAAO,MAAM,CAAC;gBACxC,MAAM,GAAG,GAAG,IAAI,EAAE,MAAM;oBACtB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;oBACvC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC3B,IAAI,GAAG;oBAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9C,OAAO,GAAG,CAAC;YACb,CAAC;YACD,iEAAiE;YACjE,IAAI,IAAI,EAAE,MAAM;gBAAE,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;YAC/D,OAAO,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,CAAC;QAED,8DAA8D;QAC9D,QAAQ,EAAE,KAAK,EAAE,UAAe,EAAE,GAAa,EAAgC,EAAE;YAC/E,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAkC,CAAC;YAC5D,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAEhC,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YAC7B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;YACpD,MAAM,MAAM,GAAa,EAAE,CAAC;YAE5B,+DAA+D;YAC/D,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,MAAM,GAAG,QAAQ,CAAW,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;oBACzD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;wBACzB,SAAS;oBACX,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;YAED,uDAAuD;YACvD,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAC1C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,IAAI,OAAwC,CAAC;gBAC7C,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;oBACjB,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,GAAG,MAAM,OAAO,CAAW,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;oBAC3E,OAAO,GAAG,EAAE,CAAC;oBACb,KAAK,MAAM,GAAG,IAAI,IAAI;wBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBACjD,CAAC;gBACD,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;oBAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;oBAChC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;oBACtB,IAAI,YAAY,IAAI,GAAG;wBAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YAED,wCAAwC;YACxC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;QACnD,CAAC;QAED,8DAA8D;QAC9D,MAAM,EAAE,KAAK,EAAE,UAAe,EAAE,GAAQ,EAAE,OAAoC,EAAE,EAAE;YAChF,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;YAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YACpE,IAAI,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,MAAM;gBAAE,MAAM,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,8DAA8D;QAC9D,YAAY,EAAE,KAAK,EAAE,UAAe,EAAE,EAAU,EAAE,MAAW,EAAE,EAAE;YAC/D,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;YAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC/D,IAAI,cAAc,CAAC,IAAI,CAAC;gBAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YACrF,MAAM,wBAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAkC,EAAE,MAAM,CAAC,CAAC;YACvF,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8DAA8D;QAC9D,oBAAoB,EAAE,KAAK,EAAE,UAAe,EAAE,EAAU,EAAE,MAAW,EAAE,EAAE;YACvE,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;YAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACvE,IAAI,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC;gBAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAChG,MAAM,wBAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAyC,EAAE,MAAM,CAAC,CAAC;YAC9F,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8DAA8D;QAC9D,oBAAoB,EAAE,KAAK,EAAE,UAAe,EAAE,EAAU,EAAE,MAAW,EAAE,GAAQ,EAAE,EAAE;YACjF,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;YAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAC3E,IAAI,cAAc,CAAC,IAAI,CAAC;gBAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YACpF,iFAAiF;YACjF,MAAM,wBAAwB,CAC5B,IAAI,EACJ,IAAI,EACH,MAAkC,IAAI,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,EACrE,MAAM,CACP,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,8DAA8D;QAC9D,QAAQ,EAAE,KAAK,EAAE,UAAe,EAAE,EAAU,EAAE,EAAO,EAAE,EAAE;YACvD,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;YAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YACvD,IAAI,cAAc,CAAC,IAAI,CAAC;gBAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YACrF,sDAAsD;YACtD,MAAM,wBAAwB,CAC5B,IAAI,EACJ,IAAI,EACJ,OAAkC,EAClC,CAAC,EAAE,EAAE,IAAI,IAAI,SAAS,CAAwC,CAC/D,CAAC;YACF,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8DAA8D;QAC9D,gBAAgB,EAAE,KAAK,EAAE,UAAe,EAAE,EAAU,EAAE,EAAO,EAAE,EAAE;YAC/D,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;YAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YAC/D,IAAI,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC;gBAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAChG,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8DAA8D;QAC9D,SAAS,EAAE,KAAK,EAAE,UAAe,EAAE,EAAU,EAAE,EAAE;YAC/C,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,wEAAwE;YACxE,oDAAoD;YACpD,MAAM,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QAED,8DAA8D;QAC9D,OAAO,EAAE,KAAK,EAAE,UAAe,EAAE,MAAgC,EAAE,OAAwB,EAAE,EAAE;YAC7F,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,IAAI,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAChE,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACrD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAkB,EAAiB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAqB;gBACjC,IAAI,EAAE,OAAO,EAAE,IAAI;gBACnB,KAAK,EAAE,OAAO,EAAE,KAAK;gBACrB,IAAI,EAAE,OAAO,EAAE,IAAI;gBACnB,IAAI,EAAE,OAAO,EAAE,IAAI;gBACnB,QAAQ,EAAE,OAAO,EAAE,QAAQ;aAC5B,CAAC;YACF,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;gBACpB,QAAQ,CAAC,MAAM,GAAG;oBAChB,KAAK,EAAE,OAAO,CAAC,MAAM;oBACrB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,IAAI,SAAS;iBAC1D,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QAED,8DAA8D;QAC9D,QAAQ,EAAE,CAAC,UAAe,EAAE,QAAmC,EAAE,OAA2C,EAAE,EAAE;YAC9G,OAAO,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC;QAED,8DAA8D;QAC9D,aAAa,EAAE,CAAC,UAAe,EAAE,QAAmC,EAAE,EAAE;YACtE,OAAO,aAAa,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;QAED,8DAA8D;QAC9D,WAAW,EAAE,CAAC,UAAe,EAAE,QAAmC,EAAE,OAA2C,EAAE,EAAE;YACjH,OAAO,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACxD,CAAC;QAED,8DAA8D;QAC9D,WAAW,EAAE,KAAK,EAAE,UAAe,EAAE,KAA8B,EAAiB,EAAE;YACpF,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACxC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,0EAA0E;QAE1E,8DAA8D;QAC9D,IAAI,EAAE,KAAK,EAAE,UAAe,EAAE,MAAgC,EAAE,OAAiC,EAAE,EAAE;YACnG,OAAO,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,MAA+B,EAAE,OAAgC,CAAC,CAAC;QACnG,CAAC;QAED,8DAA8D;QAC9D,SAAS,EAAE,KAAK,EAAE,UAAe,EAAE,MAAgC,EAAE,EAAE;YACrE,OAAO,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,MAA+B,CAAC,CAAC;QACtE,CAAC;QAED,8DAA8D;QAC9D,UAAU,EAAE,KAAK,EAAE,UAAe,EAAE,MAAgC,EAAE,KAAc,EAAE,EAAE;YACtF,OAAO,YAAY,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,MAA+B,EAAE,KAAK,CAAC,CAAC;QAC9E,CAAC;QAED,8DAA8D;QAC9D,WAAW,EAAE,KAAK,EAAE,UAAe,EAAE,MAAW,EAAiB,EAAE;YACjE,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAW,IAAI,EAAE,MAA+B,CAAC,CAAC;YAC3E,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,SAAS,EAAE,CAAC,UAAe,EAAE,EAAU,EAA4B,EAAE;YACnE,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAkC,CAAC;YAC5D,qEAAqE;YACrE,yDAAyD;YACzD,IAAI,IAAI,EAAE,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAA6B,CAAC;YAC9D,CAAC;YACD,OAAO,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,CAAC;QAED,8DAA8D;QAC9D,UAAU,EAAE,KAAK,EAAE,UAAe,EAAE,MAAgC,EAAE,OAA0E,EAAuB,EAAE;YACvK,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAChE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBACrD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAkB,EAAiB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YACxE,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,yEAAyE;QACzE,uEAAuE;QACvE,8DAA8D;QAC9D,UAAU,EAAE,KAAK,EAAE,UAAe,EAAE,WAAmB,EAAE,OAA8D,EAAE,EAAE;YACzH,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE;gBACxD,MAAM,EAAE,WAAW;gBACnB,GAAG,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClE,CAAC,CAAC;QACL,CAAC;QAED,8DAA8D;QAC9D,YAAY,EAAE,KAAK,EAAE,UAAe,EAAE,MAAgB,EAAE,OAA8D,EAAE,EAAE;YACxH,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE;gBACxD,IAAI,EAAE,MAAM;gBACZ,GAAG,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClE,CAAC,CAAC;QACL,CAAC;QAED,4BAA4B;QAC5B,QAAQ,EAAE,CAAI,GAAW,EAAiB,EAAE,CAAC,QAAQ,CAAI,GAAG,CAAC;QAC7D,QAAQ,EAAE,CAAI,GAAW,EAAE,KAAQ,EAAE,KAAc,EAAQ,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC;QACzF,WAAW,EAAE,CAAC,GAAW,EAAQ,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC;QACpD,8DAA8D;QAC9D,QAAQ,EAAE,CAAC,UAAe,EAAE,EAAU,EAAU,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;KACnF,CAAC;IAEF,OAAO,OAAuC,CAAC;AACjD,CAAC"}
@@ -25,12 +25,6 @@ export interface PgGetDocsOptions {
25
25
  /** Relevance floor (0..1) for search/near. */
26
26
  minScore?: number;
27
27
  }
28
- /**
29
- * Query docs with structured filter + (optional) Postgres FTS + (optional)
30
- * pgvector ANN, composed into ONE statement against the collection's `search`
31
- * (tsvector) and `embedding` (vector) columns. The framework never embeds —
32
- * `near` is a precomputed query embedding.
33
- */
34
28
  export declare function pgGetDocs<T>(collection: string, filter?: Record<string, unknown>, options?: PgGetDocsOptions): Promise<T[]>;
35
29
  export declare function pgGetQuery<T>(collection: string, pipeline: Record<string, unknown>[], options?: {
36
30
  skip?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresDoc.d.ts","sourceRoot":"","sources":["../../src/server/PostgresDoc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgresDoc.d.ts","sourceRoot":"","sources":["../../src/server/PostgresDoc.ts"],"names":[],"mappings":"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"}
@@ -37,23 +37,41 @@ export async function pgGetDoc(collection, id) {
37
37
  * (tsvector) and `embedding` (vector) columns. The framework never embeds —
38
38
  * `near` is a precomputed query embedding.
39
39
  */
40
+ /**
41
+ * Reciprocal Rank Fusion. Each input is an ordered list of ids (best first).
42
+ * An id's fused score is Σ 1/(k + rank); k=60 is the canonical constant. Robust
43
+ * because it combines RANK positions, not raw scores on incomparable scales
44
+ * (ts_rank vs cosine distance). Returns ids ordered by fused score, best first.
45
+ */
46
+ function rrfFuse(lists, k = 60) {
47
+ const score = new Map();
48
+ for (const list of lists) {
49
+ list.forEach((id, i) => {
50
+ score.set(id, (score.get(id) ?? 0) + 1 / (k + i + 1));
51
+ });
52
+ }
53
+ return [...score.keys()].sort((a, b) => score.get(b) - score.get(a));
54
+ }
40
55
  export async function pgGetDocs(collection, filter, options) {
41
56
  const pool = getPool();
57
+ const hasNear = !!(options?.near && options.near.length > 0);
58
+ const hasSearch = !!options?.search?.query;
59
+ // ── Hybrid (search + near) → two independent ranked queries fused with RRF ──
60
+ // FTS arm (ts_rank over the keyword matches) and vector arm (cosine ANN) each
61
+ // rank on their own scale; RRF combines by rank position. This beats a single
62
+ // blended ORDER BY (ts_rank + cosine), whose terms live on incomparable scales.
63
+ if (hasNear && hasSearch) {
64
+ return rrfHybridGetDocs(pool, collection, filter, options);
65
+ }
42
66
  const { where, values } = translateFilter(filter ?? {});
43
67
  const conds = where ? [where] : [];
44
- const hasNear = !!(options?.near && options.near.length > 0);
45
- // Full-text search → ranked by ts_rank. When combined with a vector `near`
46
- // (hybrid), FTS only BOOSTS the ranking — it does NOT hard-filter, so a
47
- // semantically-near row without keyword overlap still surfaces. FTS-only
48
- // queries do filter on a match.
49
68
  let rankExpr = null;
50
- if (options?.search?.query) {
69
+ if (hasSearch) {
51
70
  const lang = safeLanguage(options.search.language);
52
71
  values.push(options.search.query);
53
72
  const tsq = `websearch_to_tsquery('${lang}', $${values.length})`;
54
73
  rankExpr = `ts_rank(search, ${tsq})`;
55
- if (!hasNear)
56
- conds.push(`search @@ ${tsq}`);
74
+ conds.push(`search @@ ${tsq}`);
57
75
  }
58
76
  else if (!hasNear) {
59
77
  void warnIfUnindexed(pool, collection, filter); // only meaningful for plain filters
@@ -76,10 +94,7 @@ export async function pgGetDocs(collection, filter, options) {
76
94
  let sql = `SELECT _id, data, created, updated, version FROM "${collection}"`;
77
95
  if (conds.length)
78
96
  sql += ` WHERE ${conds.join(' AND ')}`;
79
- // Order by relevance when search/near is present (hybrid = sum); else caller sort.
80
- if (rankExpr && simExpr)
81
- sql += ` ORDER BY (${rankExpr} + ${simExpr}) DESC`;
82
- else if (simExpr)
97
+ if (simExpr)
83
98
  sql += ` ORDER BY ${simExpr} DESC`;
84
99
  else if (rankExpr)
85
100
  sql += ` ORDER BY ${rankExpr} DESC`;
@@ -96,6 +111,57 @@ export async function pgGetDocs(collection, filter, options) {
96
111
  const result = await pool.query(sql, values);
97
112
  return result.rows.map((r) => toDoc(r));
98
113
  }
114
+ /** Hybrid getDocs: FTS arm + vector arm, fused with RRF, then hydrated. */
115
+ async function rrfHybridGetDocs(pool, collection, filter, options) {
116
+ const limit = options.limit ?? 10;
117
+ const skip = options.skip ?? 0;
118
+ // Over-fetch per arm so the fusion has depth to work with.
119
+ const armLimit = Math.min(Math.max(limit + skip, 10) * 5, 200);
120
+ const lang = safeLanguage(options.search.language);
121
+ // FTS arm — keyword matches ranked by ts_rank.
122
+ const ftsBase = translateFilter(filter ?? {});
123
+ const ftsConds = ftsBase.where ? [ftsBase.where] : [];
124
+ const ftsValues = ftsBase.values;
125
+ ftsValues.push(options.search.query);
126
+ const tsq = `websearch_to_tsquery('${lang}', $${ftsValues.length})`;
127
+ ftsConds.push(`search @@ ${tsq}`);
128
+ ftsValues.push(armLimit);
129
+ const ftsSql = `SELECT _id FROM "${collection}"` +
130
+ (ftsConds.length ? ` WHERE ${ftsConds.join(' AND ')}` : '') +
131
+ ` ORDER BY ts_rank(search, ${tsq}) DESC LIMIT $${ftsValues.length}`;
132
+ // Vector arm — nearest neighbours by cosine distance.
133
+ const vecBase = translateFilter(filter ?? {});
134
+ const vecConds = vecBase.where ? [vecBase.where] : [];
135
+ const vecValues = vecBase.values;
136
+ vecValues.push(toVectorLiteral(options.near));
137
+ const simExpr = `(1 - (embedding <=> $${vecValues.length}::vector))`;
138
+ vecConds.push(`embedding IS NOT NULL`);
139
+ if (options.minScore !== undefined && Number.isFinite(options.minScore)) {
140
+ vecConds.push(`${simExpr} >= ${Number(options.minScore)}`);
141
+ }
142
+ vecValues.push(armLimit);
143
+ const vecSql = `SELECT _id FROM "${collection}"` +
144
+ (vecConds.length ? ` WHERE ${vecConds.join(' AND ')}` : '') +
145
+ ` ORDER BY embedding <=> $${vecValues.length - 1}::vector LIMIT $${vecValues.length}`;
146
+ const [ftsRes, vecRes] = await Promise.all([
147
+ pool.query(ftsSql, ftsValues),
148
+ pool.query(vecSql, vecValues),
149
+ ]);
150
+ const fused = rrfFuse([
151
+ ftsRes.rows.map((r) => r._id),
152
+ vecRes.rows.map((r) => r._id),
153
+ ]);
154
+ const pageIds = fused.slice(skip, skip + limit);
155
+ if (pageIds.length === 0)
156
+ return [];
157
+ // Hydrate the page in one query, then restore the fused order.
158
+ const hy = await pool.query(`SELECT _id, data, created, updated, version FROM "${collection}" WHERE _id = ANY($1)`, [pageIds]);
159
+ const byId = new Map(hy.rows.map((r) => [r._id, r]));
160
+ return pageIds
161
+ .map((id) => byId.get(id))
162
+ .filter((r) => r !== undefined)
163
+ .map((r) => toDoc(r));
164
+ }
99
165
  export async function pgGetQuery(collection, pipeline, options) {
100
166
  const pool = getPool();
101
167
  const { sql, values } = translatePipeline(collection, pipeline, options);
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresDoc.js","sourceRoot":"","sources":["../../src/server/PostgresDoc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgresDoc.js","sourceRoot":"","sources":["../../src/server/PostgresDoc.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugly-app",
3
- "version": "0.1.632",
3
+ "version": "0.1.634",
4
4
  "type": "module",
5
5
  "comment:files": "Allowlist what ships to npm. dist = runtime; src = sourcemap targets (dist/*.js.map reference ../../src/); templates = CLI scaffold. Everything else at repo root (.pgdata local Postgres, coverage, assets/icons sources, test/, test-results/) is excluded by omission. The !negations strip the scaffold's installed deps + cruft (templates/node_modules is 200MB+ and must never ship). package.json/README/LICENSE ship automatically.",
6
6
  "files": [
@@ -1,2 +1,2 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.632";
2
+ export const CLI_VERSION = "0.1.634";
package/src/server/DB.ts CHANGED
@@ -91,6 +91,23 @@ async function syncDocVector(
91
91
  }
92
92
  }
93
93
 
94
+ /**
95
+ * Materialize the vector column after a partial-field update, but only when the
96
+ * update actually touched the doc's `vector.from` field — so the common
97
+ * `setDocFields`/`setDocOp` paths (e.g. `setDocFields(recipe, id, { embedding })`)
98
+ * populate the `embedding` column, not just the full-doc `setDoc` path.
99
+ */
100
+ async function syncVectorIfFieldChanged(
101
+ name: string,
102
+ meta: CollectionMeta | undefined,
103
+ doc: Record<string, unknown> | null | undefined,
104
+ changedFields: Record<string, unknown> | undefined,
105
+ ): Promise<void> {
106
+ if (!doc || !meta?.vector || !changedFields) return;
107
+ if (!Object.prototype.hasOwnProperty.call(changedFields, meta.vector.from)) return;
108
+ await syncDocVector(name, meta, doc);
109
+ }
110
+
94
111
  // ---------------------------------------------------------------------------
95
112
  // Cache key helper
96
113
  // ---------------------------------------------------------------------------
@@ -423,6 +440,7 @@ export function createTypedDB<Defs extends CollectionDefRegistry>(
423
440
  const notify = buildNotify(meta);
424
441
  const updated = await pgSetDocFields(name, id, fields, notify);
425
442
  if (isCacheEnabled(meta)) cacheSet(docCacheKey(name, id), updated, cacheTtlMs(meta));
443
+ await syncVectorIfFieldChanged(name, meta, updated as Record<string, unknown>, fields);
426
444
  return updated;
427
445
  },
428
446
 
@@ -433,6 +451,7 @@ export function createTypedDB<Defs extends CollectionDefRegistry>(
433
451
  const notify = buildNotify(meta);
434
452
  const updated = await pgSetDocFieldsOrIgnore(name, id, fields, notify);
435
453
  if (updated && isCacheEnabled(meta)) cacheSet(docCacheKey(name, id), updated, cacheTtlMs(meta));
454
+ await syncVectorIfFieldChanged(name, meta, updated as Record<string, unknown> | null, fields);
436
455
  return updated;
437
456
  },
438
457
 
@@ -443,6 +462,13 @@ export function createTypedDB<Defs extends CollectionDefRegistry>(
443
462
  const notify = buildNotify(meta);
444
463
  const result = await pgSetDocFieldsOrCreate(name, id, fields, obj, notify);
445
464
  if (isCacheEnabled(meta)) cacheSet(docCacheKey(name, id), result, cacheTtlMs(meta));
465
+ // create path may not return the merged doc — fall back to the input fields/obj.
466
+ await syncVectorIfFieldChanged(
467
+ name,
468
+ meta,
469
+ (result as Record<string, unknown>) ?? { ...obj, ...fields, _id: id },
470
+ fields,
471
+ );
446
472
  return result;
447
473
  },
448
474
 
@@ -453,6 +479,13 @@ export function createTypedDB<Defs extends CollectionDefRegistry>(
453
479
  const notify = buildNotify(meta);
454
480
  const updated = await pgSetDocOp(name, id, op, notify);
455
481
  if (isCacheEnabled(meta)) cacheSet(docCacheKey(name, id), updated, cacheTtlMs(meta));
482
+ // Materialize if the op $set the vector source field.
483
+ await syncVectorIfFieldChanged(
484
+ name,
485
+ meta,
486
+ updated as Record<string, unknown>,
487
+ (op?.$set ?? undefined) as Record<string, unknown> | undefined,
488
+ );
456
489
  return updated;
457
490
  },
458
491
 
@@ -92,28 +92,49 @@ export interface PgGetDocsOptions {
92
92
  * (tsvector) and `embedding` (vector) columns. The framework never embeds —
93
93
  * `near` is a precomputed query embedding.
94
94
  */
95
+ /**
96
+ * Reciprocal Rank Fusion. Each input is an ordered list of ids (best first).
97
+ * An id's fused score is Σ 1/(k + rank); k=60 is the canonical constant. Robust
98
+ * because it combines RANK positions, not raw scores on incomparable scales
99
+ * (ts_rank vs cosine distance). Returns ids ordered by fused score, best first.
100
+ */
101
+ function rrfFuse(lists: string[][], k = 60): string[] {
102
+ const score = new Map<string, number>();
103
+ for (const list of lists) {
104
+ list.forEach((id, i) => {
105
+ score.set(id, (score.get(id) ?? 0) + 1 / (k + i + 1));
106
+ });
107
+ }
108
+ return [...score.keys()].sort((a, b) => score.get(b)! - score.get(a)!);
109
+ }
110
+
95
111
  export async function pgGetDocs<T>(
96
112
  collection: string,
97
113
  filter?: Record<string, unknown>,
98
114
  options?: PgGetDocsOptions,
99
115
  ): Promise<T[]> {
100
116
  const pool = getPool();
117
+ const hasNear = !!(options?.near && options.near.length > 0);
118
+ const hasSearch = !!options?.search?.query;
119
+
120
+ // ── Hybrid (search + near) → two independent ranked queries fused with RRF ──
121
+ // FTS arm (ts_rank over the keyword matches) and vector arm (cosine ANN) each
122
+ // rank on their own scale; RRF combines by rank position. This beats a single
123
+ // blended ORDER BY (ts_rank + cosine), whose terms live on incomparable scales.
124
+ if (hasNear && hasSearch) {
125
+ return rrfHybridGetDocs<T>(pool, collection, filter, options!);
126
+ }
127
+
101
128
  const { where, values } = translateFilter(filter ?? {});
102
129
  const conds: string[] = where ? [where] : [];
103
130
 
104
- const hasNear = !!(options?.near && options.near.length > 0);
105
-
106
- // Full-text search → ranked by ts_rank. When combined with a vector `near`
107
- // (hybrid), FTS only BOOSTS the ranking — it does NOT hard-filter, so a
108
- // semantically-near row without keyword overlap still surfaces. FTS-only
109
- // queries do filter on a match.
110
131
  let rankExpr: string | null = null;
111
- if (options?.search?.query) {
112
- const lang = safeLanguage(options.search.language);
113
- values.push(options.search.query);
132
+ if (hasSearch) {
133
+ const lang = safeLanguage(options!.search!.language);
134
+ values.push(options!.search!.query);
114
135
  const tsq = `websearch_to_tsquery('${lang}', $${values.length})`;
115
136
  rankExpr = `ts_rank(search, ${tsq})`;
116
- if (!hasNear) conds.push(`search @@ ${tsq}`);
137
+ conds.push(`search @@ ${tsq}`);
117
138
  } else if (!hasNear) {
118
139
  void warnIfUnindexed(pool, collection, filter); // only meaningful for plain filters
119
140
  }
@@ -136,9 +157,7 @@ export async function pgGetDocs<T>(
136
157
  let sql = `SELECT _id, data, created, updated, version FROM "${collection}"`;
137
158
  if (conds.length) sql += ` WHERE ${conds.join(' AND ')}`;
138
159
 
139
- // Order by relevance when search/near is present (hybrid = sum); else caller sort.
140
- if (rankExpr && simExpr) sql += ` ORDER BY (${rankExpr} + ${simExpr}) DESC`;
141
- else if (simExpr) sql += ` ORDER BY ${simExpr} DESC`;
160
+ if (simExpr) sql += ` ORDER BY ${simExpr} DESC`;
142
161
  else if (rankExpr) sql += ` ORDER BY ${rankExpr} DESC`;
143
162
  else if (options?.sort) sql += ` ORDER BY ${translateSort(options.sort)}`;
144
163
 
@@ -154,6 +173,72 @@ export async function pgGetDocs<T>(
154
173
  return result.rows.map((r) => toDoc(r) as T);
155
174
  }
156
175
 
176
+ /** Hybrid getDocs: FTS arm + vector arm, fused with RRF, then hydrated. */
177
+ async function rrfHybridGetDocs<T>(
178
+ pool: ReturnType<typeof getPool>,
179
+ collection: string,
180
+ filter: Record<string, unknown> | undefined,
181
+ options: PgGetDocsOptions,
182
+ ): Promise<T[]> {
183
+ const limit = options.limit ?? 10;
184
+ const skip = options.skip ?? 0;
185
+ // Over-fetch per arm so the fusion has depth to work with.
186
+ const armLimit = Math.min(Math.max(limit + skip, 10) * 5, 200);
187
+ const lang = safeLanguage(options.search!.language);
188
+
189
+ // FTS arm — keyword matches ranked by ts_rank.
190
+ const ftsBase = translateFilter(filter ?? {});
191
+ const ftsConds = ftsBase.where ? [ftsBase.where] : [];
192
+ const ftsValues = ftsBase.values;
193
+ ftsValues.push(options.search!.query);
194
+ const tsq = `websearch_to_tsquery('${lang}', $${ftsValues.length})`;
195
+ ftsConds.push(`search @@ ${tsq}`);
196
+ ftsValues.push(armLimit);
197
+ const ftsSql =
198
+ `SELECT _id FROM "${collection}"` +
199
+ (ftsConds.length ? ` WHERE ${ftsConds.join(' AND ')}` : '') +
200
+ ` ORDER BY ts_rank(search, ${tsq}) DESC LIMIT $${ftsValues.length}`;
201
+
202
+ // Vector arm — nearest neighbours by cosine distance.
203
+ const vecBase = translateFilter(filter ?? {});
204
+ const vecConds = vecBase.where ? [vecBase.where] : [];
205
+ const vecValues = vecBase.values;
206
+ vecValues.push(toVectorLiteral(options.near!));
207
+ const simExpr = `(1 - (embedding <=> $${vecValues.length}::vector))`;
208
+ vecConds.push(`embedding IS NOT NULL`);
209
+ if (options.minScore !== undefined && Number.isFinite(options.minScore)) {
210
+ vecConds.push(`${simExpr} >= ${Number(options.minScore)}`);
211
+ }
212
+ vecValues.push(armLimit);
213
+ const vecSql =
214
+ `SELECT _id FROM "${collection}"` +
215
+ (vecConds.length ? ` WHERE ${vecConds.join(' AND ')}` : '') +
216
+ ` ORDER BY embedding <=> $${vecValues.length - 1}::vector LIMIT $${vecValues.length}`;
217
+
218
+ const [ftsRes, vecRes] = await Promise.all([
219
+ pool.query<{ _id: string }>(ftsSql, ftsValues),
220
+ pool.query<{ _id: string }>(vecSql, vecValues),
221
+ ]);
222
+
223
+ const fused = rrfFuse([
224
+ ftsRes.rows.map((r) => r._id),
225
+ vecRes.rows.map((r) => r._id),
226
+ ]);
227
+ const pageIds = fused.slice(skip, skip + limit);
228
+ if (pageIds.length === 0) return [];
229
+
230
+ // Hydrate the page in one query, then restore the fused order.
231
+ const hy = await pool.query<FullRow>(
232
+ `SELECT _id, data, created, updated, version FROM "${collection}" WHERE _id = ANY($1)`,
233
+ [pageIds],
234
+ );
235
+ const byId = new Map(hy.rows.map((r) => [r._id, r]));
236
+ return pageIds
237
+ .map((id) => byId.get(id))
238
+ .filter((r): r is FullRow => r !== undefined)
239
+ .map((r) => toDoc(r) as T);
240
+ }
241
+
157
242
  export async function pgGetQuery<T>(
158
243
  collection: string,
159
244
  pipeline: Record<string, unknown>[],