From 5af2399e3ba884b1dfff004b6f1027615f2c5c51 Mon Sep 17 00:00:00 2001 From: Alex Groleau Date: Thu, 11 Jun 2026 20:40:27 -0400 Subject: [PATCH] fixed issue with filter generation where filters or conditions are used internally --- GEMINI.md | 1 + fixtures/filter.json | 2 +- src/database/compile/filter.rs | 4 +++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/GEMINI.md b/GEMINI.md index 7c58efb..ae3961a 100644 --- a/GEMINI.md +++ b/GEMINI.md @@ -175,6 +175,7 @@ In the Punc architecture, filters are automatically synthesized, strongly-typed * **Conditions**: A condition schema is the contract defining the mathematical operations allowed on a primitive field. For example, a `string.condition` allows `$eq`, `$ne`, `$gt`, `$gte`, `$lt`, `$lte`, `$of` (IN), and `$nof` (NOT IN). * **Enum Conditions**: When JSPG synthesizes an enum, it dynamically generates an `.condition` (e.g., `address_kind.condition`). This strongly-typed condition perfectly mirrors the operations of a `string.condition`, but strictly limits the arrays and inputs of `$eq`, `$ne`, `$of`, and `$nof` to the exact variations defined by that Enum. This context ensures that UI generators know exactly when to render `