backend.ai icon indicating copy to clipboard operation
backend.ai copied to clipboard

Integrate ModifyScalingGroup Action with existing GraphQL implementation

Open jopemachine opened this issue 3 weeks ago • 0 comments

Objective

Complete Modify action with GraphQL integration and comprehensive tests.

Implementation Details

GraphQL mutation modification (~30 lines)

  • ModifyScalingGroupInputUpdater conversion logic

  • simple_db_mutate_returning_itemprocessors.scaling_group.modify.wait_for_complete()

    ScalingGroupOpts conversion logic cleanup (~20 lines)

  • OptionalState / TriState conversion for nullable/non-nullable fields

    Additional Unit tests:

  • test_modify_scaling_group_service.py (~80 lines)

  • test_modify_scaling_group_repository.py (~100 lines)

  • Edge case tests (not found, validation, etc.) (~50 lines)

Estimated Lines

~280 lines

Dependencies

  • Story: ModifyScalingGroup Action - Updater Spec

Acceptance Criteria

  • [ ] GraphQL mutation uses new processor pattern
  • [ ] Input conversion properly handles all fields including ScalingGroupOpts
  • [ ] OptionalState / TriState correctly applied to nullable vs non-nullable fields
  • [ ] Edge cases tested (scaling group not found, invalid inputs)
  • [ ] All unit tests pass
  • [ ] Legacy simple_db_mutate_returning_item removed from ModifyScalingGroup

JIRA Issue: BA-3516

jopemachine avatar Dec 19 '25 07:12 jopemachine