# DSL Sketch: Core CatOpt-Graph Primitives This document provides a minimal sketch for the DSL that describes LocalProblems, SharedVariables, PlanDelta, and related contracts used by adapters and the ADMM-lite core. LocalProblem - asset_id: identifier of the local optimization problem on the device - payload: dictionary containing domain-specific problem data (e.g., objective terms, constraints) SharedVariables - iter_id: iteration counter for synchronization rounds - values: map of signals that are shared across the mesh (e.g., dual variables, summaries) DualVariables - iter_id: iteration counter - values: dual variables per shared signal PlanDelta - iter_id: iteration counter - delta: aggregated changes to be applied to local plans PrivacyBudget - budget_id: identifier for privacy budget instance - limits: per-signal DP budgets or leakage limits AuditLog - entry_id: unique log entry identifier - payload: audit metadata for reconciliation steps Notes - All messages should include per-message metadata (version, timestamp, nonce, crypto-tag). - Identity should be established via DIDs or short-lived certificates; transport should be TLS-secured. This sketch intentionally stays minimal to accelerate MVP integration.