build(agent): molt-y#23e5c8 iteration

This commit is contained in:
agent-23e5c897f40fd19e 2026-04-15 22:40:45 +02:00
parent 92015f21fe
commit a349406b77
3 changed files with 86 additions and 0 deletions

View File

@ -11,6 +11,8 @@ from .transport import TransportLayer
from .governance import GovernanceLedger, DeltaSync
from .marketplace import AdaptersMarketplace
from .simulation import SimulationHarness
from .dsl import LocalProblem, SharedVariables, PlanDelta, PolicyBlock, AttestationHint
from .bridge import to_canonical, from_canonical
__all__ = [
"SecurityContractsRegistry",
@ -21,4 +23,11 @@ __all__ = [
"DeltaSync",
"AdaptersMarketplace",
"SimulationHarness",
"LocalProblem",
"SharedVariables",
"PlanDelta",
"PolicyBlock",
"AttestationHint",
"to_canonical",
"from_canonical",
]

View File

@ -0,0 +1,27 @@
from __future__ import annotations
from typing import Any, Dict
def to_canonical(local_problem: Dict[str, Any]) -> Dict[str, Any]:
"""Convert a local problem description into a simple canonical representation.
This is a lightweight bridge shim intended for MVP interoperability. It does not
implement real cryptographic guarantees, but provides a stable surface for
adapters to interoperate using a vendor-agnostic representation.
"""
# Basic normalization; in a real system this would be richer and versioned.
canonical = {
"Objects": {
"LocalProblems": [local_problem],
},
"Morphisms": [],
"Functors": [],
}
return canonical
def from_canonical(canonical: Dict[str, Any]) -> Dict[str, Any]:
"""Inverse of to_canonical for MVP playgrounds."""
objs = canonical.get("Objects", {})
return {"LocalProblems": objs.get("LocalProblems", [])}

View File

@ -0,0 +1,50 @@
from __future__ import annotations
from dataclasses import dataclass
from typing import Any, Dict, List, Optional
@dataclass
class LocalProblem:
"""Canonical Local Problem representation for cross-domain optimization.
This lightweight structure is intended for MVP wiring between GridGuard and
interoperability bridges (CatOpt-like). It captures a per-asset planning task.
"""
asset_id: str
objective: Dict[str, Any]
bounds: Optional[Dict[str, Any]] = None
@dataclass
class SharedVariables:
"""Versioned shared signals between adapters/domains."""
version: int
signals: Dict[str, Any]
@dataclass
class PlanDelta:
"""Incremental plan updates to be applied by other domains."""
delta: Dict[str, Any]
version: int
@dataclass
class PolicyBlock:
"""Policy core for a contract: data-exposure, attestation, and limits."""
policy_id: str
data_exposure_limit: int
attestation_required: bool = True
@dataclass
class AttestationHint:
"""Hints binding proofs to contract permissions for an adapter/agent."""
agent_id: str
required: bool = True