code: def resolve_signing_intent(self):
          
  
          all_signing_intents = [
              self.odcs_config.get_signing_intent_by_keys(compose_info.get('sigkeys', []))
              for compose_info in self.composes_info
          ]
  
          # Because composes_info may contain composes that were passed as
          # plugin parameters, add the parent signing intent to avoid the
          # overall signing intent from surpassing parent's.
          if self._parent_signing_intent:
              all_signing_intents.append(self._parent_signing_intent)
  
          # Calculate the least restrictive signing intent
          signing_intent = min(all_signing_intents, key=lambda x: x['restrictiveness'])
  
          self.log.info('Signing intent for build is %s', signing_intent['name'])
          self.compose_config.set_signing_intent(signing_intent['name'])
docs: Determine the correct signing intent
  
          Regardless of what was requested, or provided as signing_intent plugin parameter,
          consult sigkeys of the actual composes used to guarantee information accuracy.