"""CatOpt Bridge Demo (CosmosMesh MVP) Minimal end-to-end example showing how to construct a LocalProblem, SharedVariables, DualVariables and build a RoundTrip message via the CatOptBridge. """ from cosmosmesh_privacy_preserving_federated.catopt_bridge import LocalProblem, SharedVariable, DualVariable, CatOptBridge def main(): # Define a tiny local problem for a two-asset scenario lp = LocalProblem( problem_id="rover1-task-allocation", objective="minimize energy consumption", variables=["x1", "x2"], constraints=["x1 + x2 <= 10", "x1 >= 0", "x2 >= 0"], version=1, ) # Shared variables (primal signals) between agents sv1 = SharedVariable(name="eta1", value=0.5, version=1) sv2 = SharedVariable(name="eta2", value=1.2, version=1) dual1 = DualVariable(name="lambda1", value=0.1, version=1) # Build a round-trip message as the CatOptBridge would prepare for transport rt = CatOptBridge.build_round_trip( problem=lp, shared=[sv1, sv2], duals=[dual1], ) print("RoundTrip Message:\n", rt) if __name__ == "__main__": main()