5f07027faa
Preserve the adapter facade and move adapter-only checks out of domain tests. Late tracks do not reveal an unseen launch origin or its timestamp. Co-Authored-By: Codex GPT-6.1 Terra <noreply@openai.com>
AirDef headless simulation
This package compiles the same airdef-mod/src/sim source as the game adapter, with glam as its only dependency. A checkout does not need the Horizon submodule to build or run it:
cargo test --manifest-path airdef-core/Cargo.toml
cargo run --manifest-path airdef-core/Cargo.toml --release --example sim_run -- --list
cargo run --manifest-path airdef-core/Cargo.toml --release --example sim_run -- --scenario big-smart
The shared scenario harness runs for both packages. Adapter integration tests for layout and smoke stay in airdef-mod; core_boundary verifies the public type facade and deterministic combat trace.
This is an incremental boundary: the simulation still produces rendering and audio declarations and formats some UI text. Moving those outputs and diagnostics to adapters, remain follow-up work. The mod re-exports airdef_core::sim as its existing public facade.