feat: Execute permission-scoped command nodes #314

Closed
opened 2026-07-13 19:46:09 +02:00 by dries · 0 comments
Owner

Parent

#311

What to build

Allow a workflow to execute local command nodes as durable attempts, subject to ocman permission, directory, environment, cancellation, and output policies. Users can inspect command outcome and logs from the run view.

Acceptance criteria

  • A command node becomes runnable when dependencies succeed and completes from its process exit status.
  • The executor applies the workflow working directory, explicit environment, and scoped command permission rules without an unrestricted-shell bypass.
  • stdout and stderr are captured with bounded in-memory behavior and exposed through run inspection.
  • Exit code, start/end timestamps, cancellation, and executor errors produce distinct durable outcomes.
  • Basic collectors can capture text, JSON files, ordinary files, and Git diffs as declared outputs.
  • Missing or malformed declared outputs fail the node visibly.
  • Cancel requests terminate the process tree where supported and settle the attempt before releasing capacity.
  • A two-command sequential workflow can be authored, run, and inspected end to end.
  • Security-boundary and cancellation behavior have regression tests through the workflow-run seam.

Blocked by

## Parent #311 ## What to build Allow a workflow to execute local command nodes as durable attempts, subject to ocman permission, directory, environment, cancellation, and output policies. Users can inspect command outcome and logs from the run view. ## Acceptance criteria - [ ] A command node becomes runnable when dependencies succeed and completes from its process exit status. - [ ] The executor applies the workflow working directory, explicit environment, and scoped command permission rules without an unrestricted-shell bypass. - [ ] stdout and stderr are captured with bounded in-memory behavior and exposed through run inspection. - [ ] Exit code, start/end timestamps, cancellation, and executor errors produce distinct durable outcomes. - [ ] Basic collectors can capture text, JSON files, ordinary files, and Git diffs as declared outputs. - [ ] Missing or malformed declared outputs fail the node visibly. - [ ] Cancel requests terminate the process tree where supported and settle the attempt before releasing capacity. - [ ] A two-command sequential workflow can be authored, run, and inspected end to end. - [ ] Security-boundary and cancellation behavior have regression tests through the workflow-run seam. ## Blocked by - #313
dries closed this issue 2026-07-16 00:56:08 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
dries/ocman#314
No description provided.