Hive Hive
Sign in

feat: Add runner runtime sessions

GitHub issue · Closed

Metadata
Source
tuist/once #32
Updated
Jun 24, 2026
Domains
Once
Details

Summary

Adds agent-friendly runtime sessions and aligns Fabrik around a target/rule model.

  • Makes [[target]] with rule = "..." the canonical TOML shape for built-in rules such as rust.binary, apple.simulator_app, and command.
  • Keeps existing [[rust.*]], [[apple.*]], and [[task]] declarations as compatibility sugar that lower to the same internal target model.
  • Documents Starlark as the intended rule and macro authoring layer, with Fabrik retaining ownership of scheduling, caching, CAS, actions, and runtime sessions.
  • Adds nested [target.runtime] metadata for runnable targets that should expose runtime capabilities and interfaces to agents.
  • Adds fabrik run --runtime-rpc <target> to create a file-backed runtime session and serve a local JSON-RPC control socket from the run command.
  • Keeps fabrik runtime rpc <session-dir> as a lower-level replay or debugging command for an existing session directory.
  • Renames the Apple simulator target shape to [[apple.simulator_app]] with platform = "ios", while keeping compatibility for [[apple.ios_app]].
  • Emits runtime descriptors from fabrik run for runtime-aware command targets and Apple simulator apps so agents can discover logs, screenshots, UI tree, and UI action capabilities.

Validation

  • mise exec -- cargo fmt --all -- --check
  • mise exec -- cargo test --workspace
  • mise exec -- cargo clippy --workspace --all-targets -- -D warnings
  • mise exec -- cargo build --release
  • mise exec -- shellspec spec/cli_surface_spec.sh spec/build_spec.sh spec/run_spec.sh spec/examples_apple_spec.sh spec/examples_targets_spec.sh
  • Manual Apple simulator run for examples/apple/ios/simulator-app/Demo
  • Manual JSON-RPC smoke test against fabrik runtime rpc
  • Manual fabrik run --runtime-rpc smoke test using [[target]] rule = "command" and querying stdout logs through the reported socket
Flights

Investigate, reproduce, or fix this item in an isolated repository. Each Flight preserves its outcome and agent session.

New Flights are paused Configure model inference, GitHub, and a sandbox provider to start another Flight. Existing results remain available below.
No Flights yet

Start a Flight and preserve its objective, outcome, and session here.

Comments

No GitHub comments yet.