stacklok / stacklok/mecatl

Configure the temporary root for Parallel forks

Open
#692 0 comments 0 reactions 1 assignee View on GitHub

@JAORMX is already working on this.

Since Sep 7, 2026.

Dominant language
Go
Stars
152
Forks
16
Avg merge
14h 48m
Merged PRs (30d)
536

Description

Problem

Parallel creates an isolated copy of the workspace for every branch, but the fork staging location is harness-owned and currently lands under the OS temporary directory. There is no operator configuration or environment hook to select another filesystem.

This blocks otherwise read-only parallel investigation when /tmp is space-constrained even though the workspace filesystem has ample capacity. In the observed case, three read-only branches each attempted to copy the repository including the ignored website/node_modules tree, and creation failed with no space left on device under /tmp.

Desired outcome

Provide an operator-configurable temporary root for Parallel fork workspaces. The configured root should be used for fork creation and cleanup, while the current OS-temp behavior remains the default when unset.

Acceptance criteria

  • An operator can configure the Parallel fork temporary root without changing a workspace repository.
  • The setting is applied to every Parallel branch, including read-only investigation branches.
  • The default remains the current OS temporary-directory behavior.
  • Invalid, unwritable, or insufficient-space configured roots fail clearly before or during fork creation; no silent fallback to an unexpected filesystem.
  • Fork cleanup uses the configured root and leaves no orphaned directories after normal completion.
  • Documentation identifies the setting and distinguishes it from mecatui XDG_RUNTIME_DIR or TMPDIR, which only controls mecatui embedded-server socket placement.

Context

The existing Parallel tool API has no destination/root parameter. This should be an operator deployment setting rather than a model-controlled per-call argument.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.