fix(cli): exclude omitted overview and usage from model instance update mask (#1161)
## Summary When updating a model instance, `overview` and `usage` were being added to the update mask even when they were not included in `model-instance-metadata.json`. This happened because both fields defaulted to an empty string when missing, while the update mask logic checks whether their value is `None`. As a result, the check was always true for omitted fields. This change makes omitted `overview` and `usage` fields stay out of the update mask. ## Fix Changed the default value for `overview` and `usage` from an empty string to `None`. This keeps the existing update logic intact while correctly distinguishing between a field that was not provided and a field that was intentionally set to an empty string. After this change: * An omitted `overview` or `usage` is not included in the update mask. * An explicitly empty `overview` or `usage` is still included in the update mask. * Non-empty values continue to work as before. ## Tests Added regression tests to verify that: * Omitted `overview` and `usage` are not added to the update mask. * Explicitly setting `overview` and `usage` to an empty string still adds them to the update mask. * Existing model instance update tests continue to pass. Ran: ```text pytest tests/unit/test_model_create.py -q pytest tests/unit -q black --check --diff <modified files> mypy --install-types --non-interactive src/kaggle tests ``` All checks pass, including the full unit test suite with 1236 tests passing.
S
Sridip Basu committed
bdcc1aa6a7bc4e2804a005e6963d181159648ade
Parent: 8f4dbfd
Committed by GitHub <noreply@github.com>
on 8/5/2026, 9:09:32 PM