main
John Lauer 0.1.31: native owned-zone transaction and verified refill readback 12aecd6
use aiflow_bridge::Bridge;
use serde_json::json;
fn main() {
    let args: Vec<_> = std::env::args().collect();
    assert_eq!(args.len(), 4, "target board-path ai-thread");
    let bridge = Bridge { target: args[1].clone(), ai_thread: args[3].clone() };
    let before = bridge.zone_state(&args[2], false);
    assert!(Bridge::ok(&before), "{before}");
    // No owned zones and no desired zones: native no-op, preserves every zone.
    let replies = bridge.land_zones(&args[2], &[], 0, &[]);
    assert_eq!(replies.len(), 1);
    let reply = &replies[0].1;
    assert!(Bridge::ok(reply), "{reply}");
    assert_eq!(reply["mutated"], false);
    assert_eq!(reply["undoSteps"], 0);
    let after = bridge.zone_state(&args[2], false);
    assert_eq!(before["revision"], after["revision"]);
    println!("{}", json!({"before":before,"nativeNoOp":reply,"after":after}));
}