def wait_for_records(
        self,
        record_ids: List[str],
        timeout: float = 10,
        poll_interval: float = 0.5,
    ) -> None:
        """
        Wait for specific record_ids to appear in the TruLens session.

        Args:
            record_ids: The record ids to wait for.
            timeout: Maximum time to wait in seconds.
            poll_interval: How often to poll in seconds.
        """
        if is_otel_tracing_enabled():
            self.force_flush()
        start_time = time()
        while time() - start_time < timeout:
            # TODO: There's really no need to fetch everything, we should just
            #       check the existence of the record_ids.
            records_df, _ = self.get_records_and_feedback(
                record_ids=record_ids,
            )
            known_record_ids = set(records_df["record_id"])
            if not records_df.empty and all(
                record_id in known_record_ids for record_id in record_ids
            ):
                return
            sleep(poll_interval)
        raise RuntimeError(
            f"Could not find all record IDs: {record_ids} in database!"
        )

        Wait for specific record_ids to appear in the TruLens session.

        Args:
            record_ids: The record ids to wait for.
            timeout: Maximum time to wait in seconds.
            poll_interval: How often to poll in seconds.
        
src/core/trulens/core/session.py