From d3b84116b73adcf2ec63e79490d584bc768977dd Mon Sep 17 00:00:00 2001 From: ymc9 <104139426+ymc9@users.noreply.github.com> Date: Thu, 27 Nov 2025 18:58:51 +0800 Subject: [PATCH] chore: addressing a few PR comments --- packages/orm/src/client/contract.ts | 3 +++ packages/orm/src/utils/schema-utils.ts | 1 + packages/plugins/policy/src/expression-evaluator.ts | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/orm/src/client/contract.ts b/packages/orm/src/client/contract.ts index 01fec352..57cd9b05 100644 --- a/packages/orm/src/client/contract.ts +++ b/packages/orm/src/client/contract.ts @@ -61,6 +61,9 @@ export enum TransactionIsolationLevel { * ZenStack client interface. */ export type ClientContract = ClientOptions> = { + /** + * The schema definition. + */ readonly $schema: Schema; /** diff --git a/packages/orm/src/utils/schema-utils.ts b/packages/orm/src/utils/schema-utils.ts index cd5ce553..b928b078 100644 --- a/packages/orm/src/utils/schema-utils.ts +++ b/packages/orm/src/utils/schema-utils.ts @@ -81,6 +81,7 @@ export class MatchingExpressionVisitor extends ExpressionVisitor { } find(expr: Expression) { + this.found = false; this.visit(expr); return this.found; } diff --git a/packages/plugins/policy/src/expression-evaluator.ts b/packages/plugins/policy/src/expression-evaluator.ts index e1d4e8e4..45c7b855 100644 --- a/packages/plugins/policy/src/expression-evaluator.ts +++ b/packages/plugins/policy/src/expression-evaluator.ts @@ -106,7 +106,7 @@ export class ExpressionEvaluator { invariant(op === '?' || op === '!' || op === '^', 'expected "?" or "!" or "^" operator'); const left = this.evaluate(expr.left, context); - if (!left) { + if (left === null || left === undefined) { return null; }