Browse documentation
Docs
Build Runs
A build run executes a workflow template end to end - from ordered work orders through gate decisions to an open PR that Measure scores automatically.
How build runs work
A workflow template defines an ordered sequence of steps. Each step maps to one work order, and each work order runs in full isolation with a fresh context window.
Standard step sequence
- 1Plan - the agent reads the product plan or work brief and produces a structured implementation plan with file-level task breakdown.
- 2Implement - the agent works through the plan, making code changes in the isolated workspace.
- 3Test - the agent runs the project test suite and fixes any regressions before advancing.
- 4Review - a secondary agent audits the diff against the original brief and flags gaps or quality issues.
- 5Verify - the run opens a PR. Measure scores the PR automatically and writes results back to the run record.
Gate decisions
Between steps, a gate evaluates the output of the previous order and decides the next action.
| Decision | Outcome |
|---|---|
| advance | Output passes - proceed to the next step. |
| review | Output has minor gaps - re-queue the current step with reviewer feedback as additional context. |
| approval | Human checkpoint required - the run pauses and notifies the assigned reviewer. |
| fail | Output is unrecoverable - the run stops, workspace is destroyed, and the error is recorded. |
Human approval checkpoints
Any step in a workflow template can be marked as requiring human approval before execution begins. When the gate issues an approval decision, the run pauses immediately. An email and in-app notification is sent to the assigned reviewer. Reviewers can approve, request changes with comments, or reject the run entirely from the dashboard. Runs that sit in awaiting_approval for more than 7 days are automatically cancelled.
Cloud sandbox security model
Cloud executor runs are fully isolated from each other and from the FeatureFactory control plane. The sandbox is designed so that a compromised LLM output cannot reach resources outside the current order.
Non-root container
Every work order executes inside a container running as a dedicated non-root user. No container-level root access is granted at any point during the run.
Egress allowlist
Outbound traffic is restricted to the FeatureFactory API, GitHub, and the configured LLM provider. All other egress is blocked at the network layer.
Per-order repo tokens
Each work order receives a short-lived GitHub token scoped to exactly one repository. The token expires when the order completes or fails.
Workspace destroyed after each order
The on-disk workspace is wiped after every order, success or failure. No artefacts or credentials persist between runs on the same executor.
HTTPS delivery only
Results - branch names, structured payloads, completion status - are delivered to the FeatureFactory API over HTTPS. Data is never written to git branches and never stored on the executor after the run.
LLM calls stay server-side
Token costs for cloud runs are billed to your FeatureFactory plan, not a personal Anthropic account. You can audit usage per run in the dashboard.
What the cloud executor sends to GitHub
- -A single git push using a per-order token scoped to the target repository only.
- -A PR creation request via the GitHub API once the push succeeds.
What the cloud executor never does
- -Write code review comments, approve PRs, or merge branches.
- -Access any repository other than the one specified in the work order.
- -Retain any file contents, environment variables, or artefacts after the workspace is destroyed.
- -Make outbound connections to hosts outside the egress allowlist.
Runner choice - local vs cloud
Every build run executes on a runner. You can choose between the managed cloud executor and a local runner installed on your own machine.
Cloud executor
Managed by FeatureFactory. No local setup required. Token costs are included in your plan. Runs start immediately without a developer machine being online.
Local runner
Executes work orders on your own machine using your local Claude Code session. Your source code never leaves your machine. Token costs are billed to your own Anthropic account.
| Factor | Cloud | Local |
|---|---|---|
| Setup | None | npx @featurefactory/runner init |
| Token billing | FeatureFactory plan | Your Anthropic account |
| Code leaves machine | Yes - runs in cloud sandbox | No |
| Runs without dev online | Yes | No - machine must be running |
See the Local Runner docs for installation, configuration, and the local security model.
Was this article helpful?
Your response enters the same customer insight queue used by product feedback.