Documentation
¶
Overview ¶
Package execution runs bounded subprocesses inside a validated workspace.
Index ¶
- Variables
- type Command
- type Config
- type Result
- type Runner
- func (r *Runner) Deadline(ctx context.Context) (context.Context, context.CancelFunc)
- func (r *Runner) ForWorkspace(ws *workspace.Workspace) (*Runner, error)
- func (r *Runner) Permit(ctx context.Context) (func(), error)
- func (r *Runner) Run(ctx context.Context, command Command, streams Streams) (Result, error)
- type Streams
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrOutputLimit = errors.New("subprocess output limit exceeded")
ErrOutputLimit indicates that stdout or stderr crossed its configured cap.
Functions ¶
This section is empty.
Types ¶
type Runner ¶
type Runner struct {
// contains filtered or unexported fields
}
Runner owns workspace containment, deadlines, concurrency, and output caps.
func (*Runner) Deadline ¶
Deadline applies the process-wide maximum tool duration to a handler. Tool handlers call it once so package resolution and execution share one budget.
func (*Runner) ForWorkspace ¶
ForWorkspace returns a runner contained to another validated workspace while sharing this runner's process budget. It is used for server-created worktrees.
Click to show internal directories.
Click to hide internal directories.