diff --git a/docs/public/reference/cli.mdx b/docs/public/reference/cli.mdx index 2ac112a14..299cbbdc7 100644 --- a/docs/public/reference/cli.mdx +++ b/docs/public/reference/cli.mdx @@ -301,6 +301,7 @@ fabro create [OPTIONS] | `--dry-run` | Execute with simulated LLM backend | | `--goal ` | Override the workflow goal (available as {{ goal }} in prompts) | | `--goal-file ` | Read the workflow goal from a file | +| `--in-place` | Run directly in the source checkout without git checkpoints | | `--label ` | Attach a label to this run (repeatable, format: KEY=VALUE) | | `--model ` | Override default LLM model | | `--no-retro` | Skip retro generation after the run | @@ -815,6 +816,7 @@ fabro run [OPTIONS] | `--dry-run` | Execute with simulated LLM backend | | `--goal ` | Override the workflow goal (available as {{ goal }} in prompts) | | `--goal-file ` | Read the workflow goal from a file | +| `--in-place` | Run directly in the source checkout without git checkpoints | | `--label ` | Attach a label to this run (repeatable, format: KEY=VALUE) | | `--model ` | Override default LLM model | | `--no-retro` | Skip retro generation after the run | @@ -1254,12 +1256,6 @@ fabro validate [OPTIONS] | --- | --- | | `WORKFLOW` | Path to the .fabro workflow file | -#### Options - -| Option | Description | -| --- | --- | -| `--server ` | Fabro server target: http(s) URL or absolute Unix socket path | - ### `fabro version` Show client and server version information diff --git a/lib/crates/fabro-cli/src/commands/validate.rs b/lib/crates/fabro-cli/src/commands/validate.rs index 093bccb12..66ad4a9e9 100644 --- a/lib/crates/fabro-cli/src/commands/validate.rs +++ b/lib/crates/fabro-cli/src/commands/validate.rs @@ -10,7 +10,7 @@ use crate::commands::run::output::api_diagnostics_to_local; use crate::manifest_builder::{ManifestBuildInput, build_run_manifest}; use crate::shared::{print_diagnostics, print_json_pretty, relative_path}; -pub(crate) async fn run( +pub(crate) fn run( args: &ValidateArgs, styles: &Styles, base_ctx: &CommandContext, diff --git a/lib/crates/fabro-cli/src/main.rs b/lib/crates/fabro-cli/src/main.rs index 2604f4617..a331cfbc2 100644 --- a/lib/crates/fabro-cli/src/main.rs +++ b/lib/crates/fabro-cli/src/main.rs @@ -253,7 +253,7 @@ async fn main_inner(worker_token: Option) -> (String, Result<()>) { } Commands::Validate(args) => { let styles = Styles::detect_stderr(); - commands::validate::run(&args, &styles, &base_ctx).await?; + commands::validate::run(&args, &styles, &base_ctx)?; } Commands::Graph(args) => { let styles = Styles::detect_stderr(); diff --git a/lib/crates/fabro-cli/src/manifest_builder.rs b/lib/crates/fabro-cli/src/manifest_builder.rs index 5a8e50d2e..a1cb01b68 100644 --- a/lib/crates/fabro-cli/src/manifest_builder.rs +++ b/lib/crates/fabro-cli/src/manifest_builder.rs @@ -1060,7 +1060,7 @@ exit 1 temp_env::with_var("FABRO_PROMPT_ENV_LOG", Some(helper_log.as_os_str()), || { let built = build_run_manifest(ManifestBuildInput { workflow: PathBuf::from(".fabro/workflows/demo/workflow.toml"), - cwd: workspace.to_path_buf(), + cwd: workspace.clone(), run_overrides: None, cli_overrides: None, args: None, diff --git a/lib/crates/fabro-server/src/manifest_validation.rs b/lib/crates/fabro-server/src/manifest_validation.rs index 80e450e7a..45b0aa42a 100644 --- a/lib/crates/fabro-server/src/manifest_validation.rs +++ b/lib/crates/fabro-server/src/manifest_validation.rs @@ -1,20 +1,15 @@ use anyhow::{Result, anyhow}; use fabro_api::types; use fabro_config::RunLayer; -use fabro_workflow::Error as WorkflowError; + +use crate::run_manifest; pub fn validate_manifest( manifest_run_defaults: &RunLayer, manifest: &types::RunManifest, ) -> Result { - let prepared = crate::run_manifest::prepare_manifest(manifest_run_defaults, manifest)?; - let validated = crate::run_manifest::validate_prepared_manifest(&prepared) - .map_err(validation_error_to_anyhow)?; - Ok(crate::run_manifest::validate_response( - &prepared, &validated, - )) -} - -fn validation_error_to_anyhow(err: WorkflowError) -> anyhow::Error { - anyhow!("{err}") + let prepared = run_manifest::prepare_manifest(manifest_run_defaults, manifest)?; + let validated = + run_manifest::validate_prepared_manifest(&prepared).map_err(|err| anyhow!("{err}"))?; + Ok(run_manifest::validate_response(&prepared, &validated)) }