code: def _add_onchain_locksroot_to_channel_new_state_changes(
          storage: SQLiteStorage,
  ) -> None:
      
      batch_size = 50
      batch_query = storage.batch_query_state_changes(
          batch_size=batch_size,
          filters=[
              ('_type', 'raiden.transfer.state_change.ContractReceiveChannelNew'),
          ],
      )
      for state_changes_batch in batch_query:
          updated_state_changes = list()
          for state_change in state_changes_batch:
              state_change_data = json.loads(state_change.data)
  
              channel_state = state_change_data['channel_state']
              msg = 'v18 state changes cant contain onchain_locksroot'
              assert 'onchain_locksroot' not in channel_state['our_state'], msg
  
              msg = 'v18 state changes cant contain onchain_locksroot'
              assert 'onchain_locksroot' not in channel_state['partner_state'], msg
  
              channel_state['our_state']['onchain_locksroot'] = serialize_bytes(EMPTY_MERKLE_ROOT)
              channel_state['partner_state']['onchain_locksroot'] = serialize_bytes(
                  EMPTY_MERKLE_ROOT,
              )
  
              updated_state_changes.append((
                  json.dumps(state_change_data),
                  state_change.state_change_identifier,
              ))
          storage.update_state_changes(updated_state_changes)
docs: Adds `onchain_locksroot` to our_state/partner_state in
      ContractReceiveChannelNew's channel_state object.