From f1d40126255175af7e3bfad45dd8a8b67c1d2349 Mon Sep 17 00:00:00 2001 From: os-zhuang Date: Tue, 16 Jun 2026 11:11:27 +0800 Subject: [PATCH] chore(changeset): bump bare-ref validation to minor + downstream note The new build-time error (#1931) can fail a previously-passing build for a stack carrying a latent bare-ref bug, so it warrants a minor bump and an explicit release note rather than a silent patch. Co-Authored-By: Claude Opus 4.8 (1M context) --- .changeset/validate-formula-bare-refs.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.changeset/validate-formula-bare-refs.md b/.changeset/validate-formula-bare-refs.md index e121f9abb9..b98e8fd919 100644 --- a/.changeset/validate-formula-bare-refs.md +++ b/.changeset/validate-formula-bare-refs.md @@ -1,10 +1,18 @@ --- -"@objectstack/formula": patch -"@objectstack/cli": patch +"@objectstack/formula": minor +"@objectstack/cli": minor --- feat(validate): flag bare field references in record-scoped CEL sites at build time +> **Heads-up for downstream:** this adds a NEW build-time error. A `Field.formula` +> or validation predicate that references a field bare (`amount` instead of +> `record.amount`) now fails `objectstack compile`. These expressions were already +> silently broken at runtime (they evaluated to `null` / never fired), so this is a +> fix that surfaces a latent bug — but a stack carrying one will go from +> "builds, silently wrong" to "fails the build" on upgrade. The error message +> states the exact correction (`write record.`). + A `Field.formula` and an object validation predicate evaluate against the `record` namespace only — there is no field flattening — so a bare top-level identifier (`amount`, `status`) resolves to nothing and the expression silently