0
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-08-05 10:42:34 +08:00
discourse/lib/service
Martin Brennan ea74b65aa5
DEV: Preserve existing errors in service model steps (#41896)
`ModelStep` revalidates changed models by calling `invalid?`, which
clears errors
added by the model producer before validations run. For example,
`UploadCreator`
can return an unsaved `Upload` containing an image-processing error;
`ModelStep`
then clears that error and may treat the `Upload` as valid.

Treat models that already contain errors as invalid without revalidating
them.
This preserves operation-specific errors for `on_model_errors` while
continuing
to validate changed models that do not already contain errors.

---------

Co-authored-by: Loïc Guitaut <loic@discourse.org>
2026-07-23 17:15:26 +10:00
..
base DEV: Preserve existing errors in service model steps (#41896) 2026-07-23 17:15:26 +10:00
action_base.rb
base.rb DEV: Enable some minor rubocop rules (#40094) 2026-05-19 15:29:38 +02:00
contract_base.rb
nested_contract_type.rb
options_base.rb
policy_base.rb
runner.rb Revert "FEATURE: discourse-workflows (#39704)" (#40366) 2026-05-28 13:59:42 +01:00
steps_inspector.rb