def on_context(
        self,
        arg: Optional[str] = None,
        *,
        collect_list: bool,
    ):
        """
        Create a variant of `self` that will attempt to take in the context from
        a context retrieval as input, sending it as an argument `arg` to
        implementation.
        """
        if not is_otel_tracing_enabled():
            raise RuntimeError(
                "Context feedback functions are only supported in OTel mode!"
            )
        new_selectors = self.selectors.copy()
        if arg is None:
            arg = self._next_unselected_arg_name()
            self._print_guessed_selector(arg, select_schema.Select.RecordOutput)
        new_selectors[arg] = Selector.select_context(collect_list=collect_list)
        ret = self.model_copy()
        ret.selectors = new_selectors
        return ret

        Create a variant of `self` that will attempt to take in the context from
        a context retrieval as input, sending it as an argument `arg` to
        implementation.
        
src/core/trulens/core/feedback/feedback.py