grafeo-ogm 1.11.0 → 1.13.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/CHANGELOG.md +57 -0
- package/README.md +18 -1
- package/dist/cjs/cli/commands/db-push.d.ts.map +1 -1
- package/dist/cjs/cli/commands/db-push.js +6 -3
- package/dist/cjs/cli/commands/db-push.js.map +1 -1
- package/dist/cjs/cli/display.d.ts +15 -0
- package/dist/cjs/cli/display.d.ts.map +1 -0
- package/dist/cjs/cli/display.js +21 -0
- package/dist/cjs/cli/display.js.map +1 -0
- package/dist/cjs/compilers/mutation.compiler.d.ts +11 -1
- package/dist/cjs/compilers/mutation.compiler.d.ts.map +1 -1
- package/dist/cjs/compilers/mutation.compiler.js +24 -2
- package/dist/cjs/compilers/mutation.compiler.js.map +1 -1
- package/dist/cjs/compilers/where.compiler.d.ts +14 -0
- package/dist/cjs/compilers/where.compiler.d.ts.map +1 -1
- package/dist/cjs/compilers/where.compiler.js +29 -0
- package/dist/cjs/compilers/where.compiler.js.map +1 -1
- package/dist/cjs/ogm.d.ts.map +1 -1
- package/dist/cjs/ogm.js +3 -1
- package/dist/cjs/ogm.js.map +1 -1
- package/dist/cjs/subgraph/subgraph-operations.d.ts +2 -1
- package/dist/cjs/subgraph/subgraph-operations.d.ts.map +1 -1
- package/dist/cjs/subgraph/subgraph-operations.js +20 -4
- package/dist/cjs/subgraph/subgraph-operations.js.map +1 -1
- package/dist/cjs/subgraph/types.d.ts +8 -0
- package/dist/cjs/subgraph/types.d.ts.map +1 -1
- package/dist/esm/cli/commands/db-push.d.ts.map +1 -1
- package/dist/esm/cli/commands/db-push.js +6 -3
- package/dist/esm/cli/commands/db-push.js.map +1 -1
- package/dist/esm/cli/display.d.ts +15 -0
- package/dist/esm/cli/display.d.ts.map +1 -0
- package/dist/esm/cli/display.js +18 -0
- package/dist/esm/cli/display.js.map +1 -0
- package/dist/esm/compilers/mutation.compiler.d.ts +11 -1
- package/dist/esm/compilers/mutation.compiler.d.ts.map +1 -1
- package/dist/esm/compilers/mutation.compiler.js +24 -2
- package/dist/esm/compilers/mutation.compiler.js.map +1 -1
- package/dist/esm/compilers/where.compiler.d.ts +14 -0
- package/dist/esm/compilers/where.compiler.d.ts.map +1 -1
- package/dist/esm/compilers/where.compiler.js +29 -0
- package/dist/esm/compilers/where.compiler.js.map +1 -1
- package/dist/esm/ogm.d.ts.map +1 -1
- package/dist/esm/ogm.js +3 -1
- package/dist/esm/ogm.js.map +1 -1
- package/dist/esm/subgraph/subgraph-operations.d.ts +2 -1
- package/dist/esm/subgraph/subgraph-operations.d.ts.map +1 -1
- package/dist/esm/subgraph/subgraph-operations.js +20 -4
- package/dist/esm/subgraph/subgraph-operations.js.map +1 -1
- package/dist/esm/subgraph/types.d.ts +8 -0
- package/dist/esm/subgraph/types.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,62 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.13.0 (2026-07-14) — ✨ `$cloneSubgraph` returns `nodesByLabel`
|
|
4
|
+
|
|
5
|
+
> **First community-requested feature** ([#1](https://github.com/neomodular/grafeo-ogm/issues/1)). After deep-cloning a content subgraph, a caller often needs to post-process only the nodes of a **specific label** (re-normalize, re-stamp, re-index). Until now `nodeMapping` held every cloned id across all labels, forcing a broad-`IN`-plus-label-filter dance on the caller. The clone already visits every node with its labels in hand — so now it just tells you.
|
|
6
|
+
|
|
7
|
+
### ✨ `nodesByLabel: Map<label, newId[]>` on the clone result
|
|
8
|
+
|
|
9
|
+
- **Additive and backwards-compatible** — `clonedRootId` and `nodeMapping` are unchanged; existing callers are unaffected.
|
|
10
|
+
- **Zero extra round-trips** — `labels(output)` is folded into the existing Step-1 `RETURN` of the APOC clone query.
|
|
11
|
+
- **Multi-label nodes appear under each of their labels**, so `nodesByLabel.get('DoseValue')` is exactly the set you post-process.
|
|
12
|
+
- **Consistent by construction** — `nodesByLabel` is built in the same pass as the final `nodeMapping`, so a node dropped during UUID re-assignment is absent from *both* maps: every id in `nodesByLabel` is also a `nodeMapping` value.
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
const result = await ogm.$cloneSubgraph(rootId, config, tx);
|
|
16
|
+
const doseValueIds = result.nodesByLabel.get('DoseValue') ?? [];
|
|
17
|
+
// target exactly one label — no over-broad IN list
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
### 🛡️ CLI display hardening — `db push` sanitizes live-DB names
|
|
21
|
+
|
|
22
|
+
Names introspected from the live database that fail identifier validation are correctly routed to `unmanaged` and never executed as Cypher — but they were printed **raw**. Neo4j allows arbitrary characters in backtick-quoted identifiers, so a hostile constraint/index name could smuggle ANSI/C0 escape sequences into the developer's terminal (title changes, output spoofing). All live-DB names rendered by `db push` (unmanaged, orphan listings, drop confirmations) now pass through a `safeDisplay()` helper that replaces C0/C1 control characters with a visible `�` placeholder. Cypher execution was never affected — this closes the display path.
|
|
23
|
+
|
|
24
|
+
### 📝 Docs
|
|
25
|
+
|
|
26
|
+
- Fixed the `cloneSubgraph` README snippet: the result field is `nodeMapping`, not the stale `idMapping`, and the config examples now include the required `maxLevel`.
|
|
27
|
+
|
|
28
|
+
### Tests
|
|
29
|
+
|
|
30
|
+
Four new subgraph specs (label grouping, root-label → `clonedRootId` linkage, multi-label fan-out, UUID-failure consistency across both maps) plus a CLI spec proving a hostile constraint name lands in `unmanaged`, prints sanitized, and never reaches a `DROP`. Full suite green (1514); lint, format, and type-check clean.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## 1.12.0 (2026-07-01) — 🛡️ `OR: []` now matches nothing (Prisma semantics)
|
|
35
|
+
|
|
36
|
+
> **Safety fix, and the one deliberate compat break with `@neo4j/graphql-ogm`.** An empty logical `OR` array used to vanish from the compiled WHERE clause, so `deleteMany({ where: { OR: [] } })` compiled **byte-identical to no `where` at all**: `MATCH (n:Label) DETACH DELETE n` — a full-label wipe. The realistic trigger is a dynamically built filter (`OR: ids.map((id) => ({ id }))`) receiving an empty list. The deprecated `@neo4j/graphql-ogm` (verified against its final release, 5.11.4) has the same behavior, so grafeo was bug-for-bug compatible. We now diverge on purpose.
|
|
37
|
+
|
|
38
|
+
### 🛡️ Empty `OR` compiles to `false` — everywhere
|
|
39
|
+
|
|
40
|
+
Per Prisma's documented operator semantics (`OR` with 0 filters → empty result; `AND` with 0 filters → all items), an `OR` with **zero effective disjuncts** now compiles to the literal Cypher clause `false`:
|
|
41
|
+
|
|
42
|
+
- **Top-level where** — `find` / `findFirst` / `count` / `aggregate` return nothing; `updateMany` / `deleteMany` touch nothing.
|
|
43
|
+
- **All-no-op disjuncts count as empty** — `OR: [{}]` and `OR: [{ name: undefined }]` also compile to `false`, matching Prisma's "effective filter" counting. Mixed arrays keep the effective disjuncts: `OR: [{}, { name: 'x' }]` → `(n.name = $param0)`.
|
|
44
|
+
- **Nested relationship quantifiers** — `posts_SOME: { OR: [] }` compiles to an unsatisfiable `EXISTS { ... WHERE false }` instead of "any related node".
|
|
45
|
+
- **Connection filters** — `postsConnection_SOME: { OR: [] }` likewise.
|
|
46
|
+
- **Nested mutation operations** — `update.<rel>.disconnect[].where: { OR: [] }` used to detach **every** related node (and `connect` to attach every candidate); both now compile an unsatisfiable `WHERE false`.
|
|
47
|
+
|
|
48
|
+
`AND: []` is unchanged and still matches everything — the empty conjunction is true, also per Prisma. `where: undefined` / `where: {}` remain the explicit, intentional "match all" forms. Fulltext `OR`/`AND` already threw on empty arrays and are unaffected.
|
|
49
|
+
|
|
50
|
+
### 🔎 Compiler warning on empty logical operators
|
|
51
|
+
|
|
52
|
+
When a logical operator compiles with zero effective conditions, the compiler now emits a `warn` through your configured `OGMConfig.logger` — `OR` warns "matches nothing", `AND` warns "matches everything" — so a dynamically built filter that received an empty list is visible in your logs instead of silently changing query shape. Fires only on the anomalous branch (zero hot-path cost), no-ops when no logger is configured or the logger has no `warn` method.
|
|
53
|
+
|
|
54
|
+
### Tests
|
|
55
|
+
|
|
56
|
+
Regression coverage for the full blast radius: compiler-level (`OR: []`, `AND: []`, all-no-op disjuncts, mixed disjuncts, sibling-condition stitching, `NOT: { OR: [] }`, nested quantifier, connection filter), mutation-level (nested `connect`/`disconnect` with `OR: []`), model-level (`deleteMany({ where: { OR: [] } })` emits `WHERE false`, not a wipe), and warning-level (logger `warn` fired for empty `OR`/`AND`/all-no-op disjuncts, silent for effective operators and `warn`-less loggers). Full suite green (1509); lint, format, and type-check clean.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
3
60
|
## 1.11.0 (2026-06-13) — ✨ `grafeo init` logo splash
|
|
4
61
|
|
|
5
62
|
> **A little polish on the way in.** An interactive `grafeo init` now opens with the grafeo wordmark — the ANSI Shadow logo in blueprint blue. It's purely decorative and rigorously gated: it appears **only** when stdout is a real terminal, so a piped or redirected run (`grafeo init > file`, `grafeo init | tee`) and any CI run get clean, unadorned output. **No new runtime dependency** — the wordmark is embedded statically (no runtime `figlet`), routed through the existing IO seam, and `NO_COLOR` is honored.
|
package/README.md
CHANGED
|
@@ -943,13 +943,21 @@ const cloneResult = await cloneSubgraph(
|
|
|
943
943
|
{
|
|
944
944
|
ownedLabels: ['Book', 'Chapter', 'Section'],
|
|
945
945
|
ownedRelationships: ['HAS_CHAPTER', 'HAS_SECTION'],
|
|
946
|
+
maxLevel: 5,
|
|
946
947
|
referenceRelationships: [
|
|
947
948
|
{ fromLabel: 'Book', relationshipType: 'WRITTEN_BY', direction: 'OUT' },
|
|
948
949
|
],
|
|
949
950
|
},
|
|
950
951
|
transaction,
|
|
951
952
|
);
|
|
952
|
-
// cloneResult: {
|
|
953
|
+
// cloneResult: {
|
|
954
|
+
// clonedRootId,
|
|
955
|
+
// nodeMapping: Map<originalId, newId>,
|
|
956
|
+
// nodesByLabel: Map<label, newId[]>, // v1.13.0+ — multi-label nodes appear under each label
|
|
957
|
+
// }
|
|
958
|
+
|
|
959
|
+
// v1.13.0+ — post-process only the nodes of one label, no broad-IN filtering:
|
|
960
|
+
const chapterIds = cloneResult.nodesByLabel.get('Chapter') ?? [];
|
|
953
961
|
|
|
954
962
|
// Delete a subgraph
|
|
955
963
|
const deleteResult = await deleteSubgraph(
|
|
@@ -957,6 +965,7 @@ const deleteResult = await deleteSubgraph(
|
|
|
957
965
|
{
|
|
958
966
|
ownedLabels: ['Book', 'Chapter'],
|
|
959
967
|
ownedRelationships: ['HAS_CHAPTER'],
|
|
968
|
+
maxLevel: 5,
|
|
960
969
|
referenceRelationships: [],
|
|
961
970
|
},
|
|
962
971
|
transaction,
|
|
@@ -1688,6 +1697,14 @@ These are incremental improvements you can adopt at your own pace:
|
|
|
1688
1697
|
- All identifiers are **validated and escaped** -- injection-safe by default
|
|
1689
1698
|
- Type generation is **modular and driver-free** -- smaller output, faster builds
|
|
1690
1699
|
|
|
1700
|
+
### ⚠️ Deliberate divergence: `OR: []` matches nothing
|
|
1701
|
+
|
|
1702
|
+
This is the **one intentional behavioral difference** from `@neo4j/graphql-ogm`. The deprecated OGM silently dropped empty `OR` arrays from the WHERE clause, so `delete({ where: { OR: [] } })` compiled to an *unfiltered* `MATCH ... DETACH DELETE` — a full-label wipe. The realistic trigger is a dynamically built filter (`OR: ids.map((id) => ({ id }))`) receiving an empty list.
|
|
1703
|
+
|
|
1704
|
+
grafeo-ogm follows **Prisma semantics** instead: an `OR` with zero effective disjuncts compiles to `false` and matches **nothing** — at the top level, inside relationship quantifiers (`_SOME`/`_NONE`/...), in connection filters, and in nested `connect`/`disconnect` operations. `AND: []` still matches everything (the empty conjunction is true, also per Prisma). If you relied on `OR: []` behaving as "no filter", pass no `where` (or omit the `OR` key) instead.
|
|
1705
|
+
|
|
1706
|
+
When this happens at runtime, the compiler emits a `warn` through your configured `OGMConfig.logger`, so an accidentally empty filter shows up in your logs instead of failing silently.
|
|
1707
|
+
|
|
1691
1708
|
---
|
|
1692
1709
|
|
|
1693
1710
|
## Comparisons
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-push.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/db-push.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"db-push.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/db-push.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAkJtC,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAgE1E"}
|
|
@@ -38,6 +38,7 @@ const fs = __importStar(require("node:fs"));
|
|
|
38
38
|
const node_util_1 = require("node:util");
|
|
39
39
|
const parser_1 = require("../../schema/parser");
|
|
40
40
|
const config_1 = require("../config");
|
|
41
|
+
const display_1 = require("../display");
|
|
41
42
|
const driver_1 = require("../driver");
|
|
42
43
|
const errors_1 = require("../errors");
|
|
43
44
|
const introspect_1 = require("../introspect");
|
|
@@ -98,10 +99,12 @@ function renderPlan(plan, io, willDrop) {
|
|
|
98
99
|
else {
|
|
99
100
|
io.out(`Orphans — ${plan.orphans.length} kept (use --force-drop to remove):`);
|
|
100
101
|
for (const orphan of plan.orphans)
|
|
101
|
-
io.out(` - ${orphan.name}`);
|
|
102
|
+
io.out(` - ${(0, display_1.safeDisplay)(orphan.name)}`);
|
|
102
103
|
}
|
|
104
|
+
// v1.13.0 — unmanaged names come from live introspection and are exactly
|
|
105
|
+
// the ones that FAILED identifier validation: sanitize before printing.
|
|
103
106
|
if (plan.unmanaged.length > 0)
|
|
104
|
-
io.out(`Unmanaged — ${plan.unmanaged.length} ignored: ${plan.unmanaged.join(', ')}`);
|
|
107
|
+
io.out(`Unmanaged — ${plan.unmanaged.length} ignored: ${plan.unmanaged.map(display_1.safeDisplay).join(', ')}`);
|
|
105
108
|
}
|
|
106
109
|
async function resolveDropConsent(plan, io, yes) {
|
|
107
110
|
if (yes)
|
|
@@ -135,7 +138,7 @@ async function applyDrops(driver, database, plan, io) {
|
|
|
135
138
|
try {
|
|
136
139
|
for (const orphan of plan.orphans) {
|
|
137
140
|
await session.run(orphan.dropCypher);
|
|
138
|
-
io.out(`✓ dropped ${orphan.name}`);
|
|
141
|
+
io.out(`✓ dropped ${(0, display_1.safeDisplay)(orphan.name)}`);
|
|
139
142
|
}
|
|
140
143
|
}
|
|
141
144
|
finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-push.js","sourceRoot":"","sources":["../../../../src/cli/commands/db-push.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"db-push.js","sourceRoot":"","sources":["../../../../src/cli/commands/db-push.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Display hygiene for strings sourced from LIVE database introspection.
|
|
3
|
+
*
|
|
4
|
+
* v1.13.0 — names failing `isSafeIdentifier` are correctly routed to
|
|
5
|
+
* `unmanaged` and never executed as Cypher, but they were printed raw. A
|
|
6
|
+
* hostile constraint/index name (Neo4j allows arbitrary characters in
|
|
7
|
+
* backtick-quoted identifiers) could smuggle ANSI/C0 escapes into the
|
|
8
|
+
* developer's terminal — title changes, output spoofing/hiding. The
|
|
9
|
+
* identifier validation that blocks Cypher injection does not cover the
|
|
10
|
+
* display path, so any live-DB string reaching `io.out`/`io.err` must pass
|
|
11
|
+
* through here first.
|
|
12
|
+
*/
|
|
13
|
+
/** Replaces C0/C1 control characters with a visible placeholder (U+FFFD). */
|
|
14
|
+
export declare function safeDisplay(value: string): string;
|
|
15
|
+
//# sourceMappingURL=display.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../../src/cli/display.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,6EAA6E;AAC7E,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Display hygiene for strings sourced from LIVE database introspection.
|
|
4
|
+
*
|
|
5
|
+
* v1.13.0 — names failing `isSafeIdentifier` are correctly routed to
|
|
6
|
+
* `unmanaged` and never executed as Cypher, but they were printed raw. A
|
|
7
|
+
* hostile constraint/index name (Neo4j allows arbitrary characters in
|
|
8
|
+
* backtick-quoted identifiers) could smuggle ANSI/C0 escapes into the
|
|
9
|
+
* developer's terminal — title changes, output spoofing/hiding. The
|
|
10
|
+
* identifier validation that blocks Cypher injection does not cover the
|
|
11
|
+
* display path, so any live-DB string reaching `io.out`/`io.err` must pass
|
|
12
|
+
* through here first.
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.safeDisplay = safeDisplay;
|
|
16
|
+
const CONTROL_CHARS = new RegExp('[\\u0000-\\u001F\\u007F-\\u009F]', 'g');
|
|
17
|
+
/** Replaces C0/C1 control characters with a visible placeholder (U+FFFD). */
|
|
18
|
+
function safeDisplay(value) {
|
|
19
|
+
return value.replace(CONTROL_CHARS, '�');
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=display.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display.js","sourceRoot":"","sources":["../../../src/cli/display.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAKH,kCAEC;AALD,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC;AAE1E,6EAA6E;AAC7E,SAAgB,WAAW,CAAC,KAAa;IACvC,OAAO,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { OGMLogger } from '../execution/executor';
|
|
1
2
|
import { NodeDefinition, SchemaMetadata } from '../schema/types';
|
|
2
3
|
export interface MutationResult {
|
|
3
4
|
cypher: string;
|
|
@@ -13,7 +14,16 @@ export declare class MutationCompiler {
|
|
|
13
14
|
* Bounded by the number of node types in the schema (~50-100 entries).
|
|
14
15
|
*/
|
|
15
16
|
private labelCache;
|
|
16
|
-
|
|
17
|
+
private logger?;
|
|
18
|
+
constructor(schema: SchemaMetadata, options?: {
|
|
19
|
+
logger?: OGMLogger;
|
|
20
|
+
});
|
|
21
|
+
/**
|
|
22
|
+
* Surface a logical operator that contributed zero effective conditions.
|
|
23
|
+
* Mirrors WhereCompiler.warnEmptyLogical — fires only on the anomalous
|
|
24
|
+
* branch, so the hot path pays nothing.
|
|
25
|
+
*/
|
|
26
|
+
private warnEmptyLogical;
|
|
17
27
|
/** Clear internal caches. Useful in tests to prevent cross-test pollution. */
|
|
18
28
|
clearCaches(): void;
|
|
19
29
|
private getCachedLabelString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutation.compiler.d.ts","sourceRoot":"","sources":["../../../src/compilers/mutation.compiler.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EAEd,cAAc,EACf,MAAM,iBAAiB,CAAC;AAqBzB,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,qBAAa,gBAAgB;
|
|
1
|
+
{"version":3,"file":"mutation.compiler.d.ts","sourceRoot":"","sources":["../../../src/compilers/mutation.compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ const RELATIONSHIP_SUFFIXES = ['_SOME', '_NONE', '_ALL', '_SINGLE'];
|
|
|
13
13
|
* Compiles create, update, delete, and label mutations into Cypher + params.
|
|
14
14
|
*/
|
|
15
15
|
class MutationCompiler {
|
|
16
|
-
constructor(schema) {
|
|
16
|
+
constructor(schema, options) {
|
|
17
17
|
this.schema = schema;
|
|
18
18
|
/**
|
|
19
19
|
* Cache of computed label strings per type name.
|
|
@@ -22,6 +22,17 @@ class MutationCompiler {
|
|
|
22
22
|
this.labelCache = new Map();
|
|
23
23
|
/** Counter for unique relationship filter variables within a single WHERE clause. */
|
|
24
24
|
this.relFilterCounter = 0;
|
|
25
|
+
this.logger = options?.logger;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Surface a logical operator that contributed zero effective conditions.
|
|
29
|
+
* Mirrors WhereCompiler.warnEmptyLogical — fires only on the anomalous
|
|
30
|
+
* branch, so the hot path pays nothing.
|
|
31
|
+
*/
|
|
32
|
+
warnEmptyLogical(op, context) {
|
|
33
|
+
this.logger?.warn?.(op === 'OR'
|
|
34
|
+
? `[OGM] ${context}.OR has zero effective conditions — compiled to \`false\` (matches nothing, per Prisma semantics). Omit the OR key to match everything.`
|
|
35
|
+
: `[OGM] ${context}.AND has zero effective conditions — no filter emitted (matches everything).`);
|
|
25
36
|
}
|
|
26
37
|
/** Clear internal caches. Useful in tests to prevent cross-test pollution. */
|
|
27
38
|
clearCaches() {
|
|
@@ -1191,11 +1202,15 @@ class MutationCompiler {
|
|
|
1191
1202
|
conditions.push(`NOT (${innerConditions.join(' AND ')})`);
|
|
1192
1203
|
}
|
|
1193
1204
|
// AND — all sub-conditions must hold
|
|
1194
|
-
if (Array.isArray(whereSpec.AND))
|
|
1205
|
+
if (Array.isArray(whereSpec.AND)) {
|
|
1206
|
+
const before = conditions.length;
|
|
1195
1207
|
for (let i = 0; i < whereSpec.AND.length; i++) {
|
|
1196
1208
|
const sub = this.buildConnectionWhereConditions(whereSpec.AND[i], targetVar, `${prefix}_AND${i}`, params, targetNodeDef);
|
|
1197
1209
|
conditions.push(...sub);
|
|
1198
1210
|
}
|
|
1211
|
+
if (conditions.length === before)
|
|
1212
|
+
this.warnEmptyLogical('AND', 'mutation connection where');
|
|
1213
|
+
}
|
|
1199
1214
|
// OR — any sub-condition must hold
|
|
1200
1215
|
if (Array.isArray(whereSpec.OR)) {
|
|
1201
1216
|
const orClauses = [];
|
|
@@ -1206,6 +1221,13 @@ class MutationCompiler {
|
|
|
1206
1221
|
}
|
|
1207
1222
|
if (orClauses.length > 0)
|
|
1208
1223
|
conditions.push(`(${orClauses.join(' OR ')})`);
|
|
1224
|
+
// Prisma semantics: OR with zero effective disjuncts matches NOTHING.
|
|
1225
|
+
// Previously the operator vanished, so `disconnect: [{ where:
|
|
1226
|
+
// { OR: [] } }]` detached EVERY related node instead of none.
|
|
1227
|
+
else {
|
|
1228
|
+
this.warnEmptyLogical('OR', 'mutation connection where');
|
|
1229
|
+
conditions.push('false');
|
|
1230
|
+
}
|
|
1209
1231
|
}
|
|
1210
1232
|
// Fallback: if no recognized keys, treat the whole spec as node conditions
|
|
1211
1233
|
// (backward compatibility for simple `{ id: '...' }` style)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutation.compiler.js","sourceRoot":"","sources":["../../../src/compilers/mutation.compiler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mutation.compiler.js","sourceRoot":"","sources":["../../../src/compilers/mutation.compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { OGMLogger } from '../execution/executor';
|
|
1
2
|
import type { PolicyContextBundle } from '../policy/types';
|
|
2
3
|
import { NodeDefinition, SchemaMetadata } from '../schema/types';
|
|
3
4
|
export interface WhereResult {
|
|
@@ -28,6 +29,13 @@ export interface WhereCompilerOptions {
|
|
|
28
29
|
* empty results. Opt in via `OGMConfig.features.strictWhere = true`.
|
|
29
30
|
*/
|
|
30
31
|
strictWhere?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Logger used to surface a `warn` when a logical operator (`AND`/`OR`)
|
|
34
|
+
* compiles with zero effective conditions — almost always a
|
|
35
|
+
* dynamically-built filter that received an empty list. The OGM
|
|
36
|
+
* passes its `config.logger` here.
|
|
37
|
+
*/
|
|
38
|
+
logger?: OGMLogger;
|
|
31
39
|
}
|
|
32
40
|
/**
|
|
33
41
|
* Compiles a Where input object into a Cypher WHERE clause fragment + params.
|
|
@@ -36,7 +44,13 @@ export declare class WhereCompiler {
|
|
|
36
44
|
private schema;
|
|
37
45
|
private disabledOperators;
|
|
38
46
|
private strictWhere;
|
|
47
|
+
private logger?;
|
|
39
48
|
constructor(schema: SchemaMetadata, options?: WhereCompilerOptions);
|
|
49
|
+
/**
|
|
50
|
+
* Surface a logical operator that contributed zero effective conditions.
|
|
51
|
+
* Fires only on the anomalous branch, so the hot path pays nothing.
|
|
52
|
+
*/
|
|
53
|
+
private warnEmptyLogical;
|
|
40
54
|
compile(where: Record<string, unknown> | undefined | null, nodeVar: string, nodeDef: NodeDefinition, paramCounter?: {
|
|
41
55
|
count: number;
|
|
42
56
|
}, options?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"where.compiler.d.ts","sourceRoot":"","sources":["../../../src/compilers/where.compiler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"where.compiler.d.ts","sourceRoot":"","sources":["../../../src/compilers/where.compiler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EACL,cAAc,EAGd,cAAc,EACf,MAAM,iBAAiB,CAAC;AAezB,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAqDD,KAAK,cAAc,GAAG,MAAM,CAAC;AA4B7B,MAAM,WAAW,oBAAoB;IACnC,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IACxC;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,aAAa;IAMtB,OAAO,CAAC,MAAM;IALhB,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,WAAW,CAAU;IAC7B,OAAO,CAAC,MAAM,CAAC,CAAY;gBAGjB,MAAM,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,oBAAoB;IAOhC;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CACL,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,EACjD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,EACvB,YAAY,GAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAiB,EAC9C,OAAO,CAAC,EAAE;QACR;;;;;WAKG;QACH,YAAY,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QACrC;;;;;;;;;;WAUG;QACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;KACrC,GACA,WAAW;IAoDd;;;;;;;;OAQG;IACH,OAAO,CAAC,mBAAmB;IA6K3B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,iBAAiB;IAsNzB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,oBAAoB;IA0I5B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,2BAA2B;IAsKnC,OAAO,CAAC,sBAAsB;IAsK9B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAyKhC,OAAO,CAAC,qBAAqB;IA8B7B;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;CAmF/B"}
|