rho-coding-agent 0.24.1

A lightweight agent harness inspired by Pi
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use tokio::sync::mpsc;

const MAX_EVENTS_PER_FRAME: usize = 256;

pub(super) fn handle_batch<T, E>(
    first: T,
    receiver: &mut mpsc::UnboundedReceiver<T>,
    mut handle: impl FnMut(T) -> Result<(), E>,
) -> Result<(), E> {
    handle(first)?;
    for _ in 1..MAX_EVENTS_PER_FRAME {
        let Ok(event) = receiver.try_recv() else {
            break;
        };
        handle(event)?;
    }
    Ok(())
}