# Libtmux_workspace.Execution.await

**Workspace Manager concept example** A working example of the core library. It can change without notice.

- **Module:** Libtmux_workspace
- **Package:** libtmux-workspace
- **Language:** OCaml
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-ocaml/blob/205dfda49742592b479247049d186956e4a4cfe9/workspace/libtmux_workspace.mli#L253
- **Public owner:** Libtmux_workspace
- **Page:** https://libtmux.org/en/ocaml/latest/workspace/reference/libtmux_workspace-execution-await/

```
val await : ?compensate_on_failure:bool -> t -> receipt
```

Execute once per handle, rechecking generation and captured preconditions first. Expected failures return a partial journal. Exceptions, including native cancellation, propagate after recording progress and bounded compensation. Subsequent calls only return the retained receipt; mutations never retry.

Compensation kills only panes reported by completed creation commands, in reverse creation order. tmux removes windows and sessions that become empty. Containers with foreign panes or window links remain; adding a borrowed pane never makes it eligible for cleanup. Cleanup failures have separate outcomes. Compensation cannot undo external effects of programs started inside the panes.

## Parameters

- `compensate_on_failure?` (`bool`)
- `arg1` (`t`)
