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
Comments

No GitHub comments yet.