@revenexx/app-sdk@0.7.3
Patch Changes
1bb3394: State the jsonb filter rule without inventing a document to illustrate it.
The 400 introduced in 0.7.2 interpolated the real column name into a fixed example body —
e.g. axes={"de":"Hauptlager"}— borrowed from one column and shown for every column.family_variants.axes,measurement_families.unitsandfamily_attributes.required_channelshold arrays, so the message illustrated an array-shaped document with an object.That is the worst shape a wrong hint can take here: a caller who copies it sends valid JSON, so there is no 400 at all — the answer is 200 with zero rows, silently. Refusing a bad value and then misdirecting the retry is not better than the message this replaced.
The function cannot do better from what it has. The generated column metadata carries
type,notNulland sometimesdefault, and nothing about the document's shape; 22 of the 25 jsonb columns inproductscarry no default at all. The honest example is per column, the app knows it, and every app already publishes it on the parameter — so the message names the column, states the rule in full, and points at the contract instead of inventing an instance.Same status, same
code, same validation. A regression test asserts the message stays actionable and carries no document of its own.