Skip to main content

eval_magic/core/
capabilities.rs

1//! Per-harness run-option capabilities.
2//!
3//! Every dispatch rides a single mechanism: each task is delivered through a
4//! one-shot harness CLI subprocess. What still varies by harness is which *run
5//! options* the generic `run` preflight may accept — captured as this narrow
6//! capability struct, reported per harness by
7//! `HarnessAdapter::run_capabilities` and independent of the comparison
8//! [`Mode`](crate::core::Mode) (`new-skill` / `revision`), which selects the
9//! two conditions being compared.
10
11/// Run-option support for a harness's dispatch path.
12///
13/// This is intentionally narrower than the full enhancement surface: it only
14/// describes options the generic `run` preflight must accept or reject before
15/// the build sequence starts. Harness-specific behavior still lives behind the
16/// adapter.
17#[derive(Debug, Clone, Copy, PartialEq, Eq)]
18pub struct HarnessRunCapabilities {
19    pub supports_guard: bool,
20    pub supports_bootstrap_with_no_stage: bool,
21    pub supports_stage_name_with_no_stage: bool,
22}