Skip to content

Latest commit

 

History

History
25 lines (20 loc) · 1.17 KB

File metadata and controls

25 lines (20 loc) · 1.17 KB
@objectstack/spec minor
@objectstack/rest minor

fix(rest): report droppedFields from the cross-object batch, so a silent strip stops reading as a clean save (#3794)

The engine strips writes to readonly (#2948) and readonlyWhen-locked (#3042) fields and completes the write without them. Every write path already reported which fields it dropped (#3431/#3455) — except the cross-object transactional batch, which never wired onFieldsDropped at all.

That path is the Console record form's save for a master-detail record, so it is exactly where a user edits a readonlyWhen field: they changed it, the form said "updated successfully", the value never moved, and nothing anywhere said so.

POST /batch responses now carry a top-level droppedFields list, each event tagged with the index of the operation that produced it (results entries are bare record echoes, with no envelope to hang a per-row list on). Omitted entirely when nothing was dropped, so the shape stays backward-compatible; the batch still commits either way — a strip is legal semantics, not an error.

The Console half ships in objectui: the write-warning toast now fires on batch saves too.