artifactize 0.10.0

The AI-native collaboration layer for one-of-a-kind teammates and their agents: split a project into Artifacts with their own evals, and reuse every review while it still holds.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
//! Joining spawned tasks. A task that panicked has a bug, so its panic continues in the task
//! that joins it instead of becoming an ordinary failure; a cancelled task stays an error.

/// `result` of joining a task, with a panic resumed here.
pub(crate) fn joined<T>(
    result: Result<T, tokio::task::JoinError>,
) -> Result<T, tokio::task::JoinError> {
    match result {
        Err(error) if error.is_panic() => std::panic::resume_unwind(error.into_panic()),
        other => other,
    }
}