xai-org/x-algorithm · error · anyhow::Error
--sid-endpoint is required when --pipeline={}
Error message
--sid-endpoint is required when --pipeline={} What it means
Raised in phoenix-rankall's main when --pipeline is set to Sid or SidTail but --sid-endpoint was not provided. The SID pipeline requires a remote SID model endpoint, and the CLI args are insufficient to construct it.
Source
Thrown at phoenix-rankall/src/main.rs:146
windows: cli.pipeline.window_configs(),
compaction_interval_secs: cli.dump_interval_secs,
versions_to_keep: cli.versions_to_keep,
pipeline: cli.pipeline.to_string(),
sid_num_levels: cli.sid_num_levels,
},
metadata_window_router(),
Arc::clone(&metrics),
);
Pipeline::new(
Box::new(consumer),
Box::new(processor),
Box::new(store),
Arc::try_unwrap(metrics).unwrap_or_else(|m| (*m).clone()),
)
}
PipelineKind::Sid | PipelineKind::SidTail => {
let endpoint = cli.sid_endpoint.as_deref().ok_or_else(|| {
anyhow::anyhow!(
"--sid-endpoint is required when --pipeline={}",
cli.pipeline
)
})?;
if cli.sid_num_levels == 0 {
bail!("--sid-num-levels must be > 0 for the SID pipeline");
}
let windows = cli.pipeline.window_configs();
let sid_metrics = SidMetrics::new(®istry).context("failed to create SID metrics")?;
let sid_client = Arc::new(
SidClient::new(
endpoint,
cli.sid_min_post_age_seconds,
Duration::from_secs_f64(cli.sid_request_timeout_seconds),
sid_metrics.clone(),
)
.context("failed to construct SidClient")?,View on GitHub (pinned to 24c60942c5)
Solutions
- Add --sid-endpoint <url> to the command line
- If the SID pipeline was not intended, fix the --pipeline value (e.g. use the default pipeline)
- If scripting, validate that pipeline==Sid/SidTail implies sid_endpoint is set before invoking the binary
Example fix
# before phoenix-rankall --pipeline=Sid # after phoenix-rankall --pipeline=Sid --sid-endpoint=http://sid-service:8080 --sid-num-levels=3
Defensive patterns
Strategy: validation
Validate before calling
use pipeline == "sid" || pipeline == "sid_tail" { assert sid_endpoint set } end Try / catch
null
Prevention
- Wrap the binary in a script that validates arg combinations
- Add shell completion/docs for pipeline-specific flags
When it happens
Trigger: Running phoenix-rankall with --pipeline=Sid or --pipeline=SidTail while omitting --sid-endpoint (e.g. `phoenix-rankall --pipeline=Sid`).
Common situations: Copy-pasting a command from docs for a different pipeline; scripts parameterizing the pipeline name but not the endpoint; renaming/removal of default endpoint flags between versions.
Understand the failure class
Background: "no subcommand specified" and "... is required": CLI errors when a required argument is missing — this error's family across 13 libraries.
Related errors
- Invalid argument {arg!r}, not a key=value replacement and no
- Invalid config option {kv!r}, expected format 'key=value'
- Unused KV pairs: {k}
- k ({k}) must be <= n ({n})
- valid_block_upper and valid_block_lower must be provided tog
AI-assisted analysis of xai-org/x-algorithm@24c60942c5 (2026-08-28).
Data as JSON: /api/errors/08841413c2ae210b.
Report an issue: GitHub.