fabro/run.json
Fabro e321e38669 init run
⚒️ Generated with [Fabro](https://fabro.sh)
2026-04-15 10:17:17 -04:00

320 lines
No EOL
7.9 KiB
JSON

{
"run_id": "01KP8R1FGHYXRYNNM1MSY9QRXQ",
"settings": {
"_version": 1,
"project": {
"directory": "."
},
"workflow": {
"graph": "workflow.fabro"
},
"run": {
"goal": "Verify the sandbox can lint and test the project",
"model": {
"provider": "anthropic",
"name": "claude-sonnet-4-6"
},
"prepare": {
"timeout": "5m"
},
"execution": {
"mode": "normal",
"approval": "prompt",
"retros": true
},
"sandbox": {
"provider": "daytona",
"preserve": false,
"devcontainer": false,
"local": {
"worktree_mode": "clean"
},
"daytona": {
"auto_stop_interval": 30,
"labels": {
"repo": "fabro-sh/fabro"
},
"snapshot": {
"name": "fabro-v6",
"cpu": 4,
"memory": "8GB",
"disk": "20GB",
"dockerfile": "FROM ubuntu:24.04\n\nRUN apt-get update && apt-get install -y --no-install-recommends curl git ca-certificates build-essential pkg-config libssl-dev unzip python3 && rm -rf /var/lib/apt/lists/*\n\n# GitHub CLI\nRUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg && echo \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main\" | tee /etc/apt/sources.list.d/github-cli.list > /dev/null && apt-get update && apt-get install -y --no-install-recommends gh && rm -rf /var/lib/apt/lists/*\n\n# Rust\nRUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\nENV PATH=\"/root/.cargo/bin:${PATH}\"\nRUN cargo install cargo-nextest --locked\nENV CARGO_INCREMENTAL=0\n\n# Bun\nRUN curl -fsSL https://bun.sh/install | bash\nENV PATH=\"/root/.bun/bin:${PATH}\"\n\nWORKDIR /root\n"
}
}
},
"hooks": [
{
"id": "cargo-fmt",
"name": "cargo-fmt",
"event": "post_tool_use",
"matcher": "write_file|edit_file|apply_patch",
"blocking": true,
"script": "cargo fmt"
}
],
"pull_request": {
"enabled": true,
"draft": false
}
},
"cli": {
"target": {
"type": "http",
"url": "http://127.0.0.1:32276",
"tls": null
},
"exec": {
"prevent_idle_sleep": false
},
"output": {
"format": "text",
"verbosity": "normal"
},
"updates": {
"check": true
}
},
"server": {
"listen": {
"type": "tcp",
"address": "127.0.0.1:32276",
"tls": null
},
"api": {
"url": "http://127.0.0.1:32276/api/v1"
},
"web": {
"enabled": true,
"url": "http://127.0.0.1:32276"
},
"auth": {
"methods": [
"dev-token"
]
},
"storage": {
"root": "/Users/bhelmkamp/.fabro/storage"
},
"artifacts": {
"provider": "local",
"prefix": ""
},
"slatedb": {
"provider": "local",
"prefix": "",
"flush_interval": "1ms",
"disk_cache": false
},
"scheduler": {
"max_concurrent_runs": 5
},
"integrations": {
"github": {
"strategy": "token"
}
}
},
"features": {
"session_sandboxes": false
}
},
"graph": {
"name": "Smoke",
"nodes": {
"exit": {
"id": "exit",
"attrs": {
"shape": {
"String": "Msquare"
},
"label": {
"String": "Exit"
}
}
},
"test_rust": {
"id": "test_rust",
"attrs": {
"shape": {
"String": "parallelogram"
},
"script": {
"String": "ulimit -n 4096 && cargo nextest run --cargo-quiet --workspace --status-level fail 2>&1"
},
"goal_gate": {
"Boolean": true
},
"label": {
"String": "Test Rust"
}
}
},
"compile_rust": {
"id": "compile_rust",
"attrs": {
"shape": {
"String": "parallelogram"
},
"goal_gate": {
"Boolean": true
},
"script": {
"String": "cargo check -q --workspace 2>&1"
},
"label": {
"String": "Compile Rust"
}
}
},
"lint_rust": {
"id": "lint_rust",
"attrs": {
"label": {
"String": "Lint Rust"
},
"script": {
"String": "cargo +nightly fmt --check --all 2>&1 && cargo clippy -q --workspace -- -D warnings 2>&1"
},
"shape": {
"String": "parallelogram"
},
"goal_gate": {
"Boolean": true
}
}
},
"compile_typescript": {
"id": "compile_typescript",
"attrs": {
"script": {
"String": "cd apps/fabro-web && bun install && bun run typecheck 2>&1"
},
"goal_gate": {
"Boolean": true
},
"shape": {
"String": "parallelogram"
},
"label": {
"String": "Compile TypeScript"
}
}
},
"test_typescript": {
"id": "test_typescript",
"attrs": {
"shape": {
"String": "parallelogram"
},
"script": {
"String": "cd apps/fabro-web && bun test 2>&1"
},
"label": {
"String": "Test TypeScript"
},
"goal_gate": {
"Boolean": true
}
}
},
"start": {
"id": "start",
"attrs": {
"label": {
"String": "Start"
},
"shape": {
"String": "Mdiamond"
}
}
},
"toolchain": {
"id": "toolchain",
"attrs": {
"script": {
"String": "rustc --version && cargo --version && bun --version 2>&1"
},
"shape": {
"String": "parallelogram"
},
"label": {
"String": "Toolchain"
},
"goal_gate": {
"Boolean": true
}
}
}
},
"edges": [
{
"from": "start",
"to": "toolchain",
"attrs": {}
},
{
"from": "toolchain",
"to": "compile_rust",
"attrs": {}
},
{
"from": "compile_rust",
"to": "compile_typescript",
"attrs": {}
},
{
"from": "compile_typescript",
"to": "lint_rust",
"attrs": {}
},
{
"from": "lint_rust",
"to": "test_rust",
"attrs": {}
},
{
"from": "test_rust",
"to": "test_typescript",
"attrs": {}
},
{
"from": "test_typescript",
"to": "exit",
"attrs": {}
}
],
"attrs": {
"goal": {
"String": "Verify the sandbox can lint and test the project"
},
"rankdir": {
"String": "LR"
},
"retry_target": {
"String": "exit"
}
}
},
"workflow_slug": "smoke",
"working_directory": "/Users/bhelmkamp/p/fabro-sh/fabro",
"host_repo_path": "/Users/bhelmkamp/p/fabro-sh/fabro",
"repo_origin_url": "https://github.com/fabro-sh/fabro",
"base_branch": "main",
"provenance": {
"server": {
"version": "0.176.2"
},
"client": {
"user_agent": "fabro-cli/0.176.2",
"name": "fabro-cli",
"version": "0.176.2"
},
"subject": {
"login": "dev",
"auth_method": "dev_token"
}
},
"manifest_blob": "1b07fba0be089beb21717da3e6ed5bd67bde8553f5a73ba9486c8549c059d15c",
"definition_blob": "694e657f282969186c899bb8985b761e1a9b6524c2d2b02bc9dc11187013ce81"
}