Description
Once an object has been validated, we can skip subsequent validations of the object (as its own type). This is true of sub-objects, too: within a ZWrapper, an already-validated object does not need to be validated again. This should save us lots of duplicate calculation.
Desired behavior/Acceptance criteria (returned value, expected error, performance expectations, etc.)
- add a marker to ZWrapper (e.g. alreadyValid)
- invalidate pre-validated ZWrappers whenever an internal object changes to an invalid state
- short-circuit validation (as self-declared type) upon encountering an alreadyValid object
- avoid validation as Z1 on alreadyValid objects (since, trivially, anything that validates as anything MUST also validate as Z1)
Remove all the non-applicable tags from the "Tags" field, leave only the tags of the projects/repositories related to this task
Completion checklist
- Before closing this task, review one by one the checklist available here: https://www.mediawiki.org/wiki/Abstract_Wikipedia_team/Definition_of_Done#Back-end_Task/Bug_completion_checklist