Having a GUID() function Arcade expression in an ArcGIS Field Maps form causes the 'In Progress' message to display indefinitely on iOS devices after hitting the submit button from a point collection.
The expression is not correct. Each time the expression evaluates, a new global unique identifier (GUID) is returned, leading to an infinite loop. While the 'In Progress' indicator issue is not present on Android, the expression never evaluates to produce the expected results.
Define a GUID initially and check if the field value contains a GUID. If it is empty, create and assign a GUID using the Guid() function. If not empty, return the current GUID field value.
For example, to calculate a random GUID, use the following expression and replace FIELDNAME with the name of the field:
var id = $feature.FieldName
IIf(id==null, guid(), id)