@mastra/pg 1.26.0-alpha.5 → 1.27.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -17511,27 +17511,39 @@ function compileThreadPredicate(predicate, parameterOffset) {
17511
17511
  values: compiled.values
17512
17512
  };
17513
17513
  }
17514
- function compilePostgresTraceScope(schema, selection, relationCollections, deltaWindow) {
17514
+ function compilePostgresTraceScope(schema, selection, relationCollections, scope, deltaWindow) {
17515
17515
  const spanTable = qualifiedTable(schema, TABLE_SPAN_EVENTS);
17516
17516
  const scoreTable = qualifiedTable(schema, TABLE_SCORE_EVENTS);
17517
17517
  const feedbackTable = qualifiedTable(schema, TABLE_FEEDBACK_EVENTS);
17518
17518
  const values = [selection.timeRange.from, selection.timeRange.to];
17519
- const rootConditions = [
17520
- `r."parentSpanId" IS NULL`,
17521
- latestRootPredicate$1(spanTable),
17522
- `NOT r."isPending"`,
17523
- `r."endedAt" IS NOT NULL`,
17524
- `r."startedAt" >= $1`,
17525
- `r."startedAt" < $2`
17526
- ];
17519
+ const deltaConditions = [];
17527
17520
  if (deltaWindow) {
17528
17521
  values.push(deltaWindow.xactId, deltaWindow.cursorId, deltaWindow.safeHorizon);
17529
- rootConditions.push(`(r."xactId", r."cursorId") > ($3::xid8, $4::bigint)`, `r."xactId" < $5::xid8`);
17522
+ deltaConditions.push(`(r."xactId", r."cursorId") > ($3::xid8, $4::bigint)`, `r."xactId" < $5::xid8`);
17530
17523
  }
17524
+ const scopeConditions = [];
17525
+ if (scope) {
17526
+ values.push(scope.organizationId);
17527
+ scopeConditions.push(`"organizationId" = $${values.length}`);
17528
+ if (scope.resourceId !== void 0) {
17529
+ values.push(scope.resourceId);
17530
+ scopeConditions.push(`"resourceId" = $${values.length}`);
17531
+ }
17532
+ }
17533
+ const scopeSql = (alias) => scopeConditions.map((condition) => `\n AND ${alias}.${condition}`).join("");
17531
17534
  const ctes = [`root_scope AS MATERIALIZED (
17532
17535
  SELECT *
17533
17536
  FROM ${spanTable} r
17534
- WHERE ${rootConditions.join("\n AND ")}
17537
+ WHERE ${[
17538
+ `r."parentSpanId" IS NULL`,
17539
+ latestRootPredicate$1(spanTable),
17540
+ `NOT r."isPending"`,
17541
+ `r."endedAt" IS NOT NULL`,
17542
+ `r."startedAt" >= $1`,
17543
+ `r."startedAt" < $2`,
17544
+ ...deltaConditions,
17545
+ ...scopeConditions.map((condition) => `r.${condition}`)
17546
+ ].join("\n AND ")}
17535
17547
  )`];
17536
17548
  if (relationCollections.has("spans")) ctes.push(`current_spans AS MATERIALIZED (
17537
17549
  SELECT
@@ -17557,7 +17569,7 @@ function compilePostgresTraceScope(schema, selection, relationCollections, delta
17557
17569
  FROM ${spanTable} s
17558
17570
  WHERE s."traceId" IS NOT NULL
17559
17571
  AND s."traceId" IN (SELECT "traceId" FROM root_scope)
17560
- AND ${latestSpanPredicate$1(spanTable)}
17572
+ AND ${latestSpanPredicate$1(spanTable)}${scopeSql("s")}
17561
17573
  )`);
17562
17574
  if (relationCollections.has("scores")) ctes.push(`current_scores AS MATERIALIZED (
17563
17575
  SELECT
@@ -17574,7 +17586,7 @@ function compilePostgresTraceScope(schema, selection, relationCollections, delta
17574
17586
  FROM ${scoreTable} s
17575
17587
  WHERE s."traceId" IS NOT NULL
17576
17588
  AND s."traceId" IN (SELECT "traceId" FROM root_scope)
17577
- AND ${latestScorePredicate(scoreTable)}
17589
+ AND ${latestScorePredicate(scoreTable)}${scopeSql("s")}
17578
17590
  )`);
17579
17591
  if (relationCollections.has("feedback")) ctes.push(`current_feedback AS MATERIALIZED (
17580
17592
  SELECT
@@ -17593,7 +17605,7 @@ function compilePostgresTraceScope(schema, selection, relationCollections, delta
17593
17605
  FROM ${feedbackTable} s
17594
17606
  WHERE s."traceId" IS NOT NULL
17595
17607
  AND s."traceId" IN (SELECT "traceId" FROM root_scope)
17596
- AND ${latestFeedbackPredicate(feedbackTable)}
17608
+ AND ${latestFeedbackPredicate(feedbackTable)}${scopeSql("s")}
17597
17609
  )`);
17598
17610
  return {
17599
17611
  ctes,
@@ -17611,7 +17623,7 @@ function compilePostgresTraceQuery(schema, plan, mode = "data", safeHorizon) {
17611
17623
  safeHorizon
17612
17624
  };
17613
17625
  }
17614
- const { ctes, values } = compilePostgresTraceScope(schema, plan, relationCollections, deltaWindow);
17626
+ const { ctes, values } = compilePostgresTraceScope(schema, plan, relationCollections, plan.scope, deltaWindow);
17615
17627
  let predicateSql = "TRUE";
17616
17628
  if (plan.where) {
17617
17629
  const predicate = compilePredicate(plan.where, values.length + 1);
@@ -17689,7 +17701,7 @@ LIMIT $${values.length}`,
17689
17701
  function compilePostgresThreadQuery(schema, plan) {
17690
17702
  const relationCollections = collectRelationCollections(plan.traces.where);
17691
17703
  collectThreadRelationCollections(plan.where, relationCollections);
17692
- const { ctes, values } = compilePostgresTraceScope(schema, plan.traces, relationCollections);
17704
+ const { ctes, values } = compilePostgresTraceScope(schema, plan.traces, relationCollections, plan.scope);
17693
17705
  let eligibilitySql = "TRUE";
17694
17706
  if (plan.traces.where) {
17695
17707
  const eligibility = compilePredicate(plan.traces.where, values.length + 1);
@@ -17747,7 +17759,7 @@ function discoveryCollections(scope) {
17747
17759
  return scope === "trace" ? /* @__PURE__ */ new Set() : /* @__PURE__ */ new Set([scope]);
17748
17760
  }
17749
17761
  function compilePostgresTraceQueryObservedFields(schema, plan) {
17750
- const { ctes, values } = compilePostgresTraceScope(schema, plan, /* @__PURE__ */ new Set());
17762
+ const { ctes, values } = compilePostgresTraceScope(schema, plan, /* @__PURE__ */ new Set(), plan.scope);
17751
17763
  const searchParameter = values.length + 1;
17752
17764
  const search = plan.search ? `AND strpos(lower('metadata.' || entry.key), lower($${searchParameter})) > 0` : "";
17753
17765
  if (plan.search) values.push(plan.search);
@@ -17771,7 +17783,7 @@ LIMIT $${values.length}`,
17771
17783
  };
17772
17784
  }
17773
17785
  function compilePostgresTraceQueryValues(schema, plan) {
17774
- const { ctes, values } = compilePostgresTraceScope(schema, plan, discoveryCollections(plan.predicateScope));
17786
+ const { ctes, values } = compilePostgresTraceScope(schema, plan, discoveryCollections(plan.predicateScope), plan.scope);
17775
17787
  let field;
17776
17788
  if (plan.predicateScope === "trace" && plan.path.startsWith("metadata.")) {
17777
17789
  const keyParameter = `$${values.length + 1}`;
@@ -18886,7 +18898,8 @@ var ObservabilityStoragePostgresVNext = class ObservabilityStoragePostgresVNext
18886
18898
  "logs",
18887
18899
  "trace-query",
18888
18900
  "trace-query-discovery",
18889
- "thread-query"
18901
+ "thread-query",
18902
+ "trace-query-tenant-scope"
18890
18903
  ];
18891
18904
  return [
18892
18905
  "metrics",
@@ -18894,7 +18907,8 @@ var ObservabilityStoragePostgresVNext = class ObservabilityStoragePostgresVNext
18894
18907
  "delta-polling",
18895
18908
  "trace-query",
18896
18909
  "trace-query-discovery",
18897
- "thread-query"
18910
+ "thread-query",
18911
+ "trace-query-tenant-scope"
18898
18912
  ];
18899
18913
  }
18900
18914
  async #run(op, fn, details) {