diff --git a/sidecar/src/main.rs b/sidecar/src/main.rs index 779b18c..b6a9eeb 100644 --- a/sidecar/src/main.rs +++ b/sidecar/src/main.rs @@ -118,9 +118,21 @@ use tracing_subscriber::EnvFilter; /// `truncated` when it had to stop, because a board that never arrived would read as a server /// with no clans. /// +/// # Protocol 7 — a raid frame that names who lives there +/// +/// `entity.destroyed` widens to doors, external walls and the tool cupboard, and gains the +/// cupboard's `buildingId` and its `authorized` list, which is what lets the website send the +/// raid alert to the people whose base it was (the module's PLAN.md §25). +/// +/// **Again nothing here changed but this number.** The frame is an `event`, stored and served as +/// it arrived. The bump exists because a website that alerts on `authorized` must not pair with a +/// plugin that never sends it — against protocol 6 it would read every raid as a base with no +/// cupboard, and alert nobody while looking healthy. +/// /// `docs/rust-link/PROTOCOL.md` is the specification — §8 the read path, §9 identity, §10 the -/// mirror, §11 configuration, §12 clans; this constant is one of its four declaration sites. -pub const PROTOCOL_VERSION: u32 = 6; +/// mirror, §11 configuration, §12 clans, §13 the raid frame; this constant is one of its four +/// declaration sites. +pub const PROTOCOL_VERSION: u32 = 7; fn main() -> anyhow::Result<()> { let args = match cli::parse(std::env::args().skip(1)) {