48 lines
1.4 KiB
Markdown
48 lines
1.4 KiB
Markdown
# DSL Sketch: CatOpt-Graph MVP
|
|
|
|
This document provides a minimal DSL sketch to seed adapter implementers with
|
|
canonical data contracts for LocalProblem, SharedVariables, PlanDelta, and
|
|
DualVariables. The goal is to accelerate onboarding and ensure consistent
|
|
semantics across adapters.
|
|
|
|
- Canonical primitives
|
|
- Objects: LocalProblem (assets, constraints, and objectives)
|
|
- Morphisms: SharedVariables (versioned signals exchanged between agents)
|
|
- DualVariables: Lagrange multipliers coordinating cross-adapter objectives
|
|
- PlanDelta: incremental plan changes with timestamp and signature
|
|
- PrivacyBudget, AuditLog: governance scaffolds
|
|
- Time modelling
|
|
- TimeMonoid: rounds with delta-sync semantics to support islanding and reconnection
|
|
- Registry
|
|
- Graph-of-Contracts (GoC): per-adapter contract versions with semantics and conformance rules
|
|
|
|
Seed DSL snippet (Python-like pseudo-DSL for onboarding):
|
|
|
|
LocalProblem {
|
|
asset_id: str
|
|
domain: str
|
|
objective: dict
|
|
variables: dict
|
|
}
|
|
|
|
SharedVariables {
|
|
iter_id: int
|
|
values: dict
|
|
}
|
|
|
|
PlanDelta {
|
|
iter_id: int
|
|
delta: dict
|
|
}
|
|
|
|
DualVariables {
|
|
iter_id: int
|
|
values: dict
|
|
}
|
|
|
|
PrivacyBudget { budget_id: str, limits: dict }
|
|
AuditLog { entry_id: str, payload: dict }
|
|
|
|
This sketch is intentionally compact; implementers should map their domain data
|
|
structures into this canonical form via EnergiBridge-like adapters.
|