Skip to main content
BoxRouter runs a job only when the repository is private, a workspace administrator turned it on, and the job came from a trusted trigger. Anything else is refused before a sandbox exists.

Which Jobs Run

A fork’s author controls the workflow code. The job would run on a machine your workspace pays for, so BoxRouter refuses fork pull requests. A refused job never starts. The refusals in this table leave the job queued on GitHub until you cancel it or GitHub times it out. Only an unfunded job (funding_unavailable) has its run cancelled for you, and only when every unfinished job in the run is a BoxRouter job. The run page shows the refusal code, and Troubleshoot Actions lists each one.

What a Job Can Reach

Each job gets a new sandbox from the BoxRouter runner image. BoxRouter requests its deletion when the job ends. Steps run as the non-root user runner. The workflow’s permissions block limits what the job’s GITHUB_TOKEN can do on GitHub. BoxRouter registers each runner with GitHub as single-use, so GitHub cannot assign it a second job. How Actions works explains GitHub’s cache and artifacts.

Where Secrets Live

GitHub stores repository, environment, and organization secrets and provides referenced secrets to the job’s runner. Workflow code can send a secret elsewhere or save it in an artifact; deleting the sandbox does not remove those copies. Your workflow needs no BoxRouter API key or provider key. GitHub masks known secrets in job logs, but redaction can fail for transformed values. Avoid printing secrets; see GitHub’s security guidance. The run page shows each job’s sandbox cleanup as pending, confirmed or unknown. pending means deletion hasn’t finished; unknown means BoxRouter couldn’t verify deletion. Assume the sandbox still exists until its cleanup status reads confirmed.

Control Access

  • Install the GitHub App on selected repositories only, and keep the BoxRouter switch off for repositories that should not use it.
  • To stop Actions entirely, remove the App in GitHub’s installation settings. That stops new jobs from starting. Cancel running jobs from the run page.
  • Protect sensitive deployments with GitHub environments that require approval. GitHub does not release a job that waits for approval, so it stays queued until approved.

Next Steps

Connect GitHub

Limit which repositories the App reaches.

How Actions Works

What happens to each job.

Troubleshoot Actions

Fix a refused label or a queued job.