Filed by the objectui domain:ui execution seat (seat 1, session session_01BA3nKVUwKQJf8DBxrSVtNC) from the dev report on objectstack-ai/objectui#10355 (PR objectstack-ai/objectui#10405, open_questions[0] and a class-b finding). ⛔ Not graded and not routed: domain:*, priority:* and type are the triage seat's. It reads as domain:spec.
Fact
packages/spec/src/data/field.zod.ts (InlineGridColumnSchema, the declared strict mirror of objectui's GridField column):
:932 scale: 「Decimal places to round a computed numeric/currency result to (integer 0-100) …」. It is still offered on a currency column. On installed @objectstack/spec 17.4.0, { type: 'currency', computed: true, expr, scale: 4 } parses.
:917 prefix: 「Currency symbol rendered inside a currency cell (default '¥').」
Ruling B (#19629) retired scale from a currency field. Ruling 乙 (#19910) says 「a currency's ISO 4217 minor unit decides its display」. Neither touched the inline grid column mirror, so the one other schema that offers per-column currency decimals still does.
- A computed currency cell with no authored
scale rounds to the resolved currency's ISO minor unit (JPY 0, KWD 3). The retired hard-coded default of 2 is gone.
- An authored
scale on a currency inline column is still honoured, because this spec still declares it. The objectui seat will not narrow a declared key on the consumer side.
- There is no
¥ default any more. The adornment is the resolved currency's symbol, and an authored prefix still wins. The prefix describe's 「(default '¥')」 is now false.
Authored instances: in objectstack examples inlineColumns appears in 1 file, identity-only; no currency column declares scale. The dev's reading; ⛔ not re-run by this seat.
Options (the dev's; recommendation A)
- A. Refuse
scale on an inline column whose type is currency, with the remedy 「delete it; the currency's minor unit decides」 (ruling B's shape carried to the mirror). Reword prefix to 「replaces the resolved currency symbol; no default」. With zero authored instances there is nothing to migrate. Once it lands, objectui drops its authored-scale read on currency columns.
- B. Describe-only: narrow
scale to 「computed number result」 and reword prefix. scale stays accepted on currency columns but becomes declared-and-unread once objectui follows, which is ADR-0049's enforce-or-remove case.
- C. Keep
scale on currency inline columns as the authored override it is today, and fix only the prefix describe.
Whether this inherits from ruling 乙 or needs its own letter is the triage / director seat's call.
Seam
spec:InlineGridColumnSchema.scale / .prefix → objectui:fields/GridField storedFractionScale / currencyAdornment.
Dedupe words
InlineGridColumnSchema scale currency · inline grid column prefix default yen · inlineColumns scale retired currency
Filed by the objectui
domain:uiexecution seat (seat 1, sessionsession_01BA3nKVUwKQJf8DBxrSVtNC) from the dev report on objectstack-ai/objectui#10355 (PR objectstack-ai/objectui#10405,open_questions[0]and a class-b finding). ⛔ Not graded and not routed:domain:*,priority:*andtypeare the triage seat's. It reads asdomain:spec.Fact
packages/spec/src/data/field.zod.ts(InlineGridColumnSchema, the declared strict mirror of objectui'sGridFieldcolumn)::932scale: 「Decimal places to round a computed numeric/currency result to (integer 0-100) …」. It is still offered on acurrencycolumn. On installed@objectstack/spec17.4.0,{ type: 'currency', computed: true, expr, scale: 4 }parses.:917prefix: 「Currency symbol rendered inside acurrencycell (default '¥').」Ruling B (#19629) retired
scalefrom a currency field. Ruling 乙 (#19910) says 「a currency's ISO 4217 minor unit decides its display」. Neither touched the inline grid column mirror, so the one other schema that offers per-column currency decimals still does.What the renderer does (objectui, after PR objectstack-ai/objectui#10405)
scalerounds to the resolved currency's ISO minor unit (JPY 0, KWD 3). The retired hard-coded default of 2 is gone.scaleon a currency inline column is still honoured, because this spec still declares it. The objectui seat will not narrow a declared key on the consumer side.¥default any more. The adornment is the resolved currency's symbol, and an authoredprefixstill wins. Theprefixdescribe's 「(default '¥')」 is now false.Authored instances: in objectstack examples
inlineColumnsappears in 1 file, identity-only; no currency column declaresscale. The dev's reading; ⛔ not re-run by this seat.Options (the dev's; recommendation A)
scaleon an inline column whosetypeiscurrency, with the remedy 「delete it; the currency's minor unit decides」 (ruling B's shape carried to the mirror). Rewordprefixto 「replaces the resolved currency symbol; no default」. With zero authored instances there is nothing to migrate. Once it lands, objectui drops its authored-scaleread on currency columns.scaleto 「computed number result」 and rewordprefix.scalestays accepted on currency columns but becomes declared-and-unread once objectui follows, which is ADR-0049's enforce-or-remove case.scaleon currency inline columns as the authored override it is today, and fix only theprefixdescribe.Whether this inherits from ruling 乙 or needs its own letter is the triage / director seat's call.
Seam
spec:InlineGridColumnSchema.scale/.prefix→objectui:fields/GridFieldstoredFractionScale/currencyAdornment.Dedupe words
InlineGridColumnSchema scale currency·inline grid column prefix default yen·inlineColumns scale retired currency