In practice I have found that when implementing a Product backend, the create_order and search_opportunities functions almost always begin by validating the generic geometry argument against the subset of geometry types that are actually accepted. For both ease of development as well as better API documentation it would be nice if the conformance classes for accepted geometry types would automatically narrow the type of the geometry field in the OrderPayload and OpportunityPayload models.