frame-host 0.4.0

Frame host server and embedding seam — boots an application's frame-core component tree with an embedded liminal bus, announces the host's real application events on the bus, and serves the built frame page
Documentation
//! Command line for the full frame server.
//!
//! One binary, one config, one start command. The binary bakes in no bind
//! address, no port, no asset directory, and no bus endpoint: every
//! deployment-shaped value lives in the single `frame.toml` named here.

use std::path::PathBuf;

use clap::Parser;

/// Parsed command line for the frame server.
///
/// The entire stack — the embedded liminal component and the console HTTP
/// server — boots from one `frame.toml`. There are no side-by-side processes
/// and no per-value flags: the config file is the sole deployment surface.
#[derive(Debug, Parser)]
#[command(
    name = "frame-host",
    version,
    about = "Boot the full frame server: embedded bus component + console shell, from one config"
)]
pub struct Cli {
    /// Path to the `frame.toml` describing the whole stack.
    ///
    /// It carries a `[frame]` section (console `bind`, `assets`, `auth_token`,
    /// optional `channel`) and a `[bus]` section (the embedded bus
    /// server's own config: `listen_address`, `health_listen_address`,
    /// `drain_timeout_ms`, `channels`, `[bus.websocket]`, …). The pre-rename
    /// section name `[liminal]` still parses as a deprecated alias for one
    /// compatibility window, with a loud startup warning.
    #[arg(long)]
    pub config: PathBuf,
}